1 | ///////////////////////////////////////////////////////////////////////////////
|
---|
2 | // Name: msw/tooltip.h
|
---|
3 | // Purpose: wxToolTip class - tooltip control
|
---|
4 | // Author: Vadim Zeitlin
|
---|
5 | // Modified by:
|
---|
6 | // Created: 31.01.99
|
---|
7 | // RCS-ID: $Id: tooltip.h,v 1.13 2005/02/28 01:22:35 VZ Exp $
|
---|
8 | // Copyright: (c) 1999 Robert Roebling, Vadim Zeitlin
|
---|
9 | // Licence: wxWindows licence
|
---|
10 | ///////////////////////////////////////////////////////////////////////////////
|
---|
11 |
|
---|
12 | class WXDLLEXPORT wxToolTip : public wxObject
|
---|
13 | {
|
---|
14 | public:
|
---|
15 | // ctor & dtor
|
---|
16 | wxToolTip(const wxString &tip);
|
---|
17 | virtual ~wxToolTip();
|
---|
18 |
|
---|
19 | // accessors
|
---|
20 | // tip text
|
---|
21 | void SetTip(const wxString& tip);
|
---|
22 | const wxString& GetTip() const { return m_text; }
|
---|
23 |
|
---|
24 | // the window we're associated with
|
---|
25 | void SetWindow(wxWindow *win);
|
---|
26 | wxWindow *GetWindow() const { return m_window; }
|
---|
27 |
|
---|
28 | // controlling tooltip behaviour: globally change tooltip parameters
|
---|
29 | // enable or disable the tooltips globally
|
---|
30 | static void Enable(bool flag);
|
---|
31 | // set the delay after which the tooltip appears
|
---|
32 | static void SetDelay(long milliseconds);
|
---|
33 |
|
---|
34 | // implementation only from now on
|
---|
35 | // -------------------------------
|
---|
36 |
|
---|
37 | // should be called in responde to WM_MOUSEMOVE
|
---|
38 | void RelayEvent(WXMSG *msg);
|
---|
39 |
|
---|
40 | // add a window to the tooltip control
|
---|
41 | void Add(WXHWND hwnd);
|
---|
42 |
|
---|
43 | private:
|
---|
44 | // the one and only one tooltip control we use - never access it directly
|
---|
45 | // but use GetToolTipCtrl() which will create it when needed
|
---|
46 | static WXHWND ms_hwndTT;
|
---|
47 |
|
---|
48 | // create the tooltip ctrl if it doesn't exist yet and return its HWND
|
---|
49 | static WXHWND GetToolTipCtrl();
|
---|
50 |
|
---|
51 | // remove this tooltip from the tooltip control
|
---|
52 | void Remove();
|
---|
53 |
|
---|
54 | wxString m_text; // tooltip text
|
---|
55 | wxWindow *m_window; // window we're associated with
|
---|
56 |
|
---|
57 | DECLARE_ABSTRACT_CLASS(wxToolTip)
|
---|
58 | DECLARE_NO_COPY_CLASS(wxToolTip)
|
---|
59 | };
|
---|
60 |
|
---|