Interface FlexalonNode
Represents a node in the Flexalon layout tree.
Syntax
public interface FlexalonNode
Properties
Adapter
Returns the active adapter for this node.
Declaration
Adapter Adapter { get; }
Property Value
| Type | Description |
|---|---|
| Adapter |
Children
The children of this layout node.
Declaration
IReadOnlyList<FlexalonNode> Children { get; }
Property Value
| Type | Description |
|---|---|
| System.Collections.Generic.IReadOnlyList<T><FlexalonNode> |
Constraint
Returns the constraint of this node.
Declaration
Constraint Constraint { get; }
Property Value
| Type | Description |
|---|---|
| Constraint |
Dirty
True if this node is dirty.
Declaration
bool Dirty { get; }
Property Value
| Type | Description |
|---|---|
| bool |
FlexalonObject
Returns the FlexalonObject of this node.
Declaration
FlexalonObject FlexalonObject { get; }
Property Value
| Type | Description |
|---|---|
| FlexalonObject |
GameObject
The GameObject associated with this node.
Declaration
GameObject GameObject { get; }
Property Value
| Type | Description |
|---|---|
| UnityEngine.GameObject |
HasFlexalonObject
Returns true if FlexalonObject is set.
Declaration
bool HasFlexalonObject { get; }
Property Value
| Type | Description |
|---|---|
| bool |
HasResult
Has layout ever run on this node?
Declaration
bool HasResult { get; }
Property Value
| Type | Description |
|---|---|
| bool |
Index
The index of this node in its parent's Children list.
Declaration
int Index { get; }
Property Value
| Type | Description |
|---|---|
| int |
IsDragging
True when this node is being dragged.
Declaration
bool IsDragging { get; set; }
Property Value
| Type | Description |
|---|---|
| bool |
Margin
Returns the assigned margin of this node.
Declaration
Directions Margin { get; }
Property Value
| Type | Description |
|---|---|
| Directions |
Method
Returns the layout method of this node.
Declaration
Layout Method { get; }
Property Value
| Type | Description |
|---|---|
| Layout |
Modifiers
Returns the set of modifiers that apply to layout results.
Declaration
IReadOnlyList<FlexalonModifier> Modifiers { get; }
Property Value
| Type | Description |
|---|---|
| System.Collections.Generic.IReadOnlyList<T><FlexalonModifier> |
Offset
Returns the assigned offset of this node relative to its layout position.
Declaration
Vector3 Offset { get; }
Property Value
| Type | Description |
|---|---|
| UnityEngine.Vector3 |
Padding
Returns the assigned padding of this node.
Declaration
Directions Padding { get; }
Property Value
| Type | Description |
|---|---|
| Directions |
Parent
The parent layout node of this node.
Declaration
FlexalonNode Parent { get; }
Property Value
| Type | Description |
|---|---|
| FlexalonNode |
Result
Returns the result of the last layout run.
Declaration
FlexalonResult Result { get; }
Property Value
| Type | Description |
|---|---|
| FlexalonResult |
Rotation
Returns the assigned relative rotation of this node.
Declaration
Quaternion Rotation { get; }
Property Value
| Type | Description |
|---|---|
| UnityEngine.Quaternion |
Scale
Returns the assigned relative scale of this node.
Declaration
Vector3 Scale { get; }
Property Value
| Type | Description |
|---|---|
| UnityEngine.Vector3 |
Size
Returns the assigned fixed size of this node.
Declaration
Vector3 Size { get; }
Property Value
| Type | Description |
|---|---|
| UnityEngine.Vector3 |
SizeOfParent
Returns the assigned size factor of this node relative to the available space.
Declaration
Vector3 SizeOfParent { get; }
Property Value
| Type | Description |
|---|---|
| UnityEngine.Vector3 |
SkipLayout
True when this node should not skipped when performing layout.
Declaration
bool SkipLayout { get; }
Property Value
| Type | Description |
|---|---|
| bool |
Methods
AddChild(FlexalonNode)
Adds a child to this layout node.
Declaration
void AddChild(FlexalonNode child)
Parameters
| Type | Name | Description |
|---|---|---|
| FlexalonNode | child | The child to add. |
AddModifier(FlexalonModifier)
Adds a modifier to this node.
Declaration
void AddModifier(FlexalonModifier modifier)
Parameters
| Type | Name | Description |
|---|---|---|
| FlexalonModifier | modifier |
ApplyScaleAndRotation()
Only applies rotation and scale changes to the node. Faster than marking it dirty.
Declaration
void ApplyScaleAndRotation()
CanShrink(int)
Returns true if this node is not filling this axis and has a min size set.
Declaration
bool CanShrink(int axis)
Parameters
| Type | Name | Description |
|---|---|---|
| int | axis |
Returns
| Type | Description |
|---|---|
| bool |
Detach()
Removes this node from its parent layout node.
Declaration
void Detach()
DetachAllChildren()
Removes all children from this layout node.
Declaration
void DetachAllChildren()
ForceUpdate()
Forces this node, its parent nodes, and its children nodes to update immediately.
Declaration
void ForceUpdate()
GetArrangeSize()
Returns the computed size of this node during the arrange step.
Declaration
Vector3 GetArrangeSize()
Returns
| Type | Description |
|---|---|
| UnityEngine.Vector3 |
GetChild(int)
Returns the child of this layout node.
Declaration
FlexalonNode GetChild(int index)
Parameters
| Type | Name | Description |
|---|---|---|
| int | index | The index of the child to return. |
Returns
| Type | Description |
|---|---|
| FlexalonNode | The child at the given index. |
GetMaxSize(int, float)
Returns the max size of this node, including margin.
Declaration
float GetMaxSize(int axis, float parentSize)
Parameters
| Type | Name | Description |
|---|---|---|
| int | axis | |
| float | parentSize |
Returns
| Type | Description |
|---|---|
| float |
GetMeasureSize(int, float)
Returns the computed size of this node during the measure step.
Declaration
float GetMeasureSize(int axis, float layoutSize)
Parameters
| Type | Name | Description |
|---|---|---|
| int | axis | |
| float | layoutSize |
Returns
| Type | Description |
|---|---|
| float |
GetMeasureSize(Vector3)
Returns the computed size of this node during the measure step.
Declaration
Vector3 GetMeasureSize(Vector3 layoutSize)
Parameters
| Type | Name | Description |
|---|---|---|
| UnityEngine.Vector3 | layoutSize |
Returns
| Type | Description |
|---|---|
| UnityEngine.Vector3 |
GetMinSize(int, float)
Returns the min size of this node, including margin.
Declaration
float GetMinSize(int axis, float parentSize)
Parameters
| Type | Name | Description |
|---|---|---|
| int | axis | |
| float | parentSize |
Returns
| Type | Description |
|---|---|
| float |
GetMinSize(Vector3)
Returns the min size of this node, including margin.
Declaration
Vector3 GetMinSize(Vector3 parentSize)
Parameters
| Type | Name | Description |
|---|---|---|
| UnityEngine.Vector3 | parentSize |
Returns
| Type | Description |
|---|---|
| UnityEngine.Vector3 |
GetSizeType(Axis)
Returns the assigned SizeType of this node.
Declaration
SizeType GetSizeType(Axis axis)
Parameters
| Type | Name | Description |
|---|---|---|
| Axis | axis | The axis to get the SizeType of. |
Returns
| Type | Description |
|---|---|
| SizeType | The SizeType of the given axis. |
GetSizeType(int)
Returns the assigned SizeType of this node.
Declaration
SizeType GetSizeType(int axis)
Parameters
| Type | Name | Description |
|---|---|---|
| int | axis | The axis to get the SizeType of. |
Returns
| Type | Description |
|---|---|
| SizeType | The SizeType of the given axis. |
GetWorldBoxPosition(Vector3, bool)
Returns the world position of the layout box. Used for gizmos.
Declaration
Vector3 GetWorldBoxPosition(Vector3 scale, bool includePadding)
Parameters
| Type | Name | Description |
|---|---|---|
| UnityEngine.Vector3 | scale | |
| bool | includePadding |
Returns
| Type | Description |
|---|---|
| UnityEngine.Vector3 |
GetWorldBoxScale(bool)
Returns the world scale of the layout box. Used for gizmos.
Declaration
Vector3 GetWorldBoxScale(bool includeLocalScale)
Parameters
| Type | Name | Description |
|---|---|---|
| bool | includeLocalScale |
Returns
| Type | Description |
|---|---|
| UnityEngine.Vector3 |
InsertChild(FlexalonNode, int)
Inserts a child into this layout node.
Declaration
void InsertChild(FlexalonNode child, int index)
Parameters
| Type | Name | Description |
|---|---|---|
| FlexalonNode | child | The child to insert. |
| int | index | The index to insert the child at. |
MarkDirty()
Marks this node and its parents as dirty, so they will be updated by the Flexalon component.
Declaration
void MarkDirty()
RemoveModifier(FlexalonModifier)
Removes a modifier from this node.
Declaration
void RemoveModifier(FlexalonModifier modifier)
Parameters
| Type | Name | Description |
|---|---|---|
| FlexalonModifier | modifier |
SetAdapter(Adapter)
Overrides the default adapter for this node.
Declaration
void SetAdapter(Adapter adapter)
Parameters
| Type | Name | Description |
|---|---|---|
| Adapter | adapter |
SetConstraint(Constraint, FlexalonNode)
Constrains this node to the given target node.
Declaration
void SetConstraint(Constraint constraint, FlexalonNode target)
Parameters
| Type | Name | Description |
|---|---|---|
| Constraint | constraint | |
| FlexalonNode | target |
SetFlexalonObject(FlexalonObject)
Assigns a FlexalonObject to this node.
Declaration
void SetFlexalonObject(FlexalonObject obj)
Parameters
| Type | Name | Description |
|---|---|---|
| FlexalonObject | obj |
SetMethod(Layout)
Assigns a layout method to this node.
Declaration
void SetMethod(Layout method)
Parameters
| Type | Name | Description |
|---|---|---|
| Layout | method |
SetPositionResult(Vector3)
Set the position result from a layout arrange step.
Declaration
void SetPositionResult(Vector3 position)
Parameters
| Type | Name | Description |
|---|---|---|
| UnityEngine.Vector3 | position |
SetRotationResult(Quaternion)
Set the rotation result from a layout arrange step.
Declaration
void SetRotationResult(Quaternion quaternion)
Parameters
| Type | Name | Description |
|---|---|---|
| UnityEngine.Quaternion | quaternion |
SetShrinkFillSize(int, float, float, bool)
Sets the space a child should shrink or fill.
Declaration
void SetShrinkFillSize(int axis, float childSize, float layoutSize, bool includesSizeOfParent = false)
Parameters
| Type | Name | Description |
|---|---|---|
| int | axis | |
| float | childSize | |
| float | layoutSize | |
| bool | includesSizeOfParent |
SetShrinkFillSize(Vector3, Vector3, bool)
Sets the space a child should shrink or fill.
Declaration
void SetShrinkFillSize(Vector3 childSize, Vector3 layoutSize, bool includesSizeOfParent = false)
Parameters
| Type | Name | Description |
|---|---|---|
| UnityEngine.Vector3 | childSize | |
| UnityEngine.Vector3 | layoutSize | |
| bool | includesSizeOfParent |
SetTransformUpdater(TransformUpdater)
Assigns a transform updater to this node.
Declaration
void SetTransformUpdater(TransformUpdater updater)
Parameters
| Type | Name | Description |
|---|---|---|
| TransformUpdater | updater |
Events
ResultChanged
Event invoked when layout results change.
Declaration
event Action<FlexalonNode> ResultChanged
Event Type
| Type | Description |
|---|---|
| System.Action<T><FlexalonNode> |