]> git.saurik.com Git - wxWidgets.git/blob - include/wx/osx/tglbtn.h
fixing overrelease and out-of-bounds write, fixes #13725
[wxWidgets.git] / include / wx / osx / tglbtn.h
1 /////////////////////////////////////////////////////////////////////////////
2 // Name: wx/osx/tglbtn.h
3 // Purpose: Declaration of the wxToggleButton class, which implements a
4 // toggle button under wxMac.
5 // Author: Stefan Csomor
6 // Modified by:
7 // Created: 08.02.01
8 // RCS-ID: $Id$
9 // Copyright: (c) 2004 Stefan Csomor
10 // Licence: wxWindows licence
11 /////////////////////////////////////////////////////////////////////////////
12
13 #ifndef _WX_TOGGLEBUTTON_H_
14 #define _WX_TOGGLEBUTTON_H_
15
16 class WXDLLIMPEXP_CORE wxToggleButton : public wxToggleButtonBase
17 {
18 public:
19 wxToggleButton() {}
20 wxToggleButton(wxWindow *parent,
21 wxWindowID id,
22 const wxString& label,
23 const wxPoint& pos = wxDefaultPosition,
24 const wxSize& size = wxDefaultSize,
25 long style = 0,
26 const wxValidator& validator = wxDefaultValidator,
27 const wxString& name = wxCheckBoxNameStr)
28 {
29 Create(parent, id, label, pos, size, style, validator, name);
30 }
31
32 bool Create(wxWindow *parent,
33 wxWindowID id,
34 const wxString& label,
35 const wxPoint& pos = wxDefaultPosition,
36 const wxSize& size = wxDefaultSize,
37 long style = 0,
38 const wxValidator& validator = wxDefaultValidator,
39 const wxString& name = wxCheckBoxNameStr);
40
41 virtual void SetValue(bool value);
42 virtual bool GetValue() const ;
43
44 virtual bool OSXHandleClicked( double timestampsec );
45
46 virtual void Command(wxCommandEvent& event);
47
48 protected:
49 virtual wxBorder GetDefaultBorder() const { return wxBORDER_NONE; }
50
51 private:
52 DECLARE_DYNAMIC_CLASS_NO_COPY(wxToggleButton)
53 };
54
55
56 class WXDLLIMPEXP_CORE wxBitmapToggleButton : public wxToggleButton
57 {
58 public:
59 wxBitmapToggleButton() {}
60 wxBitmapToggleButton(wxWindow *parent,
61 wxWindowID id,
62 const wxBitmap& label,
63 const wxPoint& pos = wxDefaultPosition,
64 const wxSize& size = wxDefaultSize,
65 long style = 0,
66 const wxValidator& validator = wxDefaultValidator,
67 const wxString& name = wxCheckBoxNameStr)
68 {
69 Create(parent, id, label, pos, size, style, validator, name);
70 }
71
72 bool Create(wxWindow *parent,
73 wxWindowID id,
74 const wxBitmap& label,
75 const wxPoint& pos = wxDefaultPosition,
76 const wxSize& size = wxDefaultSize,
77 long style = 0,
78 const wxValidator& validator = wxDefaultValidator,
79 const wxString& name = wxCheckBoxNameStr);
80
81 private:
82 DECLARE_DYNAMIC_CLASS_NO_COPY(wxBitmapToggleButton)
83 };
84
85 #endif // _WX_TOGGLEBUTTON_H_
86