]> git.saurik.com Git - wxWidgets.git/blame - include/wx/generic/accel.h
avoid a bug in Carbon headers
[wxWidgets.git] / include / wx / generic / accel.h
CommitLineData
21aeca5e
VZ
1/////////////////////////////////////////////////////////////////////////////
2// Name: wx/generic/accel.h
3// Purpose: wxAcceleratorTable class
4// Author: Robert Roebling
5// RCS-ID: $Id$
6// Copyright: (c) Robert Roebling
7// Licence: wxWindows licence
8/////////////////////////////////////////////////////////////////////////////
9
10#ifndef _WX_GENERIC_ACCEL_H_
11#define _WX_GENERIC_ACCEL_H_
12
12028905 13#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
21aeca5e
VZ
14#pragma interface "accel.h"
15#endif
16
17class WXDLLEXPORT wxKeyEvent;
18
19// ----------------------------------------------------------------------------
20// wxAcceleratorTable
21// ----------------------------------------------------------------------------
22
23class WXDLLEXPORT wxAcceleratorTable : public wxObject
24{
25public:
26 wxAcceleratorTable();
3c674514 27 wxAcceleratorTable(int n, const wxAcceleratorEntry entries[]);
21aeca5e
VZ
28 virtual ~wxAcceleratorTable();
29
30 wxAcceleratorTable(const wxAcceleratorTable& accel)
d84afea9
GD
31 : wxObject()
32 { Ref(accel); }
21aeca5e
VZ
33 wxAcceleratorTable& operator=(const wxAcceleratorTable& accel)
34 { if ( m_refData != accel.m_refData ) Ref(accel); return *this; }
35
36 bool operator==(const wxAcceleratorTable& accel) const
37 { return m_refData == accel.m_refData; } // FIXME: this is wrong (VZ)
38 bool operator!=(const wxAcceleratorTable& accel) const
39 { return !(*this == accel); }
40
41 bool Ok() const;
42
43 void Add(const wxAcceleratorEntry& entry);
44 void Remove(const wxAcceleratorEntry& entry);
45
46 // implementation
47 // --------------
48
49 wxMenuItem *GetMenuItem(const wxKeyEvent& event) const;
50 int GetCommand(const wxKeyEvent& event) const;
51
52 const wxAcceleratorEntry *GetEntry(const wxKeyEvent& event) const;
53
fa03793d
VS
54protected:
55 // ref counting code
56 virtual wxObjectRefData *CreateRefData() const;
57 virtual wxObjectRefData *CloneRefData(const wxObjectRefData *data) const;
58
21aeca5e
VZ
59private:
60 DECLARE_DYNAMIC_CLASS(wxAcceleratorTable)
61};
62
63#endif // _WX_GENERIC_ACCEL_H_
64