///////////////////////////////////////////////////////////////////////// // File: wx/cocoa/taskbar.h // Purpose: Defines wxTaskBarIcon class // Author: David Elliott // Modified by: // Created: 2004/01/24 // RCS-ID: $Id$ // Copyright: (c) 2004 David Elliott // Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////// #ifndef _WX_COCOA_TASKBAR_H__ #define _WX_COCOA_TASKBAR_H__ #include "wx/icon.h" class WXDLLIMPEXP_FWD_CORE wxIcon; class WXDLLIMPEXP_FWD_CORE wxMenu; class wxTaskBarIconCocoaImpl; class WXDLLEXPORT wxTaskBarIcon : public wxTaskBarIconBase { friend class wxTaskBarIconCocoaImpl; DECLARE_DYNAMIC_CLASS_NO_COPY(wxTaskBarIcon) public: //type of taskbar item to create (currently only DOCK is implemented) enum wxTaskBarIconType { DOCK , CUSTOM_STATUSITEM // , STATUSITEM // TODO: Implement using NSStatusItem w/o custom NSView // , MENUEXTRA // Menu extras require undocumented hacks , DEFAULT_TYPE = CUSTOM_STATUSITEM }; // Only one wxTaskBarIcon can be of the Dock type so by default // create NSStatusItem for maximum source compatibility. wxTaskBarIcon(wxTaskBarIconType iconType = DEFAULT_TYPE); virtual ~wxTaskBarIcon(); bool SetIcon(const wxIcon& icon, const wxString& tooltip = wxEmptyString); bool RemoveIcon(); bool PopupMenu(wxMenu *menu); //, int x, int y); protected: wxTaskBarIconCocoaImpl *m_impl; }; #endif // _WX_COCOA_TASKBAR_H__