#ifndef _WX_CHECKBOX_H_
#define _WX_CHECKBOX_H_
-#ifdef __GNUG__
+#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
#pragma interface "checkbox.h"
#endif
-#include "wx/control.h"
-
-WXDLLEXPORT_DATA(extern const char*) wxCheckBoxNameStr;
-
// Checkbox item (single checkbox)
-class WXDLLEXPORT wxBitmap;
-class WXDLLEXPORT wxCheckBox: public wxControl
+class WXDLLEXPORT wxCheckBox: public wxCheckBoxBase
{
DECLARE_DYNAMIC_CLASS(wxCheckBox)
public:
- inline wxCheckBox() { }
+ inline wxCheckBox() { Init(); }
inline wxCheckBox(wxWindow *parent, wxWindowID id, const wxString& label,
const wxPoint& pos = wxDefaultPosition,
const wxSize& size = wxDefaultSize, long style = 0,
const wxValidator& validator = wxDefaultValidator,
const wxString& name = wxCheckBoxNameStr)
{
+ Init();
+
Create(parent, id, label, pos, size, style, validator, name);
}
virtual void Command(wxCommandEvent& event);
// Implementation
- virtual void ChangeFont(bool keepOriginalSize = TRUE);
virtual void ChangeBackgroundColour();
- virtual void ChangeForegroundColour();
-};
-
-class WXDLLEXPORT wxBitmapCheckBox: public wxCheckBox
-{
- DECLARE_DYNAMIC_CLASS(wxBitmapCheckBox)
-
-public:
- int checkWidth;
- int checkHeight;
-
- inline wxBitmapCheckBox() { checkWidth = -1; checkHeight = -1; }
- inline wxBitmapCheckBox(wxWindow *parent, wxWindowID id, const wxBitmap *label,
- const wxPoint& pos = wxDefaultPosition,
- const wxSize& size = wxDefaultSize, long style = 0,
- const wxValidator& validator = wxDefaultValidator,
- const wxString& name = wxCheckBoxNameStr)
+private:
+ // common part of all constructors
+ void Init()
{
- Create(parent, id, label, pos, size, style, validator, name);
+ m_evtType = wxEVT_COMMAND_CHECKBOX_CLICKED;
}
-
- bool Create(wxWindow *parent, wxWindowID id, const wxBitmap *bitmap,
- const wxPoint& pos = wxDefaultPosition,
- const wxSize& size = wxDefaultSize, long style = 0,
- const wxValidator& validator = wxDefaultValidator,
- const wxString& name = wxCheckBoxNameStr);
-
- virtual void SetValue(bool value);
- virtual bool GetValue() const;
-
- virtual void SetLabel(const wxBitmap& bitmap);
- virtual void SetLabel(const wxString& label) { wxControl::SetLabel(label); };
-
-protected:
- virtual void DoSetSize(int x, int y,
- int width, int height,
- int sizeFlags = wxSIZE_AUTO);
+
+ virtual void DoSet3StateValue(wxCheckBoxState state);
+
+ virtual wxCheckBoxState DoGet3StateValue() const;
+
+ // public for the callback
+public:
+ // either exEVT_COMMAND_CHECKBOX_CLICKED or ..._TOGGLEBUTTON_CLICKED
+ wxEventType m_evtType;
};
+
#endif
// _WX_CHECKBOX_H_