Managing toolbars

GiD - The personal pre and post processor

Managing toolbars

Overview
GiD provides a public API to customize toolbars. You can add, remove, or modify toolbar buttons and dropdown sub-items without directly modifying internal toolbar arrays.

Supported toolbars

  • ToolbarGeometry

  • ToolbarStandard

  • ToolbarResults

Namespace

GiDToolbar

Update control

  • GiDToolbar::Update {toolbar}
    Applies pending changes for a specific toolbar.

Main item API

  • GiDToolbar::InsertOption {toolbar icon command tooltip position prepost {ins_repl "insert"} {translationfunc _}}
    Inserts/replaces a toolbar button.

  • GiDToolbar::RemoveOption {toolbar option_name prepost {translationfunc _}}
    Removes a button by icon name, or separator by ---N notation.

  • GiDToolbar::ModifyOption {toolbar old_option_name prepost {new_icon -default-} {new_command -default-} {new_tooltip -default-} {translationfunc _}}
    Modifies an existing button.

  • GiDToolbar::GetOptionIndex {toolbar option_name prepost {translationfunc _}}
    Returns button index, or -1 if not found.

  • GiDToolbar::GetNumItems {toolbar prepost}
    Returns number of main toolbar items.

Sub-item API (dropdown buttons)

  • GiDToolbar::InsertSubOption {toolbar parent_option icon command position prepost {ins_repl "insert"} {translationfunc _}}
    Inserts/replaces a dropdown sub-item.

  • GiDToolbar::RemoveSubOption {toolbar parent_option sub_option_name prepost {translationfunc _}}
    Removes a dropdown sub-item.

  • GiDToolbar::ModifySubOption {toolbar parent_option sub_option_name prepost {new_icon -default-} {new_command -default-} {translationfunc _}}
    Modifies a dropdown sub-item.

  • GiDToolbar::GetSubOptionIndex {toolbar parent_option sub_option_name prepost {translationfunc _}}
    Returns sub-item index, or -1 if not found.

  • GiDToolbar::GetNumSubItems {toolbar parent_option prepost {translationfunc _}}
    Returns number of sub-items for a parent button.

Argument reference

  • toolbar:
    ToolbarGeometry, ToolbarStandard, ToolbarResults

  • icon / option_name:
    icon filename (for example zoomin.png)

  • parent_option:
    icon of the parent button that owns sub-items

  • position:
    0-based index or end

  • prepost:
    PRE, POST, PREPOST (toolbars with pre/post split)

  • ins_repl:
    insert, insertafter, replace

  • translationfunc:
    _ for GiD strings, = for module/problemtype strings

  • separator notation:
    ---N where N starts at 0

Return values

  • 0: success

  • 1: not found / not applied

  • error: unknown toolbar or invalid arguments

Example

Remove some buttons from ToolbarGeometry , ToolbarStandard and ToolbarResults , modify the “surface.png” button of the ToolbarGeometry to call my own code and update toolbars.

# pre foreach item {line.png arc.png spline.png ---1} { GiDToolbar::RemoveOption ToolbarGeometry $item PRE } GiDToolbar::ModifyOption ToolbarGeometry "surface.png" PRE -default- {W "my own procedure"} [= "Surface custom"] foreach item {layers.png "-np- CreateWidgetComboboxLayers %W"} { GiDToolbar::RemoveOption ToolbarStandard $item PRE } # post GiDToolbar::RemoveOption ToolbarGeometry meshes.png POST foreach item {reload.png save.png WinResAnim.png tool-animator.png play.png "-np- CreateWidgetComboboxSimulation %W"} { GiDToolbar::RemoveOption ToolbarStandard $item POST } foreach item {graphs.png PostFilling.png ---2} { GiDToolbar::RemoveOption ToolbarResults $item POST } GiDToolbar::Update ToolbarGeometry GiDToolbar::Update ToolbarStandard GiDToolbar::Update ToolbarResults

Recommended workflow

  1. Apply multiple insert/modify/remove operations.

  2. Call Update with target toolbar.

COPYRIGHT © 2026 · GID · CIMNE