]> git.saurik.com Git - wxWidgets.git/blame_incremental - include/wx/gtk/button.h
Fix wxPropertyGrid::GetPropertyRect when the last item is collapsed.
[wxWidgets.git] / include / wx / gtk / button.h
... / ...
CommitLineData
1/////////////////////////////////////////////////////////////////////////////
2// Name: wx/gtk/button.h
3// Purpose: wxGTK wxButton class declaration
4// Author: Robert Roebling
5// Copyright: (c) 1998 Robert Roebling
6// Licence: wxWindows licence
7/////////////////////////////////////////////////////////////////////////////
8
9#ifndef _WX_GTK_BUTTON_H_
10#define _WX_GTK_BUTTON_H_
11
12//-----------------------------------------------------------------------------
13// wxButton
14//-----------------------------------------------------------------------------
15
16class WXDLLIMPEXP_CORE wxButton : public wxButtonBase
17{
18public:
19 wxButton() {}
20 wxButton(wxWindow *parent, wxWindowID id,
21 const wxString& label = wxEmptyString,
22 const wxPoint& pos = wxDefaultPosition,
23 const wxSize& size = wxDefaultSize, long style = 0,
24 const wxValidator& validator = wxDefaultValidator,
25 const wxString& name = wxButtonNameStr)
26 {
27 Create(parent, id, label, pos, size, style, validator, name);
28 }
29
30 bool Create(wxWindow *parent, wxWindowID id,
31 const wxString& label = wxEmptyString,
32 const wxPoint& pos = wxDefaultPosition,
33 const wxSize& size = wxDefaultSize, long style = 0,
34 const wxValidator& validator = wxDefaultValidator,
35 const wxString& name = wxButtonNameStr);
36
37 virtual wxWindow *SetDefault();
38 virtual void SetLabel( const wxString &label );
39
40 // implementation
41 // --------------
42
43 static wxVisualAttributes
44 GetClassDefaultAttributes(wxWindowVariant variant = wxWINDOW_VARIANT_NORMAL);
45
46 // helper to allow access to protected member from GTK callback
47 void MoveWindow(int x, int y, int width, int height) { DoMoveWindow(x, y, width, height); }
48
49 // called from GTK callbacks: they update the button state and call
50 // GTKUpdateBitmap()
51 void GTKMouseEnters();
52 void GTKMouseLeaves();
53 void GTKPressed();
54 void GTKReleased();
55
56protected:
57 virtual wxSize DoGetBestSize() const;
58 virtual void DoApplyWidgetStyle(GtkRcStyle *style);
59
60#if wxUSE_MARKUP
61 virtual bool DoSetLabelMarkup(const wxString& markup);
62#endif // wxUSE_MARKUP
63
64private:
65 typedef wxButtonBase base_type;
66
67 // Return the GtkLabel used by this button.
68 GtkLabel *GTKGetLabel() const;
69
70 DECLARE_DYNAMIC_CLASS(wxButton)
71};
72
73#endif // _WX_GTK_BUTTON_H_