• Installation Guide
  • Amoebot Model
  • User Guide
  • Model Reference
  • Dev Guide
  • API Documentation
Search Results for

    Show / Hide Table of Contents
    • AS2
      • AlgorithmGenerator
      • AlgorithmGeneratorEditor
      • AlgorithmManager
      • AlgorithmManager.AlgorithmInfo
      • AmoebotFunctions
      • AmoebotSimulator
      • CameraUtils
      • CellRect
      • CellRect.CellRect_Iterator
      • ColorData
      • Config
      • ConfigData
      • ConfigData.AdditionalConfiguration
      • ConfigData.SettingsMenu
      • ConfigurationEditor
      • ConfigurationEditorBehavior
      • Constants
      • Direction
      • DirectionHelpers
      • EventDatabase
      • FileBrowser
      • FileBrowser.FileTypeHandler
      • FilePaths
      • InitModeSaveData
      • InitParticleSaveData
      • InitRandomWithHoles
      • Initialization
      • Initialization.Chirality
      • Initialization.Compass
      • InitializationMethod
      • InitializationMethod.DistanceSortedVectorList
      • InitializationMethodManager
      • InitializationMethodManager.AlgorithmInfo
      • InitializationStateSaveData
      • Log
      • MaterialDatabase
      • MessageSaveData
      • MinMax
      • MouseController
      • PSPlacementMode
      • ParticleAttributeEnumSaveData
      • ParticleAttributePCSaveData
      • ParticleAttributeSaveDataBase
      • ParticleAttributeSaveData<T>
      • ParticleObjectSaveData
      • ParticleStateSaveData
      • PinConfigurationHistorySaveData
      • PinConfigurationSaveData
      • RandomNumberGenerator
      • SaveStateUtility
      • SimulationStateSaveData
      • StatusInfoAttribute
      • TypeConverter
      • TypeConverter.ConversionResult
      • UIDatabase
      • ValueHistorySaveData<T>
    • AS2.Algos.BeepFailureTest
      • BeepFailureTestParticle
    • AS2.Algos.BinOpTest
      • BinOpTestInitializer
      • BinOpTestParticle
      • BinOpTestParticle.Mode
    • AS2.Algos.BoundaryTest
      • BoundaryTestParticle
      • Phase
      • SCMode
    • AS2.Algos.BoundaryTestSub
      • BoundaryTestSubParticle
    • AS2.Algos.ChiralityCompass
      • ChiralityAndCompassInitializer
      • ChiralityAndCompassParticle
      • CoinTossResult
      • DirectionMessage
    • AS2.Algos.CollisionTestAlgo
      • CollisionTestAlgoInitializer
      • CollisionTestAlgoParticle
    • AS2.Algos.CollisionTestAlgo2
      • CollisionTestAlgo2Initializer
      • CollisionTestAlgo2Particle
      • Role
    • AS2.Algos.ExpandedCircuitTest
      • ExpandedCircuitTestInitializer
      • ExpandedCircuitTestParticle
    • AS2.Algos.JMTest
      • JMTestInitializer
      • JMTestParticle
    • AS2.Algos.LeaderElection
      • LeaderElectionInitializer
      • LeaderElectionParticle
    • AS2.Algos.LineFormation
      • LineFormationInitializer
      • LineFormationParticleSync
      • LineFormationParticleSync.LFState
      • MyMessage
      • MyMessage.Direction
    • AS2.Algos.ObjectTest
      • ObjectTestInitializer
      • ObjectTestParticle
    • AS2.Algos.PASCTestAlgo
      • PASCTestAlgoInitializer
      • PASCTestAlgoParticle
    • AS2.Algos.SingleSourceSP
      • SingleSourceSPInitializer
      • SingleSourceSPParticle
      • SingleSourceSPParticle.Phase
    • AS2.Algos.SmartMaterial
      • SmartMaterialInitializer
      • SmartMaterialParticle
    • AS2.Algos.SubroutineTest
      • SubroutineTestInitializer
      • SubroutineTestParticle
    • AS2.Algos.SubroutineTest2
      • SubroutineTest2Initializer
      • SubroutineTest2Particle
    • AS2.Sim
      • ActionType
      • AlgorithmException
      • AmoebotSimException
      • BondMovementInfo
      • BondMovementInfoList
      • Circuit
      • CollisionChecker
      • CollisionChecker.DebugLine
      • EdgeMovement
      • IParticleAttribute
      • IParticleObject
      • IReplayHistory
      • InitializationParticle
      • InvalidActionException
      • JointMovementInfo
      • Message
      • Neighbor<T>
      • OpenInitParticle
      • Particle
      • ParticleAction
      • ParticleAlgorithm
      • ParticleAttributeBase
      • ParticleAttributeFactory
      • ParticleAttributeWithHistory<T>
      • ParticleAttribute_Bool
      • ParticleAttribute_Direction
      • ParticleAttribute_Enum<T>
      • ParticleAttribute_Float
      • ParticleAttribute_Int
      • ParticleAttribute_PinConfiguration
      • ParticleAttribute_String
      • ParticleAttribute<T>
      • ParticleException
      • ParticleFactory
      • ParticleObject
      • ParticleSystem
      • ParticleSystem_Utils
      • PartitionSet
      • Pin
      • PinConfiguration
      • SimulationException
      • SimulatorException
      • SimulatorStateException
      • SysPartitionSet
      • SysPin
      • SysPinConfiguration
      • ValueHistoryBondInfo
      • ValueHistoryJointMovement
      • ValueHistoryMessage
      • ValueHistoryPinConfiguration
      • ValueHistory<T>
    • AS2.Subroutines
      • Subroutine
    • AS2.Subroutines.BinStateHelpers
      • BinAttributeBitField
      • BinAttributeBool
      • BinAttributeDirection
      • BinAttributeEnum<T>
      • BinAttributeInt
      • BinAttribute<T>
    • AS2.Subroutines.BinaryOps
      • BinOpUtils
      • SubAddition
      • SubBinOps
      • SubBinOps.Mode
      • SubComparison
      • SubComparison.ComparisonResult
      • SubDivision
      • SubMSBDetection
      • SubMultiplication
      • SubSubtraction
    • AS2.Subroutines.BoundaryTest
      • SubBoundaryTest
    • AS2.Subroutines.ETT
      • Comparison
      • SubETT
    • AS2.Subroutines.LeaderElection
      • SubLeaderElection
    • AS2.Subroutines.LeaderElectionFast
      • SubLeaderElectionFast
    • AS2.Subroutines.LeaderElectionSync
      • SubLeaderElectionSync
    • AS2.Subroutines.PASC
      • SubPASC
      • SubPASC2
      • SubPASC2.NbrType
    • AS2.UI
      • ButtonHoldTrigger
      • ClickAction
      • ClickAction.ClickButton
      • ClickAction.ClickType
      • InitializationUIHandler
      • InputAction
      • InputAction.InputType
      • InputController
      • InputHandler
      • InputHandler.MouseState
      • InputManager
      • LineDrawer
      • LogUIHandler
      • LogUIHandler.EntryType
      • ObjectUIHandler
      • ParticleUIExtensionSmoothLerp
      • ParticleUIHandler
      • SettingsUIHandler
      • SizeFitter
      • Tooltip
      • TooltipHandler
      • UIHandler
      • UIHandler.UITool
      • UISetting
      • UISetting_Color
      • UISetting_Color.InputType
      • UISetting_Dropdown
      • UISetting_Header
      • UISetting_MinMax
      • UISetting_MinMax.InputType
      • UISetting_Slider
      • UISetting_Spacing
      • UISetting_Text
      • UISetting_Text.InputType
      • UISetting_Toggle
      • UISetting_ValueSlider
      • WorldSpaceBackgroundUIHandler
      • WorldSpaceUIHandler
      • WorldSpaceUIHandler.ParticleTextUIData
      • WorldSpaceUIHandler.TextType
    • AS2.Visuals
      • CircleDistributionCircleArea
      • CircleDistributionCircleLine
      • IGenerateDynamicMesh
      • IObjectInfo
      • IParticleGraphicsAdapter
      • IParticleState
      • InstancedDrawer
      • MaterialPropertyBlockData
      • MaterialPropertyBlockData_Circuits
      • MaterialPropertyBlockData_Objects
      • MaterialPropertyBlockData_Particles
      • MeshCreator_CircularView
      • MeshCreator_HexagonalView
      • ObjectGraphicsAdapter
      • ObjectGraphicsAdapter.VertexInfo
      • PSetDragHandler
      • ParticleBondGraphicState
      • ParticleGraphicsAdapterImpl
      • ParticleGraphicsAdapterImpl.ParticleMovement
      • ParticleGraphicsAdapterImpl.PositionSnap
      • ParticleJointMovementState
      • ParticleMovementState
      • ParticlePinGraphicState
      • ParticlePinGraphicState.CodeOverrideType_Node
      • ParticlePinGraphicState.NeighborPinConnection
      • ParticlePinGraphicState.PSetData
      • ParticlePinGraphicState.PSetData.GraphicalData
      • ParticlePinGraphicState.PSetData.GraphicalData.CodeOverrideType_PSet
      • ParticlePinGraphicState.PinDef
      • PartitionSetViewType
      • Polar2DCoordinate
      • PriorityQueue<T>
      • RenderBatchIndex
      • RenderSystem
      • RendererBackground
      • RendererCircuitPins_RenderBatch
      • RendererCircuitPins_RenderBatch.PropertyBlockData
      • RendererCircuitsAndBonds
      • RendererCircuits_Instance
      • RendererCircuits_Instance.GDRef
      • RendererCircuits_Instance.ParticleCircuitData
      • RendererCircuits_Instance.ParticleCircuitData.PSetInnerPinRef
      • RendererCircuits_Instance.ParticleCircuitData.PSetInnerPinRef.PinType
      • RendererCircuits_RenderBatch
      • RendererCircuits_RenderBatch.PropertyBlockData
      • RendererCircuits_RenderBatch.PropertyBlockData.ActiveState
      • RendererCircuits_RenderBatch.PropertyBlockData.LineType
      • RendererObjects
      • RendererParticles
      • RendererParticles_RenderBatch
      • RendererParticles_RenderBatch.PropertyBlockData
      • RendererUI
      • TextureCreator
      • ViewType
    • AS2.Visuals.Library
      • DegreeConstants
      • InterpolationConstants
      • MatrixConstants
      • MeshConstants
      • VectorConstants
      • BasicSample
      • CanvasSampleSaveFileImage
      • CanvasSampleSaveFileText
      • HexagonalExpansionPrototype

    Class ObjectUIHandler

    Controls the object panel.

    Inheritance
    object
    ObjectUIHandler
    Namespace: AS2.UI
    Assembly: .dll
    Syntax
    public class ObjectUIHandler : MonoBehaviour

    Fields

    attributeNameToIParticleAttribute

    Declaration
    private Dictionary<string, IParticleAttribute> attributeNameToIParticleAttribute
    Field Value
    Type Description
    Dictionary<string, IParticleAttribute>

    attributeName_Color

    Declaration
    private readonly string attributeName_Color
    Field Value
    Type Description
    string

    attributeName_Identifier

    Declaration
    private readonly string attributeName_Identifier
    Field Value
    Type Description
    string

    button_anchor

    Declaration
    public Button button_anchor
    Field Value
    Type Description
    Button

    button_color_active

    Declaration
    public Color button_color_active
    Field Value
    Type Description
    Color

    button_color_default

    Declaration
    public Color button_color_default
    Field Value
    Type Description
    Color

    canvasGroup_objectPanel

    Declaration
    private CanvasGroup canvasGroup_objectPanel
    Field Value
    Type Description
    CanvasGroup

    go_attributeParent

    Declaration
    public GameObject go_attributeParent
    Field Value
    Type Description
    GameObject

    go_attributeRandomizationParent

    Declaration
    public GameObject go_attributeRandomizationParent
    Field Value
    Type Description
    GameObject

    go_contentParent

    Declaration
    public GameObject go_contentParent
    Field Value
    Type Description
    GameObject

    go_objectPanel

    Declaration
    public GameObject go_objectPanel
    Field Value
    Type Description
    GameObject

    headerText

    Declaration
    private TMPro.TextMeshProUGUI headerText
    Field Value
    Type Description
    TextMeshProUGUI

    image_anchor

    Declaration
    private Image image_anchor
    Field Value
    Type Description
    Image

    instance

    Declaration
    public static ObjectUIHandler instance
    Field Value
    Type Description
    ObjectUIHandler

    obj

    Declaration
    private IObjectInfo obj
    Field Value
    Type Description
    IObjectInfo

    settingColor

    Declaration
    private UISetting_Color settingColor
    Field Value
    Type Description
    UISetting_Color

    settingID

    Declaration
    private UISetting_Text settingID
    Field Value
    Type Description
    UISetting_Text

    settings

    Declaration
    private Dictionary<string, UISetting> settings
    Field Value
    Type Description
    Dictionary<string, UISetting>

    settings_randomization

    Declaration
    private Dictionary<string, GameObject> settings_randomization
    Field Value
    Type Description
    Dictionary<string, GameObject>

    sim

    Declaration
    private AmoebotSimulator sim
    Field Value
    Type Description
    AmoebotSimulator

    Methods

    AddAttributes_IDAndColor(IObjectInfo, bool)

    Adds the ID and color attributes to the object panel.

    Declaration
    private void AddAttributes_IDAndColor(IObjectInfo obj, bool initMode)
    Parameters
    Type Name Description
    IObjectInfo obj

    The selected object

    bool initMode

    Indicates whether or not the system is in Init Mode.

    AttributeChangeValid()

    Returns true if the attribute is allowed to be changed. The particle panel must be active and the system has to be in the latest round while being paused to do so.

    Declaration
    private bool AttributeChangeValid()
    Returns
    Type Description
    bool

    ButtonPressed_Anchor()

    Called when the anchor button has been pressed. Sets the current object as anchor.

    Declaration
    public void ButtonPressed_Anchor()

    ClearPanel()

    Clears the object panel. Removes all attributes and texts after the delimiter, also clears all internally stored attributes.

    Declaration
    public void ClearPanel()

    Close()

    Closes the object panel.

    Declaration
    public void Close()

    GetShownObject()

    Returns the currently shown object in the panel. Before usage, please check if the panel is open and only use this method if this is the case.

    Declaration
    public IObjectInfo GetShownObject()
    Returns
    Type Description
    IObjectInfo

    The object currently associated to the panel.

    IsOpen()

    Checks if the object panel is open.

    Declaration
    public bool IsOpen()
    Returns
    Type Description
    bool

    true if and only if the panel is open, indicated by its alpha value being 1 (i.e. the panel is not transparent).

    LockAttributes()

    Locks the editing of the attributes.

    Declaration
    public void LockAttributes()

    Open(IObjectInfo)

    Opens the object panel for the selected object.

    Declaration
    public void Open(IObjectInfo obj)
    Parameters
    Type Name Description
    IObjectInfo obj

    The object that should be shown.

    RefreshAttributes_IDAndColor()

    Updates the ID and color settings.

    Declaration
    private void RefreshAttributes_IDAndColor()

    RefreshHeader()

    Updates the header (position, size and anchor information).

    Declaration
    private void RefreshHeader()

    RefreshObjectPanel()

    Updates the values in the object panel when shown. Helpful when values have changed (e.g. after a round).

    Declaration
    public void RefreshObjectPanel()

    ReinitObjectPanel(IObjectInfo, bool)

    Internal method. Reopens the object panel with the specified object. Called by the Open(..) method.

    Declaration
    private void ReinitObjectPanel(IObjectInfo obj, bool initMode)
    Parameters
    Type Name Description
    IObjectInfo obj

    The object for which the panel should be initialized.

    bool initMode

    Indicates whether or not the system is in Init Mode.

    SettingChanged_Color(string, string)

    Declaration
    private void SettingChanged_Color(string name, string value)
    Parameters
    Type Name Description
    string name
    string value

    SettingChanged_Text(string, string)

    Called when one attribute has been changed by the user. Forwards this to the particle system and refreshes the relevant UI.

    Declaration
    private void SettingChanged_Text(string name, string text)
    Parameters
    Type Name Description
    string name

    The name of the attribute.

    string text

    The new value of the attribute.

    SimState_RoundChanged()

    Notifies the object panel that the round has been changed, so it can refresh.

    Declaration
    public void SimState_RoundChanged()

    SimState_RunningToggled(bool)

    Notifies the object panel that the system is running/not running. Locks or unlocks the attributes, so that changes during runtime are not possible.

    Declaration
    public void SimState_RunningToggled(bool running)
    Parameters
    Type Name Description
    bool running

    Start()

    Declaration
    private void Start()

    UnlockAttributes()

    Unlocks the editing of the attributes.

    Declaration
    public void UnlockAttributes()

    UpdateUI()

    Called every frame. Used for dynamic updates of the visual interface.

    Declaration
    public void UpdateUI()
    In this article
    Back to top AmoebotSim 2.0 Documentation v1.11
    Copyright © 2025 AmoebotSim 2.0 Authors
    Generated by DocFX