1///////////////////////////////////////////////////////////////////////////////
2// Name:        wx/mac/carbon/tooltip.h
3// Purpose:     wxToolTip class - tooltip control
4// Author:      Stefan Csomor
5// Modified by:
6// Created:     31.01.99
7// RCS-ID:      $Id: tooltip.h 39204 2006-05-18 06:45:59Z ABX $
8// Copyright:   (c) 1999 Robert Roebling, Vadim Zeitlin, Stefan Csomor
9// Licence:     wxWindows licence
10///////////////////////////////////////////////////////////////////////////////
11
12#ifndef _WX_MAC_TOOLTIP_H_
13#define _WX_MAC_TOOLTIP_H_
14
15#include "wx/string.h"
16#include "wx/event.h"
17
18class wxToolTip : public wxObject
19{
20public:
21    // ctor & dtor
22    wxToolTip(const wxString &tip);
23    virtual ~wxToolTip();
24
25    // accessors
26        // tip text
27    void SetTip(const wxString& tip);
28    const wxString& GetTip() const { return m_text; }
29
30        // the window we're associated with
31    void SetWindow(wxWindow *win);
32    wxWindow *GetWindow() const { return m_window; }
33
34    // controlling tooltip behaviour: globally change tooltip parameters
35        // enable or disable the tooltips globally
36    static void Enable(bool flag);
37        // set the delay after which the tooltip appears
38    static void SetDelay(long milliseconds);
39    static void NotifyWindowDelete( WXHWND win ) ;
40
41    // implementation only from now on
42    // -------------------------------
43
44    // should be called in response to mouse events
45    static void RelayEvent(wxWindow *win , wxMouseEvent &event);
46    static void RemoveToolTips();
47
48private:
49    wxString  m_text;           // tooltip text
50    wxWindow *m_window;         // window we're associated with
51    DECLARE_ABSTRACT_CLASS(wxToolTip)
52};
53
54#endif // _WX_MAC_TOOLTIP_H_
55