X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/debe6624c1e9d4bf3243381153d1e173c849bcd8..40bd6154f1476dbe598c60b4760bbf2fe0d9ab0f:/include/wx/gtk1/bmpbuttn.h diff --git a/include/wx/gtk1/bmpbuttn.h b/include/wx/gtk1/bmpbuttn.h index 659e9443dc..3f1c684d63 100644 --- a/include/wx/gtk1/bmpbuttn.h +++ b/include/wx/gtk1/bmpbuttn.h @@ -2,9 +2,8 @@ // Name: bmpbutton.h // Purpose: // Author: Robert Roebling -// Created: 01/02/97 -// Id: -// Copyright: (c) 1998 Robert Roebling, Julian Smart and Markus Holzem +// Id: $Id$ +// Copyright: (c) 1998 Robert Roebling // Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// @@ -17,9 +16,14 @@ #endif #include "wx/defs.h" + +#if wxUSE_BMPBUTTON + #include "wx/object.h" #include "wx/list.h" #include "wx/control.h" +#include "wx/bitmap.h" +#include "wx/button.h" //----------------------------------------------------------------------------- // classes @@ -31,32 +35,68 @@ class wxBitmapButton; // global data //----------------------------------------------------------------------------- -extern const char *wxButtonNameStr; +extern const wxChar *wxButtonNameStr; //----------------------------------------------------------------------------- // wxBitmapButton //----------------------------------------------------------------------------- -class wxBitmapButton: public wxControl +class wxBitmapButton: public wxButton { - DECLARE_DYNAMIC_CLASS(wxBitmapButton) - - public: - - wxBitmapButton(void); - wxBitmapButton( wxWindow *parent, wxWindowID id, const wxBitmap &bitmap, - const wxPoint &pos = wxDefaultPosition, const wxSize &size = wxDefaultSize, - long style = 0, const wxString &name = wxButtonNameStr ); - bool Create( wxWindow *parent, wxWindowID id, const wxBitmap &bitmap, - const wxPoint &pos = wxDefaultPosition, const wxSize &size = wxDefaultSize, - long style = 0, const wxString &name = wxButtonNameStr ); - void SetDefault(void); +public: + wxBitmapButton(); + inline wxBitmapButton( wxWindow *parent, wxWindowID id, const wxBitmap& bitmap, + const wxPoint& pos = wxDefaultPosition, + const wxSize& size = wxDefaultSize, long style = wxBU_AUTODRAW, + const wxValidator& validator = wxDefaultValidator, + const wxString& name = wxButtonNameStr ) + { + Create(parent, id, bitmap, pos, size, style, validator, name); + } + bool Create( wxWindow *parent, wxWindowID id, const wxBitmap& bitmap, + const wxPoint& pos = wxDefaultPosition, + const wxSize& size = wxDefaultSize, long style = wxBU_AUTODRAW, + const wxValidator& validator = wxDefaultValidator, + const wxString& name = wxButtonNameStr); + virtual void SetDefault(); + void SetLabel( const wxString &label ); - wxString GetLabel(void) const; + wxString GetLabel() const; + virtual void SetLabel( const wxBitmap& bitmap ) { SetBitmapLabel(bitmap); } - public: - - wxBitmap m_bitmap; + wxBitmap& GetBitmapDisabled() const { return (wxBitmap&) m_disabled; } + wxBitmap& GetBitmapFocus() const { return (wxBitmap&) m_focus; } + wxBitmap& GetBitmapLabel() const { return (wxBitmap&) m_bitmap; } + wxBitmap& GetBitmapSelected() const { return (wxBitmap&) m_selected; } + + void SetBitmapDisabled( const wxBitmap& bitmap ); + void SetBitmapFocus( const wxBitmap& bitmap ); + void SetBitmapLabel( const wxBitmap& bitmap ); + void SetBitmapSelected( const wxBitmap& bitmap ); + virtual bool Enable(bool enable); + + // implementation + // -------------- + + void HasFocus(); + void NotFocus(); + void StartSelect(); + void EndSelect(); + void SetBitmap(); + void ApplyWidgetStyle(); + + bool m_hasFocus; + bool m_isSelected; + wxBitmap m_bitmap; + wxBitmap m_disabled; + wxBitmap m_focus; + wxBitmap m_selected; + +private: + DECLARE_DYNAMIC_CLASS(wxBitmapButton) }; + +#endif + #endif // __BMPBUTTONH__