]> git.saurik.com Git - wxWidgets.git/blame - include/wx/msw/taskbar.h
Applied wxStackWalker improvement part of
[wxWidgets.git] / include / wx / msw / taskbar.h
CommitLineData
2bda0e17 1/////////////////////////////////////////////////////////////////////////
fa1c12bd
VZ
2// File: wx/msw/taskbar.h
3// Purpose: Defines wxTaskBarIcon class for manipulating icons on the
2bda0e17
KB
4// Windows task bar.
5// Author: Julian Smart
1e6d9c20 6// Modified by: Vaclav Slavik
2bda0e17
KB
7// Created: 24/3/98
8// RCS-ID: $Id$
fa1c12bd 9// Copyright: (c) Julian Smart
65571936 10// Licence: wxWindows licence
2bda0e17
KB
11/////////////////////////////////////////////////////////////////////////
12
13#ifndef _TASKBAR_H_
14#define _TASKBAR_H_
15
d162a7ee
VZ
16#include "wx/icon.h"
17
1e6d9c20
VS
18// private helper class:
19class WXDLLIMPEXP_ADV wxTaskBarIconWindow;
2bda0e17 20
131f235d 21class WXDLLIMPEXP_ADV wxTaskBarIcon: public wxTaskBarIconBase
6af507f7 22{
fc7a2a60 23 DECLARE_DYNAMIC_CLASS_NO_COPY(wxTaskBarIcon)
2bda0e17 24public:
1e6d9c20
VS
25 wxTaskBarIcon();
26 virtual ~wxTaskBarIcon();
2bda0e17
KB
27
28// Accessors
1e6d9c20 29 inline bool IsOk() const { return true; }
2bda0e17
KB
30 inline bool IsIconInstalled() const { return m_iconAdded; }
31
32// Operations
2b5f62a0 33 bool SetIcon(const wxIcon& icon, const wxString& tooltip = wxEmptyString);
2bda0e17 34 bool RemoveIcon(void);
69ecd30f 35 bool PopupMenu(wxMenu *menu); //, int x, int y);
2bda0e17 36
6af507f7
VS
37#if WXWIN_COMPATIBILITY_2_4
38 wxDEPRECATED( bool IsOK() const );
39
2bda0e17 40// Overridables
56194595
RD
41 virtual void OnMouseMove(wxEvent&);
42 virtual void OnLButtonDown(wxEvent&);
43 virtual void OnLButtonUp(wxEvent&);
44 virtual void OnRButtonDown(wxEvent&);
45 virtual void OnRButtonUp(wxEvent&);
46 virtual void OnLButtonDClick(wxEvent&);
47 virtual void OnRButtonDClick(wxEvent&);
6af507f7 48#endif
2bda0e17
KB
49
50// Implementation
1e6d9c20
VS
51protected:
52 friend class wxTaskBarIconWindow;
dda36afd 53 long WindowProc(unsigned int msg, unsigned int wParam, long lParam);
1e6d9c20 54 void RegisterWindowMessages();
2bda0e17
KB
55
56// Data members
57protected:
1e6d9c20
VS
58 wxTaskBarIconWindow *m_win;
59 bool m_iconAdded;
60 wxIcon m_icon;
61 wxString m_strTooltip;
56194595 62
6af507f7 63#if WXWIN_COMPATIBILITY_2_4
69ecd30f 64 // non-virtual default event handlers to forward events to the virtuals
6466d41e
VS
65 void _OnMouseMove(wxTaskBarIconEvent&);
66 void _OnLButtonDown(wxTaskBarIconEvent&);
67 void _OnLButtonUp(wxTaskBarIconEvent&);
68 void _OnRButtonDown(wxTaskBarIconEvent&);
69 void _OnRButtonUp(wxTaskBarIconEvent&);
70 void _OnLButtonDClick(wxTaskBarIconEvent&);
71 void _OnRButtonDClick(wxTaskBarIconEvent&);
69ecd30f 72
6164d85e 73 DECLARE_EVENT_TABLE()
6af507f7 74#endif
2bda0e17
KB
75};
76
bfbb0b4c 77#if WXWIN_COMPATIBILITY_2_4
6af507f7
VS
78inline bool wxTaskBarIcon::IsOK() const { return IsOk(); }
79#endif
69ecd30f 80
2bda0e17
KB
81#endif
82 // _TASKBAR_H_