8f68971791
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@47898 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
919 lines
30 KiB
TeX
919 lines
30 KiB
TeX
\section{\class{wxToolBar}}\label{wxtoolbar}
|
|
|
|
The name wxToolBar is defined to be a synonym for one of the following classes:
|
|
|
|
\begin{itemize}\itemsep=0pt
|
|
\item {\bf wxToolBar95} The native Windows 95 toolbar. Used on Windows 95, NT 4 and above.
|
|
\item {\bf wxToolBarMSW} A Windows implementation. Used on 16-bit Windows.
|
|
\item {\bf wxToolBarGTK} The GTK toolbar.
|
|
\end{itemize}
|
|
|
|
\wxheading{Derived from}
|
|
|
|
wxToolBarBase\\
|
|
\helpref{wxControl}{wxcontrol}\\
|
|
\helpref{wxWindow}{wxwindow}\\
|
|
\helpref{wxEvtHandler}{wxevthandler}\\
|
|
\helpref{wxObject}{wxobject}
|
|
|
|
\wxheading{Include files}
|
|
|
|
<wx/toolbar.h> (to allow wxWidgets to select an appropriate toolbar class)\\
|
|
<wx/tbarbase.h> (the base class)
|
|
|
|
\wxheading{Remarks}
|
|
|
|
You may also create a toolbar that is managed by the frame, by
|
|
calling \helpref{wxFrame::CreateToolBar}{wxframecreatetoolbar}. Under Pocket PC,
|
|
you should \arg{always} use this function for creating the toolbar
|
|
to be managed by the frame, so that wxWidgets can use a combined
|
|
menubar and toolbar. Where you manage your own toolbars, create a wxToolBar
|
|
as usual.
|
|
|
|
The meaning of a "separator" is a vertical line under Windows and simple space under GTK+.
|
|
|
|
{\bf wxToolBar95:} Note that this toolbar paints tools to reflect system-wide colours.
|
|
If you use more than 16 colours in your tool bitmaps, you may wish to suppress
|
|
this behaviour, otherwise system colours in your bitmaps will inadvertently be
|
|
mapped to system colours. To do this, set the {\tt msw.remap} system option
|
|
before creating the toolbar:
|
|
|
|
\begin{verbatim}
|
|
wxSystemOptions::SetOption(wxT("msw.remap"), 0);
|
|
\end{verbatim}
|
|
|
|
If you wish to use 32-bit images (which include an alpha channel for transparency)
|
|
use:
|
|
|
|
\begin{verbatim}
|
|
wxSystemOptions::SetOption(wxT("msw.remap"), 2);
|
|
\end{verbatim}
|
|
|
|
then colour remapping is switched off, and a transparent background used. But only
|
|
use this option under Windows XP with true colour:
|
|
|
|
\begin{verbatim}
|
|
(wxTheApp->GetComCtl32Version() >= 600 && ::wxDisplayDepth() >= 32)
|
|
\end{verbatim}
|
|
|
|
\wxheading{Window styles}
|
|
|
|
\twocolwidtha{5cm}
|
|
\begin{twocollist}\itemsep=0pt
|
|
\twocolitem{\windowstyle{wxTB\_FLAT}}{Gives the toolbar a flat look (Windows and GTK only).}
|
|
\twocolitem{\windowstyle{wxTB\_DOCKABLE}}{Makes the toolbar floatable and dockable (GTK only).}
|
|
\twocolitem{\windowstyle{wxTB\_HORIZONTAL}}{Specifies horizontal layout (default).}
|
|
\twocolitem{\windowstyle{wxTB\_VERTICAL}}{Specifies vertical layout.}
|
|
\twocolitem{\windowstyle{wxTB\_TEXT}}{Shows the text in the toolbar buttons; by default only icons are shown.}
|
|
\twocolitem{\windowstyle{wxTB\_NOICONS}}{Specifies no icons in the toolbar buttons; by default they are shown.}
|
|
\twocolitem{\windowstyle{wxTB\_NODIVIDER}}{Specifies no divider (border) above the toolbar (Windows only).}
|
|
\twocolitem{\windowstyle{wxTB\_NOALIGN}}{Specifies no alignment with the parent window (Windows only, not very useful).}
|
|
\twocolitem{\windowstyle{wxTB\_HORZ\_LAYOUT}}{Shows the text and the icons alongside, not vertically stacked (Windows and GTK
|
|
2 only). This style must be used with wxTB\_TEXT.}
|
|
\twocolitem{\windowstyle{wxTB\_HORZ\_TEXT}}{Combination of wxTB\_HORZ\_LAYOUT and wxTB\_TEXT.}
|
|
\twocolitem{\windowstyle{wxTB\_NO\_TOOLTIPS}}{Don't show the short help tooltips for the tools when the mouse hovers over them.}
|
|
\twocolitem{\windowstyle{wxTB\_BOTTOM}}{Align the toolbar at the bottom of parent window.}
|
|
\twocolitem{\windowstyle{wxTB\_RIGHT}}{Align the toolbar at the right side of parent window.}
|
|
\end{twocollist}
|
|
|
|
See also \helpref{window styles overview}{windowstyles}. Note that the Win32
|
|
native toolbar ignores {\tt wxTB\_NOICONS} style. Also, toggling the
|
|
{\tt wxTB\_TEXT} works only if the style was initially on.
|
|
|
|
\wxheading{Event handling}
|
|
|
|
The toolbar class emits menu commands in the same way that a frame menubar does,
|
|
so you can use one EVT\_MENU macro for both a menu item and a toolbar button.
|
|
The event handler functions take a wxCommandEvent argument. For most event macros,
|
|
the identifier of the tool is passed, but for EVT\_TOOL\_ENTER the toolbar
|
|
window identifier is passed and the tool identifier is retrieved from the wxCommandEvent.
|
|
This is because the identifier may be -1 when the mouse moves off a tool, and -1 is not
|
|
allowed as an identifier in the event system.
|
|
|
|
\twocolwidtha{7cm}
|
|
\begin{twocollist}\itemsep=0pt
|
|
\twocolitem{{\bf EVT\_TOOL(id, func)}}{Process a wxEVT\_COMMAND\_TOOL\_CLICKED event
|
|
(a synonym for wxEVT\_COMMAND\_MENU\_SELECTED). Pass the id of the tool.}
|
|
\twocolitem{{\bf EVT\_MENU(id, func)}}{The same as EVT\_TOOL.}
|
|
\twocolitem{{\bf EVT\_TOOL\_RANGE(id1, id2, func)}}{Process a wxEVT\_COMMAND\_TOOL\_CLICKED event
|
|
for a range of identifiers. Pass the ids of the tools.}
|
|
\twocolitem{{\bf EVT\_MENU\_RANGE(id1, id2, func)}}{The same as EVT\_TOOL\_RANGE.}
|
|
\twocolitem{{\bf EVT\_TOOL\_RCLICKED(id, func)}}{Process a wxEVT\_COMMAND\_TOOL\_RCLICKED event.
|
|
Pass the id of the tool.}
|
|
\twocolitem{{\bf EVT\_TOOL\_RCLICKED\_RANGE(id1, id2, func)}}{Process a wxEVT\_COMMAND\_TOOL\_RCLICKED event
|
|
for a range of ids. Pass the ids of the tools.}
|
|
\twocolitem{{\bf EVT\_TOOL\_ENTER(id, func)}}{Process a wxEVT\_COMMAND\_TOOL\_ENTER event.
|
|
Pass 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.}
|
|
\twocolitem{{\bf EVT\_TOOL\_DROPDOWN(id, func)}}{Process a wxEVT\_COMMAND\_TOOL\_DROPDOWN\_CLICKED event. If unhandled, displays the default dropdown menu set using \helpref{wxToolBar::SetDropdownMenu}{wxtoolbarsetdropdownmenu}.}
|
|
\end{twocollist}
|
|
|
|
\wxheading{wxItemKind}
|
|
|
|
There are several different types of tools you can add to a toolbar. These
|
|
types are controlled by the wxItemKind enumeration which has the following
|
|
values:
|
|
\twocolwidtha{5cm}
|
|
\begin{twocollist}\itemsep=0pt
|
|
\twocolitem{{\bf wxITEM\_NORMAL}}{Normal tool button}
|
|
\twocolitem{{\bf wxITEM\_CHECK}}{Check (or toggle) tool button.}
|
|
\twocolitem{{\bf wxITEM\_NORMAL}}{Radio tool button. See \helpref{wxToolBar::AddRadioTool}{wxtoolbaraddradiotool} for details}
|
|
\twocolitem{{\bf wxITEM\_DROPDOWN}}{Normal tool button with a dropdown arrow
|
|
next to it. Clicking the dropdown arrow sends a wxEVT\_COMMAND\_TOOL\_DROPDOWN\_CLICKED
|
|
event and may also display the menu previously associated with the item with
|
|
\helpref{wxToolBar::SetDropdownMenu}{wxtoolbarsetdropdownmenu}. Currently this
|
|
type of tools is supported under MSW and GTK.}
|
|
\end{twocollist}
|
|
|
|
\wxheading{See also}
|
|
|
|
\overview{Toolbar overview}{wxtoolbaroverview},\rtfsp
|
|
\helpref{wxScrolledWindow}{wxscrolledwindow}
|
|
|
|
\latexignore{\rtfignore{\wxheading{Members}}}
|
|
|
|
|
|
\membersection{wxToolBar::wxToolBar}\label{wxtoolbarconstr}
|
|
|
|
\func{}{wxToolBar}{\void}
|
|
|
|
Default constructor.
|
|
|
|
\func{}{wxToolBar}{\param{wxWindow*}{ parent}, \param{wxWindowID }{id},
|
|
\param{const wxPoint\& }{pos = wxDefaultPosition},
|
|
\param{const wxSize\& }{size = wxDefaultSize},
|
|
\param{long }{style = wxTB\_HORIZONTAL \pipe wxBORDER\_NONE},
|
|
\param{const wxString\& }{name = wxPanelNameStr}}
|
|
|
|
Constructs a toolbar.
|
|
|
|
\wxheading{Parameters}
|
|
|
|
\docparam{parent}{Pointer to a parent window.}
|
|
|
|
\docparam{id}{Window identifier. If -1, will automatically create an identifier.}
|
|
|
|
\docparam{pos}{Window position. wxDefaultPosition is (-1, -1) which indicates that wxWidgets
|
|
should generate a default position for the window. If using the wxWindow class directly, supply
|
|
an actual position.}
|
|
|
|
\docparam{size}{Window size. wxDefaultSize is (-1, -1) which indicates that wxWidgets
|
|
should generate a default size for the window.}
|
|
|
|
\docparam{style}{Window style. See \helpref{wxToolBar}{wxtoolbar} for details.}
|
|
|
|
\docparam{name}{Window name.}
|
|
|
|
\wxheading{Remarks}
|
|
|
|
After a toolbar is created, you use \helpref{wxToolBar::AddTool}{wxtoolbaraddtool} and
|
|
perhaps \helpref{wxToolBar::AddSeparator}{wxtoolbaraddseparator}, and then you
|
|
must call \helpref{wxToolBar::Realize}{wxtoolbarrealize} to construct and display the toolbar
|
|
tools.
|
|
|
|
You may also create a toolbar that is managed by the frame, by
|
|
calling \helpref{wxFrame::CreateToolBar}{wxframecreatetoolbar}.
|
|
|
|
|
|
\membersection{wxToolBar::\destruct{wxToolBar}}\label{wxtoolbardtor}
|
|
|
|
\func{void}{\destruct{wxToolBar}}{\void}
|
|
|
|
Toolbar destructor.
|
|
|
|
|
|
\membersection{wxToolBar::AddControl}\label{wxtoolbaraddcontrol}
|
|
|
|
\func{bool}{AddControl}{\param{wxControl*}{ control}, \param{const wxString&}{ label = ""}}
|
|
|
|
Adds any control to the toolbar, typically e.g. a combobox.
|
|
|
|
\docparam{control}{The control to be added.}
|
|
|
|
\docparam{label}{Text to be displayed near the control.}
|
|
|
|
\wxheading{Remarks}
|
|
|
|
wxMSW: the label is only displayed if there is enough space available below the embedded control.
|
|
|
|
wxMac: labels are only displayed if wxWidgets is built with wxMAC\_USE\_NATIVE\_TOOLBAR set to 1
|
|
|
|
|
|
\membersection{wxToolBar::AddSeparator}\label{wxtoolbaraddseparator}
|
|
|
|
\func{void}{AddSeparator}{\void}
|
|
|
|
Adds a separator for spacing groups of tools.
|
|
|
|
\wxheading{See also}
|
|
|
|
\helpref{wxToolBar::AddTool}{wxtoolbaraddtool}, \helpref{wxToolBar::SetToolSeparation}{wxtoolbarsettoolseparation}
|
|
|
|
|
|
\membersection{wxToolBar::AddTool}\label{wxtoolbaraddtool}
|
|
|
|
\func{wxToolBarToolBase*}{AddTool}{\param{int}{ toolId},\rtfsp
|
|
\param{const wxString\&}{ label},\rtfsp
|
|
\param{const wxBitmap\&}{ bitmap1},\rtfsp
|
|
\param{const wxString\& }{shortHelpString = ""},\rtfsp
|
|
\param{wxItemKind}{ kind = wxITEM\_NORMAL}}
|
|
|
|
\func{wxToolBarToolBase*}{AddTool}{\param{int}{ toolId},\rtfsp
|
|
\param{const wxString\&}{ label},\rtfsp
|
|
\param{const wxBitmap\&}{ bitmap1},\rtfsp
|
|
\param{const wxBitmap\&}{ bitmap2 = wxNullBitmap},\rtfsp
|
|
\param{wxItemKind}{ kind = wxITEM\_NORMAL},\rtfsp
|
|
\param{const wxString\& }{shortHelpString = ""},
|
|
\param{const wxString\& }{longHelpString = ""},\rtfsp
|
|
\param{wxObject* }{clientData = \NULL}}
|
|
|
|
\func{wxToolBarToolBase*}{AddTool}{\param{wxToolBarToolBase* }{tool}}
|
|
|
|
Adds a tool to the toolbar. The first (short and most commonly used) version
|
|
has fewer parameters than the full version at the price of not being able to
|
|
specify some of the more rarely used button features. The last version allows
|
|
you to add an existing tool.
|
|
|
|
\wxheading{Parameters}
|
|
|
|
\docparam{toolId}{An integer by which
|
|
the tool may be identified in subsequent operations.}
|
|
|
|
\docparam{kind}{May be wxITEM\_NORMAL for a normal button (default),
|
|
wxITEM\_CHECK for a checkable tool (such tool stays pressed after it had been
|
|
toggled) or wxITEM\_RADIO for a checkable tool which makes part of a radio
|
|
group of tools each of which is automatically unchecked whenever another button
|
|
in the group is checked}
|
|
|
|
\docparam{bitmap1}{The primary tool bitmap.}
|
|
|
|
\docparam{bitmap2}{The bitmap used when the tool is disabled. If it is equal to
|
|
wxNullBitmap, the disabled bitmap is automatically generated by greing the
|
|
normal one.}
|
|
|
|
\docparam{shortHelpString}{This string is used for the tools tooltip}
|
|
|
|
\docparam{longHelpString}{This string is shown in the statusbar (if any) of the
|
|
parent frame when the mouse pointer is inside the tool}
|
|
|
|
\docparam{clientData}{An optional pointer to client data which can be
|
|
retrieved later using \helpref{wxToolBar::GetToolClientData}{wxtoolbargettoolclientdata}.}
|
|
|
|
\docparam{tool}{The tool to be added.}
|
|
|
|
\wxheading{Remarks}
|
|
|
|
After you have added tools to a toolbar, you must call \helpref{wxToolBar::Realize}{wxtoolbarrealize} in
|
|
order to have the tools appear.
|
|
|
|
\wxheading{See also}
|
|
|
|
\helpref{wxToolBar::AddSeparator}{wxtoolbaraddseparator},\rtfsp
|
|
\helpref{wxToolBar::AddCheckTool}{wxtoolbaraddchecktool},\rtfsp
|
|
\helpref{wxToolBar::AddRadioTool}{wxtoolbaraddradiotool},\rtfsp
|
|
\helpref{wxToolBar::InsertTool}{wxtoolbarinserttool},\rtfsp
|
|
\helpref{wxToolBar::DeleteTool}{wxtoolbardeletetool},\rtfsp
|
|
\helpref{wxToolBar::Realize}{wxtoolbarrealize}
|
|
|
|
|
|
\membersection{wxToolBar::AddCheckTool}\label{wxtoolbaraddchecktool}
|
|
|
|
\func{wxToolBarToolBase*}{AddCheckTool}{\param{int}{ toolId},\rtfsp
|
|
\param{const wxString\&}{ label},\rtfsp
|
|
\param{const wxBitmap\&}{ bitmap1},\rtfsp
|
|
\param{const wxBitmap\&}{ bitmap2},\rtfsp
|
|
\param{const wxString\& }{shortHelpString = ""},\rtfsp
|
|
\param{const wxString\& }{longHelpString = ""},\rtfsp
|
|
\param{wxObject* }{clientData = \NULL}}
|
|
|
|
Adds a new check (or toggle) tool to the toolbar. The parameters are the same
|
|
as in \helpref{wxToolBar::AddTool}{wxtoolbaraddtool}.
|
|
|
|
\wxheading{See also}
|
|
|
|
\helpref{wxToolBar::AddTool}{wxtoolbaraddtool}
|
|
|
|
|
|
\membersection{wxToolBar::AddRadioTool}\label{wxtoolbaraddradiotool}
|
|
|
|
\func{wxToolBarToolBase*}{AddRadioTool}{\param{int}{ toolId},\rtfsp
|
|
\param{const wxString\&}{ label},\rtfsp
|
|
\param{const wxBitmap\&}{ bitmap1},\rtfsp
|
|
\param{const wxBitmap\&}{ bitmap2},\rtfsp
|
|
\param{const wxString\& }{shortHelpString = ""},\rtfsp
|
|
\param{const wxString\& }{longHelpString = ""},\rtfsp
|
|
\param{wxObject* }{clientData = \NULL}}
|
|
|
|
Adds a new radio tool to the toolbar. Consecutive radio tools form a radio
|
|
group such that exactly one button in the group is pressed at any moment, in
|
|
other words whenever a button in the group is pressed the previously pressed
|
|
button is automatically released. You should avoid having the radio groups of
|
|
only one element as it would be impossible for the user to use such button.
|
|
|
|
By default, the first button in the radio group is initially pressed, the
|
|
others are not.
|
|
|
|
\wxheading{See also}
|
|
|
|
\helpref{wxToolBar::AddTool}{wxtoolbaraddtool}
|
|
|
|
\membersection{wxToolBar::ClearTools}\label{wxtoolbarcleartools}
|
|
|
|
\func{void}{ClearTools}{\void}
|
|
|
|
Deletes all the tools in the toolbar.
|
|
|
|
\membersection{wxToolBar::DeleteTool}\label{wxtoolbardeletetool}
|
|
|
|
\func{bool}{DeleteTool}{\param{int }{toolId}}
|
|
|
|
Removes the specified tool from the toolbar and deletes it. If you don't want
|
|
to delete the tool, but just to remove it from the toolbar (to possibly add it
|
|
back later), you may use \helpref{RemoveTool}{wxtoolbarremovetool} instead.
|
|
|
|
Note that it is unnecessary to call \helpref{Realize}{wxtoolbarrealize} for the
|
|
change to take place, it will happen immediately.
|
|
|
|
Returns true if the tool was deleted, false otherwise.
|
|
|
|
\wxheading{See also}
|
|
|
|
\helpref{DeleteToolByPos}{wxtoolbardeletetoolbypos}
|
|
|
|
|
|
\membersection{wxToolBar::DeleteToolByPos}\label{wxtoolbardeletetoolbypos}
|
|
|
|
\func{bool}{DeleteToolByPos}{\param{size\_t }{pos}}
|
|
|
|
This function behaves like \helpref{DeleteTool}{wxtoolbardeletetool} but it
|
|
deletes the tool at the specified position and not the one with the given id.
|
|
|
|
|
|
\membersection{wxToolBar::EnableTool}\label{wxtoolbarenabletool}
|
|
|
|
\func{void}{EnableTool}{\param{int }{toolId}, \param{bool}{ enable}}
|
|
|
|
Enables or disables the tool.
|
|
|
|
\wxheading{Parameters}
|
|
|
|
\docparam{toolId}{Tool to enable or disable.}
|
|
|
|
\docparam{enable}{If true, enables the tool, otherwise disables it.}
|
|
|
|
{\bf NB:} This function should only be called after
|
|
\helpref{Realize}{wxtoolbarrealize}.
|
|
|
|
\wxheading{Remarks}
|
|
|
|
Some implementations will change the visible state of the tool to indicate that it is disabled.
|
|
|
|
\wxheading{See also}
|
|
|
|
\helpref{wxToolBar::GetToolEnabled}{wxtoolbargettoolenabled},\rtfsp
|
|
\helpref{wxToolBar::ToggleTool}{wxtoolbartoggletool}
|
|
|
|
|
|
\membersection{wxToolBar::FindById}\label{wxtoolbarfindbyid}
|
|
|
|
\func{wxToolBarToolBase*}{FindById}{\param{int }{id}}
|
|
|
|
Returns a pointer to the tool identified by \arg{id} or
|
|
\NULL if no corresponding tool is found.
|
|
|
|
|
|
\membersection{wxToolBar::FindControl}\label{wxtoolbarfindcontrol}
|
|
|
|
\func{wxControl*}{FindControl}{\param{int }{id}}
|
|
|
|
Returns a pointer to the control identified by \arg{id} or
|
|
\NULL if no corresponding control is found.
|
|
|
|
|
|
\membersection{wxToolBar::FindToolForPosition}\label{wxtoolbarfindtoolforposition}
|
|
|
|
\constfunc{wxToolBarToolBase*}{FindToolForPosition}{\param{wxCoord }{x}, \param{wxCoord }{y}}
|
|
|
|
Finds a tool for the given mouse position.
|
|
|
|
\wxheading{Parameters}
|
|
|
|
\docparam{x}{X position.}
|
|
|
|
\docparam{y}{Y position.}
|
|
|
|
\wxheading{Return value}
|
|
|
|
A pointer to a tool if a tool is found, or \NULL otherwise.
|
|
|
|
\wxheading{Remarks}
|
|
|
|
Currently not implemented in wxGTK (always returns \NULL there).
|
|
|
|
|
|
\membersection{wxToolBar::GetToolsCount}\label{wxtoolbargettoolscount}
|
|
|
|
\constfunc{int}{GetToolsCount}{\void}
|
|
|
|
Returns the number of tools in the toolbar.
|
|
|
|
|
|
\membersection{wxToolBar::GetToolSize}\label{wxtoolbargettoolsize}
|
|
|
|
\func{wxSize}{GetToolSize}{\void}
|
|
|
|
Returns the size of a whole button, which is usually larger than a tool bitmap because
|
|
of added 3D effects.
|
|
|
|
\wxheading{See also}
|
|
|
|
\helpref{wxToolBar::SetToolBitmapSize}{wxtoolbarsettoolbitmapsize},\rtfsp
|
|
\helpref{wxToolBar::GetToolBitmapSize}{wxtoolbargettoolbitmapsize}
|
|
|
|
|
|
\membersection{wxToolBar::GetToolBitmapSize}\label{wxtoolbargettoolbitmapsize}
|
|
|
|
\func{wxSize}{GetToolBitmapSize}{\void}
|
|
|
|
Returns the size of bitmap that the toolbar expects to have. The default bitmap size is 16 by 15 pixels.
|
|
|
|
\wxheading{Remarks}
|
|
|
|
Note that this is the size of the bitmap you pass to \helpref{wxToolBar::AddTool}{wxtoolbaraddtool},
|
|
and not the eventual size of the tool button.
|
|
|
|
\wxheading{See also}
|
|
|
|
\helpref{wxToolBar::SetToolBitmapSize}{wxtoolbarsettoolbitmapsize},\rtfsp
|
|
\helpref{wxToolBar::GetToolSize}{wxtoolbargettoolsize}
|
|
|
|
|
|
\membersection{wxToolBar::GetMargins}\label{wxtoolbargetmargins}
|
|
|
|
\constfunc{wxSize}{GetMargins}{\void}
|
|
|
|
Returns the left/right and top/bottom margins, which are also used for inter-toolspacing.
|
|
|
|
\wxheading{See also}
|
|
|
|
\helpref{wxToolBar::SetMargins}{wxtoolbarsetmargins}
|
|
|
|
|
|
\membersection{wxToolBar::GetToolClientData}\label{wxtoolbargettoolclientdata}
|
|
|
|
\constfunc{wxObject*}{GetToolClientData}{\param{int }{toolId}}
|
|
|
|
Get any client data associated with the tool.
|
|
|
|
\wxheading{Parameters}
|
|
|
|
\docparam{toolId}{Id of the tool, as passed to \helpref{wxToolBar::AddTool}{wxtoolbaraddtool}.}
|
|
|
|
\wxheading{Return value}
|
|
|
|
Client data, or \NULL if there is none.
|
|
|
|
|
|
\membersection{wxToolBar::GetToolEnabled}\label{wxtoolbargettoolenabled}
|
|
|
|
\constfunc{bool}{GetToolEnabled}{\param{int }{toolId}}
|
|
|
|
Called to determine whether a tool is enabled (responds to user input).
|
|
|
|
\wxheading{Parameters}
|
|
|
|
\docparam{toolId}{Id of the tool in question.}
|
|
|
|
\wxheading{Return value}
|
|
|
|
true if the tool is enabled, false otherwise.
|
|
|
|
\wxheading{See also}
|
|
|
|
\helpref{wxToolBar::EnableTool}{wxtoolbarenabletool}
|
|
|
|
|
|
\membersection{wxToolBar::GetToolLongHelp}\label{wxtoolbargettoollonghelp}
|
|
|
|
\constfunc{wxString}{GetToolLongHelp}{\param{int }{toolId}}
|
|
|
|
Returns the long help for the given tool.
|
|
|
|
\wxheading{Parameters}
|
|
|
|
\docparam{toolId}{The tool in question.}
|
|
|
|
\wxheading{See also}
|
|
|
|
\helpref{wxToolBar::SetToolLongHelp}{wxtoolbarsettoollonghelp},\rtfsp
|
|
\helpref{wxToolBar::SetToolShortHelp}{wxtoolbarsettoolshorthelp}\rtfsp
|
|
|
|
|
|
\membersection{wxToolBar::GetToolPacking}\label{wxtoolbargettoolpacking}
|
|
|
|
\constfunc{int}{GetToolPacking}{\void}
|
|
|
|
Returns the value used for packing tools.
|
|
|
|
\wxheading{See also}
|
|
|
|
\helpref{wxToolBar::SetToolPacking}{wxtoolbarsettoolpacking}
|
|
|
|
|
|
\membersection{wxToolBar::GetToolPos}\label{wxtoolbargettoolpos}
|
|
|
|
\constfunc{int}{GetToolPos}{\param{int }{toolId}}
|
|
|
|
Returns the tool position in the toolbar, or {\tt wxNOT\_FOUND} if the tool is not found.
|
|
|
|
|
|
\membersection{wxToolBar::GetToolSeparation}\label{wxtoolbargettoolseparation}
|
|
|
|
\constfunc{int}{GetToolSeparation}{\void}
|
|
|
|
Returns the default separator size.
|
|
|
|
\wxheading{See also}
|
|
|
|
\helpref{wxToolBar::SetToolSeparation}{wxtoolbarsettoolseparation}
|
|
|
|
|
|
\membersection{wxToolBar::GetToolShortHelp}\label{wxtoolbargettoolshorthelp}
|
|
|
|
\constfunc{wxString}{GetToolShortHelp}{\param{int }{toolId}}
|
|
|
|
Returns the short help for the given tool.
|
|
|
|
\wxheading{Parameters}
|
|
|
|
\docparam{toolId}{The tool in question.}
|
|
|
|
\wxheading{See also}
|
|
|
|
\helpref{wxToolBar::GetToolLongHelp}{wxtoolbargettoollonghelp},\rtfsp
|
|
\helpref{wxToolBar::SetToolShortHelp}{wxtoolbarsettoolshorthelp}\rtfsp
|
|
|
|
|
|
\membersection{wxToolBar::GetToolState}\label{wxtoolbargettoolstate}
|
|
|
|
\constfunc{bool}{GetToolState}{\param{int }{toolId}}
|
|
|
|
Gets the on/off state of a toggle tool.
|
|
|
|
\wxheading{Parameters}
|
|
|
|
\docparam{toolId}{The tool in question.}
|
|
|
|
\wxheading{Return value}
|
|
|
|
true if the tool is toggled on, false otherwise.
|
|
|
|
\wxheading{See also}
|
|
|
|
\helpref{wxToolBar::ToggleTool}{wxtoolbartoggletool}
|
|
|
|
|
|
\membersection{wxToolBar::InsertControl}\label{wxtoolbarinsertcontrol}
|
|
|
|
\func{wxToolBarToolBase *}{InsertControl}{\param{size\_t }{pos}, \param{wxControl *}{control}}
|
|
|
|
Inserts the control into the toolbar at the given position.
|
|
|
|
You must call \helpref{Realize}{wxtoolbarrealize} for the change to take place.
|
|
|
|
\wxheading{See also}
|
|
|
|
\helpref{AddControl}{wxtoolbaraddcontrol},\\
|
|
\helpref{InsertTool}{wxtoolbarinserttool}
|
|
|
|
|
|
\membersection{wxToolBar::InsertSeparator}\label{wxtoolbarinsertseparator}
|
|
|
|
\func{wxToolBarToolBase *}{InsertSeparator}{\param{size\_t }{pos}}
|
|
|
|
Inserts the separator into the toolbar at the given position.
|
|
|
|
You must call \helpref{Realize}{wxtoolbarrealize} for the change to take place.
|
|
|
|
\wxheading{See also}
|
|
|
|
\helpref{AddSeparator}{wxtoolbaraddseparator},\\
|
|
\helpref{InsertTool}{wxtoolbarinserttool}
|
|
|
|
|
|
\membersection{wxToolBar::InsertTool}\label{wxtoolbarinserttool}
|
|
|
|
\func{wxToolBarToolBase *}{InsertTool}{\param{size\_t }{pos},\rtfsp
|
|
\param{int}{ toolId}, \param{const wxBitmap\&}{ bitmap1},\rtfsp
|
|
\param{const wxBitmap\&}{ bitmap2 = wxNullBitmap}, \param{bool}{ isToggle = false},\rtfsp
|
|
\param{wxObject* }{clientData = \NULL}, \param{const wxString\& }{shortHelpString = ""}, \param{const wxString\& }{longHelpString = ""}}
|
|
|
|
\func{wxToolBarToolBase *}{InsertTool}{\param{size\_t }{pos},\rtfsp
|
|
\param{wxToolBarToolBase* }{tool}}
|
|
|
|
Inserts the tool with the specified attributes into the toolbar at the given
|
|
position.
|
|
|
|
You must call \helpref{Realize}{wxtoolbarrealize} for the change to take place.
|
|
|
|
\wxheading{See also}
|
|
|
|
\helpref{AddTool}{wxtoolbaraddtool},\\
|
|
\helpref{InsertControl}{wxtoolbarinsertcontrol},\\
|
|
\helpref{InsertSeparator}{wxtoolbarinsertseparator}
|
|
|
|
|
|
\membersection{wxToolBar::OnLeftClick}\label{wxtoolbaronleftclick}
|
|
|
|
\func{bool}{OnLeftClick}{\param{int}{ toolId}, \param{bool}{ toggleDown}}
|
|
|
|
Called when the user clicks on a tool with the left mouse button.
|
|
|
|
This is the old way of detecting tool clicks; although it will still work,
|
|
you should use the EVT\_MENU or EVT\_TOOL macro instead.
|
|
|
|
\wxheading{Parameters}
|
|
|
|
\docparam{toolId}{The identifier passed to \helpref{wxToolBar::AddTool}{wxtoolbaraddtool}.}
|
|
|
|
\docparam{toggleDown}{true if the tool is a toggle and the toggle is down, otherwise is false.}
|
|
|
|
\wxheading{Return value}
|
|
|
|
If the tool is a toggle and this function returns false, the toggle
|
|
toggle state (internal and visual) will not be changed. This provides a way of
|
|
specifying that toggle operations are not permitted in some circumstances.
|
|
|
|
\wxheading{See also}
|
|
|
|
\helpref{wxToolBar::OnMouseEnter}{wxtoolbaronmouseenter},\rtfsp
|
|
\helpref{wxToolBar::OnRightClick}{wxtoolbaronrightclick}
|
|
|
|
|
|
\membersection{wxToolBar::OnMouseEnter}\label{wxtoolbaronmouseenter}
|
|
|
|
\func{void}{OnMouseEnter}{\param{int}{ toolId}}
|
|
|
|
This is called when the mouse cursor moves into a tool or out of
|
|
the toolbar.
|
|
|
|
This is the old way of detecting mouse enter events; although it will still work,
|
|
you should use the EVT\_TOOL\_ENTER macro instead.
|
|
|
|
\wxheading{Parameters}
|
|
|
|
\docparam{toolId}{Greater than -1 if the mouse cursor has moved into the tool,
|
|
or -1 if the mouse cursor has moved. The
|
|
programmer can override this to provide extra information about the tool,
|
|
such as a short description on the status line.}
|
|
|
|
\wxheading{Remarks}
|
|
|
|
With some derived toolbar classes, if the mouse moves quickly out of the toolbar, wxWidgets may not be able to
|
|
detect it. Therefore this function may not always be called when expected.
|
|
|
|
|
|
\membersection{wxToolBar::OnRightClick}\label{wxtoolbaronrightclick}
|
|
|
|
\func{void}{OnRightClick}{\param{int}{ toolId}, \param{float}{ x}, \param{float}{ y}}
|
|
|
|
Called when the user clicks on a tool with the right mouse button. The
|
|
programmer should override this function to detect right tool clicks.
|
|
|
|
This is the old way of detecting tool right clicks; although it will still work,
|
|
you should use the EVT\_TOOL\_RCLICKED macro instead.
|
|
|
|
\wxheading{Parameters}
|
|
|
|
\docparam{toolId}{The identifier passed to \helpref{wxToolBar::AddTool}{wxtoolbaraddtool}.}
|
|
|
|
\docparam{x}{The x position of the mouse cursor.}
|
|
|
|
\docparam{y}{The y position of the mouse cursor.}
|
|
|
|
\wxheading{Remarks}
|
|
|
|
A typical use of this member might be to pop up a menu.
|
|
|
|
\wxheading{See also}
|
|
|
|
\helpref{wxToolBar::OnMouseEnter}{wxtoolbaronmouseenter},\rtfsp
|
|
\helpref{wxToolBar::OnLeftClick}{wxtoolbaronleftclick}
|
|
|
|
|
|
\membersection{wxToolBar::Realize}\label{wxtoolbarrealize}
|
|
|
|
\func{bool}{Realize}{\void}
|
|
|
|
This function should be called after you have added tools.
|
|
|
|
|
|
\membersection{wxToolBar::RemoveTool}\label{wxtoolbarremovetool}
|
|
|
|
\func{wxToolBarToolBase *}{RemoveTool}{\param{int }{id}}
|
|
|
|
Removes the given tool from the toolbar but doesn't delete it. This allows to
|
|
insert/add this tool back to this (or another) toolbar later.
|
|
|
|
Note that it is unnecessary to call \helpref{Realize}{wxtoolbarrealize} for the
|
|
change to take place, it will happen immediately.
|
|
|
|
\wxheading{See also}
|
|
|
|
\helpref{DeleteTool}{wxtoolbardeletetool}
|
|
|
|
|
|
\membersection{wxToolBar::SetBitmapResource}\label{wxtoolbarsetbitmapresource}
|
|
|
|
\func{void}{SetBitmapResource}{\param{int }{resourceId}}
|
|
|
|
Sets the bitmap resource identifier for specifying tool bitmaps as indices
|
|
into a custom bitmap. Windows CE only.
|
|
|
|
|
|
\membersection{wxToolBar::SetMargins}\label{wxtoolbarsetmargins}
|
|
|
|
\func{void}{SetMargins}{\param{const wxSize\&}{ size}}
|
|
|
|
\func{void}{SetMargins}{\param{int}{ x}, \param{int}{ y}}
|
|
|
|
Set the values to be used as margins for the toolbar.
|
|
|
|
\wxheading{Parameters}
|
|
|
|
\docparam{size}{Margin size.}
|
|
|
|
\docparam{x}{Left margin, right margin and inter-tool separation value.}
|
|
|
|
\docparam{y}{Top margin, bottom margin and inter-tool separation value.}
|
|
|
|
\wxheading{Remarks}
|
|
|
|
This must be called before the tools are added if absolute positioning is to be used, and the
|
|
default (zero-size) margins are to be overridden.
|
|
|
|
\wxheading{See also}
|
|
|
|
\helpref{wxToolBar::GetMargins}{wxtoolbargetmargins}, \helpref{wxSize}{wxsize}
|
|
|
|
|
|
\membersection{wxToolBar::SetDropdownMenu}\label{wxtoolbarsetdropdownmenu}
|
|
|
|
\func{bool}{SetDropdownMenu}{\param{int }{id}, \param{wxMenu* }{menu}}
|
|
|
|
Sets the dropdown menu for the tool given by its \arg{id}. The tool itself will
|
|
delete the menu when it's no longer needed.
|
|
|
|
If you define a EVT\_TOOL\_DROPDOWN handler in your program, you must call
|
|
\helpref{wxEvent::Skip()}{wxeventskip} from it or the menu won't be displayed.
|
|
|
|
|
|
\membersection{wxToolBar::SetToolBitmapSize}\label{wxtoolbarsettoolbitmapsize}
|
|
|
|
\func{void}{SetToolBitmapSize}{\param{const wxSize\&}{ size}}
|
|
|
|
Sets the default size of each tool bitmap. The default bitmap size is 16 by 15 pixels.
|
|
|
|
\wxheading{Parameters}
|
|
|
|
\docparam{size}{The size of the bitmaps in the toolbar.}
|
|
|
|
\wxheading{Remarks}
|
|
|
|
This should be called to tell the toolbar what the tool bitmap size is. Call
|
|
it before you add tools.
|
|
|
|
Note that this is the size of the bitmap you pass to \helpref{wxToolBar::AddTool}{wxtoolbaraddtool},
|
|
and not the eventual size of the tool button.
|
|
|
|
\wxheading{See also}
|
|
|
|
\helpref{wxToolBar::GetToolBitmapSize}{wxtoolbargettoolbitmapsize},\rtfsp
|
|
\helpref{wxToolBar::GetToolSize}{wxtoolbargettoolsize}
|
|
|
|
|
|
\membersection{wxToolBar::SetToolClientData}\label{wxtoolbarsettoolclientdata}
|
|
|
|
\func{void}{SetToolClientData}{\param{int }{id}, \param{wxObject* }{clientData}}
|
|
|
|
Sets the client data associated with the tool.
|
|
|
|
|
|
\membersection{wxToolBar::SetToolDisabledBitmap}\label{wxtoolbarsettooldisabledbitmap}
|
|
|
|
\func{void}{SetToolDisabledBitmap}{\param{int }{id}, \param{const wxBitmap\& }{bitmap}}
|
|
|
|
Sets the bitmap to be used by the tool with the given ID when the tool
|
|
is in a disabled state. This can only be used on Button tools, not
|
|
controls. NOTE: The native toolbar classes on the main platforms all
|
|
synthesize the disabled bitmap from the normal bitmap, so this
|
|
function will have no effect on those platforms.
|
|
|
|
|
|
\membersection{wxToolBar::SetToolLongHelp}\label{wxtoolbarsettoollonghelp}
|
|
|
|
\func{void}{SetToolLongHelp}{\param{int }{toolId}, \param{const wxString\& }{helpString}}
|
|
|
|
Sets the long help for the given tool.
|
|
|
|
\wxheading{Parameters}
|
|
|
|
\docparam{toolId}{The tool in question.}
|
|
|
|
\docparam{helpString}{A string for the long help.}
|
|
|
|
\wxheading{Remarks}
|
|
|
|
You might use the long help for displaying the tool purpose on the status line.
|
|
|
|
\wxheading{See also}
|
|
|
|
\helpref{wxToolBar::GetToolLongHelp}{wxtoolbargettoollonghelp},\rtfsp
|
|
\helpref{wxToolBar::SetToolShortHelp}{wxtoolbarsettoolshorthelp},\rtfsp
|
|
|
|
|
|
\membersection{wxToolBar::SetToolPacking}\label{wxtoolbarsettoolpacking}
|
|
|
|
\func{void}{SetToolPacking}{\param{int}{ packing}}
|
|
|
|
Sets the value used for spacing tools. The default value is 1.
|
|
|
|
\wxheading{Parameters}
|
|
|
|
\docparam{packing}{The value for packing.}
|
|
|
|
\wxheading{Remarks}
|
|
|
|
The packing is used for spacing in the vertical direction if the toolbar is horizontal,
|
|
and for spacing in the horizontal direction if the toolbar is vertical.
|
|
|
|
\wxheading{See also}
|
|
|
|
\helpref{wxToolBar::GetToolPacking}{wxtoolbargettoolpacking}
|
|
|
|
|
|
\membersection{wxToolBar::SetToolShortHelp}\label{wxtoolbarsettoolshorthelp}
|
|
|
|
\func{void}{SetToolShortHelp}{\param{int }{toolId}, \param{const wxString\& }{helpString}}
|
|
|
|
Sets the short help for the given tool.
|
|
|
|
\wxheading{Parameters}
|
|
|
|
\docparam{toolId}{The tool in question.}
|
|
|
|
\docparam{helpString}{The string for the short help.}
|
|
|
|
\wxheading{Remarks}
|
|
|
|
An application might use short help for identifying the tool purpose in a tooltip.
|
|
|
|
\wxheading{See also}
|
|
|
|
\helpref{wxToolBar::GetToolShortHelp}{wxtoolbargettoolshorthelp}, \helpref{wxToolBar::SetToolLongHelp}{wxtoolbarsettoollonghelp}
|
|
|
|
|
|
\membersection{wxToolBar::SetToolNormalBitmap}\label{wxtoolbarsettoolnormalbitmap}
|
|
|
|
\func{void}{SetToolNormalBitmap}{\param{int }{id}, \param{const wxBitmap\& }{bitmap}}
|
|
|
|
Sets the bitmap to be used by the tool with the given ID. This can
|
|
only be used on Button tools, not controls.
|
|
|
|
|
|
|
|
\membersection{wxToolBar::SetToolSeparation}\label{wxtoolbarsettoolseparation}
|
|
|
|
\func{void}{SetToolSeparation}{\param{int}{ separation}}
|
|
|
|
Sets the default separator size. The default value is 5.
|
|
|
|
\wxheading{Parameters}
|
|
|
|
\docparam{separation}{The separator size.}
|
|
|
|
\wxheading{See also}
|
|
|
|
\helpref{wxToolBar::AddSeparator}{wxtoolbaraddseparator}
|
|
|
|
|
|
\membersection{wxToolBar::ToggleTool}\label{wxtoolbartoggletool}
|
|
|
|
\func{void}{ToggleTool}{\param{int }{toolId}, \param{bool}{ toggle}}
|
|
|
|
Toggles a tool on or off. This does not cause any event to get emitted.
|
|
|
|
\wxheading{Parameters}
|
|
|
|
\docparam{toolId}{Tool in question.}
|
|
|
|
\docparam{toggle}{If true, toggles the tool on, otherwise toggles it off.}
|
|
|
|
\wxheading{Remarks}
|
|
|
|
Only applies to a tool that has been specified as a toggle tool.
|
|
|
|
\wxheading{See also}
|
|
|
|
\helpref{wxToolBar::GetToolState}{wxtoolbargettoolstate}
|
|
|