X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/a81258bee4e20d3fa9b3d2f6bf3bcd1200d1e5e0..d14e03f5b719ce6dbe4a0e81b22ae8436bd230ae:/include/wx/gtk1/button.h diff --git a/include/wx/gtk1/button.h b/include/wx/gtk1/button.h index 0b1d34d52e..aa5fe7b18f 100644 --- a/include/wx/gtk1/button.h +++ b/include/wx/gtk1/button.h @@ -1,20 +1,15 @@ ///////////////////////////////////////////////////////////////////////////// -// Name: button.h +// Name: wx/gtk1/button.h // Purpose: // Author: Robert Roebling // Id: $Id$ // Copyright: (c) 1998 Robert Roebling -// Licence: wxWindows licence +// Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// - #ifndef __GTKBUTTONH__ #define __GTKBUTTONH__ -#ifdef __GNUG__ -#pragma interface -#endif - #include "wx/defs.h" #include "wx/object.h" #include "wx/list.h" @@ -24,44 +19,63 @@ // classes //----------------------------------------------------------------------------- -class wxButton; +class WXDLLIMPEXP_CORE wxButton; //----------------------------------------------------------------------------- // global data //----------------------------------------------------------------------------- -extern const char *wxButtonNameStr; +extern WXDLLIMPEXP_CORE const wxChar wxButtonNameStr[]; //----------------------------------------------------------------------------- // wxButton //----------------------------------------------------------------------------- -class wxButton: public wxControl +class WXDLLIMPEXP_CORE wxButton: public wxButtonBase { - DECLARE_DYNAMIC_CLASS(wxButton) - - public: - - wxButton(void); - inline wxButton(wxWindow *parent, wxWindowID id, const wxString& label, +public: + wxButton(); + wxButton(wxWindow *parent, wxWindowID id, + const wxString& label = wxEmptyString, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = 0, const wxValidator& validator = wxDefaultValidator, const wxString& name = wxButtonNameStr) { - Create(parent, id, label, pos, size, style, validator, name); + Create(parent, id, label, pos, size, style, validator, name); } - bool Create(wxWindow *parent, wxWindowID id, const wxString& label, + + virtual ~wxButton(); + + bool Create(wxWindow *parent, wxWindowID id, + const wxString& label = wxEmptyString, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = 0, const wxValidator& validator = wxDefaultValidator, const wxString& name = wxButtonNameStr); - void SetDefault(void); - void SetLabel( const wxString &label ); - void Enable( bool enable ); - void SetFont( const wxFont &font ); - void SetBackgroundColour( const wxColour &colour ); - void SetForegroundColour( const wxColour &colour ); + + virtual void SetDefault(); + virtual void SetLabel( const wxString &label ); + virtual bool Enable( bool enable = TRUE ); + + // implementation + // -------------- + + void DoApplyWidgetStyle(GtkRcStyle *style); + bool IsOwnGtkWindow( GdkWindow *window ); + + // Since this wxButton doesn't derive from wxButtonBase (why?) we need + // to override this here too... + virtual bool ShouldInheritColours() const { return false; } + + static wxVisualAttributes + GetClassDefaultAttributes(wxWindowVariant variant = wxWINDOW_VARIANT_NORMAL); + +protected: + virtual wxSize DoGetBestSize() const; + +private: + DECLARE_DYNAMIC_CLASS(wxButton) }; #endif // __GTKBUTTONH__