Class Toolbar
A versatile container for organizing command buttons and tools in a horizontal or vertical layout.
Implements
Inherited Members
Namespace: Unity.AppUI.UI
Assembly: Unity.AppUI.dll
Syntax
[UxmlElement]
public class Toolbar : BaseVisualElement, IEventHandler, IResolvedStyle, ITransform, ITransitionAnimations, IExperimentalFeatures, IVisualElementScheduler, IContextOverrideElement, IAdditionalDataHolder
Remarks
The Toolbar component provides a container for organizing and displaying a collection of controls, buttons, or tools in a structured manner. It can be positioned at various locations in your application and supports both horizontal and vertical orientations.
Toolbars help maintain a consistent and accessible interface by grouping related actions together. They can be either fixed in position or made draggable to allow users to customize their workspace layout.
Note: The Toolbar's appearance and behavior can be customized using USS (Unity Style Sheets) classes, making it adaptable to different visual themes and design requirements.
Examples
Basic Toolbar Example — A basic horizontal toolbar with common file operations.
<Toolbar dock-mode="Top" direction="Horizontal">
<Button text="New" />
<Button text="Open" />
<Button text="Save" />
<Separator />
<Button text="Settings" />
</Toolbar>
Vertical Toolbar with Tool Options — A vertical toolbar commonly used in design applications.
<Toolbar dock-mode="Left" direction="Vertical" draggable="true">
<Button icon="brush" tooltip="Paint Tool" />
<Button icon="eraser" tooltip="Eraser Tool" />
<Button icon="select" tooltip="Selection Tool" />
<Separator />
<Button icon="settings" tooltip="Tool Settings" />
</Toolbar>
Programmatic Toolbar Creation — Creating and configuring a toolbar with buttons programmatically.
var toolbar = new Toolbar();
toolbar.dockMode = ToolbarDockMode.Top;
toolbar.direction = Direction.Horizontal;
toolbar.draggable = true;
var newButton = new Button ;
var openButton = new Button ;
var saveButton = new Button ;
toolbar.Add(newButton);
toolbar.Add(openButton);
toolbar.Add(saveButton);
parentElement.Add(toolbar);
Constructors
Toolbar()
Constructor.
Declaration
public Toolbar()
Fields
containerUssClassName
The Toolbar's container USS class name.
Declaration
public const string containerUssClassName = "appui-toolbar__container"
Field Value
| Type | Description |
|---|---|
| string |
dragBarIndicatorUssClassName
The Toolbar's drag bar indicator USS class name.
Declaration
public const string dragBarIndicatorUssClassName = "appui-toolbar__drag-bar-indicator"
Field Value
| Type | Description |
|---|---|
| string |
dragBarUssClassName
The Toolbar's drag bar USS class name.
Declaration
public const string dragBarUssClassName = "appui-toolbar__drag-bar"
Field Value
| Type | Description |
|---|---|
| string |
draggableUssClassName
The Toolbar's draggable USS class name.
Declaration
public const string draggableUssClassName = "appui-toolbar--draggable"
Field Value
| Type | Description |
|---|---|
| string |
ussClassName
The Toolbar's USS class name.
Declaration
public const string ussClassName = "appui-toolbar"
Field Value
| Type | Description |
|---|---|
| string |
variantUssClassName
The Toolbar's variant USS class name.
Declaration
public const string variantUssClassName = "appui-toolbar--"
Field Value
| Type | Description |
|---|---|
| string |
Properties
contentContainer
The container of the Toolbar's content.
Declaration
public override VisualElement contentContainer { get; }
Property Value
| Type | Description |
|---|---|
| VisualElement |
Overrides
direction
The direction of the Toolbar.
Declaration
[CreateProperty]
[UxmlAttribute]
public Direction direction { get; set; }
Property Value
| Type | Description |
|---|---|
| Direction |
dockMode
The dock mode of the Toolbar.
Declaration
[CreateProperty]
[UxmlAttribute]
public ToolbarDockMode dockMode { get; set; }
Property Value
| Type | Description |
|---|---|
| ToolbarDockMode |
draggable
Whether the Toolbar is draggable.
Declaration
[CreateProperty]
[UxmlAttribute]
public bool draggable { get; set; }
Property Value
| Type | Description |
|---|---|
| bool |
Methods
GetDirectionUssClassName(Direction)
Declaration
public static string GetDirectionUssClassName(Direction enumValue)
Parameters
| Type | Name | Description |
|---|---|---|
| Direction | enumValue |
Returns
| Type | Description |
|---|---|
| string |
GetDockModeUssClassName(ToolbarDockMode)
Declaration
public static string GetDockModeUssClassName(ToolbarDockMode enumValue)
Parameters
| Type | Name | Description |
|---|---|---|
| ToolbarDockMode | enumValue |
Returns
| Type | Description |
|---|---|
| string |