]> git.saurik.com Git - wxWidgets.git/blame - docs/latex/wx/toolbar.tex
more samples are being built and samples/Makefiles uses SAMPLES_SUBDIRS
[wxWidgets.git] / docs / latex / wx / toolbar.tex
CommitLineData
81d66cf3 1\section{\class{wxToolBar}}\label{wxtoolbar}
a660d684 2
81d66cf3
JS
3The name wxToolBar is defined to be a synonym for one of the following classes:
4
5\begin{itemize}\itemsep=0pt
6\item {\bf wxToolBar95} The native Windows 95 toolbar. Used on Windows 95, NT 4 and above.
7\item {\bf wxToolBarMSW} A Windows implementation. Used on 16-bit Windows.
8\item {\bf wxToolBarGTK} The GTK toolbar.
9\item {\bf wxToolBarSimple} A simple implementation, with scrolling.
10Used on platforms with no native toolbar control, or where scrolling is required.
11\end{itemize}
12
13Note that the base class {\bf wxToolBarBase} defines
14automatic scrolling management functionality which is identical
15to \helpref{wxScrolledWindow}{wxscrolledwindow}, so please refer to this class also.
16Not all toolbars support scrolling, but wxToolBarSimple does.
a660d684
KB
17
18\wxheading{Derived from}
19
81d66cf3 20wxToolBarBase\\
a660d684
KB
21\helpref{wxControl}{wxcontrol}\\
22\helpref{wxWindow}{wxwindow}\\
23\helpref{wxEvtHandler}{wxevthandler}\\
24\helpref{wxObject}{wxobject}
25
954b8ae6
JS
26\wxheading{Include files}
27
28<wx/toolbar.h> (to allow wxWindows to select an appropriate toolbar class)\\
29<wx/tbarbase.h> (the base class)\\
30<wx/tbarmsw.h> (the non-Windows 95 Windows toolbar class)\\
31<wx/tbar95.h> (the Windows 95/98 toolbar class)\\
32<wx/tbarsmpl.h> (the generic simple toolbar class)
33
a660d684
KB
34\wxheading{Remarks}
35
81d66cf3
JS
36You may also create a toolbar that is managed by the frame, by
37calling \helpref{wxFrame::CreateToolBar}{wxframecreatetoolbar}.
38
39{\bf wxToolBar95:} Note that this toolbar paints tools to reflect user-selected colours.
85eb36c2
RR
40The toolbar orientation must always be {\bf wxHORIZONTAL}.
41
42{\bf wxToolBarGtk:} The toolbar orientation is ignored and is always {\bf wxHORIZONTAL}.
81d66cf3
JS
43
44\wxheading{Window styles}
45
46\twocolwidtha{5cm}
47\begin{twocollist}\itemsep=0pt
85eb36c2
RR
48\twocolitem{\windowstyle{wxTB\_FLAT}}{Gives the toolbar a flat look ('coolbar' or 'flatbar' style). Windows 95 and GTK 1.2 only.}
49\twocolitem{\windowstyle{wxTB\_DOCKABLE}}{Makes the toolbar floatable and dockable. GTK only.}
81d66cf3 50\twocolitem{\windowstyle{wxTB\_HORIZONTAL}}{Specifies horizontal layout.}
85eb36c2 51\twocolitem{\windowstyle{wxTB\_VERTICAL}}{Specifies vertical layout (not available for the GTK and Windows 95
81d66cf3
JS
52toolbar).}
53\twocolitem{\windowstyle{wxTB\_3DBUTTONS}}{Gives wxToolBarSimple a mild 3D look to its buttons.}
54\end{twocollist}
55
56See also \helpref{window styles overview}{windowstyles}.
a660d684
KB
57
58\wxheading{Event handling}
59
81d66cf3
JS
60The toolbar class emits menu commands in the same was that a frame menubar does,
61so you can use one EVT\_MENU macro for both a menu item and a toolbar button.
62The event handler functions take a wxCommandEvent argument. For most event macros,
63the identifier of the tool is passed, but for EVT\_TOOL\_ENTER the toolbar
64window is passed and the tool id is retrieved from the wxCommandEvent.
65This is because the id may be -1 when the mouse moves off a tool, and -1 is not
66allowed as an identifier in the event system.
a660d684 67
e702ff0f
JS
68Note that tool commands (and UI update events for tools) are first sent to
69the focus window within the frame that contains the toolbar. If no window within the frame has the focus,
70then the events are sent directly to the toolbar (and up the hierarchy to the
71frame, depending on where the application has put its event handlers). This allows command and UI update
72handling to be processed by specific windows and controls, and not necessarily
73by the application frame.
74
81d66cf3
JS
75\twocolwidtha{7cm}
76\begin{twocollist}\itemsep=0pt
77\twocolitem{{\bf EVT\_TOOL(id, func)}}{Process a wxEVT\_COMMAND\_TOOL\_CLICKED event
78(a synonym for wxEVT\_COMMAND\_MENU\_SELECTED). Pass the id of the tool.}
79\twocolitem{{\bf EVT\_MENU(id, func)}}{The same as EVT\_TOOL.}
80\twocolitem{{\bf EVT\_TOOL\_RANGE(id1, id2, func)}}{Process a wxEVT\_COMMAND\_TOOL\_CLICKED event
81for a range id identifiers. Pass the ids of the tools.}
82\twocolitem{{\bf EVT\_MENU\_RANGE(id1, id2, func)}}{The same as EVT\_TOOL\_RANGE.}
83
84\twocolitem{{\bf EVT\_TOOL\_RCLICKED(id, func)}}{Process a wxEVT\_COMMAND\_TOOL\_RCLICKED event.
85Pass the id of the tool.}
86\twocolitem{{\bf EVT\_TOOL\_RCLICKED\_RANGE(id1, id2, func)}}{Process a wxEVT\_COMMAND\_TOOL\_RCLICKED event
87for a range of ids. Pass the ids of the tools.}
88\twocolitem{{\bf EVT\_TOOL\_ENTER(id, func)}}{Process a wxEVT\_COMMAND\_TOOL\_ENTER event.
89Pass the id of the toolbar itself. The value of wxCommandEvent::GetSelection is the tool id, or -1 if the mouse cursor has moved off a tool.}
90\end{twocollist}
a660d684
KB
91
92\wxheading{See also}
93
94\overview{Toolbar overview}{wxtoolbaroverview},\rtfsp
a660d684
KB
95\helpref{wxScrolledWindow}{wxscrolledwindow}
96
97\latexignore{\rtfignore{\wxheading{Members}}}
98
81d66cf3 99\membersection{wxToolBar::wxToolBar}\label{wxtoolbarconstr}
a660d684 100
81d66cf3 101\func{}{wxToolBar}{\void}
a660d684
KB
102
103Default constructor.
104
81d66cf3
JS
105\func{}{wxToolBar}{\param{wxWindow*}{ parent}, \param{wxWindowID }{id},
106 \param{const wxPoint\& }{pos = wxDefaultPosition},
107 \param{const wxSize\& }{size = wxDefaultSize},
108 \param{long }{style = wxTB\_HORIZONTAL \pipe wxNO\_BORDER},
109 \param{const wxString\& }{name = wxPanelNameStr}}
110
111Constructs a toolbar.
112
113\wxheading{Parameters}
114
115\docparam{parent}{Pointer to a parent window.}
a660d684 116
81d66cf3
JS
117\docparam{id}{Window identifier. If -1, will automatically create an identifier.}
118
119\docparam{pos}{Window position. wxDefaultPosition is (-1, -1) which indicates that wxWindows
120should generate a default position for the window. If using the wxWindow class directly, supply
121an actual position.}
122
123\docparam{size}{Window size. wxDefaultSize is (-1, -1) which indicates that wxWindows
124should generate a default size for the window.}
125
126\docparam{style}{Window style. See \helpref{wxToolBar}{wxtoolbar} for details.}
127
128\docparam{name}{Window name.}
129
130\wxheading{Remarks}
131
132After a toolbar is created, you use \helpref{wxToolBar::AddTool}{wxtoolbaraddtool} and
133perhaps \helpref{wxToolBar::AddSeparator}{wxtoolbaraddseparator}, and then you
134must call \helpref{wxToolBar::Realize}{wxtoolbarrealize} to construct and display the toolbar
135tools.
136
137You may also create a toolbar that is managed by the frame, by
138calling \helpref{wxFrame::CreateToolBar}{wxframecreatetoolbar}.
139
140\membersection{wxToolBar::\destruct{wxToolBar}}
141
142\func{void}{\destruct{wxToolBar}}{\void}
a660d684
KB
143
144Toolbar destructor.
145
81d66cf3 146\membersection{wxToolBar::AddSeparator}\label{wxtoolbaraddseparator}
a660d684
KB
147
148\func{void}{AddSeparator}{\void}
149
150Adds a separator for spacing groups of tools.
151
152\wxheading{See also}
153
81d66cf3 154\helpref{wxToolBar::AddTool}{wxtoolbaraddtool}, \helpref{wxToolBar::SetToolSeparation}{wxtoolbarsettoolseparation}
a660d684 155
81d66cf3 156\membersection{wxToolBar::AddTool}\label{wxtoolbaraddtool}
a660d684 157
81d66cf3
JS
158\func{wxToolBarTool*}{AddTool}{\param{int}{ toolIndex}, \param{const wxBitmap\&}{ bitmap1},\rtfsp
159\param{const wxBitmap\&}{ bitmap2 = wxNullBitmap}, \param{bool}{ isToggle = FALSE},\rtfsp
160\param{long}{ xPos = -1}, \param{long}{ yPos = -1},\rtfsp
161\param{wxObject* }{clientData = NULL}, \param{const wxString\& }{shortHelpString = ""}, \param{const wxString\& }{longHelpString = ""}}
a660d684
KB
162
163Adds a tool to the toolbar.
164
165\wxheading{Parameters}
166
167\docparam{toolIndex}{An integer by which
168the tool may be identified in subsequent operations.}
169
170\docparam{isToggle}{Specifies whether the tool is a toggle or not: a toggle tool may be in
171two states, whereas a non-toggle tool is just a button.}
172
173\docparam{bitmap1}{The primary tool bitmap for toggle and button tools.}
174
175\docparam{bitmap2}{The second bitmap specifies the on-state bitmap for a toggle
85eb36c2 176tool. If this is wxNullBitmap, either an inverted version of the primary bitmap is
a660d684 177used for the on-state of a toggle tool (monochrome displays) or a black
85eb36c2
RR
178border is drawn around the tool (colour displays) or the pixmap is shown
179as a pressed button (GTK). }
a660d684
KB
180
181\docparam{xPos}{Specifies the x position of the tool if automatic layout is not suitable.}
182
183\docparam{yPos}{Specifies the y position of the tool if automatic layout is not suitable.}
184
185\docparam{clientData}{An optional pointer to client data which can be
81d66cf3 186retrieved later using \helpref{wxToolBar::GetToolClientData}{wxtoolbargettoolclientdata}.}
a660d684
KB
187
188\docparam{shortHelpString}{Used for displaying a tooltip for the tool in the
189Windows 95 implementation of wxButtonBar. Pass the empty string if this is not required.}
190
191\docparam{longHelpString}{Used to displayer longer help, such as status line help.
192Pass the empty string if this is not required.}
193
81d66cf3 194\wxheading{Remarks}
a660d684 195
81d66cf3
JS
196After you have added tools to a toolbar, you must call \helpref{wxToolBar::Realize}{wxtoolbarrealize} in
197order to have the tools appear.
a660d684 198
81d66cf3 199\wxheading{See also}
a660d684 200
81d66cf3
JS
201\helpref{wxToolBar::AddSeparator}{wxtoolbaraddseparator},
202\helpref{wxToolBar::Realize}{wxtoolbarrealize},
a660d684 203
81d66cf3 204\membersection{wxToolBar::CreateTools}\label{wxtoolbarcreatetools}
a660d684 205
81d66cf3 206\func{bool}{CreateTools}{\void}
a660d684 207
81d66cf3
JS
208This function is implemented for some toolbar classes to create the tools and display them.
209The portable way of calling it is to call \helpref{wxToolBar::Realize}{wxtoolbarrealize} after
210you have added tools and separators.
a660d684
KB
211
212\wxheading{See also}
213
81d66cf3 214\helpref{wxToolBar::AddTool}{wxtoolbaraddtool}, \helpref{wxToolBar::Realize}{wxtoolbarrealize}
a660d684 215
81d66cf3 216\membersection{wxToolBar::DrawTool}\label{wxtoolbardrawtool}
a660d684 217
81d66cf3 218\func{void}{DrawTool}{\param{wxMemoryDC\& }{memDC}, \param{wxToolBarTool* }{tool}}
a660d684 219
fe604ccd 220Draws the specified tool onto the window using the given memory device context.
a660d684
KB
221
222\wxheading{Parameters}
223
224\docparam{memDC}{A memory DC to be used for drawing the tool.}
225
226\docparam{tool}{Tool to be drawn.}
227
228\wxheading{Remarks}
229
230For internal use only.
231
81d66cf3 232\membersection{wxToolBar::EnableTool}\label{wxtoolbarenabletool}
a660d684 233
eaaa6a06 234\func{void}{EnableTool}{\param{int }{toolIndex}, \param{const bool}{ enable}}
a660d684
KB
235
236Enables or disables the tool.
237
238\wxheading{Parameters}
239
240\docparam{toolIndex}{Tool to enable or disable.}
241
242\docparam{enable}{If TRUE, enables the tool, otherwise disables it.}
243
244\wxheading{Remarks}
245
f7bd2698 246For wxToolBarSimple, does nothing. Some other implementations
a660d684
KB
247will change the visible state of the tool to indicate that it is disabled.
248
249\wxheading{See also}
250
81d66cf3
JS
251\helpref{wxToolBar::GetToolEnabled}{wxtoolbargettoolenabled},\rtfsp
252%\helpref{wxToolBar::SetToolState}{wxtoolbarsettoolstate},\rtfsp
253\helpref{wxToolBar::ToggleTool}{wxtoolbartoggletool}
a660d684 254
81d66cf3 255\membersection{wxToolBar::FindToolForPosition}\label{wxtoolbarfindtoolforposition}
a660d684 256
81d66cf3 257\constfunc{wxToolBarTool*}{FindToolForPosition}{\param{const float}{ x}, \param{const float}{ y}}
a660d684
KB
258
259Finds a tool for the given mouse position.
260
261\wxheading{Parameters}
262
263\docparam{x}{X position.}
264
265\docparam{y}{Y position.}
266
267\wxheading{Return value}
268
269A pointer to a tool if a tool is found, or NULL otherwise.
270
271\wxheading{Remarks}
272
273Used internally, and should not need to be used by the programmer.
274
81d66cf3 275\membersection{wxToolBar::GetToolSize}\label{wxtoolbargettoolsize}
a660d684 276
81d66cf3 277\func{wxSize}{GetToolSize}{\void}
a660d684
KB
278
279Returns the size of a whole button, which is usually larger than a tool bitmap because
280of added 3D effects.
281
282\wxheading{See also}
283
81d66cf3
JS
284\helpref{wxToolBar::SetToolBitmapSize}{wxtoolbarsettoolbitmapsize},\rtfsp
285\helpref{wxToolBar::GetToolBitmapSize}{wxtoolbargettoolbitmapsize}
a660d684 286
81d66cf3 287\membersection{wxToolBar::GetToolBitmapSize}\label{wxtoolbargettoolbitmapsize}
a660d684 288
81d66cf3 289\func{wxSize}{GetToolBitmapSize}{\void}
a660d684
KB
290
291Returns the size of bitmap that the toolbar expects to have. The default bitmap size is 16 by 15 pixels.
292
293\wxheading{Remarks}
294
81d66cf3 295Note that this is the size of the bitmap you pass to \helpref{wxToolBar::AddTool}{wxtoolbaraddtool},
a660d684
KB
296and not the eventual size of the tool button.
297
298\wxheading{See also}
299
81d66cf3
JS
300\helpref{wxToolBar::SetToolBitmapSize}{wxtoolbarsettoolbitmapsize},\rtfsp
301\helpref{wxToolBar::GetToolSize}{wxtoolbargettoolsize}
a660d684 302
81d66cf3 303\membersection{wxToolBar::GetMargins}\label{wxtoolbargetmargins}
a660d684
KB
304
305\constfunc{wxSize}{GetMargins}{\void}
306
307Returns the left/right and top/bottom margins, which are also used for inter-toolspacing.
308
309\wxheading{See also}
310
81d66cf3 311\helpref{wxToolBar::SetMargins}{wxtoolbarsetmargins}
a660d684 312
81d66cf3 313\membersection{wxToolBar::GetMaxSize}\label{wxtoolbargetmaxsize}
a660d684 314
bdcbd8a7 315\constfunc{wxSize}{GetMaxSize}{\void}
a660d684
KB
316
317Gets the maximum size taken up by the tools after layout, including margins.
fe604ccd 318This can be used to size a frame around the toolbar window.
a660d684 319
81d66cf3 320\membersection{wxToolBar::GetToolClientData}\label{wxtoolbargettoolclientdata}
a660d684 321
eaaa6a06 322\constfunc{wxObject*}{GetToolClientData}{\param{int }{toolIndex}}
a660d684
KB
323
324Get any client data associated with the tool.
325
326\wxheading{Parameters}
327
81d66cf3 328\docparam{toolIndex}{Index of the tool, as passed to \helpref{wxToolBar::AddTool}{wxtoolbaraddtool}.}
a660d684
KB
329
330\wxheading{Return value}
331
332Client data, or NULL if there is none.
333
81d66cf3 334\membersection{wxToolBar::GetToolEnabled}\label{wxtoolbargettoolenabled}
a660d684 335
eaaa6a06 336\constfunc{bool}{GetToolEnabled}{\param{int }{toolIndex}}
a660d684
KB
337
338Called to determine whether a tool is enabled (responds to user input).
339
340\wxheading{Parameters}
341
342\docparam{toolIndex}{Index of the tool in question.}
343
344\wxheading{Return value}
345
346TRUE if the tool is enabled, FALSE otherwise.
347
348%\wxheading{See also}
349%
81d66cf3 350%\helpref{wxToolBar::SetToolEnabled}{wxtoolbarsettoolenabled}
a660d684 351%
81d66cf3 352\membersection{wxToolBar::GetToolLongHelp}\label{wxtoolbargettoollonghelp}
a660d684 353
eaaa6a06 354\constfunc{wxString}{GetToolLongHelp}{\param{int }{toolIndex}}
a660d684
KB
355
356Returns the long help for the given tool.
357
358\wxheading{Parameters}
359
360\docparam{toolIndex}{The tool in question.}
361
362\wxheading{See also}
363
81d66cf3
JS
364\helpref{wxToolBar::SetToolLongHelp}{wxtoolbarsettoollonghelp},\rtfsp
365\helpref{wxToolBar::SetToolShortHelp}{wxtoolbarsettoolshorthelp}\rtfsp
a660d684 366
81d66cf3 367\membersection{wxToolBar::GetToolPacking}\label{wxtoolbargettoolpacking}
a660d684
KB
368
369\constfunc{int}{GetToolPacking}{\void}
370
371Returns the value used for packing tools.
372
373\wxheading{See also}
374
81d66cf3 375\helpref{wxToolBar::SetToolPacking}{wxtoolbarsettoolpacking}
a660d684 376
81d66cf3 377\membersection{wxToolBar::GetToolSeparation}\label{wxtoolbargettoolseparation}
a660d684
KB
378
379\constfunc{int}{GetToolSeparation}{\void}
380
381Returns the default separator size.
382
383\wxheading{See also}
384
81d66cf3 385\helpref{wxToolBar::SetToolSeparation}{wxtoolbarsettoolseparation}
a660d684 386
81d66cf3 387\membersection{wxToolBar::GetToolShortHelp}\label{wxtoolbargettoolshorthelp}
a660d684 388
eaaa6a06 389\constfunc{wxString}{GetToolShortHelp}{\param{int }{toolIndex}}
a660d684
KB
390
391Returns the short help for the given tool.
392
393Returns the long help for the given tool.
394
395\wxheading{Parameters}
396
397\docparam{toolIndex}{The tool in question.}
398
399\wxheading{See also}
400
81d66cf3
JS
401\helpref{wxToolBar::GetToolLongHelp}{wxtoolbargettoollonghelp},\rtfsp
402\helpref{wxToolBar::SetToolShortHelp}{wxtoolbarsettoolshorthelp}\rtfsp
a660d684 403
81d66cf3 404\membersection{wxToolBar::GetToolState}\label{wxtoolbargettoolstate}
a660d684 405
eaaa6a06 406\constfunc{bool}{GetToolState}{\param{int }{toolIndex}}
a660d684
KB
407
408Gets the on/off state of a toggle tool.
409
410\wxheading{Parameters}
411
412\docparam{toolIndex}{The tool in question.}
413
414\wxheading{Return value}
415
416TRUE if the tool is toggled on, FALSE otherwise.
417
418%\wxheading{See also}
419%
81d66cf3 420%\helpref{wxToolBar::SetToolState}{wxtoolbarsettoolstate}
a660d684 421%
81d66cf3 422\membersection{wxToolBar::Layout}\label{wxtoolbarlayout}
a660d684
KB
423
424\func{void}{Layout}{\void}
425
426Called by the application after the tools have been added to
fe604ccd 427automatically lay the tools out on the window. If you have given
a660d684
KB
428absolute positions when adding the tools, do not call this.
429
81d66cf3
JS
430This function is only implemented for some toolbar classes.
431The portable way of calling it is to call \helpref{wxToolBar::Realize}{wxtoolbarrealize} after
432you have added tools and separators.
433
434\wxheading{See also}
435
436\helpref{wxToolBar::AddTool}{wxtoolbaraddtool}, \helpref{wxToolBar::Realize}{wxtoolbarrealize}
437
438\membersection{wxToolBar::OnLeftClick}\label{wxtoolbaronleftclick}
a660d684
KB
439
440\func{bool}{OnLeftClick}{\param{int}{ toolIndex}, \param{bool}{ toggleDown}}
441
81d66cf3
JS
442Called when the user clicks on a tool with the left mouse button.
443
444This is the old way of detecting tool clicks; although it will still work,
445you should use the EVT\_MENU or EVT\_TOOL macro instead.
a660d684
KB
446
447\wxheading{Parameters}
448
81d66cf3 449\docparam{toolIndex}{The identifier passed to \helpref{wxToolBar::AddTool}{wxtoolbaraddtool}.}
a660d684
KB
450
451\docparam{toggleDown}{TRUE if the tool is a toggle and the toggle is down, otherwise is FALSE.}
452
453\wxheading{Return value}
454
455If the tool is a toggle and this function returns FALSE, the toggle
456toggle state (internal and visual) will not be changed. This provides a way of
457specifying that toggle operations are not permitted in some circumstances.
458
459\wxheading{See also}
460
81d66cf3
JS
461\helpref{wxToolBar::OnMouseEnter}{wxtoolbaronmouseenter},\rtfsp
462\helpref{wxToolBar::OnRightClick}{wxtoolbaronrightclick}
a660d684 463
81d66cf3 464\membersection{wxToolBar::OnMouseEnter}\label{wxtoolbaronmouseenter}
a660d684
KB
465
466\func{void}{OnMouseEnter}{\param{int}{ toolIndex}}
467
468This is called when the mouse cursor moves into a tool or out of
469the toolbar.
470
81d66cf3
JS
471This is the old way of detecting mouse enter events; although it will still work,
472you should use the EVT\_TOOL\_ENTER macro instead.
473
a660d684
KB
474\wxheading{Parameters}
475
476\docparam{toolIndex}{Greater than -1 if the mouse cursor has moved into the tool,
477or -1 if the mouse cursor has moved. The
478programmer can override this to provide extra information about the tool,
479such as a short description on the status line.}
480
481\wxheading{Remarks}
482
483With some derived toolbar classes, if the mouse moves quickly out of the toolbar, wxWindows may not be able to
484detect it. Therefore this function may not always be called when expected.
485
81d66cf3 486\membersection{wxToolBar::OnRightClick}\label{wxtoolbaronrightclick}
a660d684
KB
487
488\func{void}{OnRightClick}{\param{int}{ toolIndex}, \param{float}{ x}, \param{float}{ y}}
489
490Called when the user clicks on a tool with the right mouse button. The
491programmer should override this function to detect right tool clicks.
492
81d66cf3
JS
493This is the old way of detecting tool right clicks; although it will still work,
494you should use the EVT\_TOOL\_RCLICKED macro instead.
495
a660d684
KB
496\wxheading{Parameters}
497
81d66cf3 498\docparam{toolIndex}{The identifier passed to \helpref{wxToolBar::AddTool}{wxtoolbaraddtool}.}
a660d684
KB
499
500\docparam{x}{The x position of the mouse cursor.}
501
502\docparam{y}{The y position of the mouse cursor.}
503
504\wxheading{Remarks}
505
506A typical use of this member might be to pop up a menu.
507
508\wxheading{See also}
509
81d66cf3
JS
510\helpref{wxToolBar::OnMouseEnter}{wxtoolbaronmouseenter},\rtfsp
511\helpref{wxToolBar::OnLeftClick}{wxtoolbaronleftclick}
512
513\membersection{wxToolBar::Realize}\label{wxtoolbarrealize}
514
515\func{bool}{Realize}{\void}
516
517This function should be called after you have added tools. It
518calls, according to the implementation,
519either \helpref{wxToolBar::CreateTools}{wxtoolbarcreatetools} or
520 \helpref{wxToolBar::Layout}{wxtoolbarlayout}.
521
522If you are using absolute positions for your tools when using a wxToolBarSimple object,
523do not call this function. You must call it at all other times.
a660d684 524
81d66cf3 525\membersection{wxToolBar::SetToolBitmapSize}\label{wxtoolbarsettoolbitmapsize}
a660d684 526
81d66cf3 527\func{void}{SetToolBitmapSize}{\param{const wxSize\&}{ size}}
a660d684
KB
528
529Sets the default size of each tool bitmap. The default bitmap size is 16 by 15 pixels.
530
531\wxheading{Parameters}
532
533\docparam{size}{The size of the bitmaps in the toolbar.}
534
535\wxheading{Remarks}
536
537This should be called to tell the toolbar what the tool bitmap size is. Call
538it before you add tools.
539
81d66cf3 540Note that this is the size of the bitmap you pass to \helpref{wxToolBar::AddTool}{wxtoolbaraddtool},
a660d684
KB
541and not the eventual size of the tool button.
542
543\wxheading{See also}
544
81d66cf3
JS
545\helpref{wxToolBar::GetToolBitmapSize}{wxtoolbargettoolbitmapsize},\rtfsp
546\helpref{wxToolBar::GetToolSize}{wxtoolbargettoolsize}
a660d684 547
81d66cf3 548\membersection{wxToolBar::SetMargins}\label{wxtoolbarsetmargins}
a660d684
KB
549
550\func{void}{SetMargins}{\param{const wxSize\&}{ size}}
551
eaaa6a06 552\func{void}{SetMargins}{\param{int}{ x}, \param{int}{ y}}
a660d684
KB
553
554Set the values to be used as margins for the toolbar.
555
556\wxheading{Parameters}
557
558\docparam{size}{Margin size.}
559
560\docparam{x}{Left margin, right margin and inter-tool separation value.}
561
562\docparam{y}{Top margin, bottom margin and inter-tool separation value.}
563
564\wxheading{Remarks}
565
566This must be called before the tools are added if absolute positioning is to be used, and the
567default (zero-size) margins are to be overridden.
568
569\wxheading{See also}
570
81d66cf3 571\helpref{wxToolBar::GetMargins}{wxtoolbargetmargins}, \helpref{wxSize}{wxsize}
a660d684 572
81d66cf3 573\membersection{wxToolBar::SetToolLongHelp}\label{wxtoolbarsettoollonghelp}
a660d684
KB
574
575\func{void}{SetToolLongHelp}{\param{int }{toolIndex}, \param{const wxString\& }{helpString}}
576
577Sets the long help for the given tool.
578
579\wxheading{Parameters}
580
581\docparam{toolIndex}{The tool in question.}
582
583\docparam{helpString}{A string for the long help.}
584
585\wxheading{Remarks}
586
587You might use the long help for displaying the tool purpose on the status line.
588
589\wxheading{See also}
590
81d66cf3
JS
591\helpref{wxToolBar::GetToolLongHelp}{wxtoolbargettoollonghelp},\rtfsp
592\helpref{wxToolBar::SetToolShortHelp}{wxtoolbarsettoolshorthelp},\rtfsp
a660d684 593
81d66cf3 594\membersection{wxToolBar::SetToolPacking}\label{wxtoolbarsettoolpacking}
a660d684 595
eaaa6a06 596\func{void}{SetToolPacking}{\param{int}{ packing}}
a660d684
KB
597
598Sets the value used for spacing tools. The default value is 1.
599
600\wxheading{Parameters}
601
602\docparam{packing}{The value for packing.}
603
604\wxheading{Remarks}
605
606The packing is used for spacing in the vertical direction if the toolbar is horizontal,
607and for spacing in the horizontal direction if the toolbar is vertical.
608
609\wxheading{See also}
610
81d66cf3 611\helpref{wxToolBar::GetToolPacking}{wxtoolbargettoolpacking}
a660d684 612
81d66cf3 613\membersection{wxToolBar::SetToolShortHelp}\label{wxtoolbarsettoolshorthelp}
a660d684 614
eaaa6a06 615\func{void}{SetToolShortHelp}{\param{int }{toolIndex}, \param{const wxString\& }{helpString}}
a660d684
KB
616
617Sets the short help for the given tool.
618
619\wxheading{Parameters}
620
621\docparam{toolIndex}{The tool in question.}
622
623\docparam{helpString}{The string for the short help.}
624
625\wxheading{Remarks}
626
627An application might use short help for identifying the tool purpose in a tooltip.
628
629\wxheading{See also}
630
81d66cf3 631\helpref{wxToolBar::GetToolShortHelp}{wxtoolbargettoolshorthelp}, \helpref{wxToolBar::SetToolLongHelp}{wxtoolbarsettoollonghelp}
a660d684 632
81d66cf3 633\membersection{wxToolBar::SetToolSeparation}\label{wxtoolbarsettoolseparation}
a660d684 634
eaaa6a06 635\func{void}{SetToolSeparation}{\param{int}{ separation}}
a660d684
KB
636
637Sets the default separator size. The default value is 5.
638
639\wxheading{Parameters}
640
641\docparam{separation}{The separator size.}
642
643\wxheading{See also}
644
81d66cf3 645\helpref{wxToolBar::AddSeparator}{wxtoolbaraddseparator}
a660d684 646
81d66cf3 647\membersection{wxToolBar::ToggleTool}\label{wxtoolbartoggletool}
a660d684 648
eaaa6a06 649\func{void}{ToggleTool}{\param{int }{toolIndex}, \param{const bool}{ toggle}}
a660d684 650
41bf0eb3 651Toggles a tool on or off. This does not cause any event to get emitted.
a660d684
KB
652
653\wxheading{Parameters}
654
655\docparam{toolIndex}{Tool in question.}
656
657\docparam{toggle}{If TRUE, toggles the tool on, otherwise toggles it off.}
658
659\wxheading{Remarks}
660
661Only applies to a tool that has been specified as a toggle tool.
662
663\wxheading{See also}
664
81d66cf3 665\helpref{wxToolBar::GetToolState}{wxtoolbargettoolstate}
a660d684
KB
666
667