示例#1
0
        public override void onWorldEditorStartup()
        {
            EditorGui         EditorGui         = "EditorGui";
            EWInspectorWindow EWInspectorWindow = "EWInspectorWindow";
            EWTreeWindow      EWTreeWindow      = "EWTreeWindow";

            base.onWorldEditorStartup();

            // Add ourselves to the window menu.
            string accel = EditorGui.addToEditorsMenu("Object Editor", "", this);

            // Add ourselves to the ToolsToolbar
            string tooltip = "Object Editor (" + accel + ")";

            EditorGui.addToToolsToolbar("WorldEditorInspectorPlugin", "WorldEditorInspectorPalette",
                                        Util._expandFilename("tools/worldEditor/images/toolbar/transform-objects"), tooltip);

            //connect editor windows
            EWInspectorWindow.attachTo(EWTreeWindow);

            ActionMap map = new ObjectCreator("ActionMap").Create();

            map.bindCmd("keyboard", "1", "EWorldEditorNoneModeBtn.performClick();", "");            // Select
            map.bindCmd("keyboard", "2", "EWorldEditorMoveModeBtn.performClick();", "");            // Move
            map.bindCmd("keyboard", "3", "EWorldEditorRotateModeBtn.performClick();", "");          // Rotate
            map.bindCmd("keyboard", "4", "EWorldEditorScaleModeBtn.performClick();", "");           // Scale
            map.bindCmd("keyboard", "f", "FitToSelectionBtn.performClick();", "");                  // Fit Camera to Selection
            map.bindCmd("keyboard", "z", "EditorGuiStatusBar.setCamera(\"Standard Camera\");", ""); // Free camera
            map.bindCmd("keyboard", "n", "ToggleNodeBar->renderHandleBtn.performClick();", "");     // Render Node
            map.bindCmd("keyboard", "shift n", "ToggleNodeBar->renderTextBtn.performClick();", ""); // Render Node Text
            map.bindCmd("keyboard", "g", "ESnapOptions-->GridSnapButton.performClick();", "");      // Grid Snappping
            map.bindCmd("keyboard", "t", "SnapToBar->objectSnapDownBtn.performClick();", "");       // Terrain Snapping
            map.bindCmd("keyboard", "b", "SnapToBar-->objectSnapBtn.performClick();", "");          // Soft Snappping
            map.bindCmd("keyboard", "v", "EWorldEditorToolbar->boundingBoxColBtn.performClick();", "");
            // Bounds Selection
            map.bindCmd("keyboard", "o",
                        "objectCenterDropdown->objectBoxBtn.performClick(); objectCenterDropdown.toggle();", "");
            // Object Center
            map.bindCmd("keyboard", "p",
                        "objectCenterDropdown->objectBoundsBtn.performClick(); objectCenterDropdown.toggle();", "");
            // Bounds Center
            map.bindCmd("keyboard", "k",
                        "objectTransformDropdown->objectTransformBtn.performClick(); objectTransformDropdown.toggle();", "");
            // Object Transform
            map.bindCmd("keyboard", "l",
                        "objectTransformDropdown->worldTransformBtn.performClick(); objectTransformDropdown.toggle();", "");
            // World Transform
            this.map = map;
        }
        public override void onActivated()
        {
            EditorGui         EditorGui         = "EditorGui";
            EWInspectorWindow EWInspectorWindow = "EWInspectorWindow";
            EWTreeWindow      EWTreeWindow      = "EWTreeWindow";

            GuiControl WorldEditorToolbar = EditorGui.FOT("WorldEditorToolbar");

            //Copyright Winterleaf Entertainment L.L.C. 2013
            this["isActive"] = true.AsString();
            base.onActivated();
            EWInspectorWindow.setVisible(true);
            EWTreeWindow.setVisible(true);
            //Copyright Winterleaf Entertainment L.L.C. 2013
            WorldEditorToolbar.setVisible(true);
            this.map.push();
        }
示例#3
0
        public void toggleLock()
        {
            EWTreeWindow        EWTreeWindow    = "EWTreeWindow";
            GuiBitmapButtonCtrl LockSelection   = EWTreeWindow.FOT("LockSelection");
            GuiBitmapButtonCtrl DeleteSelection = EWTreeWindow.FOT("DeleteSelection");

            if (LockSelection.command == "EWorldEditor.lockSelection(true); EditorTree.toggleLock();")
            {
                LockSelection.command   = "EWorldEditor.lockSelection(false); EditorTree.toggleLock();";
                DeleteSelection.command = "";
            }
            else
            {
                LockSelection.command   = "EWorldEditor.lockSelection(true); EditorTree.toggleLock();";
                DeleteSelection.command = "EditorMenuEditDelete();";
            }
        }
示例#4
0
        public override void onAddSelection(int obj, bool isLastSelection)
        {
            EWorldEditor EWorldEditor = "EWorldEditor";
            EWTreeWindow EWTreeWindow = "EWTreeWindow";
            Inspector    Inspector    = "Inspector";

            GuiBitmapButtonCtrl LockSelection   = EWTreeWindow.FOT("LockSelection");
            GuiBitmapButtonCtrl DeleteSelection = EWTreeWindow.FOT("DeleteSelection");

            EWorldEditor.selectObject(obj.AsString());

            int selSize   = EWorldEditor.getSelectionSize();
            int lockCount = EWorldEditor.getSelectionLockCount();

            if (lockCount < selSize)
            {
                LockSelection.setStateOn(false);
                LockSelection.command = "EWorldEditor.lockSelection(true); EditorTree.toggleLock();";
            }
            else if (lockCount > 0)
            {
                LockSelection.setStateOn(true);
                LockSelection.command = "EWorldEditor.lockSelection(false); EditorTree.toggleLock();";
            }

            if (selSize > 0 && lockCount == 0)
            {
                DeleteSelection.command = "EditorMenuEditDelete();";
            }
            else
            {
                DeleteSelection.command = "";
            }

            if (isLastSelection)
            {
                Inspector.addInspect(obj.AsString());
            }
            else
            {
                Inspector.addInspect(obj.AsString(), false);
            }
        }
        public override void onDeactivated()
        {
            EditorGui         EditorGui         = "EditorGui";
            EWInspectorWindow EWInspectorWindow = "EWInspectorWindow";
            EWTreeWindow      EWTreeWindow      = "EWTreeWindow";

            GuiControl WorldEditorToolbar = EditorGui.FOT("WorldEditorToolbar");

            //Copyright Winterleaf Entertainment L.L.C. 2013
            if (!this["isActive"].AsBool())
            {
                return;
            }
            this["isActive"] = false.AsString();
            base.onDeactivated();
            EWInspectorWindow.setVisible(false);
            EWTreeWindow.setVisible(false);
            //Copyright Winterleaf Entertainment L.L.C. 2013
            WorldEditorToolbar.setVisible(false);
            this.map.pop();
        }
示例#6
0
            public override void onTabSelected(string text, uint index)
            {
                EWTreeWindow EWTreeWindow = "EWTreeWindow";

                GuiBitmapButtonCtrl DeleteSelection = EWTreeWindow.FOT("DeleteSelection");
                GuiBitmapButtonCtrl LockSelection   = EWTreeWindow.FOT("LockSelection");
                GuiBitmapButtonCtrl AddSimGroup     = EWTreeWindow.FOT("AddSimGroup");

                if (this.getSelectedPage() == 0)
                {
                    DeleteSelection.visible = true;
                    LockSelection.visible   = true;
                    AddSimGroup.visible     = true;
                }
                else
                {
                    DeleteSelection.visible = false;
                    LockSelection.visible   = false;
                    AddSimGroup.visible     = false;
                }
            }