X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/bfc6fde4b1dd5bfd8ae22839ff9a69cf24eb9120..213ceb3f0e7b88a09d756dd181f14ecb5bd44d57:/include/wx/motif/checkbox.h diff --git a/include/wx/motif/checkbox.h b/include/wx/motif/checkbox.h index e6ca1a43ae..3dd762c3cc 100644 --- a/include/wx/motif/checkbox.h +++ b/include/wx/motif/checkbox.h @@ -12,80 +12,55 @@ #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 -{ - DECLARE_DYNAMIC_CLASS(wxCheckBox) - - public: - inline wxCheckBox() { } - 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) - { - Create(parent, id, label, pos, size, style, validator, name); - } - - bool Create(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); - virtual void SetValue(bool); - virtual bool GetValue() const ; - virtual void Command(wxCommandEvent& event); - -// Implementation - virtual void ChangeFont(bool keepOriginalSize = TRUE); - virtual void ChangeBackgroundColour(); - virtual void ChangeForegroundColour(); -}; - -class WXDLLEXPORT wxBitmapCheckBox: public wxCheckBox +class WXDLLEXPORT wxCheckBox: public wxCheckBoxBase { - DECLARE_DYNAMIC_CLASS(wxBitmapCheckBox) - + DECLARE_DYNAMIC_CLASS(wxCheckBox) + 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) + 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); } + + bool Create(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); + virtual void SetValue(bool); + virtual bool GetValue() const ; + virtual void Command(wxCommandEvent& event); + + // Implementation + virtual void ChangeBackgroundColour(); +private: + // common part of all constructors + void Init() + { + 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 DoSet3StateValue(wxCheckBoxState state); - virtual void SetLabel(const wxBitmap& bitmap); - virtual void SetLabel(const wxString& label) { wxControl::SetLabel(label); }; + virtual wxCheckBoxState DoGet3StateValue() const; -protected: - virtual void DoSetSize(int x, int y, - int width, int height, - int sizeFlags = wxSIZE_AUTO); + // public for the callback +public: + // either exEVT_COMMAND_CHECKBOX_CLICKED or ..._TOGGLEBUTTON_CLICKED + wxEventType m_evtType; }; + #endif - // _WX_CHECKBOX_H_ +// _WX_CHECKBOX_H_