]> git.saurik.com Git - wxWidgets.git/blob - include/wx/osx/tglbtn.h
Applying patch #10784: eliminate gauge flicker
[wxWidgets.git] / include / wx / osx / tglbtn.h
1 /////////////////////////////////////////////////////////////////////////////
2 // Name: wx/mac/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 // License: wxWindows licence
11 /////////////////////////////////////////////////////////////////////////////
12
13 #ifndef _WX_TOGGLEBUTTON_H_
14 #define _WX_TOGGLEBUTTON_H_
15
16 WXDLLIMPEXP_DATA_CORE(extern const char) wxCheckBoxNameStr[];
17
18
19 class WXDLLIMPEXP_CORE wxBitmapToggleButton : public wxToggleButtonBase
20 {
21 public:
22 wxBitmapToggleButton() {}
23 wxBitmapToggleButton(wxWindow *parent,
24 wxWindowID id,
25 const wxBitmap& label,
26 const wxPoint& pos = wxDefaultPosition,
27 const wxSize& size = wxDefaultSize,
28 long style = 0,
29 const wxValidator& validator = wxDefaultValidator,
30 const wxString& name = wxCheckBoxNameStr)
31 {
32 Create(parent, id, label, pos, size, style, validator, name);
33 }
34
35 bool Create(wxWindow *parent,
36 wxWindowID id,
37 const wxBitmap& label,
38 const wxPoint& pos = wxDefaultPosition,
39 const wxSize& size = wxDefaultSize,
40 long style = 0,
41 const wxValidator& validator = wxDefaultValidator,
42 const wxString& name = wxCheckBoxNameStr);
43
44 virtual void SetValue(bool value);
45 virtual bool GetValue() const ;
46
47 virtual bool OSXHandleClicked( double timestampsec );
48
49 virtual void Command(wxCommandEvent& event);
50
51 private:
52 wxBitmap m_bitmap;
53
54 int m_marginX,
55 m_marginY;
56
57 protected:
58 virtual wxBorder GetDefaultBorder() const { return wxBORDER_NONE; }
59 virtual wxSize DoGetBestSize() const;
60
61 private:
62 DECLARE_DYNAMIC_CLASS_NO_COPY(wxBitmapToggleButton)
63 };
64
65
66 class WXDLLIMPEXP_CORE wxToggleButton : public wxToggleButtonBase
67 {
68 public:
69 wxToggleButton() {}
70 wxToggleButton(wxWindow *parent,
71 wxWindowID id,
72 const wxString& label,
73 const wxPoint& pos = wxDefaultPosition,
74 const wxSize& size = wxDefaultSize,
75 long style = 0,
76 const wxValidator& validator = wxDefaultValidator,
77 const wxString& name = wxCheckBoxNameStr)
78 {
79 Create(parent, id, label, pos, size, style, validator, name);
80 }
81
82 bool Create(wxWindow *parent,
83 wxWindowID id,
84 const wxString& label,
85 const wxPoint& pos = wxDefaultPosition,
86 const wxSize& size = wxDefaultSize,
87 long style = 0,
88 const wxValidator& validator = wxDefaultValidator,
89 const wxString& name = wxCheckBoxNameStr);
90
91 virtual void SetValue(bool value);
92 virtual bool GetValue() const ;
93
94 virtual bool OSXHandleClicked( double timestampsec );
95
96 virtual void Command(wxCommandEvent& event);
97
98 protected:
99 virtual wxBorder GetDefaultBorder() const { return wxBORDER_NONE; }
100 virtual wxSize DoGetBestSize() const;
101
102 private:
103 DECLARE_DYNAMIC_CLASS_NO_COPY(wxToggleButton)
104 };
105
106 #endif // _WX_TOGGLEBUTTON_H_
107