1 /////////////////////////////////////////////////////////////////////////
2 // File: wx/cocoa/taskbar.h
3 // Purpose: Defines wxTaskBarIcon class
4 // Author: David Elliott
8 // Copyright: (c) 2004 David Elliott
9 // Licence: wxWindows licence
10 /////////////////////////////////////////////////////////////////////////
12 #ifndef _WX_COCOA_TASKBAR_H__
13 #define _WX_COCOA_TASKBAR_H__
15 #if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
16 #pragma interface "taskbar.h"
21 class WXDLLEXPORT wxIcon
;
22 class WXDLLEXPORT wxMenu
;
24 class wxTaskBarIconCocoaImpl
;
26 class WXDLLEXPORT wxTaskBarIcon
: public wxTaskBarIconBase
28 friend class wxTaskBarIconCocoaImpl
;
29 DECLARE_DYNAMIC_CLASS_NO_COPY(wxTaskBarIcon
)
31 //type of taskbar item to create (currently only DOCK is implemented)
32 enum wxTaskBarIconType
35 // , STATUSITEM // TODO: Implement using NSStatusItem w/o custom NSView
36 // , MENUEXTRA // Menu extras require undocumented hacks
37 , DEFAULT_TYPE
= CUSTOM_STATUSITEM
40 // Only one wxTaskBarIcon can be of the Dock type so by default
41 // create NSStatusItem for maximum source compatibility.
42 wxTaskBarIcon(wxTaskBarIconType iconType
= DEFAULT_TYPE
);
43 virtual ~wxTaskBarIcon();
45 bool SetIcon(const wxIcon
& icon
, const wxString
& tooltip
= wxEmptyString
);
47 bool PopupMenu(wxMenu
*menu
); //, int x, int y);
49 wxTaskBarIconCocoaImpl
*m_impl
;
52 #endif // _WX_COCOA_TASKBAR_H__