]> git.saurik.com Git - wxWidgets.git/blame_incremental - include/wx/gtk1/toolbar.h
going private for m_peer to give a foundation for better encapsulation
[wxWidgets.git] / include / wx / gtk1 / toolbar.h
... / ...
CommitLineData
1/////////////////////////////////////////////////////////////////////////////
2// Name: wx/gtk1/toolbar.h
3// Purpose: GTK toolbar
4// Author: Robert Roebling
5// RCS-ID: $Id$
6// Copyright: (c) Robert Roebling
7// Licence: wxWindows licence
8/////////////////////////////////////////////////////////////////////////////
9
10#ifndef _WX_GTK_TOOLBAR_H_
11#define _WX_GTK_TOOLBAR_H_
12
13#if wxUSE_TOOLBAR
14
15// ----------------------------------------------------------------------------
16// wxToolBar
17// ----------------------------------------------------------------------------
18
19class WXDLLIMPEXP_CORE wxToolBar : public wxToolBarBase
20{
21public:
22 // construction/destruction
23 wxToolBar() { Init(); }
24 wxToolBar( wxWindow *parent,
25 wxWindowID id,
26 const wxPoint& pos = wxDefaultPosition,
27 const wxSize& size = wxDefaultSize,
28 long style = 0,
29 const wxString& name = wxToolBarNameStr )
30 {
31 Init();
32
33 Create(parent, id, pos, size, style, name);
34 }
35
36 bool Create( wxWindow *parent,
37 wxWindowID id,
38 const wxPoint& pos = wxDefaultPosition,
39 const wxSize& size = wxDefaultSize,
40 long style = 0,
41 const wxString& name = wxToolBarNameStr );
42
43 virtual ~wxToolBar();
44
45 // override base class virtuals
46 virtual void SetMargins(int x, int y);
47 virtual void SetToolSeparation(int separation);
48
49 virtual wxToolBarToolBase *FindToolForPosition(wxCoord x, wxCoord y) const;
50
51 virtual void SetToolShortHelp(int id, const wxString& helpString);
52
53 virtual void SetWindowStyleFlag( long style );
54
55 static wxVisualAttributes
56 GetClassDefaultAttributes(wxWindowVariant variant = wxWINDOW_VARIANT_NORMAL);
57
58 // implementation from now on
59 // --------------------------
60
61 GtkToolbar *m_toolbar;
62
63 bool m_blockEvent;
64
65 void OnInternalIdle();
66
67protected:
68 // common part of all ctors
69 void Init();
70
71 // set the GTK toolbar style and orientation
72 void GtkSetStyle();
73
74 // implement base class pure virtuals
75 virtual bool DoInsertTool(size_t pos, wxToolBarToolBase *tool);
76 virtual bool DoDeleteTool(size_t pos, wxToolBarToolBase *tool);
77
78 virtual void DoEnableTool(wxToolBarToolBase *tool, bool enable);
79 virtual void DoToggleTool(wxToolBarToolBase *tool, bool toggle);
80 virtual void DoSetToggle(wxToolBarToolBase *tool, bool toggle);
81
82 virtual wxToolBarToolBase *CreateTool(int id,
83 const wxString& label,
84 const wxBitmap& bitmap1,
85 const wxBitmap& bitmap2,
86 wxItemKind kind,
87 wxObject *clientData,
88 const wxString& shortHelpString,
89 const wxString& longHelpString);
90 virtual wxToolBarToolBase *CreateTool(wxControl *control,
91 const wxString& label);
92
93private:
94 DECLARE_DYNAMIC_CLASS(wxToolBar)
95};
96
97#endif // wxUSE_TOOLBAR
98
99#endif
100 // _WX_GTK_TOOLBAR_H_