用于EagleEye3.0 规则集漏报和误报测试的示例项目,项目收集于github和gitee
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

89 lines
2.1 KiB

5 months ago
#pragma once
#include <unknown/obj-ref-i.h>
#include "../core/smsgloop.h"
namespace SOUI
{
/**
* @struct TIPID
* @brief tooltip的ID
*
* Describe
*/
struct TIPID
{
DWORD dwHi; //ID1, 用来保存一个SWND。
DWORD dwLow;//ID2, 用来保存附加数据
};
/**
* @struct IToolTip
* @brief tooltip对象接口
*
* Describe
*/
struct IToolTip : public IMessageFilter
{
/**
* UpdateTip
* @brief tooltip
* @param const TIPID & id -- tooltip的ID
* @param CRect rc -- tooltip的感应区
* @param LPCTSTR pszTip -- tooltip字符串
* @param int nScale --
* @return void
*
* Describe
*/
virtual void UpdateTip(const TIPID &id, CRect rc,LPCTSTR pszTip, int nScale) = 0;
/**
* ClearTip
* @brief tooltip
* @return void
*
* Describe
*/
virtual void ClearTip() = 0;
/**
* RelayEvent
* @brief
* @param const MSG * pMsg --
* @return void
*
* Describe
*/
virtual void RelayEvent(const MSG *pMsg) = 0;
};
/**
* @struct IToolTipFactory
* @brief tooltip类厂
*
* Describe
*/
struct IToolTipFactory : IObjRef
{
/**
* CreateToolTip
* @brief tooltip对象
* @param HWND hHost -- soui host
* @return IToolTip * tooltip对象
*
* Describe hHost做为tooltip的Owner
*/
virtual IToolTip * CreateToolTip(HWND hHost) = 0;
/**
* DestroyToolTip
* @brief tooltip对象
* @param IToolTip * pToolTip -- tooltip
* @return void
*
* Describe
*/
virtual void DestroyToolTip(IToolTip *pToolTip) = 0;
};
}