X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/f7bd26981f1c8d46d3909e3de90df081de4df33b..4104ed92a537f36f7f41ce07d34cadbe4d78685c:/docs/latex/wx/toolbar.tex diff --git a/docs/latex/wx/toolbar.tex b/docs/latex/wx/toolbar.tex index 701b3f3c36..cab5e19908 100644 --- a/docs/latex/wx/toolbar.tex +++ b/docs/latex/wx/toolbar.tex @@ -11,7 +11,7 @@ Used on platforms with no native toolbar control, or where scrolling is required \end{itemize} Note that the base class {\bf wxToolBarBase} defines -automatic scrolling management functionality which is identical +automatic scrolling management functionality which is similar to \helpref{wxScrolledWindow}{wxscrolledwindow}, so please refer to this class also. Not all toolbars support scrolling, but wxToolBarSimple does. @@ -23,26 +23,47 @@ wxToolBarBase\\ \helpref{wxEvtHandler}{wxevthandler}\\ \helpref{wxObject}{wxobject} +\wxheading{Include files} + + (to allow wxWindows to select an appropriate toolbar class)\\ + (the base class)\\ + (the non-Windows 95 Windows toolbar class)\\ + (the Windows 95/98 toolbar class)\\ + (the generic simple toolbar class) + \wxheading{Remarks} You may also create a toolbar that is managed by the frame, by calling \helpref{wxFrame::CreateToolBar}{wxframecreatetoolbar}. +Due to the use of native toolbars on the various platforms, certain adaptions will +often have to be made in order to get optimal look on all platforms as some platforms +ignore the values for explicit placement and use their own layout and the meaning +of a "separator" is a vertical line under Windows95 vs. simple space under GTK etc. + {\bf wxToolBar95:} Note that this toolbar paints tools to reflect user-selected colours. -The toolbar orientation must always be {\bf wxVERTICAL}. \wxheading{Window styles} \twocolwidtha{5cm} \begin{twocollist}\itemsep=0pt -\twocolitem{\windowstyle{wxTB\_FLAT}}{Gives the toolbar a flat look ('coolbar' or 'flatbar' style). Windows 95 only.} -\twocolitem{\windowstyle{wxTB\_HORIZONTAL}}{Specifies horizontal layout.} -\twocolitem{\windowstyle{wxTB\_VERTICAL}}{Specifies vertical layout (not available for the Windows 95 -toolbar).} -\twocolitem{\windowstyle{wxTB\_3DBUTTONS}}{Gives wxToolBarSimple a mild 3D look to its buttons.} +\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\_3DBUTTONS}}{Only for wxToolBarSimple: gives a mild 3D look to its buttons.} +\twocolitem{\windowstyle{wxTB\_TEXT}}{Show 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}}{Show 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.} \end{twocollist} -See also \helpref{window styles overview}{windowstyles}. +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} @@ -54,6 +75,13 @@ window is passed and the tool id is retrieved from the wxCommandEvent. This is because the id may be -1 when the mouse moves off a tool, and -1 is not allowed as an identifier in the event system. +Note that tool commands (and UI update events for tools) are first sent to +the focus window within the frame that contains the toolbar. If no window within the frame has the focus, +then the events are sent directly to the toolbar (and up the hierarchy to the +frame, depending on where the application has put its event handlers). This allows command and UI update +handling to be processed by specific windows and controls, and not necessarily +by the application frame. + \twocolwidtha{7cm} \begin{twocollist}\itemsep=0pt \twocolitem{{\bf EVT\_TOOL(id, func)}}{Process a wxEVT\_COMMAND\_TOOL\_CLICKED event @@ -125,6 +153,14 @@ calling \helpref{wxFrame::CreateToolBar}{wxframecreatetoolbar}. Toolbar destructor. +\membersection{wxToolBar::AddControl}\label{wxtoolbaraddcontrol} + +\func{bool}{AddControl}{\param{wxControl*}{ control}} + +Adds any control to the toolbar, typically e.g. a combobox. + +\docparam{control}{The control to be added.} + \membersection{wxToolBar::AddSeparator}\label{wxtoolbaraddseparator} \func{void}{AddSeparator}{\void} @@ -137,42 +173,56 @@ Adds a separator for spacing groups of tools. \membersection{wxToolBar::AddTool}\label{wxtoolbaraddtool} -\func{wxToolBarTool*}{AddTool}{\param{int}{ toolIndex}, \param{const wxBitmap\&}{ bitmap1},\rtfsp -\param{const wxBitmap\&}{ bitmap2 = wxNullBitmap}, \param{bool}{ isToggle = FALSE},\rtfsp -\param{long}{ xPos = -1}, \param{long}{ yPos = -1},\rtfsp -\param{wxObject* }{clientData = NULL}, \param{const wxString\& }{shortHelpString = ""}, \param{const wxString\& }{longHelpString = ""}} +\func{wxToolBarTool*}{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{wxToolBarTool*}{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{wxToolBarTool*}{AddTool}{\param{wxToolBarTool* }{tool}} -Adds a tool to the toolbar. +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 +to add an existing tool. \wxheading{Parameters} -\docparam{toolIndex}{An integer by which +\docparam{toolId}{An integer by which the tool may be identified in subsequent operations.} -\docparam{isToggle}{Specifies whether the tool is a toggle or not: a toggle tool may be in -two states, whereas a non-toggle tool is just a button.} +\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 for toggle and button tools.} \docparam{bitmap2}{The second bitmap specifies the on-state bitmap for a toggle -tool. If this is NULL, either an inverted version of the primary bitmap is +tool. If this is wxNullBitmap, either an inverted version of the primary bitmap is used for the on-state of a toggle tool (monochrome displays) or a black -border is drawn around the tool (colour displays). Note that to pass a NULL value, -you need to cast it to (wxBitmap *) so that C++ can construct an appropriate temporary -wxBitmap object.} +border is drawn around the tool (colour displays) or the pixmap is shown +as a pressed button (GTK). } -\docparam{xPos}{Specifies the x position of the tool if automatic layout is not suitable.} +\docparam{shortHelpString}{This string is used for the tools tooltip} -\docparam{yPos}{Specifies the y position of the tool if automatic layout is not suitable.} +\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{shortHelpString}{Used for displaying a tooltip for the tool in the -Windows 95 implementation of wxButtonBar. Pass the empty string if this is not required.} - -\docparam{longHelpString}{Used to displayer longer help, such as status line help. -Pass the empty string if this is not required.} +\docparam{tool}{The tool to be added.} \wxheading{Remarks} @@ -181,48 +231,91 @@ order to have the tools appear. \wxheading{See also} -\helpref{wxToolBar::AddSeparator}{wxtoolbaraddseparator}, -\helpref{wxToolBar::Realize}{wxtoolbarrealize}, +\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::CreateTools}\label{wxtoolbarcreatetools} +\membersection{wxToolBar::AddCheckTool}\label{wxtoolbaraddchecktool} -\func{bool}{CreateTools}{\void} +\func{wxToolBarTool*}{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}} -This function is implemented for some toolbar classes to create the tools and display them. -The portable way of calling it is to call \helpref{wxToolBar::Realize}{wxtoolbarrealize} after -you have added tools and separators. +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}, \helpref{wxToolBar::Realize}{wxtoolbarrealize} +\helpref{wxToolBar::AddTool}{wxtoolbaraddtool} -\membersection{wxToolBar::DrawTool}\label{wxtoolbardrawtool} +\membersection{wxToolBar::AddRadioTool}\label{wxtoolbaraddradiotool} -\func{void}{DrawTool}{\param{wxMemoryDC\& }{memDC}, \param{wxToolBarTool* }{tool}} +\func{wxToolBarTool*}{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}} -Draws the specified tool onto the window using the given memory device context. +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. -\wxheading{Parameters} +By default, the first button in the radio group is initially pressed, the +others are not. -\docparam{memDC}{A memory DC to be used for drawing the tool.} +\wxheading{See also} -\docparam{tool}{Tool to be drawn.} +\helpref{wxToolBar::AddTool}{wxtoolbaraddtool} -\wxheading{Remarks} +\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} -For internal use only. +\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 }{toolIndex}, \param{const bool}{ enable}} +\func{void}{EnableTool}{\param{int }{toolId}, \param{const bool}{ enable}} Enables or disables the tool. \wxheading{Parameters} -\docparam{toolIndex}{Tool to enable or disable.} +\docparam{toolId}{Tool to enable or disable.} -\docparam{enable}{If TRUE, enables the tool, otherwise disables it.} +\docparam{enable}{If true, enables the tool, otherwise disables it.} + +{\bf NB:} This function should only be called after +\helpref{Realize}{wxtoolbarrealize}. \wxheading{Remarks} @@ -232,9 +325,15 @@ will change the visible state of the tool to indicate that it is disabled. \wxheading{See also} \helpref{wxToolBar::GetToolEnabled}{wxtoolbargettoolenabled},\rtfsp -%\helpref{wxToolBar::SetToolState}{wxtoolbarsettoolstate},\rtfsp \helpref{wxToolBar::ToggleTool}{wxtoolbartoggletool} +\membersection{wxToolBar::FindControl}\label{wxtoolbarfindcontrol} + +\func{wxControl*}{FindControl}{\param{int }{id}} + +Returns a pointer to the control identified by {\it id} or +NULL if no corresponding control is found. + \membersection{wxToolBar::FindToolForPosition}\label{wxtoolbarfindtoolforposition} \constfunc{wxToolBarTool*}{FindToolForPosition}{\param{const float}{ x}, \param{const float}{ y}} @@ -293,28 +392,15 @@ Returns the left/right and top/bottom margins, which are also used for inter-too \helpref{wxToolBar::SetMargins}{wxtoolbarsetmargins} -\membersection{wxToolBar::GetMaxSize}\label{wxtoolbargetmaxsize} - -\constfunc{void}{GetMaxSize}{\param{float*}{ w}, \param{float*}{ h}} - -Gets the maximum size taken up by the tools after layout, including margins. -This can be used to size a frame around the toolbar window. - -\wxheading{Parameters} - -\docparam{w}{Receives the maximum horizontal size.} - -\docparam{h}{Receives the maximum vertical size.} - \membersection{wxToolBar::GetToolClientData}\label{wxtoolbargettoolclientdata} -\constfunc{wxObject*}{GetToolClientData}{\param{int }{toolIndex}} +\constfunc{wxObject*}{GetToolClientData}{\param{int }{toolId}} Get any client data associated with the tool. \wxheading{Parameters} -\docparam{toolIndex}{Index of the tool, as passed to \helpref{wxToolBar::AddTool}{wxtoolbaraddtool}.} +\docparam{toolId}{Id of the tool, as passed to \helpref{wxToolBar::AddTool}{wxtoolbaraddtool}.} \wxheading{Return value} @@ -322,31 +408,31 @@ Client data, or NULL if there is none. \membersection{wxToolBar::GetToolEnabled}\label{wxtoolbargettoolenabled} -\constfunc{bool}{GetToolEnabled}{\param{int }{toolIndex}} +\constfunc{bool}{GetToolEnabled}{\param{int }{toolId}} Called to determine whether a tool is enabled (responds to user input). \wxheading{Parameters} -\docparam{toolIndex}{Index of the tool in question.} +\docparam{toolId}{Id of the tool in question.} \wxheading{Return value} -TRUE if the tool is enabled, FALSE otherwise. +true if the tool is enabled, false otherwise. + +\wxheading{See also} + +\helpref{wxToolBar::EnableTool}{wxtoolbarenabletool} -%\wxheading{See also} -% -%\helpref{wxToolBar::SetToolEnabled}{wxtoolbarsettoolenabled} -% \membersection{wxToolBar::GetToolLongHelp}\label{wxtoolbargettoollonghelp} -\constfunc{wxString}{GetToolLongHelp}{\param{int }{toolIndex}} +\constfunc{wxString}{GetToolLongHelp}{\param{int }{toolId}} Returns the long help for the given tool. \wxheading{Parameters} -\docparam{toolIndex}{The tool in question.} +\docparam{toolId}{The tool in question.} \wxheading{See also} @@ -363,6 +449,12 @@ Returns the value used for packing tools. \helpref{wxToolBar::SetToolPacking}{wxtoolbarsettoolpacking} +\membersection{wxToolBar::GetToolPos}\label{wxtoolbargettoolpos} + +\constfunc{int}{GetToolPos}{\param{int }{toolId}} + +Returns the tool position in the toolbar, or wxNOT\_FOUND if the tool is not found. + \membersection{wxToolBar::GetToolSeparation}\label{wxtoolbargettoolseparation} \constfunc{int}{GetToolSeparation}{\void} @@ -375,15 +467,13 @@ Returns the default separator size. \membersection{wxToolBar::GetToolShortHelp}\label{wxtoolbargettoolshorthelp} -\constfunc{wxString}{GetToolShortHelp}{\param{int }{toolIndex}} +\constfunc{wxString}{GetToolShortHelp}{\param{int }{toolId}} Returns the short help for the given tool. -Returns the long help for the given tool. - \wxheading{Parameters} -\docparam{toolIndex}{The tool in question.} +\docparam{toolId}{The tool in question.} \wxheading{See also} @@ -392,41 +482,72 @@ Returns the long help for the given tool. \membersection{wxToolBar::GetToolState}\label{wxtoolbargettoolstate} -\constfunc{bool}{GetToolState}{\param{int }{toolIndex}} +\constfunc{bool}{GetToolState}{\param{int }{toolId}} Gets the on/off state of a toggle tool. \wxheading{Parameters} -\docparam{toolIndex}{The tool in question.} +\docparam{toolId}{The tool in question.} \wxheading{Return value} -TRUE if the tool is toggled on, FALSE otherwise. +true if the tool is toggled on, false otherwise. + +\wxheading{See also} + +\helpref{wxToolBar::ToggleTool}{wxtoolbartoggletool} + +\membersection{wxToolBar::InsertControl}\label{wxtoolbarinsertcontrol} + +\func{wxToolBarTool *}{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} -%\wxheading{See also} -% -%\helpref{wxToolBar::SetToolState}{wxtoolbarsettoolstate} -% -\membersection{wxToolBar::Layout}\label{wxtoolbarlayout} +\membersection{wxToolBar::InsertSeparator}\label{wxtoolbarinsertseparator} -\func{void}{Layout}{\void} +\func{wxToolBarTool *}{InsertSeparator}{\param{size\_t }{pos}} -Called by the application after the tools have been added to -automatically lay the tools out on the window. If you have given -absolute positions when adding the tools, do not call this. +Inserts the separator into the toolbar at the given position. -This function is only implemented for some toolbar classes. -The portable way of calling it is to call \helpref{wxToolBar::Realize}{wxtoolbarrealize} after -you have added tools and separators. +You must call \helpref{Realize}{wxtoolbarrealize} for the change to take place. \wxheading{See also} -\helpref{wxToolBar::AddTool}{wxtoolbaraddtool}, \helpref{wxToolBar::Realize}{wxtoolbarrealize} +\helpref{AddSeparator}{wxtoolbaraddseparator},\\ +\helpref{InsertTool}{wxtoolbarinserttool} + +\membersection{wxToolBar::InsertTool}\label{wxtoolbarinserttool} + +\func{wxToolBarTool *}{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{wxToolBarTool *}{InsertTool}{\param{size\_t }{pos},\rtfsp +\param{wxToolBarTool* }{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}{ toolIndex}, \param{bool}{ toggleDown}} +\func{bool}{OnLeftClick}{\param{int}{ toolId}, \param{bool}{ toggleDown}} Called when the user clicks on a tool with the left mouse button. @@ -435,13 +556,13 @@ you should use the EVT\_MENU or EVT\_TOOL macro instead. \wxheading{Parameters} -\docparam{toolIndex}{The identifier passed to \helpref{wxToolBar::AddTool}{wxtoolbaraddtool}.} +\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.} +\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 +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. @@ -452,7 +573,7 @@ specifying that toggle operations are not permitted in some circumstances. \membersection{wxToolBar::OnMouseEnter}\label{wxtoolbaronmouseenter} -\func{void}{OnMouseEnter}{\param{int}{ toolIndex}} +\func{void}{OnMouseEnter}{\param{int}{ toolId}} This is called when the mouse cursor moves into a tool or out of the toolbar. @@ -462,7 +583,7 @@ you should use the EVT\_TOOL\_ENTER macro instead. \wxheading{Parameters} -\docparam{toolIndex}{Greater than -1 if the mouse cursor has moved into the tool, +\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.} @@ -474,7 +595,7 @@ detect it. Therefore this function may not always be called when expected. \membersection{wxToolBar::OnRightClick}\label{wxtoolbaronrightclick} -\func{void}{OnRightClick}{\param{int}{ toolIndex}, \param{float}{ x}, \param{float}{ y}} +\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. @@ -484,7 +605,7 @@ you should use the EVT\_TOOL\_RCLICKED macro instead. \wxheading{Parameters} -\docparam{toolIndex}{The identifier passed to \helpref{wxToolBar::AddTool}{wxtoolbaraddtool}.} +\docparam{toolId}{The identifier passed to \helpref{wxToolBar::AddTool}{wxtoolbaraddtool}.} \docparam{x}{The x position of the mouse cursor.} @@ -503,36 +624,24 @@ A typical use of this member might be to pop up a menu. \func{bool}{Realize}{\void} -This function should be called after you have added tools. It -calls, according to the implementation, -either \helpref{wxToolBar::CreateTools}{wxtoolbarcreatetools} or - \helpref{wxToolBar::Layout}{wxtoolbarlayout}. +This function should be called after you have added tools. If you are using absolute positions for your tools when using a wxToolBarSimple object, do not call this function. You must call it at all other times. -\membersection{wxToolBar::SetToolBitmapSize}\label{wxtoolbarsettoolbitmapsize} +\membersection{wxToolBar::RemoveTool}\label{wxtoolbarremovetool} -\func{void}{SetToolBitmapSize}{\param{const wxSize\&}{ size}} +\func{wxToolBarTool *}{RemoveTool}{\param{int }{id}} -Sets the default size of each tool bitmap. The default bitmap size is 16 by 15 pixels. +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. -\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. +Note that it is unnecessary to call \helpref{Realize}{wxtoolbarrealize} for the +change to take place, it will happen immediately. \wxheading{See also} -\helpref{wxToolBar::GetToolBitmapSize}{wxtoolbargettoolbitmapsize},\rtfsp -\helpref{wxToolBar::GetToolSize}{wxtoolbargettoolsize} +\helpref{DeleteTool}{wxtoolbardeletetool} \membersection{wxToolBar::SetMargins}\label{wxtoolbarsetmargins} @@ -559,15 +668,44 @@ default (zero-size) margins are to be overridden. \helpref{wxToolBar::GetMargins}{wxtoolbargetmargins}, \helpref{wxSize}{wxsize} +\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::SetToolLongHelp}\label{wxtoolbarsettoollonghelp} -\func{void}{SetToolLongHelp}{\param{int }{toolIndex}, \param{const wxString\& }{helpString}} +\func{void}{SetToolLongHelp}{\param{int }{toolId}, \param{const wxString\& }{helpString}} Sets the long help for the given tool. \wxheading{Parameters} -\docparam{toolIndex}{The tool in question.} +\docparam{toolId}{The tool in question.} \docparam{helpString}{A string for the long help.} @@ -601,13 +739,13 @@ and for spacing in the horizontal direction if the toolbar is vertical. \membersection{wxToolBar::SetToolShortHelp}\label{wxtoolbarsettoolshorthelp} -\func{void}{SetToolShortHelp}{\param{int }{toolIndex}, \param{const wxString\& }{helpString}} +\func{void}{SetToolShortHelp}{\param{int }{toolId}, \param{const wxString\& }{helpString}} Sets the short help for the given tool. \wxheading{Parameters} -\docparam{toolIndex}{The tool in question.} +\docparam{toolId}{The tool in question.} \docparam{helpString}{The string for the short help.} @@ -635,15 +773,15 @@ Sets the default separator size. The default value is 5. \membersection{wxToolBar::ToggleTool}\label{wxtoolbartoggletool} -\func{void}{ToggleTool}{\param{int }{toolIndex}, \param{const bool}{ toggle}} +\func{void}{ToggleTool}{\param{int }{toolId}, \param{const bool}{ toggle}} -Toggles a tool on or off. +Toggles a tool on or off. This does not cause any event to get emitted. \wxheading{Parameters} -\docparam{toolIndex}{Tool in question.} +\docparam{toolId}{Tool in question.} -\docparam{toggle}{If TRUE, toggles the tool on, otherwise toggles it off.} +\docparam{toggle}{If true, toggles the tool on, otherwise toggles it off.} \wxheading{Remarks} @@ -652,5 +790,3 @@ Only applies to a tool that has been specified as a toggle tool. \wxheading{See also} \helpref{wxToolBar::GetToolState}{wxtoolbargettoolstate} - -