123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233 |
- //-----------------------------------------------------------------------------
- // Verve
- // Copyright (C) - Violent Tulip
- //-----------------------------------------------------------------------------
- function InitializeVerveEditor()
- {
- $Verve::UseSeparateWindow = ($pref::Video::deviceMode == 0); //can't do separate window atm if you're in fullscreen or borderless full
-
- // Preferences.
- exec( "./DefaultPrefs." @ $TorqueScriptFileExtension );
-
- // GUI.
- exec( "./GUI/GuiProfiles." @ $TorqueScriptFileExtension );
- exec( "./GUI/VerveEditorGroupBuilder.gui" );
- exec( "./GUI/VerveEditorImportPathNodes.gui" );
-
- // Scripts.
- exec( "./Scripts/Plugin." @ $TorqueScriptFileExtension );
- exec( "./Scripts/Utility." @ $TorqueScriptFileExtension );
-
- exec( "./Scripts/EditorControls." @ $TorqueScriptFileExtension );
- exec( "./Scripts/EditorHistory." @ $TorqueScriptFileExtension );
- exec( "./Scripts/EditorMenu." @ $TorqueScriptFileExtension );
- exec( "./Scripts/EditorPreferences." @ $TorqueScriptFileExtension );
- exec( "./Scripts/EditorWindow." @ $TorqueScriptFileExtension );
- exec( "./Scripts/Persistence." @ $TorqueScriptFileExtension );
- exec( "./Scripts/ScrollNotify." @ $TorqueScriptFileExtension );
- exec( "./Scripts/VObject." @ $TorqueScriptFileExtension );
-
- exec( "./Scripts/Inspector/main." @ $TorqueScriptFileExtension );
-
- exec( "./Scripts/Controller/main." @ $TorqueScriptFileExtension );
- exec( "./Scripts/Groups/main." @ $TorqueScriptFileExtension );
- exec( "./Scripts/Tracks/main." @ $TorqueScriptFileExtension );
- exec( "./Scripts/Events/main." @ $TorqueScriptFileExtension );
-
- exec( "./Torque/main." @ $TorqueScriptFileExtension );
-
- // Register Events.
- VerveEditor::RegisterEvent( "VGroupObjectUpdate" );
- }
- function DestroyVerveEditor()
- {
- // Ensure the Editor has Shutdown.
- if ( isObject( VerveEditorWindow ) )
- {
- // Prompt for Save.
- VerveEditor::SavePrompt();
-
- // Reset.
- VerveEditor::Reset();
-
- // Delete the Window.
- VerveEditorWindow.delete();
- }
- }
- function ToggleVerveEditor( %value )
- {
- if ( %value)
- {
- if ( !isObject( VerveEditorWindow ) )
- {
- VerveEditor::LaunchEditor();
- }
- else
- {
- VerveEditorWindow.onWindowClose();
- }
- }
- }
- function VerveEditor::LaunchEditor()
- {
- // Launch Window.
- %mainScreen = VerveEditorWindow::Open();
-
- if ( !isObject( VerveEditorGui ) )
- {
- // Load the GUI.
- exec ( "./GUI/VerveEditor.gui" );
- }
-
- // Apply GUI.
- if($Verve::UseSeparateWindow)
- %mainScreen.setContent( VerveEditorGUI );
- else
- {
- %mainScreen.add(VerveEditorGUI);
- VerveEditorGUI.position.y = VerveEditorGUI.Position.y + 20;
- EditorGUI.add(%mainScreen);
- }
-
- // Clear History.
- VerveEditor::ClearHistory();
-
- // Update Window Title.
- VerveEditorWindow.UpdateWindowTitle();
-
- // Update Selection.
- VerveEditor::OnSelectionUpdate();
-
- // Update Sizes.
- VerveEditor::UpdateSizes();
- }
- function VerveEditor::ResetController()
- {
- // Delete.
- VerveEditor::DeleteController();
- // Create.
- return VerveEditor::CreateController();
- }
- function VerveEditor::DeleteController()
- {
- // Current Controller?
- if ( isObject( $VerveEditor::Controller ) )
- {
- // Stop but do not Reset.
- $VerveEditor::Controller.stop( false );
- // Delete the Controller.
- $VerveEditor::Controller.delete();
- // Deleted?
- return !isObject( $VerveEditor::Controller );
- }
-
- // No Deletion.
- return false;
- }
- function VerveEditor::CreateController()
- {
- // Current Controller?
- if ( !isObject( VerveEditorController ) )
- {
- // Create Controller.
- $VerveEditor::Controller = new VController( VerveEditorController );
- }
- // Return ID.
- return $VerveEditor::Controller;
- }
- function VerveEditor::Refresh()
- {
- if ( !isObject( $VerveEditor::Controller ) )
- {
- return;
- }
-
- // Clear Selection.
- VerveEditor::ClearSelection();
-
- // Delete Existing Controls.
- VerveEditor::DeleteControls();
-
- // Sort Groups & Tracks.
- $VerveEditor::Controller.sortGroups();
- $VerveEditor::Controller.sortTracks();
-
- %groupSet = $VerveEditor::Controller;
- %groupCount = %groupSet.getCount();
- for ( %i = 0; %i < %groupCount; %i++ )
- {
- // Update Controls.
- %groupSet.getObject( %i ).Refresh();
- }
-
- // Update Window Title.
- VerveEditorWindow.UpdateWindowTitle();
-
- // Update Duration.
- VerveEditor::UpdateDuration();
-
- // Update Sizes.
- VerveEditor::UpdateSizes();
-
- // Update Selection.
- VerveEditor::OnSelectionUpdate();
- }
- function VerveEditor::UpdateSizes()
- {
- VerveEditorGroupNotify.UpdateSize();
- VerveEditorTrackNotify.UpdateSize();
- VerveEditorTimeNotify.UpdateSize();
- }
- function VerveEditor::UpdateDuration( %duration )
- {
- if ( %duration !$= "" )
- {
- // Update Duration.
- $VerveEditor::Controller.setFieldValue( "Duration", %duration );
- }
-
- // Update Duration.
- VerveEditorTimeLine.updateDuration();
- VerveEditorTrackTimeLine.updateDuration();
-
- // Update Sizes.
- VerveEditorGroupNotify.UpdateSize();
- VerveEditorTrackNotify.UpdateSize();
- VerveEditorTimeNotify.UpdateSize();
- }
- package VerveEditorSaveIntercept
- {
- function EditorSaveMission()
- {
- // Reset.
- VerveEditor::Reset();
-
- // Perform the Save.
- Parent::EditorSaveMission();
- }
- };
- function VerveEditor::Reset()
- {
- // Valid Controller?
- if ( isObject( $VerveEditor::Controller ) )
- {
- // Reset.
- $VerveEditor::Controller.Reset();
-
- // Stop.
- $VerveEditor::Controller.Stop();
- }
- }
|