]> git.saurik.com Git - wxWidgets.git/blob - include/wx/gtk/tbargtk.h
Added WX_DEFINE_*_USER_EXPORTED_ARRAY macros for external dlls.
[wxWidgets.git] / include / wx / gtk / tbargtk.h
1 /////////////////////////////////////////////////////////////////////////////
2 // Name: tbargtk.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_TBARGTK_H_
11 #define _WX_GTK_TBARGTK_H_
12
13 #ifdef __GNUG__
14 #pragma interface "tbargtk.h"
15 #endif
16
17 #if wxUSE_TOOLBAR
18
19 // ----------------------------------------------------------------------------
20 // wxToolBar
21 // ----------------------------------------------------------------------------
22
23 class wxToolBar : public wxToolBarBase
24 {
25 public:
26 // construction/destruction
27 wxToolBar() { Init(); }
28 wxToolBar( wxWindow *parent,
29 wxWindowID id,
30 const wxPoint& pos = wxDefaultPosition,
31 const wxSize& size = wxDefaultSize,
32 long style = 0,
33 const wxString& name = wxToolBarNameStr )
34 {
35 Init();
36
37 Create(parent, id, pos, size, style, name);
38 }
39
40 bool Create( wxWindow *parent,
41 wxWindowID id,
42 const wxPoint& pos = wxDefaultPosition,
43 const wxSize& size = wxDefaultSize,
44 long style = 0,
45 const wxString& name = wxToolBarNameStr );
46
47 virtual ~wxToolBar();
48
49 // override base class virtuals
50 virtual void SetMargins(int x, int y);
51 virtual void SetToolSeparation(int separation);
52
53 virtual wxToolBarToolBase *FindToolForPosition(wxCoord x, wxCoord y) const;
54
55 virtual void SetToolShortHelp(int id, const wxString& helpString);
56
57 // implementation from now on
58 // --------------------------
59
60 GtkToolbar *m_toolbar;
61
62 GdkColor *m_fg;
63 GdkColor *m_bg;
64
65 bool m_blockNextEvent;
66
67 void OnInternalIdle();
68
69 protected:
70 // common part of all ctors
71 void Init();
72
73 // implement base class pure virtuals
74 virtual bool DoInsertTool(size_t pos, wxToolBarToolBase *tool);
75 virtual bool DoDeleteTool(size_t pos, wxToolBarToolBase *tool);
76
77 virtual void DoEnableTool(wxToolBarToolBase *tool, bool enable);
78 virtual void DoToggleTool(wxToolBarToolBase *tool, bool toggle);
79 virtual void DoSetToggle(wxToolBarToolBase *tool, bool toggle);
80
81 virtual wxToolBarToolBase *CreateTool(int id,
82 const wxBitmap& bitmap1,
83 const wxBitmap& bitmap2,
84 bool toggle,
85 wxObject *clientData,
86 const wxString& shortHelpString,
87 const wxString& longHelpString);
88 virtual wxToolBarToolBase *CreateTool(wxControl *control);
89
90 private:
91 DECLARE_DYNAMIC_CLASS(wxToolBar)
92 };
93
94 #endif // wxUSE_TOOLBAR
95
96 #endif
97 // _WX_GTK_TBARGTK_H_