]>
git.saurik.com Git - wxWidgets.git/blob - include/wx/msw/checkbox.h
1 /////////////////////////////////////////////////////////////////////////////
2 // Name: wx/msw/checkbox.h
3 // Purpose: wxCheckBox class
4 // Author: Julian Smart
8 // Copyright: (c) Julian Smart
9 // Licence: wxWindows licence
10 /////////////////////////////////////////////////////////////////////////////
12 #ifndef _WX_CHECKBOX_H_
13 #define _WX_CHECKBOX_H_
15 // Checkbox item (single checkbox)
16 class WXDLLEXPORT wxCheckBox
: public wxCheckBoxBase
20 wxCheckBox(wxWindow
*parent
,
22 const wxString
& label
,
23 const wxPoint
& pos
= wxDefaultPosition
,
24 const wxSize
& size
= wxDefaultSize
,
26 const wxValidator
& validator
= wxDefaultValidator
,
27 const wxString
& name
= wxCheckBoxNameStr
)
29 Create(parent
, id
, label
, pos
, size
, style
, validator
, name
);
32 bool Create(wxWindow
*parent
,
34 const wxString
& label
,
35 const wxPoint
& pos
= wxDefaultPosition
,
36 const wxSize
& size
= wxDefaultSize
,
38 const wxValidator
& validator
= wxDefaultValidator
,
39 const wxString
& name
= wxCheckBoxNameStr
);
41 virtual void SetValue(bool value
);
42 virtual bool GetValue() const;
44 // override some base class virtuals
45 virtual bool MSWCommand(WXUINT param
, WXWORD id
);
46 virtual void Command(wxCommandEvent
& event
);
47 virtual bool SetForegroundColour(const wxColour
& colour
);
48 virtual bool MSWOnDraw(WXDRAWITEMSTRUCT
*item
);
51 virtual wxSize
DoGetBestSize() const;
53 virtual void DoSet3StateValue(wxCheckBoxState value
);
54 virtual wxCheckBoxState
DoGet3StateValue() const;
56 // make the checkbox owner drawn or reset it to normal style
57 void MakeOwnerDrawn(bool ownerDrawn
);
59 // return true if this checkbox is owner drawn
60 bool IsOwnerDrawn() const;
63 // common part of all ctors
66 // event handlers used by owner-drawn checkbox
67 void OnMouseEnterOrLeave(wxMouseEvent
& event
);
68 void OnMouseLeft(wxMouseEvent
& event
);
69 void OnFocus(wxFocusEvent
& event
);
72 // current state of the checkbox
73 wxCheckBoxState m_state
;
75 // true if the checkbox is currently pressed
78 // true if mouse is currently over the control
82 DECLARE_DYNAMIC_CLASS_NO_COPY(wxCheckBox
)