TransformTreeWindow<TTarget, TDefinition> Class

Assembly
FlexiMotion.dll
Namespace
FlexiMotion.Editor
Interfaces
Base Types
  • EditorWindow
Derived Types
graph BT Type-->Base0["EditorWindow"] Type-.->Interface0["ITransformTreeViewSource"] click Interface0 "/flexi-motion/api/FlexiMotion.Editor/ITransformTreeViewSource" Type["TransformTreeWindow<TTarget, TDefinition>"] class Type type-node Derived0["SpringDefinitionsWindow"]-->Type click Derived0 "/flexi-motion/api/FlexiMotion.Editor/SpringDefinitionsWindow" Derived1["SphereColliderDefinitionsWindow"]-->Type click Derived1 "/flexi-motion/api/FlexiMotion.Editor/SphereColliderDefinitionsWindow"

Syntax

public abstract class TransformTreeWindow<TTarget, TDefinition> : EditorWindow, 
    ITransformTreeViewSource
    where TTarget : class, IComponent where TDefinition : class, ICopyable<TDefinition>, new()

Type Parameters

Name Description
TTarget
TDefinition

Properties

Name Value Summary
Definition TDefinition
The data being displayed in this window.
Root Transform
The object at the top of the target hierarchy.
Target TTarget
The source of the data being displayed in this window.
TargetDefinition TDefinition
The FlexiMotion.Editor.TransformTreeWindow`2.Definition field of the FlexiMotion.Editor.TransformTreeWindow`2.Target.
Transforms IList<Transform>
The objects to show in the view.
TreeView TransformTreeView
The view used to display the FlexiMotion.Editor.TransformTreeWindow`2.Definition.

Methods

Name Value Summary
AddItem(int, TreeViewItem, Transform) TreeViewItem
Adds an item for the `transform` to be displayed in the view.
AddItems(int, TreeViewItem) void
Adds the items to be displayed in the view.
Apply() void
Saves the edited FlexiMotion.Editor.TransformTreeWindow`2.Definition into the FlexiMotion.Editor.TransformTreeWindow`2.Target.
BeforeRowGUI(Rect, TreeViewItem) void
Called before a row is drawn.
CreateColumn(string, string, float) MultiColumnHeaderState.Column
Creates a column for the FlexiMotion.Editor.TransformTreeWindow`2.TreeView to use.
static
CreateColumns(float) MultiColumnHeaderState.Column[]
Creates the columns for the FlexiMotion.Editor.TransformTreeWindow`2.TreeView to use.
DoFooterGUI() void
Draws the GUI at the bottom of this window.
DrawCellGUI(Rect, int, int, TreeViewItem, bool) void
Draws a cell in the UnityEditor.IMGUI.Controls.TreeView.
DrawIsIncludedCellGUI(Rect, Transform, int, int, bool) void
Draws a cell to toggle whether a particular item is included or not.
DrawTransformCellGUI(Rect, Transform) void
Draws a UnityEngine.Transform cell.
GetDefinitionIndex(int) int
Gets the index in the FlexiMotion.Editor.TransformTreeWindow`2.Definition corresponding to a row in the FlexiMotion.Editor.TransformTreeWindow`2.TreeView. Returns -1 if the row isn't included.
GetRowColor(TreeViewItem) Color
Gets the color of a row in the FlexiMotion.Editor.TransformTreeWindow`2.TreeView.
Initialize() void
Initializes this window if the FlexiMotion.Editor.TransformTreeWindow`2.Target has been set.
OnDestroy() void
Prompts the user to FlexiMotion.Editor.TransformTreeWindow`2.Apply or FlexiMotion.Editor.TransformTreeWindow`2.Revert if there are changes in the FlexiMotion.Editor.TransformTreeWindow`2.Definition when this window is closed.
OnDisable() void
Cleans up this window.
OnEnable() void
Initializes this window.
OnGUI() void
Draws the GUI of this window.
OnPlayModeStateChanged(PlayModeStateChange) void
Disables the "Auto Apply" toggle when leaving Play Mode.
Open<TWindow>(TTarget) void
Opens a new FlexiMotion.Editor.TransformTreeWindow`2 for the `target` or gives focus to an existing window that was already displaying it.
static
RecordUndo(string) void
Records the current state of this window so it can be undone later.
Revert() void
Returns the FlexiMotion.Editor.TransformTreeWindow`2.Definition to the original values from the FlexiMotion.Editor.TransformTreeWindow`2.Target.
SetIncluded(int, int, bool) void
Adds or removes an item from the FlexiMotion.Editor.TransformTreeWindow`2.Definition.
SetValue(int, Action<int>) void
Sets the value of a field for all selected items.

Extension Methods

Name Value Summary
LogTemp<TransformTreeWindow<TTarget, TDefinition>>(Object) T
Debug.Log(message, context) with an [System.ObsoleteAttribute] warning so you remember to remove any calls.
SafeGetHashCode<TransformTreeWindow<TTarget, TDefinition>>() int
Uses System.Collections.Generic.EqualityComparer`1.Default to get a hash code.