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.1 2006/12/02 15:58:47 scara Exp $
8 // Copyright:   (c) 1999 Robert Roebling, Vadim Zeitlin
9 // Licence:     wxWindows license
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);
GetTip()22     const wxString& GetTip() const { return m_text; }
23 
24         // the window we're associated with
25     void SetWindow(wxWindow *win);
GetWindow()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 private:
41     // the one and only one tooltip control we use - never access it directly
42     // but use GetToolTipCtrl() which will create it when needed
43     static WXHWND ms_hwndTT;
44 
45     // create the tooltip ctrl if it doesn't exist yet and return its HWND
46     static WXHWND GetToolTipCtrl();
47 
48     // remove this tooltip from the tooltip control
49     void Remove();
50 
51     // add a window to the tooltip control
52     void Add(WXHWND hwnd);
53 
54     wxString  m_text;           // tooltip text
55     wxWindow *m_window;         // window we're associated with
56 
57     DECLARE_ABSTRACT_CLASS(wxToolTip)
58 };
59 
60