Normand Briere
2019-05-02 c209bbe1cf788c9af3dcffea7667c830170a3f1f
GroupEditor.java
....@@ -150,6 +150,8 @@
150150
151151 void SetupMenu2(ObjEditor oe)
152152 {
153
+ if (Globals.ADVANCED)
154
+ {
153155 oe.cameraMenu.add(lookAtItem = new MenuItem("Set Interest"));
154156 //cameraMenu.add(lookFromItem = new MenuItem("Look From Selection"));
155157 //cameraMenu.add(switchItem = new MenuItem("Reverse View"));
....@@ -161,36 +163,48 @@
161163 lookAtItem.addActionListener(this);
162164 //lookFromItem.addActinoListener(this);
163165 //switchItem.addActionListener(this);
166
+ }
167
+
164168 Menu menu;
165169 oe.menuBar.add(menu = new Menu("Edit"));
166170 //editItem = menu.add(new MenuItem("Edit"));
167171 //editItem.addActionListener(this);
168172 duplicateItem = menu.add(new MenuItem("Duplicate"));
169173 duplicateItem.addActionListener(this);
170
- menu.add("-");
171
- cloneItem = menu.add(new MenuItem("Clone"));
172
- cloneItem.addActionListener(this);
173
- cloneSupportItem = menu.add(new MenuItem("Clone (+supports)"));
174
- cloneSupportItem.addActionListener(this);
175
- menu.add("-");
176174 cutItem = menu.add(new MenuItem("Cut"));
177175 cutItem.addActionListener(this);
178176 copyItem = menu.add(new MenuItem("Copy"));
179177 copyItem.addActionListener(this);
180178 pasteItem = menu.add(new MenuItem("Paste"));
181179 pasteItem.addActionListener(this);
180
+ menu.add("-");
181
+ cloneItem = menu.add(new MenuItem("Clone"));
182
+ cloneItem.addActionListener(this);
183
+ cloneSupportItem = menu.add(new MenuItem("Clone (+supports)"));
184
+ cloneSupportItem.addActionListener(this);
185
+ menu.add("-");
186
+ pasteIntoItem = menu.add(new MenuItem("Paste into"));
187
+ pasteIntoItem.addActionListener(this);
182188 pasteLinkItem = menu.add(new MenuItem("Paste link"));
183189 pasteLinkItem.addActionListener(this);
184190 pasteCloneItem = menu.add(new MenuItem("Paste clone"));
185191 pasteCloneItem.addActionListener(this);
186192 // pasteExpandItem = menu.add(new MenuItem("Paste expand"));
187193 // pasteExpandItem.addActionListener(this);
194
+ menu.add("-");
188195 clearItem = menu.add(new MenuItem("Clear"));
189196 clearItem.addActionListener(this);
197
+
198
+ if (Globals.ADVANCED)
199
+ {
200
+ // Deletes the cameras...
190201 clearAllItem = menu.add(new MenuItem("Clear All"));
191202 clearAllItem.addActionListener(this);
203
+ }
192204
193205 oe.menuBar.add(menu = new Menu("Setting"));
206
+ if (Globals.ADVANCED)
207
+ {
194208 resetMeshItem = menu.add(new MenuItem("Reset All"));
195209 resetMeshItem.addActionListener(this);
196210 stepAllItem = menu.add(new MenuItem("Step All"));
....@@ -200,6 +214,7 @@
200214 resetreferencesItem = menu.add(new MenuItem("Reset Mesh References"));
201215 resetreferencesItem.addActionListener(this);
202216 menu.add("-");
217
+ }
203218 overwriteGeoItem = menu.add(new MenuItem("Overwrite Geometry"));
204219 overwriteGeoItem.addActionListener(this);
205220 overwriteMatItem = menu.add(new MenuItem("Overwrite Material"));
....@@ -211,19 +226,26 @@
211226 overwriteUVItem = menu.add(new MenuItem("Overwrite UV"));
212227 overwriteUVItem.addActionListener(this);
213228 menu.add("-");
229
+ if (Globals.ADVANCED)
230
+ {
214231 generateMeshItem = menu.add(new MenuItem("Generate Meshes"));
215232 generateMeshItem.addActionListener(this);
216233 poseMeshItem = menu.add(new MenuItem("Set Pose Meshes"));
217234 poseMeshItem.addActionListener(this);
218235 menu.add("-");
236
+ }
219237 resetsupportItem = menu.add(new MenuItem("Reset support"));
220238 resetsupportItem.addActionListener(this);
221239 linkverticesItem = menu.add(new MenuItem("Link to Support"));
222240 linkverticesItem.addActionListener(this);
223241 relinkverticesItem = menu.add(new MenuItem("Re-link to Support"));
224242 relinkverticesItem.addActionListener(this);
243
+
244
+ if (Globals.ADVANCED)
245
+ {
225246 setMasterItem = menu.add(new MenuItem("Set Master Mesh"));
226247 setMasterItem.addActionListener(this);
248
+ }
227249
228250 oe.menuBar.add(menu = new Menu("Group"));
229251 grabItem = menu.add(new MenuItem("Grab"));
....@@ -234,27 +256,31 @@
234256 frontItem.addActionListener(this);
235257 compositeItem = menu.add(new MenuItem("Composite"));
236258 compositeItem.addActionListener(this);
237
- hideItem = menu.add(new MenuItem("Hide"));
259
+ hideItem = menu.add(new MenuItem("Hidden Group"));
238260 hideItem.addActionListener(this);
239261 ungroupItem = menu.add(new MenuItem("Ungroup"));
240262 ungroupItem.addActionListener(this);
241263 menu.add("-");
242
- randomItem = menu.add(new MenuItem("Random"));
264
+ randomItem = menu.add(new MenuItem("Switch node"));
243265 randomItem.addActionListener(this);
244
- physicsItem = menu.add(new MenuItem("Physics"));
245
- physicsItem.addActionListener(this);
246
- frameselectorItem = menu.add(new MenuItem("Frame Selector"));
247
- frameselectorItem.addActionListener(this);
248266 switchGeoItem = menu.add(new MenuItem("Switch Geometry"));
249267 switchGeoItem.addActionListener(this);
250268 switchTransfoItem = menu.add(new MenuItem("Switch Transform"));
251269 switchTransfoItem.addActionListener(this);
252
- morphItem = menu.add(new MenuItem("Morph"));
270
+ morphItem = menu.add(new MenuItem("Morph Group"));
253271 morphItem.addActionListener(this);
272
+
273
+ if (Globals.ADVANCED)
274
+ {
275
+ physicsItem = menu.add(new MenuItem("Physics"));
276
+ physicsItem.addActionListener(this);
277
+ frameselectorItem = menu.add(new MenuItem("Frame Selector"));
278
+ frameselectorItem.addActionListener(this);
254279 scriptNodeItem = menu.add(new MenuItem("Script Node"));
255280 scriptNodeItem.addActionListener(this);
256281 cameraItem = menu.add(new MenuItem("Camera"));
257282 cameraItem.addActionListener(this);
283
+ }
258284
259285 oe.menuBar.add(menu = new Menu("Object"));
260286 textureItem = menu.add(new MenuItem("Texture"));
....@@ -269,15 +295,18 @@
269295 shadowYItem.addActionListener(this);
270296 shadowZItem = menu.add(new MenuItem("Shadow Z"));
271297 shadowZItem.addActionListener(this);
298
+ if (Globals.ADVANCED)
299
+ {
272300 linkerItem = menu.add(new MenuItem("Linker"));
273301 linkerItem.addActionListener(this);
274
- templateItem = menu.add(new MenuItem("Template"));
275
- templateItem.addActionListener(this);
276302 attributeItem = menu.add(new MenuItem("Attribute"));
277303 attributeItem.addActionListener(this);
304
+ templateItem = menu.add(new MenuItem("Template"));
305
+ templateItem.addActionListener(this);
278306 pointflowItem = menu.add(new MenuItem("Point Flow"));
279307 pointflowItem.addActionListener(this);
280308 menu.add("-");
309
+ }
281310 resetTransformItem = menu.add(new MenuItem("Reset Transform"));
282311 resetTransformItem.addActionListener(this);
283312 resetCentroidItem = menu.add(new MenuItem("Reset Centroid"));
....@@ -294,8 +323,11 @@
294323 genNormalsCADItem.addActionListener(this);
295324 genNormalsMESHItem = menu.add(new MenuItem("Mesh Normals"));
296325 genNormalsMESHItem.addActionListener(this);
326
+ if (Globals.ADVANCED)
327
+ {
297328 genNormalsMINEItem = menu.add(new MenuItem("My Normals"));
298329 genNormalsMINEItem.addActionListener(this);
330
+ }
299331 stripifyItem = menu.add(new MenuItem("Stripify"));
300332 stripifyItem.addActionListener(this);
301333 unstripifyItem = menu.add(new MenuItem("Unstripify"));
....@@ -317,10 +349,14 @@
317349 reduce34MeshItem.addActionListener(this);
318350 increaseMeshItem = menu.add(new MenuItem("Increase mesh"));
319351 increaseMeshItem.addActionListener(this);
320
- smoothMeshItem = menu.add(new MenuItem("Smooth mesh"));
321
- smoothMeshItem.addActionListener(this);
322352 clipMeshItem = menu.add(new MenuItem("Clip mesh"));
323353 clipMeshItem.addActionListener(this);
354
+
355
+ if (Globals.ADVANCED)
356
+ {
357
+ smoothMeshItem = menu.add(new MenuItem("Smooth mesh"));
358
+ smoothMeshItem.addActionListener(this);
359
+ }
324360
325361 oe.menuBar.add(menu = new Menu("Attributes"));
326362 clearMaterialsItem = menu.add(new MenuItem("Clear Materials"));
....@@ -330,10 +366,13 @@
330366 liveleavesItem.addActionListener(this);
331367 unliveleavesItem = menu.add(new MenuItem("Unlive Leaves"));
332368 unliveleavesItem.addActionListener(this);
369
+ if (Globals.ADVANCED)
370
+ {
333371 supportleavesItem = menu.add(new MenuItem("Support Leaves"));
334372 supportleavesItem.addActionListener(this);
335373 unsupportleavesItem = menu.add(new MenuItem("Unsupport Leaves"));
336374 unsupportleavesItem.addActionListener(this);
375
+ }
337376 hideleavesItem = menu.add(new MenuItem("Hide Leaves"));
338377 hideleavesItem.addActionListener(this);
339378 showleavesItem = menu.add(new MenuItem("Show Leaves"));
....@@ -376,6 +415,8 @@
376415 sortbysizeItem.addActionListener(this);
377416 sortbynameItem = menu.add(new MenuItem("Sort by name"));
378417 sortbynameItem.addActionListener(this);
418
+ if (Globals.ADVANCED)
419
+ {
379420 menu.add("-");
380421 extractGeometriesItem = menu.add(new MenuItem("Link Geometry"));
381422 extractGeometriesItem.addActionListener(this);
....@@ -385,11 +426,11 @@
385426 shareGeometriesItem.addActionListener(this);
386427 mergeGeometriesItem = menu.add(new MenuItem("Merge Geometry"));
387428 mergeGeometriesItem.addActionListener(this);
429
+ }
388430
389431 oe.menuBar.add(menu = new Menu("Insert"));
390432 buildCreateMenu(menu);
391433
392
-
393434 oe.menuBar.add(menu = new Menu("Include"));
394435 importGFDItem = menu.add(new MenuItem("GrafreeD Object..."));
395436 importGFDItem.addActionListener(this);
....@@ -440,6 +481,14 @@
440481 liveCB.setToolTipText("Enabled animation");
441482 liveCB.addItemListener(this);
442483
484
+ oe.toolbarPanel.add(oneStepButton = new cButton("Step", !GrafreeD.NIMBUSLAF)); //, oe.aConstraints);
485
+ oneStepButton.setToolTipText("Animate one step forward");
486
+ oneStepButton.addActionListener(this);
487
+
488
+ oe.toolbarPanel.add(fastCB = new cCheckBox("Fast", CameraPane.FAST)); //, constraints);
489
+ fastCB.setToolTipText("Fast mode");
490
+ fastCB.addItemListener(this);
491
+
443492 oe.toolbarPanel.add(trackCB = new cCheckBox("Track", CameraPane.TRACK)); //, oe.aConstraints);
444493 trackCB.setToolTipText("Enable tracking");
445494 trackCB.addItemListener(this);
....@@ -450,17 +499,14 @@
450499
451500 // oe.toolbarPanel.add(screenfitpointButton = new cButton(" @+ ")); //, oe.aConstraints);
452501 // screenfitpointButton.addActionListener(this);
453
-// oe.aConstraints.gridx += 1;
454
- oe.toolbarPanel.add(snapobjectButton = new cButton("O+", !GrafreeD.NIMBUSLAF)); //, oe.aConstraints);
455
- snapobjectButton.addActionListener(this);
456
- snapobjectButton.setToolTipText("Snap Object");
457
- oe.aConstraints.gridx += 1;
458502
459
- //aConstraints.gridx = 0;
460
- //aConstraints.gridy += 1;
461
- oe.aConstraints.weighty = 0;
462
- oe.aConstraints.gridwidth = 1;
463
-
503
+ if (Globals.ADVANCED)
504
+ {
505
+ oe.toolbarPanel.add(snapobjectButton = new cButton("O+", !GrafreeD.NIMBUSLAF)); //, oe.aConstraints);
506
+ snapobjectButton.addActionListener(this);
507
+ snapobjectButton.setToolTipText("Snap Object");
508
+ }
509
+
464510 oe.toolbarPanel.add(flashSelectionButton = new cButton("?", !GrafreeD.NIMBUSLAF)); //, oe.aConstraints);
465511 flashSelectionButton.setToolTipText("Show selection");
466512 flashSelectionButton.addActionListener(this);
....@@ -504,13 +550,13 @@
504550 uneditButton.setToolTipText("Unedit selection");
505551 uneditButton.addActionListener(this);
506552
553
+ commandsPanel.add(allParamsButton = new JCheckBox("All", allparams)); //, oe.aConstraints);
554
+ allParamsButton.setToolTipText("Edit all params");
555
+ allParamsButton.addActionListener(this);
556
+
507557 commandsPanel.add(clearPanelButton = new cButton("C", !GrafreeD.NIMBUSLAF)); //, oe.aConstraints);
508558 clearPanelButton.setToolTipText("Clear edit panel");
509559 clearPanelButton.addActionListener(this);
510
-
511
- commandsPanel.add(allParamsButton = new cButton("A", !GrafreeD.NIMBUSLAF)); //, oe.aConstraints);
512
- allParamsButton.setToolTipText("All params??");
513
- allParamsButton.addActionListener(this);
514560
515561 commandsPanel.add(unselectButton = new cButton("U", !GrafreeD.NIMBUSLAF)); //, oe.aConstraints);
516562 unselectButton.setToolTipText("Unselect");
....@@ -587,43 +633,35 @@
587633
588634 void AddOptions(cGridBag panel) //, GridBagConstraints constraints)
589635 {
590
- //constraints.gridx = 0;
591
- //constraints.gridy = 0;
592
- panel.add(fastCB = new cCheckBox("Fast", CameraPane.FAST)); //, constraints);
593
- fastCB.setToolTipText("Fast mode");
594
- fastCB.addItemListener(this);
595
- //constraints.gridy += 1;
596
- panel.add(supportCB = new cCheckBox("Support", CameraPane.SUPPORT)); //, constraints);
597
- supportCB.setToolTipText("Enabled rigging");
598
- supportCB.addItemListener(this);
599
-
600
- // constraints.gridy += 1;
601
- // panel.add(localCB = new cCheckBox("Local", CameraPane.LOCALTRANSFORM), constraints);
602
- // localCB.addItemListener(this);
603
-
604
- //constraints.gridy += 1;
605
- panel.add(crowdCB = new cCheckBox("Crowd", Globals.CROWD)); //, constraints);
606
- crowdCB.setToolTipText("Used for crowds");
607
- crowdCB.addItemListener(this);
608
-
609
- //constraints.gridy += 1;
610
- panel.add(smoothCB = new cCheckBox("Inertia", CameraPane.INERTIA)); //, constraints);
611
- smoothCB.setToolTipText("Snapping delay");
612
- smoothCB.addItemListener(this);
613
-
614
- //constraints.gridy += 1;
615
- panel.add(slowCB = new cCheckBox("Slow", CameraPane.SLOWPOSE)); //, constraints);
616
- slowCB.setToolTipText("Smooth interpolation");
617
- slowCB.addItemListener(this);
618
- //constraints.gridy += 1;
619636 panel.add(boxCB = new cCheckBox("Box", CameraPane.BOXMODE)); //, constraints);
620637 boxCB.setToolTipText("Display bounding boxes");
621638 boxCB.addItemListener(this);
622
- //constraints.gridy += 1;
639
+
623640 panel.add(zoomBoxCB = new cCheckBox("Zoom", CameraPane.ZOOMBOXMODE)); //, constraints);
624641 zoomBoxCB.setToolTipText("Display bounding boxes when moving the wheel");
625642 zoomBoxCB.addItemListener(this);
626643
644
+ if (Globals.ADVANCED)
645
+ {
646
+ panel.add(supportCB = new cCheckBox("Support", CameraPane.SUPPORT)); //, constraints);
647
+ supportCB.setToolTipText("Enable rigging");
648
+ supportCB.addItemListener(this);
649
+
650
+ // panel.add(localCB = new cCheckBox("Local", CameraPane.LOCALTRANSFORM), constraints);
651
+ // localCB.addItemListener(this);
652
+
653
+ panel.add(crowdCB = new cCheckBox("Crowd", Globals.CROWD)); //, constraints);
654
+ crowdCB.setToolTipText("Used for crowds");
655
+ crowdCB.addItemListener(this);
656
+
657
+ panel.add(smoothCB = new cCheckBox("Inertia", CameraPane.INERTIA)); //, constraints);
658
+ smoothCB.setToolTipText("Snapping delay");
659
+ smoothCB.addItemListener(this);
660
+
661
+ panel.add(slowCB = new cCheckBox("Slow", CameraPane.SLOWPOSE)); //, constraints);
662
+ slowCB.setToolTipText("Smooth interpolation");
663
+ slowCB.addItemListener(this);
664
+
627665 // constraints.gridy += 1;
628666 // panel.add(speakerMocapCB = new cCheckBox("Mocap", CameraPane.SPEAKERMOCAP), constraints);
629667 // speakerMocapCB.addItemListener(this);
....@@ -648,14 +686,14 @@
648686 //panel.add(debugCB = new cCheckBox("Debug", CameraPane.DEBUG), constraints);
649687 // debugCB.addItemListener(this);
650688
651
- //constraints.gridy += 1;
652689 panel.add(oeilCB = new cCheckBox("Eye", CameraPane.OEIL)); //, constraints);
653690 oeilCB.addItemListener(this);
654691
655
- //constraints.gridy += 1;
656692 panel.add(lookAtCB = new cCheckBox("Target", CameraPane.LOOKAT)); //, constraints);
657693 lookAtCB.setToolTipText("Look-at target");
658694 lookAtCB.addItemListener(this);
695
+
696
+ }
659697
660698 cGridBag fill = new cGridBag();
661699
....@@ -946,11 +984,11 @@
946984 {
947985 loadClipboard(true);
948986 objEditor.jTree.setSelectionPath(destinationPath);
949
- pasteInto(false);
987
+ pasteInto(false, false);
950988 } else {
951989 loadClipboard(false);
952990 objEditor.jTree.setSelectionPath(destinationPath);
953
- pasteInto(false); // true); // ???
991
+ pasteInto(false, false); // true); // ???
954992 }
955993 }
956994 public void dropActionChanged(DropTargetDragEvent dtde)
....@@ -1072,27 +1110,33 @@
10721110 kleinItem.addActionListener(this);
10731111 particleItem = menu.add(new MenuItem("Particle system"));
10741112 particleItem.addActionListener(this);
1113
+ if (Globals.ADVANCED)
1114
+ {
10751115 ragdollItem = menu.add(new MenuItem("Rag Walk"));
10761116 ragdollItem.addActionListener(this);
10771117 ragdoll2Item = menu.add(new MenuItem("Rag Fall"));
10781118 ragdoll2Item.addActionListener(this);
1119
+ }
10791120 menu.add("-");
1080
- meshItem = menu.add(new MenuItem("Mesh"));
1121
+ meshItem = menu.add(new MenuItem("Dynamic Mesh"));
10811122 meshItem.addActionListener(this);
10821123 // meshGroupItem = menu.add(new MenuItem("Mesh Group"));
10831124 // meshGroupItem.addActionListener(this);
1125
+ if (Globals.ADVANCED)
1126
+ {
10841127 springItem = menu.add(new MenuItem("Spring"));
10851128 springItem.addActionListener(this);
10861129 flagItem = menu.add(new MenuItem("Flag"));
10871130 flagItem.addActionListener(this);
1088
- bezierItem = menu.add(new MenuItem("Patch"));
1089
- bezierItem.addActionListener(this);
1090
- checkerItem = menu.add(new MenuItem("Checker"));
1091
- checkerItem.addActionListener(this);
10921131 blobItem = menu.add(new MenuItem("Blob"));
10931132 blobItem.addActionListener(this);
10941133 latheItem = menu.add(new MenuItem("Lathe"));
10951134 latheItem.addActionListener(this);
1135
+ }
1136
+ bezierItem = menu.add(new MenuItem("Bezier Patch"));
1137
+ bezierItem.addActionListener(this);
1138
+ overlayItem = menu.add(new MenuItem("Overlay"));
1139
+ overlayItem.addActionListener(this);
10961140 lightItem = menu.add(new MenuItem("Light"));
10971141 lightItem.addActionListener(this);
10981142 menu.add("-");
....@@ -1102,25 +1146,26 @@
11021146 loopItem.addActionListener(this);
11031147 doubleItem = menu.add(new MenuItem("Fork"));
11041148 doubleItem.addActionListener(this);
1149
+ if (Globals.ADVANCED)
1150
+ {
11051151 tripleItem = menu.add(new MenuItem("Trident"));
11061152 tripleItem.addActionListener(this);
1153
+ }
11071154 }
11081155
11091156 void buildToolsMenu(Menu menu)
11101157 {
11111158 menu.add(animationItem = new CheckboxMenuItem("Animation..."));
11121159 animationItem.addItemListener(this);
1113
- animationItem.setState(CameraPane.ANIMATION);
1160
+ animationItem.setState(Globals.ANIMATION);
11141161
11151162 menu.add("-");
11161163 parseverticesItem = menu.add(new MenuItem("Multiplicity"));
11171164 parseverticesItem.addActionListener(this);
11181165 textureFieldItem = menu.add(new MenuItem("Texture Field"));
11191166 textureFieldItem.addActionListener(this);
1120
- alignItem = menu.add(new MenuItem("Align"));
1167
+ alignItem = menu.add(new MenuItem("Align Object"));
11211168 alignItem.addActionListener(this);
1122
- mirrorItem = menu.add(new MenuItem("Mirror Poses"));
1123
- mirrorItem.addActionListener(this);
11241169 reduceMorphItem = menu.add(new MenuItem("Reduce Morphs"));
11251170 reduceMorphItem.addActionListener(this);
11261171 reduce34MorphItem = menu.add(new MenuItem("Reduce Morphs (34)"));
....@@ -1128,8 +1173,12 @@
11281173
11291174 menu.add(computeAOItem = new MenuItem("Compute AO"));
11301175 computeAOItem.addActionListener(this);
1131
- menu.add("-");
11321176
1177
+ if (Globals.ADVANCED)
1178
+ {
1179
+ mirrorItem = menu.add(new MenuItem("Mirror Poses"));
1180
+ mirrorItem.addActionListener(this);
1181
+ menu.add("-");
11331182 menu.add(memoryItem = new MenuItem("Memory Usage"));
11341183 memoryItem.addActionListener(this);
11351184 menu.add(analyzeItem = new MenuItem("Analyze"));
....@@ -1152,6 +1201,7 @@
11521201 menu.add("-");
11531202 menu.add(editScriptItem = new MenuItem("Edit Script..."));
11541203 editScriptItem.addActionListener(this);
1204
+ }
11551205 }
11561206
11571207 void ScreenFit()
....@@ -1653,7 +1703,7 @@
16531703 {
16541704 makeSomething(new BezierSurface());
16551705 } else
1656
- if (source == checkerItem)
1706
+ if (source == overlayItem)
16571707 {
16581708 /*
16591709 Object3D obj = new BezierSurface(5,8);
....@@ -1841,6 +1891,11 @@
18411891 {
18421892 DumpObject();
18431893 } else
1894
+ if (source == oneStepButton)
1895
+ {
1896
+ Globals.ONESTEP = true;
1897
+ cameraView.repaint();
1898
+ } else
18441899 if (source == screenfitButton)
18451900 {
18461901 //Reload(lastConverter, lastFilename, true);
....@@ -1913,13 +1968,17 @@
19131968 {
19141969 paste(false);
19151970 } else
1971
+ if (source == pasteIntoItem)
1972
+ {
1973
+ pasteInto(true, false);
1974
+ } else
19161975 if (source == pasteLinkItem)
19171976 {
1918
- pasteInto(false);
1977
+ pasteInto(false, false);
19191978 } else
19201979 if (source == pasteCloneItem)
19211980 {
1922
- pasteInto(true);
1981
+ pasteInto(true, true);
19231982 } else
19241983 if (source == pasteExpandItem)
19251984 {
....@@ -2121,11 +2180,11 @@
21212180 Globals.theRenderer.setCursor(java.awt.Cursor.getPredefinedCursor(java.awt.Cursor.WAIT_CURSOR));
21222181 for (int i=0; i<group.selection.size(); i++)
21232182 {
2124
- boolean random = CameraPane.RANDOM;
2125
- CameraPane.RANDOM = false; // parse all random nodes
2183
+ boolean random = CameraPane.SWITCH;
2184
+ CameraPane.SWITCH = false; // parse all random nodes
21262185 group.selection.get(i).linkVerticesThis(content);
21272186 // group.selection.get(i).setMasterThis(content); // should be identity
2128
- CameraPane.RANDOM = random;
2187
+ CameraPane.SWITCH = random;
21292188 }
21302189 Globals.theRenderer.setCursor(java.awt.Cursor.getPredefinedCursor(java.awt.Cursor.DEFAULT_CURSOR));
21312190 refreshContents();
....@@ -2135,20 +2194,20 @@
21352194 {
21362195 for (int i=0; i<group.selection.size(); i++)
21372196 {
2138
- boolean random = CameraPane.RANDOM;
2139
- CameraPane.RANDOM = false; // parse all random nodes
2197
+ boolean random = CameraPane.SWITCH;
2198
+ CameraPane.SWITCH = false; // parse all random nodes
21402199 group.selection.get(i).linkVerticesThis(null);
2141
- CameraPane.RANDOM = random;
2200
+ CameraPane.SWITCH = random;
21422201 }
21432202
21442203 refreshContents();
21452204 } else
21462205 if (source == relinkverticesItem)
21472206 {
2148
- boolean random = CameraPane.RANDOM;
2149
- CameraPane.RANDOM = false; // parse all random nodes
2207
+ boolean random = CameraPane.SWITCH;
2208
+ CameraPane.SWITCH = false; // parse all random nodes
21502209 group.selection.RelinkToSupport();
2151
- CameraPane.RANDOM = random;
2210
+ CameraPane.SWITCH = random;
21522211
21532212 refreshContents();
21542213 } else
....@@ -2246,7 +2305,7 @@
22462305 RandomNode random = new RandomNode();
22472306 group(random);
22482307 if (random.size() > 0)
2249
- random.name = random.get(0).name + "Rnd";
2308
+ random.name = random.get(0).name + "Switch";
22502309 } else
22512310 if (source == physicsItem)
22522311 {
....@@ -2903,7 +2962,7 @@
29032962
29042963 child.editWindow = null; // ???????????
29052964 }
2906
- objEditor.ctrlPanel.validate();
2965
+ objEditor.ctrlPanel.FlushUI();
29072966 //objEditor.jTree.clearSelection();
29082967 //objEditor.ResetSliders();
29092968 refreshContents(true);
....@@ -3622,11 +3681,11 @@
36223681
36233682 SwitchNode sn = new SwitchNode(poses, Object3D.GEOMETRY);
36243683
3625
- boolean random = CameraPane.RANDOM;
3626
- CameraPane.RANDOM = false; // parse all random nodes
3684
+ boolean random = CameraPane.SWITCH;
3685
+ CameraPane.SWITCH = false; // parse all random nodes
36273686 lowres.linkVerticesThis(null);
36283687 lowres.linkVerticesThis(sn);
3629
- CameraPane.RANDOM = random;
3688
+ CameraPane.SWITCH = random;
36303689
36313690 System.err.flush();
36323691
....@@ -4384,7 +4443,7 @@
43844443 refreshContents();
43854444 }
43864445
4387
- void pasteInto(boolean copyit)
4446
+ void pasteInto(boolean copyit, boolean clone)
43884447 {
43894448 // if (GrafreeD.clipboard == null)
43904449 // return;
....@@ -4413,7 +4472,14 @@
44134472 if (copyit)
44144473 {
44154474 // paste(false);
4416
- CloneClipboard(false); // sept 2014
4475
+ if (clone)
4476
+ {
4477
+ CloneClipboard(false); // sept 2014
4478
+ }
4479
+ else
4480
+ {
4481
+ paste(false);
4482
+ }
44174483 }
44184484 else
44194485 {
....@@ -4957,10 +5023,12 @@
49575023 cButton flashSelectionButton;
49585024 cButton editButton;
49595025 cButton uneditButton;
5026
+ JCheckBox allParamsButton;
49605027 cButton clearpanelButton;
4961
- cButton allParamsButton;
49625028 cButton unselectButton;
49635029
5030
+ cButton oneStepButton;
5031
+
49645032 cButton screenfitButton;
49655033 cButton screenfitpointButton;
49665034 cButton snapobjectButton;
....@@ -5015,6 +5083,7 @@
50155083 private MenuItem mergeGeometriesItem;
50165084 private MenuItem copyItem;
50175085 private MenuItem pasteItem;
5086
+ private MenuItem pasteIntoItem;
50185087 private MenuItem pasteLinkItem;
50195088 private MenuItem pasteCloneItem;
50205089 private MenuItem pasteExpandItem;
....@@ -5112,7 +5181,7 @@
51125181 private MenuItem blobItem;
51135182 private MenuItem latheItem;
51145183 private MenuItem bezierItem;
5115
- private MenuItem checkerItem;
5184
+ private MenuItem overlayItem;
51165185 private MenuItem meshItem;
51175186 // private MenuItem meshGroupItem;
51185187 private MenuItem springItem;