void SAnimCompositeEditor::CollapseComposite() { if ( CompositeObj == nullptr ) { return; } CompositeObj->AnimationTrack.CollapseAnimSegments(); RecalculateSequenceLength(); }
void SAnimCompositeEditor::SortAndUpdateComposite() { if (CompositeObj == nullptr) { return; } CompositeObj->AnimationTrack.SortAnimSegments(); RecalculateSequenceLength(); // Update view (this will recreate everything) AnimCompositePanel->Update(); }
/** This will remove empty spaces in the montage's anim segment but not resort. e.g. - all cached indexes remains valid. UI IS NOT REBUILT after this */ void SMontageEditor::CollapseMontage() { if (MontageObj==NULL) { return; } for (int32 i=0; i < MontageObj->SlotAnimTracks.Num(); i++) { MontageObj->SlotAnimTracks[i].AnimTrack.CollapseAnimSegments(); } MontageObj->UpdateLinkableElements(); RecalculateSequenceLength(); }
/** This will sort all components of the montage and update (recreate) the UI */ void SMontageEditor::SortAndUpdateMontage() { if (MontageObj==NULL) { return; } SortAnimSegments(); MontageObj->UpdateLinkableElements(); RecalculateSequenceLength(); SortSections(); RefreshNotifyTriggerOffsets(); // Update view (this will recreate everything) AnimMontagePanel->Update(); AnimMontageSectionsPanel->Update(); // Restart the preview instance of the montage RestartPreview(); }