wxWidgets/include/wx/cocoa/taskbar.h

49 lines
1.5 KiB
C++

/////////////////////////////////////////////////////////////////////////
// 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__