X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/83df96d63a52ebb08b9e32549dc255354b4a18d0..26531700c7ec84872c60899ce6219954499086da:/include/wx/motif/checkbox.h diff --git a/include/wx/motif/checkbox.h b/include/wx/motif/checkbox.h index eba4bea34f..3dd762c3cc 100644 --- a/include/wx/motif/checkbox.h +++ b/include/wx/motif/checkbox.h @@ -12,28 +12,25 @@ #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); } @@ -47,45 +44,23 @@ public: 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_