]>
Commit | Line | Data |
---|---|---|
1 | ///////////////////////////////////////////////////////////////////////// | |
2 | // File: wx/mac/taskbarosx.h | |
3 | // Purpose: Defines wxTaskBarIcon class for OSX | |
4 | // Author: Ryan Norton | |
5 | // Modified by: | |
6 | // Created: 04/04/2003 | |
7 | // RCS-ID: $Id$ | |
8 | // Copyright: (c) Ryan Norton, 2003 | |
9 | // Licence: wxWindows licence | |
10 | ///////////////////////////////////////////////////////////////////////// | |
11 | ||
12 | #ifndef _TASKBAR_H_ | |
13 | #define _TASKBAR_H_ | |
14 | ||
15 | class WXDLLEXPORT wxIcon; | |
16 | class WXDLLEXPORT wxMenu; | |
17 | ||
18 | class WXDLLEXPORT wxTaskBarIcon : public wxTaskBarIconBase | |
19 | { | |
20 | public: | |
21 | //type of taskbar item to create | |
22 | //TODO: currently only DOCK is implemented | |
23 | enum wxTaskBarIconType | |
24 | { | |
25 | DOCK, | |
26 | STATUSITEM, | |
27 | MENUEXTRA | |
28 | }; | |
29 | ||
30 | wxTaskBarIcon(const wxTaskBarIconType& nType = DOCK); | |
31 | virtual ~wxTaskBarIcon(); | |
32 | ||
33 | inline bool IsOk() const { return true; } | |
34 | inline bool IsIconInstalled() const { return m_iconAdded; } | |
35 | ||
36 | //TODO: not tested extensively | |
37 | bool SetIcon(const wxIcon& icon, const wxString& tooltip = wxEmptyString); | |
38 | bool RemoveIcon(); | |
39 | //TODO: end not tested extensively | |
40 | ||
41 | //pops up the menu | |
42 | bool PopupMenu(wxMenu *menu); | |
43 | ||
44 | //internal functions - don't call | |
45 | wxMenu* GetCurrentMenu(); | |
46 | wxMenu* DoCreatePopupMenu(); | |
47 | ||
48 | protected: | |
49 | wxTaskBarIconType m_nType; | |
50 | void* m_pEventHandlerRef; | |
51 | wxMenu* m_pMenu; | |
52 | WXHMENU m_theLastMenu; | |
53 | bool m_iconAdded; | |
54 | ||
55 | void OnRightDown(wxTaskBarIconEvent& evt); | |
56 | ||
57 | DECLARE_DYNAMIC_CLASS(wxTaskBarIcon) | |
58 | }; | |
59 | #endif | |
60 | // _TASKBAR_H_ |