// Name: wx/gtk/button.h
// Purpose: wxGTK wxButton class declaration
// Author: Robert Roebling
-// Id: $Id$
// Copyright: (c) 1998 Robert Roebling
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
class WXDLLIMPEXP_CORE wxButton : public wxButtonBase
{
public:
- wxButton() { }
+ wxButton() {}
wxButton(wxWindow *parent, wxWindowID id,
const wxString& label = wxEmptyString,
const wxPoint& pos = wxDefaultPosition,
virtual wxWindow *SetDefault();
virtual void SetLabel( const wxString &label );
- virtual bool Enable( bool enable = true );
// implementation
// --------------
// helper to allow access to protected member from GTK callback
void MoveWindow(int x, int y, int width, int height) { DoMoveWindow(x, y, width, height); }
+ // called from GTK callbacks: they update the button state and call
+ // GTKUpdateBitmap()
+ void GTKMouseEnters();
+ void GTKMouseLeaves();
+ void GTKPressed();
+ void GTKReleased();
+
protected:
virtual wxSize DoGetBestSize() const;
virtual void DoApplyWidgetStyle(GtkRcStyle *style);
- virtual GdkWindow *GTKGetWindow(wxArrayGdkWindows& windows) const;
-
- virtual wxBitmap DoGetBitmap(State which) const;
- virtual void DoSetBitmap(const wxBitmap& bitmap, State which);
- virtual void DoSetBitmapPosition(wxDirection dir);
+#if wxUSE_MARKUP
+ virtual bool DoSetLabelMarkup(const wxString& markup);
+#endif // wxUSE_MARKUP
private:
- wxBitmap m_bitmaps[State_Max];
+ typedef wxButtonBase base_type;
+
+ // Return the GtkLabel used by this button.
+ GtkLabel *GTKGetLabel() const;
DECLARE_DYNAMIC_CLASS(wxButton)
};