Provided by: erlang-manpages_25.2.3+dfsg-1_all bug

NAME

       wxToolBar - Functions for wxToolBar class

DESCRIPTION

       A toolbar is a bar of buttons and/or other controls usually placed below the menu bar in a
       wxFrame.

       You may create a toolbar that is managed by a frame calling wxFrame:createToolBar/2. Under
       Pocket  PC,  you should 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 wxToolBar as usual.

       There  are  several  different  types  of  tools you can add to a toolbar. These types are
       controlled by the ?wxItemKind enumeration.

       Note that many methods in wxToolBar such as addTool/6 return a wxToolBarToolBase*  object.
       This  should  be  regarded  as an opaque handle representing the newly added toolbar item,
       providing access to its id and position within the toolbar. Changes to  the  item's  state
       should  be  made  through  calls  to wxToolBar methods, for example enableTool/3. Calls to
       wxToolBarToolBase (not implemented in wx)  methods  (undocumented  by  purpose)  will  not
       change the visible state of the item within the tool bar.

       After  you  have  added  all  the  tools  you need, you must call realize/1 to effectively
       construct and display the toolbar.

       wxMSW note: Note that under wxMSW 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 msw.remap system option before creating the toolbar: If you
       wish to use 32-bit images (which include an alpha  channel  for  transparency)  use:  Then
       colour  remapping  is  switched  off, and a transparent background used. But only use this
       option under Windows XP with true colour:

       Styles

       This class supports the following styles:

       See: Overview toolbar

       This class is derived (and can use functions) from: wxControl wxWindow wxEvtHandler

       wxWidgets docs: wxToolBar

EVENTS

       Event  types  emitted  from   this   class:   command_tool_rclicked,   command_tool_enter,
       tool_dropdown

DATA TYPES

       wxToolBar() = wx:wx_object()

EXPORTS

       addControl(This, Control) -> wx:wx_object()

              Types:

                 This = wxToolBar()
                 Control = wxControl:wxControl()

       addControl(This, Control, Options :: [Option]) -> wx:wx_object()

              Types:

                 This = wxToolBar()
                 Control = wxControl:wxControl()
                 Option = {label, unicode:chardata()}

              Adds any control to the toolbar, typically e.g. a wxComboBox.

              Remark:   wxMac:   labels   are   only   displayed   if  wxWidgets  is  built  with
              wxMAC_USE_NATIVE_TOOLBAR set to 1

       addSeparator(This) -> wx:wx_object()

              Types:

                 This = wxToolBar()

              Adds a separator for spacing groups of tools.

              Notice that the separator uses the look appropriate for the current platform so  it
              can  be  a  vertical  line  (MSW,  some  versions of GTK) or just an empty space or
              something else.

              See: addTool/6, setToolSeparation/2, addStretchableSpace/1

       addTool(This, Tool) -> wx:wx_object()

              Types:

                 This = wxToolBar()
                 Tool = wx:wx_object()

              Adds a tool to the toolbar.

              Remark: After you have added tools to a toolbar, you must call realize/1  in  order
              to have the tools appear.

              See:  addSeparator/1,  addCheckTool/5,  addRadioTool/5, insertTool/6, deleteTool/2,
              realize/1, SetDropdownMenu() (not implemented in wx)

       addTool(This, ToolId, Label, Bitmap) -> wx:wx_object()

              Types:

                 This = wxToolBar()
                 ToolId = integer()
                 Label = unicode:chardata()
                 Bitmap = wxBitmap:wxBitmap()

       addTool(This, ToolId, Label, Bitmap, BmpDisabled) ->
                  wx:wx_object()

       addTool(This, ToolId, Label, Bitmap, BmpDisabled :: [Option]) ->
                  wx:wx_object()

              Types:

                 This = wxToolBar()
                 ToolId = integer()
                 Label = unicode:chardata()
                 Bitmap = wxBitmap:wxBitmap()
                 Option = {shortHelp, unicode:chardata()} | {kind, wx:wx_enum()}

              Adds a tool to the toolbar.

              This most commonly used version has fewer parameters than the  full  version  below
              which specifies the more rarely used button features.

              Remark:  After  you have added tools to a toolbar, you must call realize/1 in order
              to have the tools appear.

              See: addSeparator/1, addCheckTool/5,  addRadioTool/5,  insertTool/6,  deleteTool/2,
              realize/1, SetDropdownMenu() (not implemented in wx)

       addTool(This, ToolId, Label, Bitmap, BmpDisabled,
               Options :: [Option]) ->
                  wx:wx_object()

              Types:

                 This = wxToolBar()
                 ToolId = integer()
                 Label = unicode:chardata()
                 Bitmap = BmpDisabled = wxBitmap:wxBitmap()
                 Option =
                     {kind, wx:wx_enum()} |
                     {shortHelp, unicode:chardata()} |
                     {longHelp, unicode:chardata()} |
                     {data, wx:wx_object()}

              Adds a tool to the toolbar.

              Remark:  After  you have added tools to a toolbar, you must call realize/1 in order
              to have the tools appear.

              See: addSeparator/1, addCheckTool/5,  addRadioTool/5,  insertTool/6,  deleteTool/2,
              realize/1, SetDropdownMenu() (not implemented in wx)

       addCheckTool(This, ToolId, Label, Bitmap1) -> wx:wx_object()

              Types:

                 This = wxToolBar()
                 ToolId = integer()
                 Label = unicode:chardata()
                 Bitmap1 = wxBitmap:wxBitmap()

       addCheckTool(This, ToolId, Label, Bitmap1, Options :: [Option]) ->
                       wx:wx_object()

              Types:

                 This = wxToolBar()
                 ToolId = integer()
                 Label = unicode:chardata()
                 Bitmap1 = wxBitmap:wxBitmap()
                 Option =
                     {bmpDisabled, wxBitmap:wxBitmap()} |
                     {shortHelp, unicode:chardata()} |
                     {longHelp, unicode:chardata()} |
                     {data, wx:wx_object()}

              Adds a new check (or toggle) tool to the toolbar.

              The parameters are the same as in addTool/6.

              See: addTool/6

       addRadioTool(This, ToolId, Label, Bitmap1) -> wx:wx_object()

              Types:

                 This = wxToolBar()
                 ToolId = integer()
                 Label = unicode:chardata()
                 Bitmap1 = wxBitmap:wxBitmap()

       addRadioTool(This, ToolId, Label, Bitmap1, Options :: [Option]) ->
                       wx:wx_object()

              Types:

                 This = wxToolBar()
                 ToolId = integer()
                 Label = unicode:chardata()
                 Bitmap1 = wxBitmap:wxBitmap()
                 Option =
                     {bmpDisabled, wxBitmap:wxBitmap()} |
                     {shortHelp, unicode:chardata()} |
                     {longHelp, unicode:chardata()} |
                     {data, wx:wx_object()}

              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.

              See: addTool/6

       addStretchableSpace(This) -> wx:wx_object()

              Types:

                 This = wxToolBar()

              Adds a stretchable space to the toolbar.

              Any space not taken up by the fixed items (all items except for stretchable spaces)
              is  distributed in equal measure between the stretchable spaces in the toolbar. The
              most common use for this method is to add a single  stretchable  space  before  the
              items  which  should be right-aligned in the toolbar, but more exotic possibilities
              are possible, e.g. a stretchable space may be added in the beginning and the end of
              the toolbar to centre all toolbar items.

              See: addTool/6, addSeparator/1, insertStretchableSpace/2

              Since: 2.9.1

       insertStretchableSpace(This, Pos) -> wx:wx_object()

              Types:

                 This = wxToolBar()
                 Pos = integer()

              Inserts a stretchable space at the given position.

              See addStretchableSpace/1 for details about stretchable spaces.

              See: insertTool/6, insertSeparator/2

              Since: 2.9.1

       deleteTool(This, ToolId) -> boolean()

              Types:

                 This = wxToolBar()
                 ToolId = integer()

              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 removeTool/2 instead.

              Note: It is unnecessary to call realize/1 for the change to  take  place,  it  will
              happen immediately.

              Return: true if the tool was deleted, false otherwise.

              See: deleteToolByPos/2

       deleteToolByPos(This, Pos) -> boolean()

              Types:

                 This = wxToolBar()
                 Pos = integer()

              This  function  behaves  like deleteTool/2 but it deletes the tool at the specified
              position and not the one with the given id.

       enableTool(This, ToolId, Enable) -> ok

              Types:

                 This = wxToolBar()
                 ToolId = integer()
                 Enable = boolean()

              Enables or disables the tool.

              Remark: Some implementations will change the visible state of the tool to  indicate
              that it is disabled.

              See: getToolEnabled/2, toggleTool/3

       findById(This, Id) -> wx:wx_object()

              Types:

                 This = wxToolBar()
                 Id = integer()

              Returns  a pointer to the tool identified by id or NULL if no corresponding tool is
              found.

       findControl(This, Id) -> wxControl:wxControl()

              Types:

                 This = wxToolBar()
                 Id = integer()

              Returns a pointer to the control identified by  id  or  NULL  if  no  corresponding
              control is found.

       findToolForPosition(This, X, Y) -> wx:wx_object()

              Types:

                 This = wxToolBar()
                 X = Y = integer()

              Finds a tool for the given mouse position.

              Return: A pointer to a tool if a tool is found, or NULL otherwise.

              Remark: Currently not implemented in wxGTK (always returns NULL there).

       getToolSize(This) -> {W :: integer(), H :: integer()}

              Types:

                 This = wxToolBar()

              Returns  the  size  of  a  whole button, which is usually larger than a tool bitmap
              because of added 3D effects.

              See: setToolBitmapSize/2, getToolBitmapSize/1

       getToolBitmapSize(This) -> {W :: integer(), H :: integer()}

              Types:

                 This = wxToolBar()

              Returns the size of bitmap that the toolbar expects to have.

              The default bitmap size is platform-dependent: for example, it is 16*15 for MSW and
              24*24 for GTK. This size does not necessarily indicate the best size to use for the
              toolbars    on    the    given    platform,    for    this    you    should     use
              wxArtProvider::GetNativeSizeHint(wxART_TOOLBAR) but in any case, as the bitmap size
              is deduced automatically from the size of the bitmaps  associated  with  the  tools
              added  to  the  toolbar,  it  is  usually  unnecessary  to call setToolBitmapSize/2
              explicitly.

              Remark: Note that this is the size of the bitmap you pass to addTool/6, and not the
              eventual size of the tool button.

              See: setToolBitmapSize/2, getToolSize/1

       getMargins(This) -> {W :: integer(), H :: integer()}

              Types:

                 This = wxToolBar()

              Returns  the  left/right  and  top/bottom  margins,  which are also used for inter-
              toolspacing.

              See: setMargins/3

       getToolEnabled(This, ToolId) -> boolean()

              Types:

                 This = wxToolBar()
                 ToolId = integer()

              Called to determine whether a tool is enabled (responds to user input).

              Return: true if the tool is enabled, false otherwise.

              See: enableTool/3

       getToolLongHelp(This, ToolId) -> unicode:charlist()

              Types:

                 This = wxToolBar()
                 ToolId = integer()

              Returns the long help for the given tool.

              See: setToolLongHelp/3, setToolShortHelp/3

       getToolPacking(This) -> integer()

              Types:

                 This = wxToolBar()

              Returns the value used for packing tools.

              See: setToolPacking/2

       getToolPos(This, ToolId) -> integer()

              Types:

                 This = wxToolBar()
                 ToolId = integer()

              Returns the tool position in the toolbar, or wxNOT_FOUND if the tool is not found.

       getToolSeparation(This) -> integer()

              Types:

                 This = wxToolBar()

              Returns the default separator size.

              See: setToolSeparation/2

       getToolShortHelp(This, ToolId) -> unicode:charlist()

              Types:

                 This = wxToolBar()
                 ToolId = integer()

              Returns the short help for the given tool.

              See: getToolLongHelp/2, setToolShortHelp/3

       getToolState(This, ToolId) -> boolean()

              Types:

                 This = wxToolBar()
                 ToolId = integer()

              Gets the on/off state of a toggle tool.

              Return: true if the tool is toggled on, false otherwise.

              See: toggleTool/3

       insertControl(This, Pos, Control) -> wx:wx_object()

              Types:

                 This = wxToolBar()
                 Pos = integer()
                 Control = wxControl:wxControl()

       insertControl(This, Pos, Control, Options :: [Option]) ->
                        wx:wx_object()

              Types:

                 This = wxToolBar()
                 Pos = integer()
                 Control = wxControl:wxControl()
                 Option = {label, unicode:chardata()}

              Inserts the control into the toolbar at the given position.

              You must call realize/1 for the change to take place.

              See: addControl/3, insertTool/6

       insertSeparator(This, Pos) -> wx:wx_object()

              Types:

                 This = wxToolBar()
                 Pos = integer()

              Inserts the separator into the toolbar at the given position.

              You must call realize/1 for the change to take place.

              See: addSeparator/1, insertTool/6

       insertTool(This, Pos, Tool) -> wx:wx_object()

              Types:

                 This = wxToolBar()
                 Pos = integer()
                 Tool = wx:wx_object()

       insertTool(This, Pos, ToolId, Label, Bitmap) -> wx:wx_object()

              Types:

                 This = wxToolBar()
                 Pos = ToolId = integer()
                 Label = unicode:chardata()
                 Bitmap = wxBitmap:wxBitmap()

       insertTool(This, Pos, ToolId, Label, Bitmap, Options :: [Option]) ->
                     wx:wx_object()

              Types:

                 This = wxToolBar()
                 Pos = ToolId = integer()
                 Label = unicode:chardata()
                 Bitmap = wxBitmap:wxBitmap()
                 Option =
                     {bmpDisabled, wxBitmap:wxBitmap()} |
                     {kind, wx:wx_enum()} |
                     {shortHelp, unicode:chardata()} |
                     {longHelp, unicode:chardata()} |
                     {clientData, wx:wx_object()}

              Inserts the tool with the specified  attributes  into  the  toolbar  at  the  given
              position.

              You must call realize/1 for the change to take place.

              See: addTool/6, insertControl/4, insertSeparator/2

              Return:  The  newly inserted tool or NULL on failure. Notice that with the overload
              taking tool parameter the caller is responsible for deleting the tool in the latter
              case.

       realize(This) -> boolean()

              Types:

                 This = wxToolBar()

              This function should be called after you have added tools.

       removeTool(This, Id) -> wx:wx_object()

              Types:

                 This = wxToolBar()
                 Id = integer()

              Removes the given tool from the toolbar but doesn't delete it.

              This allows inserting/adding this tool back to this (or another) toolbar later.

              Note:  It  is  unnecessary  to call realize/1 for the change to take place, it will
              happen immediately.

              See: deleteTool/2

       setMargins(This, X, Y) -> ok

              Types:

                 This = wxToolBar()
                 X = Y = integer()

              Set the values to be used as margins for the toolbar.

              Remark: 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.

              See: getMargins/1

       setToolBitmapSize(This, Size) -> ok

              Types:

                 This = wxToolBar()
                 Size = {W :: integer(), H :: integer()}

              Sets the default size of each tool bitmap.

              The default bitmap size is 16 by 15 pixels.

              Remark:  This  should  be  called to tell the toolbar what the tool bitmap size is.
              Call it before you add tools.

              See: getToolBitmapSize/1, getToolSize/1

       setToolLongHelp(This, ToolId, HelpString) -> ok

              Types:

                 This = wxToolBar()
                 ToolId = integer()
                 HelpString = unicode:chardata()

              Sets the long help for the given tool.

              Remark: You might use the long help for displaying the tool purpose on  the  status
              line.

              See: getToolLongHelp/2, setToolShortHelp/3

       setToolPacking(This, Packing) -> ok

              Types:

                 This = wxToolBar()
                 Packing = integer()

              Sets the value used for spacing tools.

              The default value is 1.

              Remark: 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.

              See: getToolPacking/1

       setToolShortHelp(This, ToolId, HelpString) -> ok

              Types:

                 This = wxToolBar()
                 ToolId = integer()
                 HelpString = unicode:chardata()

              Sets the short help for the given tool.

              Remark: An application might use short help for identifying the tool purpose  in  a
              tooltip.

              See: getToolShortHelp/2, setToolLongHelp/3

       setToolSeparation(This, Separation) -> ok

              Types:

                 This = wxToolBar()
                 Separation = integer()

              Sets the default separator size.

              The default value is 5.

              See: addSeparator/1

       toggleTool(This, ToolId, Toggle) -> ok

              Types:

                 This = wxToolBar()
                 ToolId = integer()
                 Toggle = boolean()

              Toggles a tool on or off.

              This does not cause any event to get emitted.

              Remark: Only applies to a tool that has been specified as a toggle tool.