Normand Briere
2019-08-06 b3ae4e889872ca0b9ca76f1d17b2f0b961226729
GroupEditor.java
....@@ -356,9 +356,9 @@
356356 this.copy = this.group = group;
357357 //selectees = this.group.selectees;
358358
359
- if (copy.versions == null)
359
+ if (copy.versionlist == null)
360360 {
361
- copy.versions = new byte[100][];
361
+ copy.versionlist = new Object3D[100];
362362 copy.versionindex = -1;
363363 }
364364
....@@ -383,9 +383,9 @@
383383
384384 ((cRadio)radioPanel.getComponent(0)).SetCamera(cameraView.renderCamera, true);
385385
386
- if (copy.versions == null)
386
+ if (copy.versionlist == null)
387387 {
388
- copy.versions = new byte[100][];
388
+ copy.versionlist = new Object3D[100];
389389 copy.versionindex = -1;
390390
391391 Save(true);
....@@ -931,32 +931,36 @@
931931 restoreCameraButton.setToolTipText("Restore viewpoint");
932932 restoreCameraButton.addActionListener(this);
933933
934
- copyOptionsPanel.add(saveButton = GetButton("icons/down_arrow.png", !Grafreed.NIMBUSLAF)); //, oe.aConstraints);
935
- saveButton.setToolTipText("New version");
936
- saveButton.addActionListener(this);
934
+ copyOptionsPanel.add(saveVersionButton = GetButton("icons/down_arrow.png", !Grafreed.NIMBUSLAF)); //, oe.aConstraints);
935
+ saveVersionButton.setToolTipText("Duplicate current version");
936
+ saveVersionButton.addActionListener(this);
937937
938
- copyOptionsPanel.add(undoButton = GetButton("icons/undo.png", !Grafreed.NIMBUSLAF)); //, oe.aConstraints);
939
- undoButton.setToolTipText("Previous version");
940
- undoButton.addActionListener(this);
941
- undoButton.setEnabled(false);
938
+ copyOptionsPanel.add(deleteVersionButton = GetButton("icons/trash.png", !Grafreed.NIMBUSLAF)); //, oe.aConstraints);
939
+ deleteVersionButton.setToolTipText("Delete current version");
940
+ deleteVersionButton.addActionListener(this);
941
+
942
+ copyOptionsPanel.add(previousVersionButton = GetButton("icons/undo.png", !Grafreed.NIMBUSLAF)); //, oe.aConstraints);
943
+ previousVersionButton.setToolTipText("Previous version");
944
+ previousVersionButton.addActionListener(this);
945
+ previousVersionButton.setEnabled(false);
942946
943947 cGridBag updown = new cGridBag().setVertical(true);
944948 updown.add(restoreButton = GetButton("icons/restore.png", !Grafreed.NIMBUSLAF)); //, oe.aConstraints);
945
- restoreButton.setToolTipText("Restore current");
949
+ restoreButton.setToolTipText("Undo (restore current version)");
946950 restoreButton.addActionListener(this);
947
- restoreButton.setEnabled(false);
951
+ //restoreButton.setEnabled(false);
948952
949953 updown.add(replaceButton = GetButton("icons/replace.png", !Grafreed.NIMBUSLAF)); //, oe.aConstraints);
950
- replaceButton.setToolTipText("Replace current");
954
+ replaceButton.setToolTipText("Save (replace current version)");
951955 replaceButton.addActionListener(this);
952
- replaceButton.setEnabled(false);
956
+ //replaceButton.setEnabled(false);
953957
954958 copyOptionsPanel.add(updown);
955959
956
- copyOptionsPanel.add(redoButton = GetButton("icons/redo.png", !Grafreed.NIMBUSLAF)); //, oe.aConstraints);
957
- redoButton.setToolTipText("Next version");
958
- redoButton.addActionListener(this);
959
- redoButton.setEnabled(false);
960
+ copyOptionsPanel.add(nextVersionButton = GetButton("icons/redo.png", !Grafreed.NIMBUSLAF)); //, oe.aConstraints);
961
+ nextVersionButton.setToolTipText("Next version");
962
+ nextVersionButton.addActionListener(this);
963
+ nextVersionButton.setEnabled(false);
960964
961965 oe.toolbarPanel.add(liveCB = GetToggleButton("icons/run.png", Globals.isLIVE())); //, oe.aConstraints);
962966 liveCB.setToolTipText("Enable animation");
....@@ -1110,14 +1114,14 @@
11101114 editButton.addActionListener(this);
11111115
11121116 editCommandsPanel.add(uneditButton = GetButton("icons/remove.png", !Grafreed.NIMBUSLAF)); //, oe.aConstraints);
1113
- uneditButton.setToolTipText("Remove selection controls");
1117
+ uneditButton.setToolTipText("Unpin and remove selection controls");
11141118 uneditButton.addActionListener(this);
11151119
11161120 editCommandsPanel.add(allParamsButton = new JCheckBox("All", allparams)); //, oe.aConstraints);
11171121 allParamsButton.setToolTipText("Show all controle");
11181122 allParamsButton.addActionListener(this);
11191123
1120
- editCommandsPanel.add(clearPanelButton = new cButton("C", !Grafreed.NIMBUSLAF)); //, oe.aConstraints);
1124
+ editCommandsPanel.add(clearPanelButton = GetButton("icons/clear.png", !Grafreed.NIMBUSLAF)); //, oe.aConstraints);
11211125 clearPanelButton.setToolTipText("Clear edit panel");
11221126 clearPanelButton.addActionListener(this);
11231127
....@@ -1183,7 +1187,7 @@
11831187 dgr.addDragGestureListener(this);
11841188 }catch(Exception e) {}
11851189 */
1186
- radio.layout = sixButton; // sevenButton;
1190
+ radio.layout = threeButton; // sixButton;
11871191 oe.toolbarPanel.add(radioPanel); //, oe.aConstraints);
11881192 }
11891193
....@@ -1234,9 +1238,12 @@
12341238 smoothCB.setToolTipText("Snapping delay");
12351239 smoothCB.addItemListener(this);
12361240
1237
- panel.add(slowCB = new cCheckBox("Slow", CameraPane.SLOWPOSE)); //, constraints);
1238
- slowCB.setToolTipText("Smooth interpolation");
1239
- slowCB.addItemListener(this);
1241
+// panel.add(slowCB = new cCheckBox("Slow", CameraPane.SLOWPOSE)); //, constraints);
1242
+// slowCB.setToolTipText("Smooth interpolation");
1243
+// slowCB.addItemListener(this);
1244
+ panel.add(minshaderCB = new cCheckBox("Min shader", Globals.MINSHADER)); //, constraints);
1245
+ minshaderCB.setToolTipText("Minimal fast shader");
1246
+ minshaderCB.addItemListener(this);
12401247
12411248 // constraints.gridy += 1;
12421249 // panel.add(speakerMocapCB = new cCheckBox("Mocap", CameraPane.SPEAKERMOCAP), constraints);
....@@ -1325,7 +1332,7 @@
13251332 }
13261333
13271334 radioButton.SetObject(obj);
1328
- radioButton.layout = sixButton; // sevenButton;
1335
+ radioButton.layout = threeButton; // sixButton;
13291336 radioButton.SetCamera(cameraView.renderCamera, false);
13301337 radioButton.addActionListener(this);
13311338 radioPanel.add(radioButton);
....@@ -1350,6 +1357,8 @@
13501357 cCheckBox localCB;
13511358 cCheckBox crowdCB;
13521359 cCheckBox smoothCB;
1360
+ cCheckBox minshaderCB;
1361
+
13531362 cToggleButton fastCB;
13541363 cCheckBox slowCB;
13551364 cCheckBox boxCB;
....@@ -1420,6 +1429,12 @@
14201429 {
14211430 cameraView.ToggleInertia();
14221431 cameraView.repaint();
1432
+ }
1433
+ else if(e.getSource() == minshaderCB)
1434
+ {
1435
+ Globals.MINSHADER ^= true;
1436
+ cameraView.programInitialized = false;
1437
+ cameraView.repaint();
14231438 }
14241439 else if(e.getSource() == localCB)
14251440 {
....@@ -2560,7 +2575,7 @@
25602575 if (source == invariantsItem)
25612576 {
25622577 System.out.println("Invariants:");
2563
- Grafreed.grafreeD.universe.invariants();
2578
+ Grafreed.grafreed.universe.invariants();
25642579 } else
25652580 if (source == memoryItem)
25662581 {
....@@ -2591,33 +2606,40 @@
25912606 {
25922607 ToggleFullScreen();
25932608 } else
2594
- if (source == undoButton)
2609
+ if (source == previousVersionButton)
25952610 {
25962611 // Go to previous version
25972612 //if (!Undo())
25982613 //java.awt.Toolkit.getDefaultToolkit().beep();
2599
- Undo();
2614
+ PreviousVersion();
26002615 } else
26012616 if (source == restoreButton)
26022617 {
26032618 // Restore current version
26042619 Restore();
2620
+ //restoreButton.setEnabled(false);
26052621 } else
26062622 if (source == replaceButton)
26072623 {
26082624 // Overwrite current version
26092625 Replace();
2626
+ //replaceButton.setEnabled(false);
26102627 } else
2611
- if (source == redoButton)
2628
+ if (source == nextVersionButton)
26122629 {
26132630 // Go to next version
2614
- Redo();
2631
+ NextVersion();
26152632 } else
2616
- if (source == saveButton)
2633
+ if (source == saveVersionButton)
26172634 {
26182635 // Save a new version
26192636 if (!Save(true))
26202637 java.awt.Toolkit.getDefaultToolkit().beep();
2638
+ } else
2639
+ if (source == deleteVersionButton)
2640
+ {
2641
+ // Delete a new version
2642
+ DeleteVersion();
26212643 } else
26222644 if (source == oneStepButton)
26232645 {
....@@ -2672,11 +2694,11 @@
26722694 } else
26732695 if (source == undoItem)
26742696 {
2675
- Undo();
2697
+ PreviousVersion();
26762698 } else
26772699 if (source == redoItem)
26782700 {
2679
- Redo();
2701
+ NextVersion();
26802702 } else
26812703 if (source == duplicateItem)
26822704 {
....@@ -3809,10 +3831,10 @@
38093831 {
38103832 Object3D child = (Object3D)e.nextElement();
38113833 if(child.editWindow != null)
3812
- objectPanel.setSelectedIndex(objectPanel.indexOfTab("Edit"));
38133834 child.pinned = false;
38143835 child.CloseUI();
38153836 listUI.remove(child);
3837
+// objectPanel.setSelectedIndex(objectPanel.indexOfTab("Edit"));
38163838
38173839 //child.editWindow = null; // ???????????
38183840 }
....@@ -3831,6 +3853,7 @@
38313853 obj.CloseUI();
38323854 }
38333855 listUI.clear();
3856
+ SetPinStates(group.selection.size() > 0);
38343857 refreshContents(true);
38353858 } else
38363859 if (source == allParamsButton)
....@@ -3917,6 +3940,7 @@
39173940 radio.layout.doClick();
39183941
39193942 ClearUnpinned();
3943
+
39203944 //Grafreed.Assert(group != null);
39213945 //Grafreed.Assert(group.selection != null);
39223946 SetPinStates(group.selection == null || group.selection.size() > 0);
....@@ -3933,11 +3957,13 @@
39333957 } else if (event.getSource() == editCameraItem)
39343958 {
39353959 cameraView.ProtectCamera();
3960
+ cameraView.requestFocusInWindow();
39363961 cameraView.repaint();
39373962 return;
39383963 } else if (event.getSource() == restoreCameraItem || event.getSource() == restoreCameraButton)
39393964 {
39403965 cameraView.RevertCamera();
3966
+ cameraView.requestFocusInWindow();
39413967 cameraView.repaint();
39423968 return;
39433969 // } else if (event.getSource() == textureButton)
....@@ -5070,9 +5096,7 @@
50705096
50715097 freezemodel = false;
50725098 }
5073
-
5074
- boolean flashIt = true;
5075
-
5099
+
50765100 public void valueChanged(TreeSelectionEvent e)
50775101 //public boolean handleEvent(Event event)
50785102 {
....@@ -5147,6 +5171,8 @@
51475171 uneditButton.setEnabled(enabled);
51485172 unselectButton.setEnabled(enabled);
51495173 flashSelectionButton.setEnabled(enabled);
5174
+
5175
+ clearPanelButton.setEnabled(!listUI.isEmpty());
51505176 }
51515177
51525178 void refreshContents(boolean cp)
....@@ -5987,7 +6013,6 @@
59876013
59886014 cButton restoreCameraButton;
59896015
5990
- cButton saveButton;
59916016 cButton oneStepButton;
59926017
59936018 cButton groupButton;