User Interface

class UI

[CLIENT]

A user interface module which handles user events and sends them to the SMH.ClientController

staticmethod Open()

Open the timeline and all other SMH UI

staticmethod Close()

Close the timeline

staticmethod ScrubAudio(frame: any, lastFrame: any, sampleTime: any)

Play audio clips when dragging the frame pointer

staticmethod SetFrame(frame: integer)

Move the playhead to a frame

staticmethod IsFrameKeyframe(frame: integer): any

Check if a frame contains a keyframe

staticmethod SetKeyframes(keyframes: FrameData[], isreceiving?: boolean)

Populate the timeline with keyframes from the server

staticmethod UpdateKeyframe(keyframe: FrameData)

Update a keyframe’s data, including its easing controls

staticmethod DeleteKeyframe(keyframeId: integer)

Delete a keyframe using its keyframeId

staticmethod SetOffsets(pointer: SMHFramePointer)

Constrain the frame pointer to offsets

staticmethod MoveChildren(pointer: SMHFramePointer, frame: integer)

Moves keyframes along with the frame pointer

staticmethod ClearFrames(pointer: any)

i don’t think i need this

staticmethod ShiftSelect(pointer: SMHFramePointer)

Select keyframes within a range

staticmethod SelectAll()

Select all keyframes

staticmethod ToggleSelect(pointer: SMHFramePointer)

Toggle the selection of a keyframe

staticmethod GetSelected(): {[integer]: SMHFramePointer}

Get selected keyframes

staticmethod SetSelectedEntity(entities: Set<Entity>)

Set the selected entity

staticmethod SetServerSaves(folders: string[], saves: string[], path: string)

Set list of saves to display on the save and load menus

staticmethod SetModelList(models: string[], map?: string)

Set the model list in the load menu for a given animation file

staticmethod SetEntityList(entities: table<integer, Player | SMHEntity>)

Set the entity list in the properties menu

staticmethod SetModelName(name: string, class: string)

Set the model name to load from in the load menu

staticmethod UpdateName(name: string)

Update the name of the selected entity

staticmethod SaveExistsWarning(names: string[])

If a save exists, display the warning along with any entities that may be lost in the operation

staticmethod AppendWindow(savenames: string[], gamenames: string[])

Show the appending window, with list of entities in save and list of entities in game

Parameters:
  • savenames (string[]) – List of entity names in the save file

  • gamenames (string[]) – List of entity names in game

staticmethod AddSaveFile(path: string)

Add a save to the save menu

staticmethod RemoveSaveFile(path: string, isFolder: boolean)

Remove the save from the save menu

staticmethod InitModifiers(list: any, ids: string[], defaults: boolean[])

Initialize the timeline modifiers in the properties menu

staticmethod RefreshTimelineSettings()

Re-update the Properties timeline settings

staticmethod UpdateUISetting(setting: string, value: any)

Update a setting with a new value

staticmethod UpdateUISettings(settings: Settings)

Update the settings

staticmethod SetTimeline(timeline: TimelineSetting)

Set to a new timeline

staticmethod UpdateState(newState: State, updatePlaybackControls?: boolean)

Update the playback and audio UI state.

modified for loading playback length and rate from audio sequence save

staticmethod UpdateModifier(timelineinfo: TimelineSetting, changed: string)

Update modifier settings and what modifiers have changed in the properties menu

staticmethod UpdateKeyColor(timelineinfo: TimelineSetting)

Update the keyframe color for the timeline

staticmethod PaintKeyframes(color: Color)

Set the colors of the keyframes

staticmethod SetUsingWorld(set?: boolean)

Store world setting in Properties menu.

This hides the easing controls if we are using World Keyframes (set is true). Otherwise, it hides the World Keyframe UI in the properties menu.

staticmethod SetWorldData(console: string, push: string, release: string)

Set world keyframe data in the properties menu

staticmethod GetKeyframesOnFrame(frame: integer): table?

Get all keyframes on a frame

staticmethod CreateAudioClipPointer(audioClip: AudioClip): SMHAudioClipPointer

Create a new audio clip pointer from the audioClip

staticmethod DeleteAudioClipPointer(pointer: SMHAudioClipPointer)

Delete an audio clip pointer on the timeline

staticmethod DeleteAllAudioClipPointers()

Deletes all audio clip pointers on the timeline