]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/msw/tooltip.h
allow compilation with wxUSE_CHOICEDLG set to 0
[wxWidgets.git] / include / wx / msw / tooltip.h
index 8b7f805f1aa277a356605a0bf5ae6153854795c7..d8fb5c35e557a3f877eb1e380f7e6772d0e10174 100644 (file)
@@ -6,10 +6,10 @@
 // Created:     31.01.99
 // RCS-ID:      $Id$
 // Copyright:   (c) 1999 Robert Roebling, Vadim Zeitlin
-// Licence:     wxWindows license
+// Licence:     wxWindows licence
 ///////////////////////////////////////////////////////////////////////////////
 
-class wxToolTip : public wxObject
+class WXDLLEXPORT wxToolTip : public wxObject
 {
 public:
     // ctor & dtor
@@ -31,18 +31,30 @@ public:
         // set the delay after which the tooltip appears
     static void SetDelay(long milliseconds);
 
-    // implementation
+    // implementation only from now on
+    // -------------------------------
+
+    // should be called in responde to WM_MOUSEMOVE
     void RelayEvent(WXMSG *msg);
 
 private:
-    // create the tooltip ctrl for our parent frame if it doesn't exist yet
-    // and return its window handle
-    WXHWND GetToolTipCtrl();
+    // the one and only one tooltip control we use - never access it directly
+    // but use GetToolTipCtrl() which will create it when needed
+    static WXHWND ms_hwndTT;
+
+    // create the tooltip ctrl if it doesn't exist yet and return its HWND
+    static WXHWND GetToolTipCtrl();
 
     // remove this tooltip from the tooltip control
     void Remove();
 
+    // add a window to the tooltip control
+    void Add(WXHWND hwnd);
+
     wxString  m_text;           // tooltip text
     wxWindow *m_window;         // window we're associated with
+
+    DECLARE_ABSTRACT_CLASS(wxToolTip)
+    DECLARE_NO_COPY_CLASS(wxToolTip)
 };