X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/f40fdaa339e19bbdf60c9c065c82daae4ca77b36..03773e400b6ff2692f2a9ba045d652c3b7b7109d:/include/wx/gtk/tglbtn.h diff --git a/include/wx/gtk/tglbtn.h b/include/wx/gtk/tglbtn.h index 06f317f52b..aa75f3898c 100644 --- a/include/wx/gtk/tglbtn.h +++ b/include/wx/gtk/tglbtn.h @@ -7,7 +7,7 @@ // Created: 08.02.01 // RCS-ID: $Id$ // Copyright: (c) 2000 Johnny C. Norris II -// License: Rocketeer license +// License: wxWindows licence ///////////////////////////////////////////////////////////////////////////// #ifndef _WX_GTK_TOGGLEBUTTON_H_ @@ -19,25 +19,25 @@ // classes //----------------------------------------------------------------------------- -class wxToggleButton; -class wxToggleBitmapButton; +class WXDLLIMPEXP_FWD_CORE wxToggleButton; +class WXDLLIMPEXP_FWD_CORE wxToggleBitmapButton; //----------------------------------------------------------------------------- // global data //----------------------------------------------------------------------------- -extern const wxChar *wxCheckBoxNameStr; +extern WXDLLIMPEXP_DATA_CORE(const char) wxCheckBoxNameStr[]; //----------------------------------------------------------------------------- -// wxToggleBitmapButton +// wxBitmapToggleButton //----------------------------------------------------------------------------- -class wxToggleBitmapButton: public wxControl +class WXDLLIMPEXP_CORE wxBitmapToggleButton: public wxToggleButtonBase { public: // construction/destruction - wxToggleBitmapButton() {} - wxToggleBitmapButton(wxWindow *parent, + wxBitmapToggleButton() {} + wxBitmapToggleButton(wxWindow *parent, wxWindowID id, const wxBitmap& label, const wxPoint& pos = wxDefaultPosition, @@ -63,32 +63,37 @@ public: bool GetValue() const; // Set the label - void SetLabel(const wxBitmap& label); - bool Enable(bool enable = TRUE); + virtual void SetLabel(const wxString& label) { wxControl::SetLabel(label); } + virtual void SetLabel(const wxBitmap& label); + bool Enable(bool enable = true); static wxVisualAttributes GetClassDefaultAttributes(wxWindowVariant variant = wxWINDOW_VARIANT_NORMAL); // implementation - bool m_blockEvent; wxBitmap m_bitmap; void OnSetBitmap(); - void DoApplyWidgetStyle(GtkRcStyle *style); - bool IsOwnGtkWindow(GdkWindow *window); - virtual void OnInternalIdle(); +protected: + void GTKDisableEvents(); + void GTKEnableEvents(); + virtual wxSize DoGetBestSize() const; + virtual void DoApplyWidgetStyle(GtkRcStyle *style); + virtual GdkWindow *GTKGetWindow(wxArrayGdkWindows& windows) const; private: - DECLARE_DYNAMIC_CLASS(wxToggleBitmapButton) + typedef wxToggleButtonBase base_type; + + DECLARE_DYNAMIC_CLASS(wxBitmapToggleButton) }; //----------------------------------------------------------------------------- // wxToggleButton //----------------------------------------------------------------------------- -class wxToggleButton: public wxControl +class WXDLLIMPEXP_CORE wxToggleButton: public wxToggleButtonBase { public: // construction/destruction @@ -120,21 +125,22 @@ public: // Set the label void SetLabel(const wxString& label); - bool Enable(bool enable = TRUE); + bool Enable(bool enable = true); static wxVisualAttributes GetClassDefaultAttributes(wxWindowVariant variant = wxWINDOW_VARIANT_NORMAL); - - // implementation - bool m_blockEvent; - void DoApplyWidgetStyle(GtkRcStyle *style); - bool IsOwnGtkWindow(GdkWindow *window); +protected: + void GTKDisableEvents(); + void GTKEnableEvents(); - virtual void OnInternalIdle(); virtual wxSize DoGetBestSize() const; + virtual void DoApplyWidgetStyle(GtkRcStyle *style); + virtual GdkWindow *GTKGetWindow(wxArrayGdkWindows& windows) const; private: + typedef wxToggleButtonBase base_type; + DECLARE_DYNAMIC_CLASS(wxToggleButton) };