logo SERENITY
Game Systems Foundation
Search Results for

    Show / Hide Table of Contents

    Class UnityMenuLayoutBuilder

    Builder responsible for menu area calculation, alignment, and layout operations.
    Manages option sizing, menu alignment with border margins, and width adaptation.

    Inheritance
    object
    UnityMenuLayoutBuilder
    Inherited Members
    object.ToString()
    object.Equals(object)
    object.Equals(object, object)
    object.ReferenceEquals(object, object)
    object.GetHashCode()
    object.GetType()
    object.MemberwiseClone()
    Namespace: Serenity.Menu.Infrastructure.Views.Factories
    Assembly: Serenity.UnityMenu.Infrastructure.dll
    Syntax
    public class UnityMenuLayoutBuilder

    Constructors

    UnityMenuLayoutBuilder(Vector3)

    Declaration
    public UnityMenuLayoutBuilder(Vector3 defaultScale)
    Parameters
    Type Name Description
    Vector3 defaultScale

    Methods

    AlignMenu(IMenuSettingsDefinition, GameObject, Vector2, Vector2, bool, IUiThemeDefinition)

    Declaration
    public void AlignMenu(IMenuSettingsDefinition menuSettings, GameObject viewGameObject, Vector2 menuArea, Vector2 borderMargin, bool hasTitle, IUiThemeDefinition theme)
    Parameters
    Type Name Description
    IMenuSettingsDefinition menuSettings
    GameObject viewGameObject
    Vector2 menuArea
    Vector2 borderMargin
    bool hasTitle
    IUiThemeDefinition theme

    AlignOptions(UiOption[], IMenuSettingsDefinition, Dictionary<string, GameObject>)

    Aligns option GameObjects according to menu alignment (when not using AdaptMenuWidth).

    Declaration
    public void AlignOptions(UiOption[] options, IMenuSettingsDefinition menuSettings, Dictionary<string, GameObject> optionsGameObjects)
    Parameters
    Type Name Description
    UiOption[] options
    IMenuSettingsDefinition menuSettings
    Dictionary<string, GameObject> optionsGameObjects

    GetMaxWidth(Dictionary<string, GameObject>)

    Declaration
    public float GetMaxWidth(Dictionary<string, GameObject> optionsGameObjects)
    Parameters
    Type Name Description
    Dictionary<string, GameObject> optionsGameObjects
    Returns
    Type Description
    float

    GetTitleAreaHeight(IMenuSettingsDefinition, bool, IUiThemeDefinition)

    Computes the vertical space the title block occupies above the options: the title prefab height plus the configured title gap, or zero when the menu has no title.

    Declaration
    public float GetTitleAreaHeight(IMenuSettingsDefinition menuSettings, bool hasTitle, IUiThemeDefinition theme)
    Parameters
    Type Name Description
    IMenuSettingsDefinition menuSettings

    The menu settings providing the title gap.

    bool hasTitle

    Whether the menu rendered a title.

    IUiThemeDefinition theme

    The theme providing the title prefab.

    Returns
    Type Description
    float

    The title block height in screen units.

    SetMenuArea(IMenuSettingsDefinition, Dictionary<string, GameObject>, UnityMenuView, IUiThemeDefinition, float)

    Declaration
    public Vector2 SetMenuArea(IMenuSettingsDefinition menuSettings, Dictionary<string, GameObject> options, UnityMenuView view, IUiThemeDefinition theme, float availableWidth = 0)
    Parameters
    Type Name Description
    IMenuSettingsDefinition menuSettings
    Dictionary<string, GameObject> options
    UnityMenuView view
    IUiThemeDefinition theme
    float availableWidth
    Returns
    Type Description
    Vector2

    SetOptionWidth(GameObject, float)

    Declaration
    public void SetOptionWidth(GameObject optionGameObject, float targetWidth)
    Parameters
    Type Name Description
    GameObject optionGameObject
    float targetWidth
    In this article
    © 2026 Serenity. All Rights Reserved