1999-01-31 23:38:10 +00:00
|
|
|
///////////////////////////////////////////////////////////////////////////////
|
|
|
|
// Name: msw/tooltip.h
|
|
|
|
// Purpose: wxToolTip class - tooltip control
|
|
|
|
// Author: Vadim Zeitlin
|
|
|
|
// Modified by:
|
|
|
|
// Created: 31.01.99
|
|
|
|
// RCS-ID: $Id$
|
|
|
|
// Copyright: (c) 1999 Robert Roebling, Vadim Zeitlin
|
|
|
|
// Licence: wxWindows license
|
|
|
|
///////////////////////////////////////////////////////////////////////////////
|
|
|
|
|
2000-01-10 00:55:05 +00:00
|
|
|
class WXDLLEXPORT wxToolTip : public wxObject
|
1999-01-31 23:38:10 +00:00
|
|
|
{
|
|
|
|
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; }
|
|
|
|
|
1999-02-14 21:59:48 +00:00
|
|
|
// controlling tooltip behaviour: globally change tooltip parameters
|
1999-01-31 23:38:10 +00:00
|
|
|
// enable or disable the tooltips globally
|
1999-02-14 21:59:48 +00:00
|
|
|
static void Enable(bool flag);
|
1999-01-31 23:38:10 +00:00
|
|
|
// set the delay after which the tooltip appears
|
1999-02-14 21:59:48 +00:00
|
|
|
static void SetDelay(long milliseconds);
|
1999-01-31 23:38:10 +00:00
|
|
|
|
2000-01-23 23:23:46 +00:00
|
|
|
// implementation only from now on
|
|
|
|
// -------------------------------
|
|
|
|
|
|
|
|
// should be called in responde to WM_MOUSEMOVE
|
1999-01-31 23:38:10 +00:00
|
|
|
void RelayEvent(WXMSG *msg);
|
|
|
|
|
|
|
|
private:
|
2000-01-23 23:23:46 +00:00
|
|
|
// the one and only one tooltip control we use - never access it directly
|
|
|
|
// but use GetToolTipCtrl() which will create it when needed
|
1999-11-25 23:28:41 +00:00
|
|
|
static WXHWND ms_hwndTT;
|
|
|
|
|
|
|
|
// create the tooltip ctrl if it doesn't exist yet and return its HWND
|
2000-01-23 23:23:46 +00:00
|
|
|
static WXHWND GetToolTipCtrl();
|
1999-01-31 23:38:10 +00:00
|
|
|
|
|
|
|
// remove this tooltip from the tooltip control
|
|
|
|
void Remove();
|
|
|
|
|
1999-11-25 23:28:41 +00:00
|
|
|
// add a window to the tooltip control
|
|
|
|
void Add(WXHWND hwnd);
|
|
|
|
|
1999-01-31 23:38:10 +00:00
|
|
|
wxString m_text; // tooltip text
|
|
|
|
wxWindow *m_window; // window we're associated with
|
2001-07-14 03:23:30 +00:00
|
|
|
|
|
|
|
DECLARE_ABSTRACT_CLASS(wxToolTip)
|
1999-01-31 23:38:10 +00:00
|
|
|
};
|
1999-09-13 19:19:57 +00:00
|
|
|
|