Class: Wx::ToolBar

Inherits:
Control show all
Defined in:
lib/wx/doc/gen/tool_bar.rb

Overview

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

You may create a toolbar that is managed by a frame calling Frame#create_tool_bar. 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 ToolBar as usual. There are several different types of tools you can add to a toolbar. These types are controlled by the ItemKind enumeration. Note that many methods in ToolBar such as #add_tool 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 ToolBar methods, for example #enable_tool. Calls to ToolBarToolBase 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 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:

Wx::SystemOptions.set_option('msw.remap', 0)

If you wish to use 32-bit images (which include an alpha channel for transparency) use:

Wx::SystemOptions.set_option('msw.remap', 2)

Then colour remapping is switched off, and a transparent background used.

Styles

This class supports the following styles:

  • TB_FLAT: Gives the toolbar a flat look (Windows and GTK only).

  • TB_DOCKABLE: Makes the toolbar floatable and dockable (GTK only).

  • TB_HORIZONTAL: Specifies horizontal layout (default).

  • TB_VERTICAL: Specifies vertical layout.

  • TB_TEXT: Shows the text in the toolbar buttons; by default only icons are shown.

  • TB_NOICONS: Specifies no icons in the toolbar buttons; by default they are shown.

  • TB_NODIVIDER: Specifies no divider (border) above the toolbar (Windows only)

  • TB_NOALIGN: Specifies no alignment with the parent window (Windows only, not very useful).

  • TB_HORZ_LAYOUT: Shows the text and the icons alongside, not vertically stacked (Windows and GTK 2 only). This style must be used with TB_TEXT.

  • TB_HORZ_TEXT: Combination of TB_HORZ_LAYOUT and TB_TEXT.

  • TB_NO_TOOLTIPS: Don't show the short help tooltips for the tools when the mouse hovers over them.

  • TB_BOTTOM: Align the toolbar at the bottom of parent window.

  • TB_RIGHT: Align the toolbar at the right side of parent window.

  • TB_DEFAULT_STYLE: The TB_HORIZONTAL style. This style is new since wxWidgets 2.9.5.

See also Window Styles. Note that the WXMSW native toolbar ignores TB_NOICONS style. Also, toggling the TB_TEXT works only if the style was initially on.

Events emitted by this class

The following event-handler methods redirect the events to member method or handler blocks for CommandEvent events. Event handler methods for events emitted by this class:

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 CommandEvent 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 CommandEvent. This is because the identifier may be StandardID::ID_ANY when the mouse moves off a tool, and StandardID::ID_ANY is not allowed as an identifier in the event system.

Category: Miscellaneous Windows

See Also:

  • Overview

Requires:

  • USE_TOOLBAR

Instance Method Summary collapse

Methods inherited from Control

#command, #create, ellipsize, escape_mnemonics, #get_label, #get_label_text, #get_size_from_text, #get_size_from_text_size, remove_mnemonics, #set_label, #set_label_markup, #set_label_text

Methods inherited from Window

#accepts_focus, #accepts_focus_from_keyboard, #accepts_focus_recursively, #add_child, #adjust_for_layout_direction, #always_show_scrollbars, #begin_repositioning_children, #cache_best_size, #can_accept_focus, #can_accept_focus_from_keyboard, #can_scroll, #can_set_transparent, #capture_mouse, #center, #center_on_parent, #centre, #centre_on_parent, #clear_background, #client_to_screen, #client_to_window_size, #close, #convert_dialog_to_pixels, #convert_pixels_to_dialog, #create, #destroy, #destroy_children, #disable, #disable_focus_from_keyboard, #do_update_window_ui, #drag_accept_files, #each_child, #enable, #enable_touch_events, #enable_visible_focus, #end_repositioning_children, find_focus, #find_window_by_id, find_window_by_id, #find_window_by_label, find_window_by_label, #find_window_by_name, find_window_by_name, #fit, #fit_inside, #freeze, #from_dip, from_dip, #from_phys, from_phys, #get_accelerator_table, #get_auto_layout, #get_background_colour, #get_background_style, #get_best_height, #get_best_size, #get_best_virtual_size, #get_best_width, #get_border, get_capture, #get_caret, #get_char_height, #get_char_width, #get_children, get_class_default_attributes, #get_client_area_origin, #get_client_rect, #get_client_size, #get_containing_sizer, #get_content_scale_factor, #get_cursor, #get_default_attributes, #get_dpi, #get_dpi_scale_factor, #get_drop_target, #get_effective_min_size, #get_event_handler, #get_extra_style, #get_font, #get_foreground_colour, #get_grand_parent, #get_help_text, #get_help_text_at_point, #get_id, #get_label, #get_layout_direction, #get_max_client_size, #get_max_height, #get_max_size, #get_max_width, #get_min_client_size, #get_min_height, #get_min_size, #get_min_width, #get_name, #get_next_sibling, #get_parent, #get_popup_menu_selection_from_user, #get_position, #get_prev_sibling, #get_rect, #get_screen_position, #get_screen_rect, #get_scroll_pos, #get_scroll_range, #get_scroll_thumb, #get_size, #get_sizer, #get_text_extent, #get_theme_enabled, #get_tool_tip, #get_tool_tip_text, #get_update_client_rect, #get_update_region, #get_validator, #get_virtual_size, #get_window_border_size, #get_window_style, #get_window_style_flag, #get_window_variant, #handle_as_navigation_key, #handle_window_event, #has_capture, #has_extra_style, #has_flag, #has_focus, #has_multiple_pages, #has_scrollbar, #has_transparent_background, #hide, #hide_with_effect, #hit_test, #inform_first_direction, #inherit_attributes, #inherits_background_colour, #inherits_foreground_colour, #init_dialog, #invalidate_best_size, #is_being_deleted, #is_descendant, #is_double_buffered, #is_enabled, #is_exposed, #is_focusable, #is_frozen, #is_retained, #is_scrollbar_always_shown, #is_shown, #is_shown_on_screen, #is_this_enabled, #is_top_level, #is_transparent_background_supported, #layout, #line_down, #line_up, #locked, #lower_window, #move, #move_after_in_tab_order, #move_before_in_tab_order, #navigate, #navigate_in, new_control_id, #on_internal_idle, #page_down, #page_up, #paint, #paint_buffered, #popup_menu, #post_size_event, #post_size_event_to_parent, #process_window_event, #process_window_event_locally, #push_event_handler, #raise_window, #refresh, #refresh_rect, #register_hot_key, #release_mouse, #remove_child, #remove_event_handler, #reparent, #screen_to_client, #scroll_lines, #scroll_pages, #scroll_window, #send_size_event, #send_size_event_to_parent, #set_accelerator_table, #set_auto_layout, #set_background_colour, #set_background_style, #set_can_focus, #set_caret, #set_client_size, #set_containing_sizer, #set_cursor, #set_double_buffered, #set_drop_target, #set_event_handler, #set_extra_style, #set_focus, #set_focus_from_kbd, #set_font, #set_foreground_colour, #set_help_text, #set_id, #set_initial_size, #set_label, #set_layout_direction, #set_max_client_size, #set_max_size, #set_min_client_size, #set_min_size, #set_name, #set_next_handler, #set_own_background_colour, #set_own_font, #set_own_foreground_colour, #set_position, #set_previous_handler, #set_scroll_pos, #set_scrollbar, #set_size, #set_size_hints, #set_sizer, #set_sizer_and_fit, #set_theme_enabled, #set_tool_tip, #set_transparent, #set_validator, #set_virtual_size, #set_window_style, #set_window_style_flag, #set_window_variant, #should_inherit_colours, #show, #show_with_effect, #switch_sizer, #thaw, #to_dip, to_dip, #to_phys, to_phys, #toggle_window_style, #transfer_data_from_window, #transfer_data_to_window, #unregister_hot_key, unreserve_control_id, #unset_tool_tip, #update, #update_window_ui, #use_background_colour, #use_bg_col, #use_foreground_colour, #validate, #warp_pointer, #window_to_client_size

Methods inherited from EvtHandler

add_filter, #add_pending_event, #call_after, clear_filters, #connect, #delete_pending_events, #disconnect, #evt_activate, #evt_activate_app, #evt_aui_pane_activated, #evt_aui_pane_button, #evt_aui_pane_close, #evt_aui_pane_maximize, #evt_aui_pane_restore, #evt_aui_render, #evt_auinotebook_allow_dnd, #evt_auinotebook_begin_drag, #evt_auinotebook_bg_dclick, #evt_auinotebook_button, #evt_auinotebook_drag_done, #evt_auinotebook_drag_motion, #evt_auinotebook_end_drag, #evt_auinotebook_page_changed, #evt_auinotebook_page_changing, #evt_auinotebook_page_close, #evt_auinotebook_page_closed, #evt_auinotebook_tab_middle_down, #evt_auinotebook_tab_middle_up, #evt_auinotebook_tab_right_down, #evt_auinotebook_tab_right_up, #evt_auitoolbar_begin_drag, #evt_auitoolbar_middle_click, #evt_auitoolbar_overflow_click, #evt_auitoolbar_right_click, #evt_auitoolbar_tool_dropdown, #evt_button, #evt_calculate_layout, #evt_calendar, #evt_calendar_page_changed, #evt_calendar_sel_changed, #evt_calendar_week_clicked, #evt_calendar_weekday_clicked, #evt_char, #evt_char_hook, #evt_checkbox, #evt_checklistbox, #evt_child_focus, #evt_choice, #evt_choicebook_page_changed, #evt_choicebook_page_changing, #evt_close, #evt_collapsiblepane_changed, #evt_colourpicker_changed, #evt_colourpicker_current_changed, #evt_colourpicker_dialog_cancelled, #evt_combobox, #evt_combobox_closeup, #evt_combobox_dropdown, #evt_command, #evt_command_enter, #evt_command_kill_focus, #evt_command_left_click, #evt_command_left_dclick, #evt_command_range, #evt_command_right_click, #evt_command_scroll, #evt_command_scroll_bottom, #evt_command_scroll_changed, #evt_command_scroll_linedown, #evt_command_scroll_lineup, #evt_command_scroll_pagedown, #evt_command_scroll_pageup, #evt_command_scroll_thumbrelease, #evt_command_scroll_thumbtrack, #evt_command_scroll_top, #evt_command_set_focus, #evt_context_menu, #evt_date_changed, #evt_dialup_connected, #evt_dialup_disconnected, #evt_dirctrl_fileactivated, #evt_dirctrl_selectionchanged, #evt_dirpicker_changed, #evt_display_changed, #evt_dpi_changed, #evt_drop_files, #evt_end_session, #evt_enter_window, #evt_erase_background, #evt_filectrl_fileactivated, #evt_filectrl_filterchanged, #evt_filectrl_folderchanged, #evt_filectrl_selectionchanged, #evt_filepicker_changed, #evt_find, #evt_find_close, #evt_find_next, #evt_find_replace, #evt_find_replace_all, #evt_fontpicker_changed, #evt_fullscreen, #evt_gesture_pan, #evt_gesture_rotate, #evt_gesture_zoom, #evt_grid_cell_changed, #evt_grid_cell_changing, #evt_grid_cell_left_click, #evt_grid_cell_left_dclick, #evt_grid_cell_right_click, #evt_grid_cell_right_dclick, #evt_grid_cmd_col_size, #evt_grid_cmd_editor_created, #evt_grid_cmd_range_selected, #evt_grid_cmd_range_selecting, #evt_grid_cmd_row_size, #evt_grid_col_auto_size, #evt_grid_col_move, #evt_grid_col_size, #evt_grid_col_sort, #evt_grid_editor_created, #evt_grid_editor_hidden, #evt_grid_editor_shown, #evt_grid_label_left_click, #evt_grid_label_left_dclick, #evt_grid_label_right_click, #evt_grid_label_right_dclick, #evt_grid_range_selected, #evt_grid_range_selecting, #evt_grid_row_auto_size, #evt_grid_row_move, #evt_grid_row_size, #evt_grid_select_cell, #evt_grid_tabbing, #evt_header_begin_reorder, #evt_header_begin_resize, #evt_header_click, #evt_header_dclick, #evt_header_dragging_cancelled, #evt_header_end_reorder, #evt_header_end_resize, #evt_header_middle_click, #evt_header_middle_dclick, #evt_header_resizing, #evt_header_right_click, #evt_header_right_dclick, #evt_header_separator_dclick, #evt_help, #evt_help_range, #evt_hibernate, #evt_hotkey, #evt_html_cell_clicked, #evt_html_cell_hover, #evt_html_link_clicked, #evt_hyperlink, #evt_iconize, #evt_idle, #evt_init_dialog, #evt_joy_button_down, #evt_joy_button_up, #evt_joy_move, #evt_joy_zmove, #evt_joystick_events, #evt_key_down, #evt_key_up, #evt_kill_focus, #evt_leave_window, #evt_left_dclick, #evt_left_down, #evt_left_up, #evt_list_begin_drag, #evt_list_begin_label_edit, #evt_list_begin_rdrag, #evt_list_cache_hint, #evt_list_col_begin_drag, #evt_list_col_click, #evt_list_col_dragging, #evt_list_col_end_drag, #evt_list_col_right_click, #evt_list_delete_all_items, #evt_list_delete_item, #evt_list_end_label_edit, #evt_list_insert_item, #evt_list_item_activated, #evt_list_item_checked, #evt_list_item_deselected, #evt_list_item_focused, #evt_list_item_middle_click, #evt_list_item_right_click, #evt_list_item_selected, #evt_list_item_unchecked, #evt_list_key_down, #evt_listbook_page_changed, #evt_listbook_page_changing, #evt_listbox, #evt_listbox_dclick, #evt_long_press, #evt_magnify, #evt_maximize, #evt_media_finished, #evt_media_loaded, #evt_media_pause, #evt_media_play, #evt_media_statechanged, #evt_media_stop, #evt_menu, #evt_menu_close, #evt_menu_highlight, #evt_menu_highlight_all, #evt_menu_open, #evt_menu_range, #evt_middle_dclick, #evt_middle_down, #evt_middle_up, #evt_motion, #evt_mouse_aux1_dclick, #evt_mouse_aux1_down, #evt_mouse_aux1_up, #evt_mouse_aux2_dclick, #evt_mouse_aux2_down, #evt_mouse_aux2_up, #evt_mouse_capture_changed, #evt_mouse_capture_lost, #evt_mouse_events, #evt_mousewheel, #evt_move, #evt_move_end, #evt_move_start, #evt_moving, #evt_navigation_key, #evt_notebook_page_changed, #evt_notebook_page_changing, #evt_paint, #evt_pg_changed, #evt_pg_changing, #evt_pg_col_begin_drag, #evt_pg_col_dragging, #evt_pg_col_end_drag, #evt_pg_double_click, #evt_pg_highlighted, #evt_pg_item_collapsed, #evt_pg_item_expanded, #evt_pg_label_edit_begin, #evt_pg_label_edit_ending, #evt_pg_page_changed, #evt_pg_right_click, #evt_pg_selected, #evt_press_and_tap, #evt_query_end_session, #evt_query_layout_info, #evt_radiobox, #evt_radiobutton, #evt_ribbonbar_help_click, #evt_ribbonbar_page_changed, #evt_ribbonbar_page_changing, #evt_ribbonbar_tab_left_dclick, #evt_ribbonbar_tab_middle_down, #evt_ribbonbar_tab_middle_up, #evt_ribbonbar_tab_right_down, #evt_ribbonbar_tab_right_up, #evt_ribbonbar_toggled, #evt_ribbonbuttonbar_clicked, #evt_ribbonbuttonbar_dropdown_clicked, #evt_ribbongallery_clicked, #evt_ribbongallery_hover_changed, #evt_ribbongallery_selected, #evt_ribbonpanel_extbutton_activated, #evt_ribbontoolbar_clicked, #evt_ribbontoolbar_dropdown_clicked, #evt_richtext_buffer_reset, #evt_richtext_character, #evt_richtext_consuming_character, #evt_richtext_content_deleted, #evt_richtext_content_inserted, #evt_richtext_delete, #evt_richtext_focus_object_changed, #evt_richtext_left_click, #evt_richtext_left_dclick, #evt_richtext_middle_click, #evt_richtext_properties_changed, #evt_richtext_return, #evt_richtext_right_click, #evt_richtext_selection_changed, #evt_richtext_style_changed, #evt_richtext_stylesheet_changed, #evt_richtext_stylesheet_replaced, #evt_richtext_stylesheet_replacing, #evt_right_dclick, #evt_right_down, #evt_right_up, #evt_sash_dragged, #evt_sash_dragged_range, #evt_scroll, #evt_scroll_bottom, #evt_scroll_changed, #evt_scroll_command, #evt_scroll_linedown, #evt_scroll_lineup, #evt_scroll_pagedown, #evt_scroll_pageup, #evt_scroll_thumbrelease, #evt_scroll_thumbtrack, #evt_scroll_top, #evt_scrollbar, #evt_scrollwin, #evt_scrollwin_bottom, #evt_scrollwin_linedown, #evt_scrollwin_lineup, #evt_scrollwin_pagedown, #evt_scrollwin_pageup, #evt_scrollwin_thumbrelease, #evt_scrollwin_thumbtrack, #evt_scrollwin_top, #evt_search, #evt_search_cancel, #evt_set_cursor, #evt_set_focus, #evt_show, #evt_size, #evt_slider, #evt_spin, #evt_spin_down, #evt_spin_up, #evt_spinctrl, #evt_spinctrldouble, #evt_splitter_dclick, #evt_splitter_sash_pos_changed, #evt_splitter_sash_pos_changing, #evt_splitter_sash_pos_resize, #evt_splitter_unsplit, #evt_stc_autocomp_cancelled, #evt_stc_autocomp_char_deleted, #evt_stc_autocomp_completed, #evt_stc_autocomp_selection, #evt_stc_autocomp_selection_change, #evt_stc_calltip_click, #evt_stc_change, #evt_stc_charadded, #evt_stc_clipboard_copy, #evt_stc_clipboard_paste, #evt_stc_do_drop, #evt_stc_doubleclick, #evt_stc_drag_over, #evt_stc_dwellend, #evt_stc_dwellstart, #evt_stc_hotspot_click, #evt_stc_hotspot_dclick, #evt_stc_hotspot_release_click, #evt_stc_indicator_click, #evt_stc_indicator_release, #evt_stc_macrorecord, #evt_stc_margin_right_click, #evt_stc_marginclick, #evt_stc_modified, #evt_stc_needshown, #evt_stc_painted, #evt_stc_romodifyattempt, #evt_stc_savepointleft, #evt_stc_savepointreached, #evt_stc_start_drag, #evt_stc_styleneeded, #evt_stc_updateui, #evt_stc_userlistselection, #evt_stc_zoom, #evt_sys_colour_changed, #evt_taskbar_click, #evt_taskbar_left_dclick, #evt_taskbar_left_down, #evt_taskbar_left_up, #evt_taskbar_move, #evt_taskbar_right_dclick, #evt_taskbar_right_down, #evt_taskbar_right_up, #evt_text, #evt_text_copy, #evt_text_cut, #evt_text_enter, #evt_text_maxlen, #evt_text_paste, #evt_text_url, #evt_time_changed, #evt_timer, #evt_togglebutton, #evt_tool, #evt_tool_dropdown, #evt_tool_enter, #evt_tool_range, #evt_tool_rclicked, #evt_tool_rclicked_range, #evt_toolbook_page_changed, #evt_toolbook_page_changing, #evt_tree_begin_drag, #evt_tree_begin_label_edit, #evt_tree_begin_rdrag, #evt_tree_delete_item, #evt_tree_end_drag, #evt_tree_end_label_edit, #evt_tree_get_info, #evt_tree_item_activated, #evt_tree_item_collapsed, #evt_tree_item_collapsing, #evt_tree_item_expanded, #evt_tree_item_expanding, #evt_tree_item_gettooltip, #evt_tree_item_menu, #evt_tree_item_middle_click, #evt_tree_item_right_click, #evt_tree_key_down, #evt_tree_sel_changed, #evt_tree_sel_changing, #evt_tree_set_info, #evt_tree_state_image_click, #evt_treebook_node_collapsed, #evt_treebook_node_expanded, #evt_treebook_page_changed, #evt_treebook_page_changing, #evt_two_finger_tap, #evt_update_ui, #evt_update_ui_range, #evt_window_create, #evt_window_destroy, #evt_wizard_before_page_changed, #evt_wizard_cancel, #evt_wizard_finished, #evt_wizard_help, #evt_wizard_page_changed, #evt_wizard_page_changing, #evt_wizard_page_shown, #get_client_object, #get_evt_handler_enabled, #get_next_handler, #get_previous_handler, #is_unlinked, #process_event, #process_event_locally, #process_pending_events, #queue_event, register_class, remove_filter, #safely_process_event, #set_client_object, #set_evt_handler_enabled, #set_next_handler, #set_previous_handler, #try_after, #try_before, #unlink

Methods inherited from Object

#clone, #dup, #is_same_as, #un_share

Constructor Details

#initializeWx::ToolBar #initialize(parent, id, pos = Wx::DEFAULT_POSITION, size = Wx::DEFAULT_SIZE, style = Wx::TB_HORIZONTAL, name = Wx::TOOL_BAR_NAME_STR) ⇒ Wx::ToolBar

Returns a new instance of ToolBar.

Overloads:

  • #initializeWx::ToolBar

    Default constructor.

  • #initialize(parent, id, pos = Wx::DEFAULT_POSITION, size = Wx::DEFAULT_SIZE, style = Wx::TB_HORIZONTAL, name = Wx::TOOL_BAR_NAME_STR) ⇒ Wx::ToolBar

    Constructs a toolbar.

    Remark:

    After a toolbar is created, you use #add_tool and perhaps #add_separator, and then you must call #realize to construct and display the toolbar tools.

    Parameters:

    • parent (Wx::Window)

      Pointer to a parent window.

    • id (Integer)

      Window identifier. If -1, will automatically create an identifier.

    • pos (Array(Integer, Integer), Wx::Point) (defaults to: Wx::DEFAULT_POSITION)

      Window position. DEFAULT_POSITION indicates that wxWidgets should generate a default position for the window. If using the Window class directly, supply an actual position.

    • size (Array(Integer, Integer), Wx::Size) (defaults to: Wx::DEFAULT_SIZE)

      Window size. DEFAULT_SIZE indicates that wxWidgets should generate a default size for the window.

    • style (Integer) (defaults to: Wx::TB_HORIZONTAL)

      Window style. See Wx::ToolBar initial description for details.

    • name (String) (defaults to: Wx::TOOL_BAR_NAME_STR)

      Window name.



286
# File 'lib/wx/doc/gen/tool_bar.rb', line 286

def initialize(*args) end

Instance Method Details

#add_check_tool(toolId, label, bitmap1, bmpDisabled = Wx::NULL_BITMAP, shortHelp = (''), longHelp = (''), clientData = nil) ⇒ Wx::ToolBarToolBase

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

The parameters are the same as in #add_tool.

Parameters:

Returns:

See Also:



300
# File 'lib/wx/doc/gen/tool_bar.rb', line 300

def add_check_tool(toolId, label, bitmap1, bmpDisabled=Wx::NULL_BITMAP, shortHelp=(''), longHelp=(''), clientData=nil) end

#add_control(control, label = ('')) ⇒ Wx::ToolBarToolBase

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

Remark:

WXOSX: labels are only displayed if wxWidgets is built with MAC_USE_NATIVE_TOOLBAR set to 1

Parameters:

  • control (Wx::Control)

    The control to be added.

  • label (String) (defaults to: (''))

    Text to be displayed near the control.

Returns:



312
# File 'lib/wx/doc/gen/tool_bar.rb', line 312

def add_control(control, label=('')) end

#add_radio_tool(toolId, label, bitmap1, bmpDisabled = Wx::NULL_BITMAP, shortHelp = (''), longHelp = (''), clientData = nil) ⇒ Wx::ToolBarToolBase

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.

Parameters:

Returns:

See Also:



327
# File 'lib/wx/doc/gen/tool_bar.rb', line 327

def add_radio_tool(toolId, label, bitmap1, bmpDisabled=Wx::NULL_BITMAP, shortHelp=(''), longHelp=(''), clientData=nil) end

#add_separatorWx::ToolBarToolBase

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.



336
# File 'lib/wx/doc/gen/tool_bar.rb', line 336

def add_separator; end

#add_stretchable_spaceWx::ToolBarToolBase

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.



345
# File 'lib/wx/doc/gen/tool_bar.rb', line 345

def add_stretchable_space; end

#add_tool(toolId, label, bitmap, shortHelp = (''), kind = Wx::ItemKind::ITEM_NORMAL) ⇒ Wx::ToolBarToolBase #add_tool(toolId, label, bitmap, bmpDisabled, kind = Wx::ItemKind::ITEM_NORMAL, shortHelp = (''), longHelp = (''), clientData = nil) ⇒ Wx::ToolBarToolBase

Overloads:

  • #add_tool(toolId, label, bitmap, shortHelp = (''), kind = Wx::ItemKind::ITEM_NORMAL) ⇒ Wx::ToolBarToolBase

    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 in order to have the tools appear.

    Parameters:

    • toolId (Integer)

      An integer by which the tool may be identified in subsequent operations.

    • label (String)

      The string to be displayed with the tool. This string may include mnemonics, i.e. characters prefixed by an ampersand (“&”), but they are stripped from it and not actually shown in the toolbar as tools can’t be activated from keyboard.

    • bitmap (Wx::BitmapBundle, Wx::Bitmap, Wx::Icon, Wx::Image)

      The primary tool bitmap.

    • shortHelp (String) (defaults to: (''))

      This string is used for the tools tooltip.

    • kind (Wx::ItemKind) (defaults to: Wx::ItemKind::ITEM_NORMAL)

      May be ItemKind::ITEM_NORMAL for a normal button (default), ItemKind::ITEM_CHECK for a checkable tool (such tool stays pressed after it had been toggled) or ItemKind::ITEM_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. ItemKind::ITEM_DROPDOWN specifies that a drop-down menu button will appear next to the tool button (only GTK+ and MSW). Call #set_dropdown_menu afterwards.

    Returns:

    See Also:

  • #add_tool(toolId, label, bitmap, bmpDisabled, kind = Wx::ItemKind::ITEM_NORMAL, shortHelp = (''), longHelp = (''), clientData = nil) ⇒ Wx::ToolBarToolBase

    Adds a tool to the toolbar.

    Remark:

    After you have added tools to a toolbar, you must call #realize in order to have the tools appear.

    Parameters:

    • toolId (Integer)

      An integer by which the tool may be identified in subsequent operations.

    • label (String)

      The string to be displayed with the tool.

    • bitmap (Wx::BitmapBundle, Wx::Bitmap, Wx::Icon, Wx::Image)

      The primary tool bitmap.

    • bmpDisabled (Wx::BitmapBundle, Wx::Bitmap, Wx::Icon, Wx::Image)

      The bitmap used when the tool is disabled. If it is equal to NULL_BITMAP (default), the disabled bitmap is automatically generated by greying the normal one.

    • kind (Wx::ItemKind) (defaults to: Wx::ItemKind::ITEM_NORMAL)

      May be ItemKind::ITEM_NORMAL for a normal button (default), ItemKind::ITEM_CHECK for a checkable tool (such tool stays pressed after it had been toggled) or ItemKind::ITEM_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. ItemKind::ITEM_DROPDOWN specifies that a drop-down menu button will appear next to the tool button (only GTK+ and MSW). Call #set_dropdown_menu afterwards.

    • shortHelp (String) (defaults to: (''))

      This string is used for the tools tooltip.

    • longHelp (String) (defaults to: (''))

      This string is shown in the statusbar (if any) of the parent frame when the mouse pointer is inside the tool.

    • clientData (Wx::Object) (defaults to: nil)

      An optional pointer to client data which can be retrieved later using #get_tool_client_data.

    Returns:

    See Also:



219
# File 'lib/wx/doc/gen/tool_bar.rb', line 219

def add_tool(*args) end

#clear_toolsvoid

This method returns an undefined value.

Deletes all the tools in the toolbar.



349
# File 'lib/wx/doc/gen/tool_bar.rb', line 349

def clear_tools; end

#create_separatorWx::ToolBarToolBase

Factory function to create a new separator toolbar tool.

Returns:



735
# File 'lib/wx/doc/gen/tool_bar.rb', line 735

def create_separator; end

#create_tool(toolId, label, bmpNormal, bmpDisabled = Wx::NULL_BITMAP, kind = Wx::ItemKind::ITEM_NORMAL, clientData = nil, shortHelp = (''), longHelp = ('')) ⇒ Wx::ToolBarToolBase #create_tool(control, label) ⇒ Wx::ToolBarToolBase

Overloads:



731
# File 'lib/wx/doc/gen/tool_bar.rb', line 731

def create_tool(*args) end

#delete_tool(toolId) ⇒ Boolean

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 #remove_tool instead.

Note:

It is unnecessary to call #realize for the change to take place, it will happen immediately.

true if the tool was deleted, false otherwise.

Parameters:

  • toolId (Integer)

Returns:

  • (Boolean)

See Also:



365
# File 'lib/wx/doc/gen/tool_bar.rb', line 365

def delete_tool(toolId) end

#delete_tool_by_pos(pos) ⇒ Boolean

This function behaves like #delete_tool but it deletes the tool at the specified position and not the one with the given id.

Parameters:

  • pos (Integer)

Returns:

  • (Boolean)


370
# File 'lib/wx/doc/gen/tool_bar.rb', line 370

def delete_tool_by_pos(pos) end

#enable_tool(toolId, enable) ⇒ void

This method returns an undefined value.

Enables or disables the tool.

Remark:

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

Parameters:

  • toolId (Integer)

    ID of the tool to enable or disable, as passed to #add_tool.

  • enable (Boolean)

    If true, enables the tool, otherwise disables it.

See Also:



384
# File 'lib/wx/doc/gen/tool_bar.rb', line 384

def enable_tool(toolId, enable) end

#find_by_id(id) ⇒ Wx::ToolBarToolBase

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

Parameters:

  • id (Integer)

Returns:



389
# File 'lib/wx/doc/gen/tool_bar.rb', line 389

def find_by_id(id) end

#find_control(id) ⇒ Wx::Control

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

Parameters:

  • id (Integer)

Returns:



394
# File 'lib/wx/doc/gen/tool_bar.rb', line 394

def find_control(id) end

#find_tool_for_position(x, y) ⇒ Wx::ToolBarToolBase

Finds a tool for the given mouse position.

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

Remark:

Currently not implemented in WXGTK (always returns NULL there).

Parameters:

  • x (Integer)

    X position.

  • y (Integer)

    Y position.

Returns:



408
# File 'lib/wx/doc/gen/tool_bar.rb', line 408

def find_tool_for_position(x, y) end

#get_marginsWx::Size Also known as: margins

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

Returns:

See Also:



415
# File 'lib/wx/doc/gen/tool_bar.rb', line 415

def get_margins; end

#get_tool_bitmap_sizeWx::Size Also known as: tool_bitmap_size

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

The default bitmap size is platform-dependent: for example, it is 1615 for MSW and 2424 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 either this function or #set_tool_bitmap_size at all. This function returns the size in logical pixels, for consistency with #set_tool_bitmap_size which takes size in logical pixels. See High DPI Support in wxWidgets for more information about the different pixel types and how to convert between them.

Remark:

Note that this is the size of the bitmap you pass to #add_tool, and not the eventual size of the tool button.



431
# File 'lib/wx/doc/gen/tool_bar.rb', line 431

def get_tool_bitmap_size; end

#get_tool_by_pos(pos) ⇒ Wx::ToolBarToolBase Also known as: tool_by_pos

Parameters:

  • pos (Integer)

Returns:



436
# File 'lib/wx/doc/gen/tool_bar.rb', line 436

def get_tool_by_pos(pos) end

#get_tool_client_data(toolId) ⇒ Wx::Object Also known as: tool_client_data

Get any client data associated with the tool.

Client data, or NULL if there is none.

Parameters:

  • toolId (Integer)

    ID of the tool in question, as passed to #add_tool.

Returns:



444
# File 'lib/wx/doc/gen/tool_bar.rb', line 444

def get_tool_client_data(toolId) end

#get_tool_enabled(toolId) ⇒ Boolean Also known as: tool_enabled

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

true if the tool is enabled, false otherwise.

Parameters:

  • toolId (Integer)

    ID of the tool in question, as passed to #add_tool.

Returns:

  • (Boolean)

See Also:



453
# File 'lib/wx/doc/gen/tool_bar.rb', line 453

def get_tool_enabled(toolId) end

#get_tool_long_help(toolId) ⇒ String Also known as: tool_long_help

Returns the long help for the given tool.

Parameters:

  • toolId (Integer)

    ID of the tool in question, as passed to #add_tool.

Returns:

  • (String)

See Also:



463
# File 'lib/wx/doc/gen/tool_bar.rb', line 463

def get_tool_long_help(toolId) end

#get_tool_packingInteger Also known as: tool_packing

Returns the value used for packing tools.

Returns:

  • (Integer)

See Also:



471
# File 'lib/wx/doc/gen/tool_bar.rb', line 471

def get_tool_packing; end

#get_tool_pos(toolId) ⇒ Integer Also known as: tool_pos

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

Parameters:

  • toolId (Integer)

    ID of the tool in question, as passed to #add_tool.

Returns:

  • (Integer)


477
# File 'lib/wx/doc/gen/tool_bar.rb', line 477

def get_tool_pos(toolId) end

#get_tool_separationInteger Also known as: tool_separation

Returns the default separator size.

Returns:

  • (Integer)

See Also:



485
# File 'lib/wx/doc/gen/tool_bar.rb', line 485

def get_tool_separation; end

#get_tool_short_help(toolId) ⇒ String Also known as: tool_short_help

Returns the short help for the given tool.

Parameters:

  • toolId (Integer)

    ID of the tool in question, as passed to #add_tool.

Returns:

  • (String)

See Also:



495
# File 'lib/wx/doc/gen/tool_bar.rb', line 495

def get_tool_short_help(toolId) end

#get_tool_sizeWx::Size Also known as: tool_size

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



504
# File 'lib/wx/doc/gen/tool_bar.rb', line 504

def get_tool_size; end

#get_tool_state(toolId) ⇒ Boolean Also known as: tool_state

Gets the on/off state of a toggle tool.

true if the tool is toggled on, false otherwise.

Parameters:

  • toolId (Integer)

    ID of the tool in question, as passed to #add_tool.

Returns:

  • (Boolean)

See Also:



513
# File 'lib/wx/doc/gen/tool_bar.rb', line 513

def get_tool_state(toolId) end

#get_tools_countInteger Also known as: tools_count

Returns the number of tools in the toolbar.

Returns:

  • (Integer)


518
# File 'lib/wx/doc/gen/tool_bar.rb', line 518

def get_tools_count; end

#insert_control(pos, control, label = ('')) ⇒ Wx::ToolBarToolBase

Inserts the control into the toolbar at the given position.

You must call #realize for the change to take place.

Parameters:

  • pos (Integer)
  • control (Wx::Control)
  • label (String) (defaults to: (''))

Returns:

See Also:



530
# File 'lib/wx/doc/gen/tool_bar.rb', line 530

def insert_control(pos, control, label=('')) end

#insert_separator(pos) ⇒ Wx::ToolBarToolBase

Inserts the separator into the toolbar at the given position.

You must call #realize for the change to take place.

Parameters:

  • pos (Integer)

Returns:

See Also:



539
# File 'lib/wx/doc/gen/tool_bar.rb', line 539

def insert_separator(pos) end

#insert_stretchable_space(pos) ⇒ Wx::ToolBarToolBase

Inserts a stretchable space at the given position.

See #add_stretchable_space for details about stretchable spaces.

Parameters:

  • pos (Integer)

Returns:

See Also:



548
# File 'lib/wx/doc/gen/tool_bar.rb', line 548

def insert_stretchable_space(pos) end

#insert_tool(pos, toolId, label, bitmap, bmpDisabled = Wx::NULL_BITMAP, kind = Wx::ItemKind::ITEM_NORMAL, shortHelp = (''), longHelp = (''), clientData = nil) ⇒ Wx::ToolBarToolBase

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

You must call #realize for the change to take place.

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.

Parameters:

Returns:

See Also:



239
# File 'lib/wx/doc/gen/tool_bar.rb', line 239

def insert_tool(pos, toolId, label, bitmap, bmpDisabled=Wx::NULL_BITMAP, kind=Wx::ItemKind::ITEM_NORMAL, shortHelp=(''), longHelp=(''), clientData=nil) end

#on_left_click(toolId, toggleDown) ⇒ Boolean

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.

If the tool is a toggle and this function returns false, the toggle state (internal and visual) will not be changed. This provides a way of specifying that toggle operations are not permitted in some circumstances.

Parameters:

  • toolId (Integer)

    The identifier passed to #add_tool.

  • toggleDown (Boolean)

    true if the tool is a toggle and the toggle is down, otherwise is false.

Returns:

  • (Boolean)

See Also:



560
# File 'lib/wx/doc/gen/tool_bar.rb', line 560

def on_left_click(toolId, toggleDown) end

#on_mouse_enter(toolId) ⇒ void

This method returns an undefined value.

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.

Remark:

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.

Parameters:

  • toolId (Integer)

    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.



573
# File 'lib/wx/doc/gen/tool_bar.rb', line 573

def on_mouse_enter(toolId) end

#realizeBoolean

This function should be called after you have added tools.

Returns:

  • (Boolean)


577
# File 'lib/wx/doc/gen/tool_bar.rb', line 577

def realize; end

#remove_tool(id) ⇒ Wx::ToolBarToolBase

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 for the change to take place, it will happen immediately.

Parameters:

  • id (Integer)

Returns:

See Also:



591
# File 'lib/wx/doc/gen/tool_bar.rb', line 591

def remove_tool(id) end

#set_dropdown_menu(id, menu) ⇒ Boolean

Sets the dropdown menu for the tool given by its id.

The tool itself will delete the menu when it’s no longer needed. Only supported under GTK+ und MSW. If you define a EVT_TOOL_DROPDOWN() handler in your program, you must call Event#skip from it or the menu won’t be displayed.

Parameters:

Returns:

  • (Boolean)


600
# File 'lib/wx/doc/gen/tool_bar.rb', line 600

def set_dropdown_menu(id, menu) end

#set_margins(x, y) ⇒ void #set_margins(size) ⇒ void Also known as: margins=

Overloads:

  • #set_margins(x, y) ⇒ void

    This method returns an undefined value.

    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.

    Parameters:

    • x (Integer)

      Left margin, right margin and inter-tool separation value.

    • y (Integer)

      Top margin, bottom margin and inter-tool separation value.

    See Also:

  • #set_margins(size) ⇒ void

    This method returns an undefined value.

    Set the 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.

    Parameters:

    • size (Array(Integer, Integer), Wx::Size)

      Margin size.

    See Also:



265
# File 'lib/wx/doc/gen/tool_bar.rb', line 265

def set_margins(*args) end

#set_tool_bitmap_size(size) ⇒ void Also known as: tool_bitmap_size=

This method returns an undefined value.

Sets the default size of each tool bitmap.

It is usually unnecessary to call this function, as the tools will always be made big enough to fit the size of the bitmaps used in them. Moreover, calling it forces Wx::ToolBar to scale its images in high DPI using the provided size, instead of letting BitmapBundle used for the tool bitmaps determine the best suitable bitmap size, which may result in suboptimal appearance. If you do call it, it must be done before toolbar is #realize‘d. Example of using this function to force the bitmaps to be at least 32 pixels wide and tall (at normal DPI):

toolbar.set_tool_bitmap_size(from_dip(Wx::Size.new(32, 32)))
  toolbar.add_tool(Wx::ID_NEW, 'New', Wx::BitmapBundle.from_XXX(...))
  ...
  toolbar.realize

Parameters:

  • size (Array(Integer, Integer), Wx::Size)

    The size of the bitmaps in the toolbar in logical pixels.

See Also:



617
# File 'lib/wx/doc/gen/tool_bar.rb', line 617

def set_tool_bitmap_size(size) end

#set_tool_client_data(id, clientData) ⇒ void

This method returns an undefined value.

Sets the client data associated with the tool.

Parameters:

  • id (Integer)

    ID of the tool in question, as passed to #add_tool.

  • clientData (Wx::Object)

    The client data to use.



624
# File 'lib/wx/doc/gen/tool_bar.rb', line 624

def set_tool_client_data(id, clientData) end

#set_tool_disabled_bitmap(id, bitmap) ⇒ void

This method returns an undefined value.

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.

Parameters:



638
# File 'lib/wx/doc/gen/tool_bar.rb', line 638

def set_tool_disabled_bitmap(id, bitmap) end

#set_tool_long_help(toolId, helpString) ⇒ void

This method returns an undefined value.

Sets the long help for the given tool.

Remark:

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

Parameters:

  • toolId (Integer)

    ID of the tool in question, as passed to #add_tool.

  • helpString (String)

    A string for the long help.

See Also:



653
# File 'lib/wx/doc/gen/tool_bar.rb', line 653

def set_tool_long_help(toolId, helpString) end

#set_tool_normal_bitmap(id, bitmap) ⇒ void

This method returns an undefined value.

Sets the bitmap to be used by the tool with the given ID.

This can only be used on Button tools, not controls.

Parameters:



661
# File 'lib/wx/doc/gen/tool_bar.rb', line 661

def set_tool_normal_bitmap(id, bitmap) end

#set_tool_packing(packing) ⇒ void Also known as: tool_packing=

This method returns an undefined value.

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.

Parameters:

  • packing (Integer)

    The value for packing.

See Also:



675
# File 'lib/wx/doc/gen/tool_bar.rb', line 675

def set_tool_packing(packing) end

#set_tool_separation(separation) ⇒ void Also known as: tool_separation=

This method returns an undefined value.

Sets the default separator size.

The default value is 5.

Parameters:

  • separation (Integer)

    The separator size.

See Also:



684
# File 'lib/wx/doc/gen/tool_bar.rb', line 684

def set_tool_separation(separation) end

#set_tool_short_help(toolId, helpString) ⇒ void

This method returns an undefined value.

Sets the short help for the given tool.

Remark:

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

Parameters:

  • toolId (Integer)

    ID of the tool in question, as passed to #add_tool.

  • helpString (String)

    The string for the short help.

See Also:



699
# File 'lib/wx/doc/gen/tool_bar.rb', line 699

def set_tool_short_help(toolId, helpString) end

#toggle_tool(toolId, toggle) ⇒ void

This method returns an undefined value.

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.

Parameters:

  • toolId (Integer)

    ID of the tool in question, as passed to #add_tool.

  • toggle (Boolean)

    If true, toggles the tool on, otherwise toggles it off.



713
# File 'lib/wx/doc/gen/tool_bar.rb', line 713

def toggle_tool(toolId, toggle) end