public WorldSnapshotImpl(ISnapshotPanel snapshotPanel, IEditorPlugin editorPlugin, HotkeyManager hotkeyManager) { this.snapshotPanel = snapshotPanel; this.editorPlugin = editorPlugin; this.hotkeyManager = hotkeyManager; GameCallbacks.AddInstallCallback(OnInstallCallback); GameCallbacks.AddSetupSceneCall(OnSetupSceneCallback); GameCallbacks.AddCleanupSceneCall(OnCleanupCallback); ObjectCallbacks.AddOnTargetCallback(OnTarget); ImGuiCallbacks.AddOnEnabledCallback(OnGizmoEnabled); ImGuiCallbacks.AddOnDisabledCallback(OnGizmoDisabled); ImGuiCallbacks.AddOnPositionChangedCallback(OnPositionChanged); ImGuiCallbacks.AddOnRotationChangedCallback(OnRotationChanged); hotkeyManager.Add(new Hotkey("ToggleSnapshotNodeEditingMode", "Toggle Snapshot Node Editing Mode", "Oemtilde", ToggleNodeEditing, true)); hotkeyManager.Add(new Hotkey("SaveSnapshot", "Save Snapshot", "Control + S", Save, true)); hotkeyManager.Add(new Hotkey("CopySnapshotNode", "Copy Snapshot Node", "Control + C", CopyNode, true, true, true)); hotkeyManager.Add(new Hotkey("PasteSnapshotNode", "Paste Snapshot Node", "Control + V", PasteNode, true, true, true)); hotkeyManager.Add(new Hotkey("DuplicateSnapshotNode", "Duplicate Snapshot Node", "Control + D", DuplicateNode, true, true, true)); hotkeyManager.Add(new Hotkey("DeleteSnapshotNode", "Delete Snapshot Node", "Delete", RemoveNode, true, true, true)); hotkeyManager.Add(new Hotkey("SetGizmoTranslateOperationMode", "Set Gizmo Operation Mode to Translate", "Control + Q", SetOperationModeToTranslateHotkey, true, false, true)); hotkeyManager.Add(new Hotkey("SetGizmoRotationOperationMode", "Set Gizmo Operation Mode to Rotation", "Control + E", SetOperationModeToRotationHotkey, true, false, true)); hotkeyManager.Add(new Hotkey("ToggleGizmoSnap", "Toggle Gizmo Snap", "Control + B", ToggleGizmoSnapHotkey, true, false, true)); }
public PlayerObjectImpl(IPlayerPanel sceneAvailability, HotkeyManager hotkeyManager) { this.playerPanel = sceneAvailability; GameCallbacks.AddSetupSceneCall(OnSetupSceneCallback); GameCallbacks.AddCleanupSceneCall(OnCleanupCallback); GroundSceneCallbacks.AddCameraChangeCallback(OnCameraChangeCallback); hotkeyManager.Add(new Hotkey("PlayerHalfSpeed", "Half the Player speed", "F4", HalfSpeed, true, true, true)); hotkeyManager.Add(new Hotkey("PlayerDoubleSpeed", "Double the Player speed", "F5", DoubleSpeed, true, true, true)); // hotkeyManager.Add(new Hotkey("ToggleDefaultSpeed", "Shift, Control + F6", ToggleFreeCam, false)); ToDo }
public FreeCamImpl(IFreeCamPanel sceneAvailability, HotkeyManager hotkeyManager) { this.freeCamPanel = sceneAvailability; GameCallbacks.AddSetupSceneCall(OnSetupSceneCallback); GameCallbacks.AddCleanupSceneCall(OnCleanupCallback); GroundSceneCallbacks.AddCameraChangeCallback(OnCameraChangeCallback); hotkeyManager.Add(new Hotkey("ToggleFreeCam", "Toggle FreeCam", "Shift + Tab", ToggleFreeCam, true, true, true)); hotkeyManager.Add(new Hotkey("CameraHalfSpeed", "Half the Camera speed", "F4", HalfSpeed, true, true, true)); hotkeyManager.Add(new Hotkey("CameraDoubleSpeed", "Double the Camera speed", "F5", DoubleSpeed, true, true, true)); // hotkeyManager.Add(new Hotkey("ToggleDefaultSpeed", "Shift, Control + F6", ToggleFreeCam, false)); ToDo }
public FormMain(PluginLoader pluginLoader) { InitializeComponent(); Width = UtinniCore.Utinni.utinni.GetConfig().GetInt("Editor", "width"); Height = UtinniCore.Utinni.utinni.GetConfig().GetInt("Editor", "height"); undoRedoManager = new UndoRedoManager(OnUpdateCommandsCallback, OnUndo, OnRedo); foreach (IPlugin plugin in pluginLoader.Plugins) { IEditorPlugin editorPlugin = (IEditorPlugin)plugin; if (editorPlugin != null) { editorPlugins.Add(editorPlugin); } } game = new PanelGame(pluginLoader); pnlGame.Controls.Add(game); pnlPlugins.BackColor = Colors.Primary(); pnlPlugins.ForeColor = Colors.Font(); tbddWindows = new UtinniTitlebarDropDownButton("Open..."); ToolStripDropDownItem tsddItem = new ToolStripMenuItem("Log"); tsddItem.Click += (sender, args) => { OpenLogWindow(); }; tbddWindows.Menu.Items.Add(tsddItem); CreatePluginControls(); tbbtnUndo = new UndoRedoTitlebarButton(this, "Undo", Resources.undo, undoRedoManager.Undo); tbbtnRedo = new UndoRedoTitlebarButton(this, "Redo", Resources.redo, undoRedoManager.Redo); tbbtnUndo.Click += TbbtnUndo_Click; tbbtnRedo.Click += TbbtnRedo_Click; LeftTitleBarButtons.Add(tbddWindows); LeftTitleBarButtons.Add(tbbtnUndo); LeftTitleBarButtons.Add(tbbtnRedo); formHotkeyManager.Add(new Hotkey("Undo", "Undo", "Control + Z", undoRedoManager.Undo, true)); formHotkeyManager.Add(new Hotkey("Redo", "Redo", "Control + Y", undoRedoManager.Redo, true)); formHotkeyManager.Add(new Hotkey("ToggleUI", "Toggle UI", "Shift + Oemtilde", ToggleFullWindowGame, true)); formHotkeyManager.CreateSettings(); formHotkeyManager.Load(); InitializeEditorCallbacks(); // Initialize callbacks that are purely editor related UtinniTitlebarButton tbbtnHotkeyEditor = new UtinniTitlebarButton("Hotkey Editor"); tbbtnHotkeyEditor.Click += (sender, args) => { FormHotkeyEditor form = new FormHotkeyEditor(formHotkeyManager, editorPlugins); form.Show(); }; RightTitleBarButtons.Add(tbbtnHotkeyEditor); if (UtinniCore.Utinni.utinni.GetConfig().GetBool("Editor", "autoOpenLogWindow")) { OpenLogWindow(); this.BringToFront(); this.Focus(); } }