]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/palmos/tooltip.h
Committed William Osborne's wxPalmOS port
[wxWidgets.git] / include / wx / palmos / tooltip.h
diff --git a/include/wx/palmos/tooltip.h b/include/wx/palmos/tooltip.h
new file mode 100644 (file)
index 0000000..229c645
--- /dev/null
@@ -0,0 +1,60 @@
+///////////////////////////////////////////////////////////////////////////////
+// Name:        palmos/tooltip.h
+// Purpose:     wxToolTip class - tooltip control
+// Author:      William Osborne
+// Modified by:
+// Created:     10/13/04
+// RCS-ID:      $Id: 
+// Copyright:   (c) William Osborne
+// Licence:     wxWindows licence
+///////////////////////////////////////////////////////////////////////////////
+
+class WXDLLEXPORT wxToolTip : public wxObject
+{
+public:
+    // ctor & dtor
+    wxToolTip(const wxString &tip);
+    virtual ~wxToolTip();
+
+    // accessors
+        // tip text
+    void SetTip(const wxString& tip);
+    const wxString& GetTip() const { return m_text; }
+
+        // the window we're associated with
+    void SetWindow(wxWindow *win);
+    wxWindow *GetWindow() const { return m_window; }
+
+    // controlling tooltip behaviour: globally change tooltip parameters
+        // enable or disable the tooltips globally
+    static void Enable(bool flag);
+        // set the delay after which the tooltip appears
+    static void SetDelay(long milliseconds);
+
+    // implementation only from now on
+    // -------------------------------
+
+    // should be called in responde to WM_MOUSEMOVE
+    void RelayEvent(WXMSG *msg);
+
+private:
+    // 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)
+};
+