af7e08a4a5
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@29558 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
63 lines
1.6 KiB
C++
63 lines
1.6 KiB
C++
/////////////////////////////////////////////////////////////////////////
|
|
// File: wx/mac/taskbarosx.h
|
|
// Purpose: Defines wxTaskBarIcon class for OSX
|
|
// Author: Ryan Norton
|
|
// Modified by:
|
|
// Created: 04/04/2003
|
|
// RCS-ID: $Id$
|
|
// Copyright: (c) Ryan Norton, 2003
|
|
// Licence: wxWindows licence
|
|
/////////////////////////////////////////////////////////////////////////
|
|
|
|
#ifndef _TASKBAR_H_
|
|
#define _TASKBAR_H_
|
|
|
|
#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
|
|
#pragma interface "taskbarosx.h"
|
|
#endif
|
|
|
|
class WXDLLEXPORT wxIcon;
|
|
class WXDLLEXPORT wxMenu;
|
|
|
|
class WXDLLEXPORT wxTaskBarIcon : public wxTaskBarIconBase
|
|
{
|
|
public:
|
|
//type of taskbar item to create
|
|
//TODO: currently only DOCK is implemented
|
|
enum wxTaskBarIconType
|
|
{
|
|
DOCK,
|
|
STATUSITEM,
|
|
MENUEXTRA
|
|
};
|
|
|
|
wxTaskBarIcon(const wxTaskBarIconType& nType = DOCK);
|
|
virtual ~wxTaskBarIcon();
|
|
|
|
inline bool IsOk() const { return true; }
|
|
inline bool IsIconInstalled() const { return m_iconAdded; }
|
|
|
|
//TODO: not tested extensively
|
|
bool SetIcon(const wxIcon& icon, const wxString& tooltip = wxEmptyString);
|
|
bool RemoveIcon();
|
|
//TODO: end not tested extensively
|
|
|
|
//pops up the menu
|
|
bool PopupMenu(wxMenu *menu);
|
|
|
|
//internal functions - don't call
|
|
wxMenu* GetCurrentMenu();
|
|
wxMenu* DoCreatePopupMenu();
|
|
|
|
protected:
|
|
wxTaskBarIconType m_nType;
|
|
void* m_pEventHandlerRef;
|
|
wxMenu* m_pMenu;
|
|
WXHMENU m_theLastMenu;
|
|
bool m_iconAdded;
|
|
|
|
DECLARE_DYNAMIC_CLASS(wxTaskBarIcon)
|
|
};
|
|
#endif
|
|
// _TASKBAR_H_
|