X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/9864c56dedec23b11ae6f9f792d6787ecad2355a..82b978d70d9a0e58502c7d24ffebd462c5924c3c:/include/wx/gtk/tglbtn.h diff --git a/include/wx/gtk/tglbtn.h b/include/wx/gtk/tglbtn.h index 1a76c9fae1..9d66c44797 100644 --- a/include/wx/gtk/tglbtn.h +++ b/include/wx/gtk/tglbtn.h @@ -13,18 +13,74 @@ #ifndef _WX_GTK_TOGGLEBUTTON_H_ #define _WX_GTK_TOGGLEBUTTON_H_ +#include "wx/bitmap.h" + //----------------------------------------------------------------------------- // classes //----------------------------------------------------------------------------- class wxToggleButton; +class wxToggleBitmapButton; //----------------------------------------------------------------------------- // global data //----------------------------------------------------------------------------- -extern const char *wxCheckBoxNameStr; +extern const wxChar *wxCheckBoxNameStr; + +//----------------------------------------------------------------------------- +// wxToggleBitmapButton +//----------------------------------------------------------------------------- + +class wxToggleBitmapButton: public wxControl +{ +public: + // construction/destruction + wxToggleBitmapButton() {} + wxToggleBitmapButton(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) + { + Create(parent, id, label, pos, size, style, validator, name); + } + // Create the control + bool Create(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); + + // Get/set the value + void SetValue(bool state); + bool GetValue() const; + + // Set the label + void SetLabel(const wxBitmap& label); + bool Enable(bool enable = TRUE); + + + // implementation + bool m_blockEvent; + wxBitmap m_bitmap; + + void OnSetBitmap(); + void ApplyWidgetStyle(); + bool IsOwnGtkWindow(GdkWindow *window); + + virtual void OnInternalIdle(); + virtual wxSize DoGetBestSize() const; + +private: + DECLARE_DYNAMIC_CLASS(wxToggleBitmapButton) +}; //----------------------------------------------------------------------------- // wxToggleButton //-----------------------------------------------------------------------------