blob: fc97348370de52e3fdf48949e821910751f6f38a (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
|
// Tooltip.h: interface for the CTooltip class.
//
//////////////////////////////////////////////////////////////////////
#pragma once
class CTooltipNotify;
class CTooltip
{
public:
CTooltip(CTooltipNotify *pTooltipNotify);
virtual ~CTooltip();
HWND GetHandle() const { return m_hWnd; }
VOID Hide();
VOID Show();
VOID Validate();
VOID set_Position(INT x, INT y);
VOID get_Rect(RECT *Rect) const;
VOID set_TransparentInput(BOOL bOnOff);
VOID set_Translucency(BYTE bAlpha);
VOID set_Text(const TCHAR* szText);
VOID set_Font(const LOGFONT& Font) { m_lfFont = Font; }
VOID set_TextColor(DWORD TextColor) { m_dwTextColor = TextColor; }
VOID set_BgColor(DWORD BgColor) { m_dwBgColor = BgColor; }
static void Initialize(HMODULE hInstance);
static void Deinitialize(HMODULE hInstance);
private:
// prohibit copying
CTooltip(const CTooltip& rhs);
CTooltip& operator= (const CTooltip& rhs);
private:
static LRESULT CALLBACK WindowProcWrapper(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam);
LRESULT CALLBACK WindowProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam);
HWND m_hWnd;
HFONT m_hFont;
// tooltip parameters
DWORD m_dwTextColor;
DWORD m_dwBgColor;
LOGFONT m_lfFont;
TCHAR *m_szText;
BYTE m_bAlpha;
BOOL m_bTranspInput;
BYTE m_bLDblClick;
CTooltipNotify *m_pTooltipNotify;
static const TCHAR *s_szTooltipClass;
};
|