1 /////////////////////////////////////////////////////////////////////////////
2 // Name:        wx/msw/tglbtn.h
3 // Purpose:     Declaration of the wxToggleButton class, which implements a
4 //              toggle button under wxMSW.
5 // Author:      John Norris, minor changes by Axel Schlueter
6 // Modified by:
7 // Created:     08.02.01
8 // RCS-ID:      $Id: tglbtn.h 37393 2006-02-08 21:47:09Z VZ $
9 // Copyright:   (c) 2000 Johnny C. Norris II
10 // License:     wxWindows licence
11 /////////////////////////////////////////////////////////////////////////////
12 
13 #ifndef _WX_TOGGLEBUTTON_H_
14 #define _WX_TOGGLEBUTTON_H_
15 
16 extern WXDLLEXPORT_DATA(const wxChar) wxCheckBoxNameStr[];
17 
18 // Checkbox item (single checkbox)
19 class WXDLLEXPORT wxToggleButton : public wxControl
20 {
21 public:
wxToggleButton()22     wxToggleButton() {}
23     wxToggleButton(wxWindow *parent,
24                    wxWindowID id,
25                    const wxString& 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 wxString& 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 MSWCommand(WXUINT param, WXWORD id);
48     virtual void Command(wxCommandEvent& event);
49     virtual WXDWORD MSWGetStyle(long flags, WXDWORD *exstyle = NULL) const;
50 
51 protected:
52     virtual wxSize DoGetBestSize() const;
53     virtual wxBorder GetDefaultBorder() const;
54 
55 private:
56     DECLARE_DYNAMIC_CLASS_NO_COPY(wxToggleButton)
57 };
58 
59 #endif // _WX_TOGGLEBUTTON_H_
60 
61