docs.unity3d.com

ProBuilder 6.0.1

Search Results for

    Show / Hide Table of Contents

    Class MenuAction

    Base class for any action that appears on the ProBuilder toolbar.

    Inheritance
    object
    MenuAction
    CutToolAction
    MenuToolToggle
    Inherited Members
    object.Equals(object)
    object.Equals(object, object)
    object.GetHashCode()
    object.GetType()
    object.MemberwiseClone()
    object.ReferenceEquals(object, object)
    object.ToString()
    Namespace: UnityEditor.ProBuilder
    Assembly: Unity.ProBuilder.Editor.dll
    Syntax
    public abstract class MenuAction

    Constructors

    MenuAction()

    Creates a new button on the ProBuilder toolbar in the Editor.

    Declaration
    protected MenuAction()

    Fields

    onPerformAction

    Invoked when the user selects an action to perform from the toolbar.

    Declaration
    public static Action<MenuAction> onPerformAction
    Field Value
    Type Description
    Action<MenuAction>

    Properties

    enabled

    Gets whether or not the action is valid given the current selection.

    True if this action is valid with the current selection and mode.

    Declaration
    public virtual bool enabled { get; }
    Property Value
    Type Description
    bool
    See Also
    hidden

    group

    Gets the category assigned to this action.

    Declaration
    public abstract ToolbarGroup group { get; }
    Property Value
    Type Description
    ToolbarGroup

    hasFileMenuEntry

    Gets whether this class should have an entry built into the hardware menu. This is not implemented for custom actions.

    Declaration
    protected virtual bool hasFileMenuEntry { get; }
    Property Value
    Type Description
    bool

    hidden

    Gets whether this action is visible in the ProBuilder toolbar.

    True if this action appears in the toolbar with the current mode and settings; false otherwise.

    Declaration
    public virtual bool hidden { get; }
    Property Value
    Type Description
    bool
    Remarks

    This returns false by default.

    See Also
    enabled

    icon

    Gets the icon to display in the Context Menu for this action.

    Declaration
    public abstract Texture2D icon { get; }
    Property Value
    Type Description
    Texture2D

    iconMode

    Gets or sets whether the Toolbar display mode is set to Icon mode (true) or Text mode (false).

    Declaration
    protected bool iconMode { get; set; }
    Property Value
    Type Description
    bool

    iconPath

    Gets the local path of the icon to display in the Context Menu for this action.

    Declaration
    public abstract string iconPath { get; }
    Property Value
    Type Description
    string

    menuActionState

    Gets a flag that indicates both the visibility and enabled state of an action to determine whether the current mode and selection is valid for it.

    Declaration
    public MenuAction.MenuActionState menuActionState { get; }
    Property Value
    Type Description
    MenuAction.MenuActionState

    .

    menuTitle

    Gets the override title for this action to display on the toolbar button.

    Declaration
    public virtual string menuTitle { get; }
    Property Value
    Type Description
    string
    Remarks

    If you don't implement this property, toolbar button displays the tooltip title.

    optionsMenuState

    Gets a flag that indicates whether the action implements extra options. If it does, it must also implement OnSettingsGUI() so that an options indicator appears for this action button.

    Declaration
    protected virtual MenuAction.MenuActionState optionsMenuState { get; }
    Property Value
    Type Description
    MenuAction.MenuActionState

    toolbarPriority

    Gets the value to optionally influence where this menu item appears in the toolbar. The default value is -1 (no preference).

    Declaration
    public virtual int toolbarPriority { get; }
    Property Value
    Type Description
    int
    Remarks

    0 is first, 1 is second, -1 is no preference.

    tooltip

    Gets the contents of the tooltip to display for this menu action.

    Declaration
    public abstract TooltipContent tooltip { get; }
    Property Value
    Type Description
    TooltipContent

    validSelectModes

    Gets the SelectMode states where this action applies. This drives the hidden property unless you override it.

    Declaration
    public virtual SelectMode validSelectModes { get; }
    Property Value
    Type Description
    SelectMode

    Methods

    ContentsChanged()

    Declaration
    protected void ContentsChanged()

    CreateSettingsContent()

    Replaces OnSettingsGUI for 2023.2 and newer to display settings in a SceneView overlay. Creates a custom settings window for this action. Populate a root visual element in that method with the settings content.

    Declaration
    public virtual VisualElement CreateSettingsContent()
    Returns
    Type Description
    VisualElement

    DoAlternateAction()

    Performs the action for this menu item when in Text mode.

    Declaration
    protected virtual void DoAlternateAction()

    DoSceneGUI(SceneView)

    If extra handles or gizmos are needed during the action execution in the scene, implement them here.

    Declaration
    public virtual void DoSceneGUI(SceneView sceneView)
    Parameters
    Type Name Description
    SceneView sceneView

    OnSettingsDisable()

    Called when the settings window is closed.

    Declaration
    protected virtual void OnSettingsDisable()

    OnSettingsEnable()

    Called when the settings window is opened.

    Declaration
    protected virtual void OnSettingsEnable()

    OnSettingsGUI()

    Implement the extra settings GUI for your action in this method.

    Declaration
    protected virtual void OnSettingsGUI()

    PerformAction()

    Performs the action for this menu item. Use PerformActionImplementation() to implement the action. Calling this method triggers the onPerformAction event.

    Declaration
    public ActionResult PerformAction()
    Returns
    Type Description
    ActionResult

    A new ActionResult with a summary of the state of the action's success.

    Remarks

    Any new action classes that derive from this base class must also use the PerformAction method to register the new action in the Undo call stack.

    PerformActionImplementation()

    Performs the action for this menu item. Use this method to implement the action and then use PerformAction() to call it.

    Declaration
    protected abstract ActionResult PerformActionImplementation()
    Returns
    Type Description
    ActionResult

    A new ActionResult with a summary of the state of the action's success.

    PerformAltAction()

    Declaration
    public void PerformAltAction()

    RegisterChangedCallbacks()

    Declaration
    public virtual void RegisterChangedCallbacks()

    UnregisterChangedCallbacks()

    Declaration
    public virtual void UnregisterChangedCallbacks()

    Events

    changed

    Declaration
    public event Action changed
    Event Type
    Type Description
    Action
    In This Article
    • Constructors
      • MenuAction()
    • Fields
      • onPerformAction
    • Properties
      • enabled
      • group
      • hasFileMenuEntry
      • hidden
      • icon
      • iconMode
      • iconPath
      • menuActionState
      • menuTitle
      • optionsMenuState
      • toolbarPriority
      • tooltip
      • validSelectModes
    • Methods
      • ContentsChanged()
      • CreateSettingsContent()
      • DoAlternateAction()
      • DoSceneGUI(SceneView)
      • OnSettingsDisable()
      • OnSettingsEnable()
      • OnSettingsGUI()
      • PerformAction()
      • PerformActionImplementation()
      • PerformAltAction()
      • RegisterChangedCallbacks()
      • UnregisterChangedCallbacks()
    • Events
      • changed
    Back to top
    Copyright © 2024 Unity Technologies — Trademarks and terms of use
    • Legal
    • Privacy Policy
    • Cookie Policy
    • Do Not Sell or Share My Personal Information
    • Your Privacy Choices (Cookie Settings)