]> git.saurik.com Git - wxWidgets.git/blob - include/wx/palmos/tooltip.h
adding 10.4 build compatibility for osx cocoa, see #10361
[wxWidgets.git] / include / wx / palmos / tooltip.h
1 ///////////////////////////////////////////////////////////////////////////////
2 // Name: wx/palmos/tooltip.h
3 // Purpose: wxToolTip class - tooltip control
4 // Author: William Osborne - minimal working wxPalmOS port
5 // Modified by:
6 // Created: 10/13/04
7 // RCS-ID: $Id$
8 // Copyright: (c) William Osborne
9 // Licence: wxWindows licence
10 ///////////////////////////////////////////////////////////////////////////////
11
12 #ifndef _WX_PALMOS_TOOLTIP_H_
13 #define _WX_PALMOS_TOOLTIP_H_
14
15 class WXDLLIMPEXP_CORE wxToolTip : public wxObject
16 {
17 public:
18 // ctor & dtor
19 wxToolTip(const wxString &tip);
20 virtual ~wxToolTip();
21
22 // accessors
23 // tip text
24 void SetTip(const wxString& tip);
25 const wxString& GetTip() const { return m_text; }
26
27 // the window we're associated with
28 void SetWindow(wxWindow *win);
29 wxWindow *GetWindow() const { return m_window; }
30
31 // controlling tooltip behaviour: globally change tooltip parameters
32 // enable or disable the tooltips globally
33 static void Enable(bool flag);
34 // set the delay after which the tooltip appears
35 static void SetDelay(long milliseconds);
36 // set the delay after which the tooltip disappears or how long the tooltip remains visible
37 static void SetAutoPop(long milliseconds);
38 // set the delay between subsequent tooltips to appear
39 static void SetReshow(long milliseconds);
40
41 // implementation only from now on
42 // -------------------------------
43
44 // should be called in responde to WM_MOUSEMOVE
45 void RelayEvent(WXMSG *msg);
46
47 private:
48 // the one and only one tooltip control we use - never access it directly
49 // but use GetToolTipCtrl() which will create it when needed
50 static WXHWND ms_hwndTT;
51
52 // create the tooltip ctrl if it doesn't exist yet and return its HWND
53 static WXHWND GetToolTipCtrl();
54
55 // remove this tooltip from the tooltip control
56 void Remove();
57
58 // add a window to the tooltip control
59 void Add(WXHWND hwnd);
60
61 wxString m_text; // tooltip text
62 wxWindow *m_window; // window we're associated with
63
64 DECLARE_ABSTRACT_CLASS(wxToolTip)
65 DECLARE_NO_COPY_CLASS(wxToolTip)
66 };
67
68 #endif // _WX_PALMOS_TOOLTIP_H_