From c209bbe1cf788c9af3dcffea7667c830170a3f1f Mon Sep 17 00:00:00 2001 From: Normand Briere <nbriere@noware.ca> Date: Wed, 01 May 2019 20:30:51 -0400 Subject: [PATCH] Complete advanced mode. --- ObjEditor.java | 101 ++++++++----- ScriptNode.java | 6 BoundaryRep.java | 5 CameraPane.java | 4 SuperEditor.java | 10 GroupEditor.java | 184 ++++++++++++++++++------- cFileSystemPane.java | 54 ++++--- RandomNode.java | 6 8 files changed, 244 insertions(+), 126 deletions(-) diff --git a/BoundaryRep.java b/BoundaryRep.java index 69169d7..e938a9a 100644 --- a/BoundaryRep.java +++ b/BoundaryRep.java @@ -3902,6 +3902,11 @@ tsa.getNormals(0, normals); tsa.getTextureCoordinates(0, 0, uvmap); // tsa.getColors(0, colors); + + for (int i=colors.length; --i>=0;) + { + colors[i] = 1; + } int stripcount = tsa.getNumStrips(); triangles = new int[stripcount]; diff --git a/CameraPane.java b/CameraPane.java index 235a4c3..e5811ae 100644 --- a/CameraPane.java +++ b/CameraPane.java @@ -106,7 +106,7 @@ static boolean OEIL = true; static boolean OEILONCE = false; // do oeilon then oeiloff static boolean LOOKAT = true; -static boolean RANDOM = true; // false; +static boolean SWITCH = true; // false; static boolean HANDLES = false; // selection doesn't work!! static boolean PAINTMODE = false; @@ -2267,7 +2267,7 @@ void ToggleRandom() { - RANDOM ^= true; + SWITCH ^= true; } void ToggleHandles() diff --git a/GroupEditor.java b/GroupEditor.java index 9db1b62..56e3aff 100644 --- a/GroupEditor.java +++ b/GroupEditor.java @@ -150,6 +150,8 @@ void SetupMenu2(ObjEditor oe) { + if (Globals.ADVANCED) + { oe.cameraMenu.add(lookAtItem = new MenuItem("Set Interest")); //cameraMenu.add(lookFromItem = new MenuItem("Look From Selection")); //cameraMenu.add(switchItem = new MenuItem("Reverse View")); @@ -161,36 +163,48 @@ lookAtItem.addActionListener(this); //lookFromItem.addActinoListener(this); //switchItem.addActionListener(this); + } + Menu menu; oe.menuBar.add(menu = new Menu("Edit")); //editItem = menu.add(new MenuItem("Edit")); //editItem.addActionListener(this); duplicateItem = menu.add(new MenuItem("Duplicate")); duplicateItem.addActionListener(this); - menu.add("-"); - cloneItem = menu.add(new MenuItem("Clone")); - cloneItem.addActionListener(this); - cloneSupportItem = menu.add(new MenuItem("Clone (+supports)")); - cloneSupportItem.addActionListener(this); - menu.add("-"); cutItem = menu.add(new MenuItem("Cut")); cutItem.addActionListener(this); copyItem = menu.add(new MenuItem("Copy")); copyItem.addActionListener(this); pasteItem = menu.add(new MenuItem("Paste")); pasteItem.addActionListener(this); + menu.add("-"); + cloneItem = menu.add(new MenuItem("Clone")); + cloneItem.addActionListener(this); + cloneSupportItem = menu.add(new MenuItem("Clone (+supports)")); + cloneSupportItem.addActionListener(this); + menu.add("-"); + pasteIntoItem = menu.add(new MenuItem("Paste into")); + pasteIntoItem.addActionListener(this); pasteLinkItem = menu.add(new MenuItem("Paste link")); pasteLinkItem.addActionListener(this); pasteCloneItem = menu.add(new MenuItem("Paste clone")); pasteCloneItem.addActionListener(this); // pasteExpandItem = menu.add(new MenuItem("Paste expand")); // pasteExpandItem.addActionListener(this); + menu.add("-"); clearItem = menu.add(new MenuItem("Clear")); clearItem.addActionListener(this); + + if (Globals.ADVANCED) + { + // Deletes the cameras... clearAllItem = menu.add(new MenuItem("Clear All")); clearAllItem.addActionListener(this); + } oe.menuBar.add(menu = new Menu("Setting")); + if (Globals.ADVANCED) + { resetMeshItem = menu.add(new MenuItem("Reset All")); resetMeshItem.addActionListener(this); stepAllItem = menu.add(new MenuItem("Step All")); @@ -200,6 +214,7 @@ resetreferencesItem = menu.add(new MenuItem("Reset Mesh References")); resetreferencesItem.addActionListener(this); menu.add("-"); + } overwriteGeoItem = menu.add(new MenuItem("Overwrite Geometry")); overwriteGeoItem.addActionListener(this); overwriteMatItem = menu.add(new MenuItem("Overwrite Material")); @@ -211,19 +226,26 @@ overwriteUVItem = menu.add(new MenuItem("Overwrite UV")); overwriteUVItem.addActionListener(this); menu.add("-"); + if (Globals.ADVANCED) + { generateMeshItem = menu.add(new MenuItem("Generate Meshes")); generateMeshItem.addActionListener(this); poseMeshItem = menu.add(new MenuItem("Set Pose Meshes")); poseMeshItem.addActionListener(this); menu.add("-"); + } resetsupportItem = menu.add(new MenuItem("Reset support")); resetsupportItem.addActionListener(this); linkverticesItem = menu.add(new MenuItem("Link to Support")); linkverticesItem.addActionListener(this); relinkverticesItem = menu.add(new MenuItem("Re-link to Support")); relinkverticesItem.addActionListener(this); + + if (Globals.ADVANCED) + { setMasterItem = menu.add(new MenuItem("Set Master Mesh")); setMasterItem.addActionListener(this); + } oe.menuBar.add(menu = new Menu("Group")); grabItem = menu.add(new MenuItem("Grab")); @@ -234,7 +256,7 @@ frontItem.addActionListener(this); compositeItem = menu.add(new MenuItem("Composite")); compositeItem.addActionListener(this); - hideItem = menu.add(new MenuItem("Hide")); + hideItem = menu.add(new MenuItem("Hidden Group")); hideItem.addActionListener(this); ungroupItem = menu.add(new MenuItem("Ungroup")); ungroupItem.addActionListener(this); @@ -245,16 +267,20 @@ switchGeoItem.addActionListener(this); switchTransfoItem = menu.add(new MenuItem("Switch Transform")); switchTransfoItem.addActionListener(this); + morphItem = menu.add(new MenuItem("Morph Group")); + morphItem.addActionListener(this); + + if (Globals.ADVANCED) + { physicsItem = menu.add(new MenuItem("Physics")); physicsItem.addActionListener(this); frameselectorItem = menu.add(new MenuItem("Frame Selector")); frameselectorItem.addActionListener(this); - morphItem = menu.add(new MenuItem("Morph")); - morphItem.addActionListener(this); scriptNodeItem = menu.add(new MenuItem("Script Node")); scriptNodeItem.addActionListener(this); cameraItem = menu.add(new MenuItem("Camera")); cameraItem.addActionListener(this); + } oe.menuBar.add(menu = new Menu("Object")); textureItem = menu.add(new MenuItem("Texture")); @@ -269,15 +295,18 @@ shadowYItem.addActionListener(this); shadowZItem = menu.add(new MenuItem("Shadow Z")); shadowZItem.addActionListener(this); + if (Globals.ADVANCED) + { linkerItem = menu.add(new MenuItem("Linker")); linkerItem.addActionListener(this); - templateItem = menu.add(new MenuItem("Template")); - templateItem.addActionListener(this); attributeItem = menu.add(new MenuItem("Attribute")); attributeItem.addActionListener(this); + templateItem = menu.add(new MenuItem("Template")); + templateItem.addActionListener(this); pointflowItem = menu.add(new MenuItem("Point Flow")); pointflowItem.addActionListener(this); menu.add("-"); + } resetTransformItem = menu.add(new MenuItem("Reset Transform")); resetTransformItem.addActionListener(this); resetCentroidItem = menu.add(new MenuItem("Reset Centroid")); @@ -294,8 +323,11 @@ genNormalsCADItem.addActionListener(this); genNormalsMESHItem = menu.add(new MenuItem("Mesh Normals")); genNormalsMESHItem.addActionListener(this); + if (Globals.ADVANCED) + { genNormalsMINEItem = menu.add(new MenuItem("My Normals")); genNormalsMINEItem.addActionListener(this); + } stripifyItem = menu.add(new MenuItem("Stripify")); stripifyItem.addActionListener(this); unstripifyItem = menu.add(new MenuItem("Unstripify")); @@ -317,10 +349,14 @@ reduce34MeshItem.addActionListener(this); increaseMeshItem = menu.add(new MenuItem("Increase mesh")); increaseMeshItem.addActionListener(this); - smoothMeshItem = menu.add(new MenuItem("Smooth mesh")); - smoothMeshItem.addActionListener(this); clipMeshItem = menu.add(new MenuItem("Clip mesh")); clipMeshItem.addActionListener(this); + + if (Globals.ADVANCED) + { + smoothMeshItem = menu.add(new MenuItem("Smooth mesh")); + smoothMeshItem.addActionListener(this); + } oe.menuBar.add(menu = new Menu("Attributes")); clearMaterialsItem = menu.add(new MenuItem("Clear Materials")); @@ -330,10 +366,13 @@ liveleavesItem.addActionListener(this); unliveleavesItem = menu.add(new MenuItem("Unlive Leaves")); unliveleavesItem.addActionListener(this); + if (Globals.ADVANCED) + { supportleavesItem = menu.add(new MenuItem("Support Leaves")); supportleavesItem.addActionListener(this); unsupportleavesItem = menu.add(new MenuItem("Unsupport Leaves")); unsupportleavesItem.addActionListener(this); + } hideleavesItem = menu.add(new MenuItem("Hide Leaves")); hideleavesItem.addActionListener(this); showleavesItem = menu.add(new MenuItem("Show Leaves")); @@ -376,6 +415,8 @@ sortbysizeItem.addActionListener(this); sortbynameItem = menu.add(new MenuItem("Sort by name")); sortbynameItem.addActionListener(this); + if (Globals.ADVANCED) + { menu.add("-"); extractGeometriesItem = menu.add(new MenuItem("Link Geometry")); extractGeometriesItem.addActionListener(this); @@ -385,11 +426,11 @@ shareGeometriesItem.addActionListener(this); mergeGeometriesItem = menu.add(new MenuItem("Merge Geometry")); mergeGeometriesItem.addActionListener(this); + } oe.menuBar.add(menu = new Menu("Insert")); buildCreateMenu(menu); - oe.menuBar.add(menu = new Menu("Include")); importGFDItem = menu.add(new MenuItem("GrafreeD Object...")); importGFDItem.addActionListener(this); @@ -440,6 +481,10 @@ liveCB.setToolTipText("Enabled animation"); liveCB.addItemListener(this); + oe.toolbarPanel.add(oneStepButton = new cButton("Step", !GrafreeD.NIMBUSLAF)); //, oe.aConstraints); + oneStepButton.setToolTipText("Animate one step forward"); + oneStepButton.addActionListener(this); + oe.toolbarPanel.add(fastCB = new cCheckBox("Fast", CameraPane.FAST)); //, constraints); fastCB.setToolTipText("Fast mode"); fastCB.addItemListener(this); @@ -588,8 +633,18 @@ void AddOptions(cGridBag panel) //, GridBagConstraints constraints) { + panel.add(boxCB = new cCheckBox("Box", CameraPane.BOXMODE)); //, constraints); + boxCB.setToolTipText("Display bounding boxes"); + boxCB.addItemListener(this); + + panel.add(zoomBoxCB = new cCheckBox("Zoom", CameraPane.ZOOMBOXMODE)); //, constraints); + zoomBoxCB.setToolTipText("Display bounding boxes when moving the wheel"); + zoomBoxCB.addItemListener(this); + + if (Globals.ADVANCED) + { panel.add(supportCB = new cCheckBox("Support", CameraPane.SUPPORT)); //, constraints); - supportCB.setToolTipText("Enabled rigging"); + supportCB.setToolTipText("Enable rigging"); supportCB.addItemListener(this); // panel.add(localCB = new cCheckBox("Local", CameraPane.LOCALTRANSFORM), constraints); @@ -607,14 +662,6 @@ slowCB.setToolTipText("Smooth interpolation"); slowCB.addItemListener(this); - panel.add(boxCB = new cCheckBox("Box", CameraPane.BOXMODE)); //, constraints); - boxCB.setToolTipText("Display bounding boxes"); - boxCB.addItemListener(this); - - panel.add(zoomBoxCB = new cCheckBox("Zoom", CameraPane.ZOOMBOXMODE)); //, constraints); - zoomBoxCB.setToolTipText("Display bounding boxes when moving the wheel"); - zoomBoxCB.addItemListener(this); - // constraints.gridy += 1; // panel.add(speakerMocapCB = new cCheckBox("Mocap", CameraPane.SPEAKERMOCAP), constraints); // speakerMocapCB.addItemListener(this); @@ -645,6 +692,8 @@ panel.add(lookAtCB = new cCheckBox("Target", CameraPane.LOOKAT)); //, constraints); lookAtCB.setToolTipText("Look-at target"); lookAtCB.addItemListener(this); + + } cGridBag fill = new cGridBag(); @@ -935,11 +984,11 @@ { loadClipboard(true); objEditor.jTree.setSelectionPath(destinationPath); - pasteInto(false); + pasteInto(false, false); } else { loadClipboard(false); objEditor.jTree.setSelectionPath(destinationPath); - pasteInto(false); // true); // ??? + pasteInto(false, false); // true); // ??? } } public void dropActionChanged(DropTargetDragEvent dtde) @@ -1061,27 +1110,33 @@ kleinItem.addActionListener(this); particleItem = menu.add(new MenuItem("Particle system")); particleItem.addActionListener(this); + if (Globals.ADVANCED) + { ragdollItem = menu.add(new MenuItem("Rag Walk")); ragdollItem.addActionListener(this); ragdoll2Item = menu.add(new MenuItem("Rag Fall")); ragdoll2Item.addActionListener(this); + } menu.add("-"); - meshItem = menu.add(new MenuItem("Mesh")); + meshItem = menu.add(new MenuItem("Dynamic Mesh")); meshItem.addActionListener(this); // meshGroupItem = menu.add(new MenuItem("Mesh Group")); // meshGroupItem.addActionListener(this); + if (Globals.ADVANCED) + { springItem = menu.add(new MenuItem("Spring")); springItem.addActionListener(this); flagItem = menu.add(new MenuItem("Flag")); flagItem.addActionListener(this); - bezierItem = menu.add(new MenuItem("Patch")); - bezierItem.addActionListener(this); - checkerItem = menu.add(new MenuItem("Checker")); - checkerItem.addActionListener(this); blobItem = menu.add(new MenuItem("Blob")); blobItem.addActionListener(this); latheItem = menu.add(new MenuItem("Lathe")); latheItem.addActionListener(this); + } + bezierItem = menu.add(new MenuItem("Bezier Patch")); + bezierItem.addActionListener(this); + overlayItem = menu.add(new MenuItem("Overlay")); + overlayItem.addActionListener(this); lightItem = menu.add(new MenuItem("Light")); lightItem.addActionListener(this); menu.add("-"); @@ -1091,8 +1146,11 @@ loopItem.addActionListener(this); doubleItem = menu.add(new MenuItem("Fork")); doubleItem.addActionListener(this); + if (Globals.ADVANCED) + { tripleItem = menu.add(new MenuItem("Trident")); tripleItem.addActionListener(this); + } } void buildToolsMenu(Menu menu) @@ -1106,10 +1164,8 @@ parseverticesItem.addActionListener(this); textureFieldItem = menu.add(new MenuItem("Texture Field")); textureFieldItem.addActionListener(this); - alignItem = menu.add(new MenuItem("Align")); + alignItem = menu.add(new MenuItem("Align Object")); alignItem.addActionListener(this); - mirrorItem = menu.add(new MenuItem("Mirror Poses")); - mirrorItem.addActionListener(this); reduceMorphItem = menu.add(new MenuItem("Reduce Morphs")); reduceMorphItem.addActionListener(this); reduce34MorphItem = menu.add(new MenuItem("Reduce Morphs (34)")); @@ -1117,8 +1173,12 @@ menu.add(computeAOItem = new MenuItem("Compute AO")); computeAOItem.addActionListener(this); - menu.add("-"); + if (Globals.ADVANCED) + { + mirrorItem = menu.add(new MenuItem("Mirror Poses")); + mirrorItem.addActionListener(this); + menu.add("-"); menu.add(memoryItem = new MenuItem("Memory Usage")); memoryItem.addActionListener(this); menu.add(analyzeItem = new MenuItem("Analyze")); @@ -1141,6 +1201,7 @@ menu.add("-"); menu.add(editScriptItem = new MenuItem("Edit Script...")); editScriptItem.addActionListener(this); + } } void ScreenFit() @@ -1642,7 +1703,7 @@ { makeSomething(new BezierSurface()); } else - if (source == checkerItem) + if (source == overlayItem) { /* Object3D obj = new BezierSurface(5,8); @@ -1830,6 +1891,11 @@ { DumpObject(); } else + if (source == oneStepButton) + { + Globals.ONESTEP = true; + cameraView.repaint(); + } else if (source == screenfitButton) { //Reload(lastConverter, lastFilename, true); @@ -1902,13 +1968,17 @@ { paste(false); } else + if (source == pasteIntoItem) + { + pasteInto(true, false); + } else if (source == pasteLinkItem) { - pasteInto(false); + pasteInto(false, false); } else if (source == pasteCloneItem) { - pasteInto(true); + pasteInto(true, true); } else if (source == pasteExpandItem) { @@ -2110,11 +2180,11 @@ Globals.theRenderer.setCursor(java.awt.Cursor.getPredefinedCursor(java.awt.Cursor.WAIT_CURSOR)); for (int i=0; i<group.selection.size(); i++) { - boolean random = CameraPane.RANDOM; - CameraPane.RANDOM = false; // parse all random nodes + boolean random = CameraPane.SWITCH; + CameraPane.SWITCH = false; // parse all random nodes group.selection.get(i).linkVerticesThis(content); // group.selection.get(i).setMasterThis(content); // should be identity - CameraPane.RANDOM = random; + CameraPane.SWITCH = random; } Globals.theRenderer.setCursor(java.awt.Cursor.getPredefinedCursor(java.awt.Cursor.DEFAULT_CURSOR)); refreshContents(); @@ -2124,20 +2194,20 @@ { for (int i=0; i<group.selection.size(); i++) { - boolean random = CameraPane.RANDOM; - CameraPane.RANDOM = false; // parse all random nodes + boolean random = CameraPane.SWITCH; + CameraPane.SWITCH = false; // parse all random nodes group.selection.get(i).linkVerticesThis(null); - CameraPane.RANDOM = random; + CameraPane.SWITCH = random; } refreshContents(); } else if (source == relinkverticesItem) { - boolean random = CameraPane.RANDOM; - CameraPane.RANDOM = false; // parse all random nodes + boolean random = CameraPane.SWITCH; + CameraPane.SWITCH = false; // parse all random nodes group.selection.RelinkToSupport(); - CameraPane.RANDOM = random; + CameraPane.SWITCH = random; refreshContents(); } else @@ -3611,11 +3681,11 @@ SwitchNode sn = new SwitchNode(poses, Object3D.GEOMETRY); - boolean random = CameraPane.RANDOM; - CameraPane.RANDOM = false; // parse all random nodes + boolean random = CameraPane.SWITCH; + CameraPane.SWITCH = false; // parse all random nodes lowres.linkVerticesThis(null); lowres.linkVerticesThis(sn); - CameraPane.RANDOM = random; + CameraPane.SWITCH = random; System.err.flush(); @@ -4373,7 +4443,7 @@ refreshContents(); } - void pasteInto(boolean copyit) + void pasteInto(boolean copyit, boolean clone) { // if (GrafreeD.clipboard == null) // return; @@ -4402,7 +4472,14 @@ if (copyit) { // paste(false); - CloneClipboard(false); // sept 2014 + if (clone) + { + CloneClipboard(false); // sept 2014 + } + else + { + paste(false); + } } else { @@ -4950,6 +5027,8 @@ cButton clearpanelButton; cButton unselectButton; + cButton oneStepButton; + cButton screenfitButton; cButton screenfitpointButton; cButton snapobjectButton; @@ -5004,6 +5083,7 @@ private MenuItem mergeGeometriesItem; private MenuItem copyItem; private MenuItem pasteItem; + private MenuItem pasteIntoItem; private MenuItem pasteLinkItem; private MenuItem pasteCloneItem; private MenuItem pasteExpandItem; @@ -5101,7 +5181,7 @@ private MenuItem blobItem; private MenuItem latheItem; private MenuItem bezierItem; - private MenuItem checkerItem; + private MenuItem overlayItem; private MenuItem meshItem; // private MenuItem meshGroupItem; private MenuItem springItem; diff --git a/ObjEditor.java b/ObjEditor.java index b81d8f2..afb7487 100644 --- a/ObjEditor.java +++ b/ObjEditor.java @@ -309,44 +309,60 @@ //normalLensItem.addActionListener(this); cameraMenu.add(revertCameraItem = new MenuItem("Revert Camera")); revertCameraItem.addActionListener(this); - cameraMenu.add(toggleTimelineItem = new CheckboxMenuItem("Timeline")); - toggleTimelineItem.addItemListener(this); + cameraMenu.add(toggleFullScreenItem = new CheckboxMenuItem("Full Screen")); toggleFullScreenItem.addItemListener(this); toggleFullScreenItem.setState(CameraPane.FULLSCREEN); cameraMenu.add("-"); + cameraMenu.add(toggleTextureItem = new CheckboxMenuItem("Texture")); toggleTextureItem.addItemListener(this); toggleTextureItem.setState(CameraPane.textureon); - cameraMenu.add(toggleLiveItem = new CheckboxMenuItem("Live")); - toggleLiveItem.addItemListener(this); - toggleLiveItem.setState(Globals.isLIVE()); - cameraMenu.add(stepItem = new MenuItem("Step")); - stepItem.addActionListener(this); -// cameraMenu.add(toggleDLItem = new CheckboxMenuItem("Display List")); -// toggleDLItem.addItemListener(this); -// toggleDLItem.setState(false); - cameraMenu.add(toggleRenderItem = new CheckboxMenuItem("Render")); - toggleRenderItem.addItemListener(this); - toggleRenderItem.setState(!CameraPane.frozen); - cameraMenu.add(toggleDebugItem = new CheckboxMenuItem("Debug")); - toggleDebugItem.addItemListener(this); - toggleDebugItem.setState(CameraPane.DEBUG); - cameraMenu.add(toggleFrustumItem = new CheckboxMenuItem("Frustum")); - toggleFrustumItem.addItemListener(this); - toggleFrustumItem.setState(CameraPane.FRUSTUM); - cameraMenu.add(toggleFootContactItem = new CheckboxMenuItem("Foot contact")); - toggleFootContactItem.addItemListener(this); - toggleFootContactItem.setState(CameraPane.FOOTCONTACT); - cameraMenu.add(toggleRandomItem = new CheckboxMenuItem("Random")); - toggleRandomItem.addItemListener(this); - toggleRandomItem.setState(CameraPane.RANDOM); + + if (Globals.ADVANCED) + { + cameraMenu.add(toggleLiveItem = new CheckboxMenuItem("Live")); + toggleLiveItem.addItemListener(this); + toggleLiveItem.setState(Globals.isLIVE()); + + cameraMenu.add(stepItem = new MenuItem("Step")); + stepItem.addActionListener(this); + // cameraMenu.add(toggleDLItem = new CheckboxMenuItem("Display List")); + // toggleDLItem.addItemListener(this); + // toggleDLItem.setState(false); + + cameraMenu.add(toggleRenderItem = new CheckboxMenuItem("Render")); + toggleRenderItem.addItemListener(this); + toggleRenderItem.setState(!CameraPane.frozen); + + cameraMenu.add(toggleDebugItem = new CheckboxMenuItem("Debug")); + toggleDebugItem.addItemListener(this); + toggleDebugItem.setState(CameraPane.DEBUG); + + cameraMenu.add(toggleFrustumItem = new CheckboxMenuItem("Frustum")); + toggleFrustumItem.addItemListener(this); + toggleFrustumItem.setState(CameraPane.FRUSTUM); + + cameraMenu.add(toggleFootContactItem = new CheckboxMenuItem("Foot contact")); + toggleFootContactItem.addItemListener(this); + toggleFootContactItem.setState(CameraPane.FOOTCONTACT); + + cameraMenu.add(toggleTimelineItem = new CheckboxMenuItem("Timeline")); + toggleTimelineItem.addItemListener(this); + } + + cameraMenu.add(toggleSwitchItem = new CheckboxMenuItem("Switch")); + toggleSwitchItem.addItemListener(this); + toggleSwitchItem.setState(CameraPane.SWITCH); + cameraMenu.add(toggleHandleItem = new CheckboxMenuItem("Handles")); toggleHandleItem.addItemListener(this); toggleHandleItem.setState(CameraPane.HANDLES); + cameraMenu.add(togglePaintItem = new CheckboxMenuItem("Paint mode")); togglePaintItem.addItemListener(this); togglePaintItem.setState(CameraPane.PAINTMODE); + // cameraMenu.add(toggleRootItem = new CheckboxMenuItem("Alternate Root")); // toggleRootItem.addItemListener(this); // toggleRootItem.setState(false); @@ -1469,9 +1485,12 @@ editBar.add(clearMaterialButton = new cButton("Clear", !GrafreeD.NIMBUSLAF)); // , aConstraints); clearMaterialButton.setToolTipText("Clear material"); - editBar.add(resetSlidersButton = new cButton("Reset", !GrafreeD.NIMBUSLAF)); // , aConstraints); - editBar.add(propagateToggle = new cCheckBox("Prop", propagate)); // , aConstraints); - editBar.add(multiplyToggle = new cCheckBox("Mult", false)); // , aConstraints); + if (Globals.ADVANCED) + { + editBar.add(resetSlidersButton = new cButton("Reset", !GrafreeD.NIMBUSLAF)); // , aConstraints); + editBar.add(propagateToggle = new cCheckBox("Prop", propagate)); // , aConstraints); + editBar.add(multiplyToggle = new cCheckBox("Mult", false)); // , aConstraints); + } editBar.preferredHeight = 15; @@ -1740,12 +1759,15 @@ opacityPowerField.addChangeListener(this); /**/ - resetSlidersButton.addActionListener(this); clearMaterialButton.addActionListener(this); createMaterialButton.addActionListener(this); - - propagateToggle.addItemListener(this); - multiplyToggle.addItemListener(this); + + if (Globals.ADVANCED) + { + resetSlidersButton.addActionListener(this); + propagateToggle.addItemListener(this); + multiplyToggle.addItemListener(this); + } } void DropFile(java.io.File[] files, boolean textures) @@ -2737,7 +2759,8 @@ return; } - multiplyToggle.setSelected(mat.multiply); + if (multiplyToggle != null) + multiplyToggle.setSelected(mat.multiply); assert (object.projectedVertices != null); @@ -2952,7 +2975,7 @@ frame.validate(); return; - } else if (event.getSource() == toggleRandomItem) + } else if (event.getSource() == toggleSwitchItem) { cameraView.ToggleRandom(); cameraView.repaint(); @@ -3283,7 +3306,7 @@ void CreateMaterial() { //copy.ClearMaterial(); // PATCH - copy.CreateMaterialS(multiplyToggle.isSelected()); + copy.CreateMaterialS(multiplyToggle != null && multiplyToggle.isSelected()); if (copy.selection.size() > 0) //SetMaterial(copy); { @@ -3342,11 +3365,11 @@ { copy.ResetBlockLoop(); // temporary problem - boolean random = CameraPane.RANDOM; - CameraPane.RANDOM = false; // parse everything + boolean random = CameraPane.SWITCH; + CameraPane.SWITCH = false; // parse everything copy.ResetDisplayList(); copy.HardTouch(); - CameraPane.RANDOM = random; + CameraPane.SWITCH = random; } // public void applySelf() @@ -4446,7 +4469,7 @@ CheckboxMenuItem toggleFootContactItem; CheckboxMenuItem toggleDLItem; CheckboxMenuItem toggleTextureItem; - CheckboxMenuItem toggleRandomItem; + CheckboxMenuItem toggleSwitchItem; CheckboxMenuItem toggleRootItem; CheckboxMenuItem animationItem; CheckboxMenuItem toggleHandleItem; diff --git a/RandomNode.java b/RandomNode.java index d2f6489..5508ba3 100644 --- a/RandomNode.java +++ b/RandomNode.java @@ -27,7 +27,7 @@ public int size() { - if (CameraPane.RANDOM) + if (CameraPane.SWITCH) { if (super.size() > 0) return 1; @@ -59,7 +59,7 @@ public Object3D reserve(int i) { - if (!CameraPane.RANDOM) + if (!CameraPane.SWITCH) return super.reserve(i); //assert(rnd == -1); @@ -126,7 +126,7 @@ public void release(int i) { - if (!CameraPane.RANDOM) + if (!CameraPane.SWITCH) { super.release(i); return; diff --git a/ScriptNode.java b/ScriptNode.java index a7fa7df..62954c9 100644 --- a/ScriptNode.java +++ b/ScriptNode.java @@ -1235,8 +1235,8 @@ } if (command.equals("setsupport")) { - boolean random = CameraPane.RANDOM; - CameraPane.RANDOM = false; // parse all random nodes + boolean random = CameraPane.SWITCH; + CameraPane.SWITCH = false; // parse all random nodes if (object.support instanceof Merge) { ((Merge)object.support).renderme(); @@ -1245,7 +1245,7 @@ object.linkVerticesThis(null); object.linkVerticesThis(GetObject(GetAlias(strs[index+2]))); // object.setMasterThis(content); // should be identity - CameraPane.RANDOM = random; + CameraPane.SWITCH = random; return; } if (command.equals("setchild")) diff --git a/SuperEditor.java b/SuperEditor.java index f3e5c59..52a920d 100644 --- a/SuperEditor.java +++ b/SuperEditor.java @@ -51,14 +51,14 @@ northPanel = new cGridBag(); - northPanel.add(northLabel = new JLabel("XY Exp")); //, ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount()-2); - northPanel.add(northField = new cNumberSlider(this, 0.0001,20,-1)); //, ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount()-2); + northPanel.add(northLabel = new JLabel("XY factor")); //, ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount()-2); + northPanel.add(northField = new cNumberSlider(this, 0.0001,20, -1)); //, ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount()-2); oe.ctrlPanel.add(northPanel); oe.ctrlPanel.Return(); eastPanel = new cGridBag(); - eastPanel.add(eastLabel = new JLabel("Z Exp")); //, ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount()-2); - eastPanel.add(eastField = new cNumberSlider(this, 0.0001,20,-1)); //, ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount()-2); + eastPanel.add(eastLabel = new JLabel("Z factor")); //, ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount()-2); + eastPanel.add(eastField = new cNumberSlider(this, 0.0001,20, -1)); //, ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount()-2); oe.ctrlPanel.add(eastPanel); oe.ctrlPanel.Return(); @@ -68,7 +68,7 @@ oe.ctrlPanel.Return(); - northField.setFloat(superE.north); + northField.setFloat(superE.north); eastField.setFloat(superE.east); } diff --git a/cFileSystemPane.java b/cFileSystemPane.java index ccd740b..a446d0f 100644 --- a/cFileSystemPane.java +++ b/cFileSystemPane.java @@ -8,7 +8,9 @@ import java.io.File; -public class cFileSystemPane extends JPanel implements ActionListener, ItemListener, DragGestureListener, +import grafeme.ui.*; + +public class cFileSystemPane extends cGridBag implements ActionListener, ItemListener, DragGestureListener, //DragSourceListener, DropTargetListener { @@ -33,7 +35,7 @@ setName("File system"); //System.out.println("layout : " + getLayout()); //setLayout(new BoxLayout(this, BoxLayout.Y_AXIS)); - setLayout(new GridBagLayout()); + //setLayout(new GridBagLayout()); //ToolTipManager.sharedInstance().registerComponent(jTree); jTree.setCellRenderer(new cFileSystemModel.Renderer()); @@ -58,20 +60,27 @@ GridBagConstraints aConstraints = new GridBagConstraints(0,0,1,1, 1.0,1.0, GridBagConstraints.EAST,GridBagConstraints.HORIZONTAL,new Insets(1,1,1,1), 0,0); - aConstraints.weighty = 0; - aConstraints.gridwidth = 1; - add(refreshButton = new JButton("Refresh"), aConstraints); - aConstraints.gridx += 1; - add(loadButton = new JButton("Load"), aConstraints); - aConstraints.gridx += 1; - add(printButton = new JButton("Print"), aConstraints); - // aConstraints.gridx += 1; - // add(replaceButton = new JButton("Replace"), aConstraints); + cGridBag fileCommsnds = new cGridBag(); + + fileCommsnds.add(refreshButton = new JButton("Refresh")); //, aConstraints); + refreshButton.setToolTipText("Refresh entire tree"); + fileCommsnds.add(loadButton = new JButton("Load")); //, aConstraints); + loadButton.setToolTipText("Load selected file(s)"); refreshButton.addActionListener(this); loadButton.addActionListener(this); - printButton.addActionListener(this); + + if (Globals.ADVANCED) + { + fileCommsnds.add(printButton = new JButton("Print")); //, aConstraints); + printButton.setToolTipText("Print file path in terminal"); + printButton.addActionListener(this); + fileCommsnds.add(mergeAttributesCB = new cCheckBox("Merge", cJME.mergeAttributes)); //, aConstraints); + mergeAttributesCB.setToolTipText("Merge common attributes (recommended)"); + mergeAttributesCB.addItemListener(this); // replaceButton.addActionListener(this); + // add(replaceButton = new JButton("Replace"), aConstraints); + } // aConstraints.gridx += 1; // add(trimCB = new cCheckBox("Trim", cJME.trim), aConstraints); @@ -86,17 +95,18 @@ // add(genUVCB = new cCheckBox("UV", cJME.genUV), aConstraints); // genUVCB.addItemListener(this); - aConstraints.gridx += 1; - add(mergeAttributesCB = new cCheckBox("Merge", cJME.mergeAttributes), aConstraints); - mergeAttributesCB.addItemListener(this); + add(fileCommsnds); + fileCommsnds.preferredHeight = 1; - aConstraints.gridx = 0; - aConstraints.gridy += 1; - aConstraints.weighty = 1; - aConstraints.gridwidth = 10; - aConstraints.fill = GridBagConstraints.BOTH; - - add(tree, aConstraints); + Return(); + + cGridBag treeBag = new cGridBag(); + + treeBag.add(tree); + + treeBag.preferredHeight = 30; + + add(treeBag); //, aConstraints); GroupEditor oe = (GroupEditor) owner; -- Gitblit v1.6.2