1 /////////////////////////////////////////////////////////////////////////////
2 // Name: wx/gtk/toolbar.h
3 // Purpose: GTK toolbar
4 // Author: Robert Roebling
6 // Copyright: (c) Robert Roebling
7 // Licence: wxWindows licence
8 /////////////////////////////////////////////////////////////////////////////
10 #ifndef _WX_GTK_TOOLBAR_H_
11 #define _WX_GTK_TOOLBAR_H_
15 typedef struct _GtkTooltips GtkTooltips
;
17 // ----------------------------------------------------------------------------
19 // ----------------------------------------------------------------------------
21 class WXDLLIMPEXP_CORE wxToolBar
: public wxToolBarBase
24 // construction/destruction
25 wxToolBar() { Init(); }
26 wxToolBar( wxWindow
*parent
,
28 const wxPoint
& pos
= wxDefaultPosition
,
29 const wxSize
& size
= wxDefaultSize
,
30 long style
= wxTB_HORIZONTAL
,
31 const wxString
& name
= wxToolBarNameStr
)
35 Create(parent
, id
, pos
, size
, style
, name
);
38 bool Create( wxWindow
*parent
,
40 const wxPoint
& pos
= wxDefaultPosition
,
41 const wxSize
& size
= wxDefaultSize
,
42 long style
= wxTB_HORIZONTAL
,
43 const wxString
& name
= wxToolBarNameStr
);
47 virtual wxToolBarToolBase
*FindToolForPosition(wxCoord x
, wxCoord y
) const;
49 virtual void SetToolShortHelp(int id
, const wxString
& helpString
);
51 virtual void SetWindowStyleFlag( long style
);
53 virtual void SetToolNormalBitmap(int id
, const wxBitmap
& bitmap
);
54 virtual void SetToolDisabledBitmap(int id
, const wxBitmap
& bitmap
);
56 virtual bool Realize();
58 static wxVisualAttributes
59 GetClassDefaultAttributes(wxWindowVariant variant
= wxWINDOW_VARIANT_NORMAL
);
61 virtual wxToolBarToolBase
*CreateTool(int id
,
62 const wxString
& label
,
63 const wxBitmap
& bitmap1
,
64 const wxBitmap
& bitmap2
= wxNullBitmap
,
65 wxItemKind kind
= wxITEM_NORMAL
,
66 wxObject
*clientData
= NULL
,
67 const wxString
& shortHelpString
= wxEmptyString
,
68 const wxString
& longHelpString
= wxEmptyString
);
69 virtual wxToolBarToolBase
*CreateTool(wxControl
*control
,
70 const wxString
& label
);
72 // implementation from now on
73 // --------------------------
76 // choose the default border for this window
77 virtual wxBorder
GetDefaultBorder() const { return wxBORDER_DEFAULT
; }
79 virtual wxSize
DoGetBestSize() const;
80 virtual GdkWindow
*GTKGetWindow(wxArrayGdkWindows
& windows
) const;
82 // implement base class pure virtuals
83 virtual bool DoInsertTool(size_t pos
, wxToolBarToolBase
*tool
);
84 virtual bool DoDeleteTool(size_t pos
, wxToolBarToolBase
*tool
);
86 virtual void DoEnableTool(wxToolBarToolBase
*tool
, bool enable
);
87 virtual void DoToggleTool(wxToolBarToolBase
*tool
, bool toggle
);
88 virtual void DoSetToggle(wxToolBarToolBase
*tool
, bool toggle
);
93 GSList
* GetRadioGroup(size_t pos
);
94 virtual void AddChildGTK(wxWindowGTK
* child
);
96 GtkToolbar
* m_toolbar
;
97 GtkTooltips
* m_tooltips
;
99 DECLARE_DYNAMIC_CLASS(wxToolBar
)
102 #endif // wxUSE_TOOLBAR
105 // _WX_GTK_TOOLBAR_H_