Vixen
02b45cc4
csharp
public sealed class AnimationClipView

A clip, open for editing: a dope sheet, a curve editor, and an event track.

No guide page documents this yet — the page shows what the code says about itself.

Remarks

Doc 11's row for this asset is "timeline + curve editor + event track", and the two views are two modes over one document rather than two panels. A dope sheet answers "when does anything happen" and a curve editor answers "what does this number do"; showing both at once in a docked panel gives each of them half the height it needs, and every editor that tried it grew a splitter people immediately dragged to one end.

⚠ The events are a track on the dope sheet rather than a strip of their own. An event's whole meaning is when it happens relative to the motion — a footstep is placed against the frame the foot lands — so it has to share the ruler, the zoom and the playhead with the keys. A second widget with its own scroll would be two rulers to keep lined up by eye.

⚠ Every drag commits through the document rather than mutating the asset. The timeline moves its own TimelineKey objects while the pointer is down and reports once, on KeysMoved; that report is the edit, which is what makes dragging twenty keys one undo entry.

Fields and properties (18)

  • protected override string TagName

    The element name this type answers to when a caller does not choose one.

  • protected override bool AcceptsFocus

    Whether the focus can rest on this kind of control at all.

  • public UiElement Bar

    The bar across the top.

  • public Timeline Sheet

    The dope sheet.

  • public CurveEditor Curves

    The curve editor, shown instead of the sheet in curve mode.

  • public UiElement Side

    The column beside them.

  • public UiElement Fields

    What the selected key or event is.

  • public NumericInput Duration

    How long the clip is.

  • public NumericInput FrameRate

    What the timeline snaps to.

  • public Select Wrap

    What happens at the end.

  • public ToggleButton CurveMode

    Whether the curve editor is showing instead of the sheet.

  • public Button Key

    Adds a key to the selected row at the playhead.

  • public Button Event

    Adds an event at the playhead.

  • public Button Constraint

    Places a constraint on the track.

  • public Button Propose

    Looks for contacts in the scene the clip was marked up against.

  • public UiElement Proposals

    What the last proposal pass offered, one row each with a button.

  • public Button Delete

    Removes whatever is selected.

  • public AnimationRow? Row

    Which row the curve editor is showing, or .

Methods (5)

  • protected override void OnCreated()

    Builds whatever this element is made of, once, as it joins a document.

  • public void Show(AnimationClipDocument clip)

    Shows a clip.

  • public void Reload(AnimationClipDocument clip)

    Rebuilds the sheet from the document.

  • public void ShowCurves(bool on)

    Swaps between the dope sheet and the curve editor.

  • public void Restate()

    Rebuilds the fields for whatever is selected.

Used by (1)

  • AnimationClipEditorFactoryVixen.Editor.AssetEditors