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