Normand Briere
2019-08-06 ae8dc339f59e972a932b9097d47271e245e4ca9a
GroupEditor.java
....@@ -16,6 +16,7 @@
1616 //import buoy.widget.BFileChooser;
1717
1818 class GroupEditor extends ObjEditor implements //iParse, //iCallBack,
19
+ Grafreed.iResourceCallBack,
1920 ObjectUI,
2021 Runnable,
2122 ActionListener,
....@@ -311,12 +312,24 @@
311312 }
312313 }
313314
314
- public void ChangeSkybox(String name)
315
+ public void CallBack(String[] path)
316
+ {
317
+ for (int i = 0; i < path.length; i++)
318
+ {
319
+ System.out.print(path[i] + "/");
320
+ }
321
+
322
+ System.out.println();
323
+ }
324
+
325
+ public void ChangeSkybox(String skybox)
315326 {
316327 //cameraView.envyoff = false;
317
- group.skyboxname = name;
328
+ group.skyboxname = skybox;
318329 group.skyboxext = "jpg";
319330 cameraView.repaint();
331
+
332
+ Grafreed.ParseResources("textures", this);
320333 }
321334
322335 //ObjEditor objEditor;
....@@ -356,9 +369,9 @@
356369 this.copy = this.group = group;
357370 //selectees = this.group.selectees;
358371
359
- if (copy.versions == null)
372
+ if (copy.versionlist == null)
360373 {
361
- copy.versions = new byte[100][];
374
+ copy.versionlist = new Object3D[100];
362375 copy.versionindex = -1;
363376 }
364377
....@@ -383,9 +396,9 @@
383396
384397 ((cRadio)radioPanel.getComponent(0)).SetCamera(cameraView.renderCamera, true);
385398
386
- if (copy.versions == null)
399
+ if (copy.versionlist == null)
387400 {
388
- copy.versions = new byte[100][];
401
+ copy.versionlist = new Object3D[100];
389402 copy.versionindex = -1;
390403
391404 Save(true);
....@@ -931,32 +944,36 @@
931944 restoreCameraButton.setToolTipText("Restore viewpoint");
932945 restoreCameraButton.addActionListener(this);
933946
934
- copyOptionsPanel.add(saveButton = GetButton("icons/down_arrow.png", !Grafreed.NIMBUSLAF)); //, oe.aConstraints);
935
- saveButton.setToolTipText("Duplicate current version");
936
- saveButton.addActionListener(this);
947
+ copyOptionsPanel.add(saveVersionButton = GetButton("icons/down_arrow.png", !Grafreed.NIMBUSLAF)); //, oe.aConstraints);
948
+ saveVersionButton.setToolTipText("Duplicate current version");
949
+ saveVersionButton.addActionListener(this);
937950
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);
951
+ copyOptionsPanel.add(deleteVersionButton = GetButton("icons/trash.png", !Grafreed.NIMBUSLAF)); //, oe.aConstraints);
952
+ deleteVersionButton.setToolTipText("Delete current version");
953
+ deleteVersionButton.addActionListener(this);
954
+
955
+ copyOptionsPanel.add(previousVersionButton = GetButton("icons/undo.png", !Grafreed.NIMBUSLAF)); //, oe.aConstraints);
956
+ previousVersionButton.setToolTipText("Previous version");
957
+ previousVersionButton.addActionListener(this);
958
+ previousVersionButton.setEnabled(false);
942959
943960 cGridBag updown = new cGridBag().setVertical(true);
944961 updown.add(restoreButton = GetButton("icons/restore.png", !Grafreed.NIMBUSLAF)); //, oe.aConstraints);
945
- restoreButton.setToolTipText("Restore current version (undo latest change)");
962
+ restoreButton.setToolTipText("Undo (restore current version)");
946963 restoreButton.addActionListener(this);
947
- restoreButton.setEnabled(false);
964
+ //restoreButton.setEnabled(false);
948965
949966 updown.add(replaceButton = GetButton("icons/replace.png", !Grafreed.NIMBUSLAF)); //, oe.aConstraints);
950
- replaceButton.setToolTipText("Replace current version (save latest change)");
967
+ replaceButton.setToolTipText("Save (replace current version)");
951968 replaceButton.addActionListener(this);
952
- replaceButton.setEnabled(false);
969
+ //replaceButton.setEnabled(false);
953970
954971 copyOptionsPanel.add(updown);
955972
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);
973
+ copyOptionsPanel.add(nextVersionButton = GetButton("icons/redo.png", !Grafreed.NIMBUSLAF)); //, oe.aConstraints);
974
+ nextVersionButton.setToolTipText("Next version");
975
+ nextVersionButton.addActionListener(this);
976
+ nextVersionButton.setEnabled(false);
960977
961978 oe.toolbarPanel.add(liveCB = GetToggleButton("icons/run.png", Globals.isLIVE())); //, oe.aConstraints);
962979 liveCB.setToolTipText("Enable animation");
....@@ -1110,14 +1127,14 @@
11101127 editButton.addActionListener(this);
11111128
11121129 editCommandsPanel.add(uneditButton = GetButton("icons/remove.png", !Grafreed.NIMBUSLAF)); //, oe.aConstraints);
1113
- uneditButton.setToolTipText("Remove selection controls");
1130
+ uneditButton.setToolTipText("Unpin and remove selection controls");
11141131 uneditButton.addActionListener(this);
11151132
11161133 editCommandsPanel.add(allParamsButton = new JCheckBox("All", allparams)); //, oe.aConstraints);
11171134 allParamsButton.setToolTipText("Show all controle");
11181135 allParamsButton.addActionListener(this);
11191136
1120
- editCommandsPanel.add(clearPanelButton = new cButton("C", !Grafreed.NIMBUSLAF)); //, oe.aConstraints);
1137
+ editCommandsPanel.add(clearPanelButton = GetButton("icons/clear.png", !Grafreed.NIMBUSLAF)); //, oe.aConstraints);
11211138 clearPanelButton.setToolTipText("Clear edit panel");
11221139 clearPanelButton.addActionListener(this);
11231140
....@@ -2571,7 +2588,7 @@
25712588 if (source == invariantsItem)
25722589 {
25732590 System.out.println("Invariants:");
2574
- Grafreed.grafreeD.universe.invariants();
2591
+ Grafreed.grafreed.universe.invariants();
25752592 } else
25762593 if (source == memoryItem)
25772594 {
....@@ -2602,33 +2619,40 @@
26022619 {
26032620 ToggleFullScreen();
26042621 } else
2605
- if (source == undoButton)
2622
+ if (source == previousVersionButton)
26062623 {
26072624 // Go to previous version
26082625 //if (!Undo())
26092626 //java.awt.Toolkit.getDefaultToolkit().beep();
2610
- Undo();
2627
+ PreviousVersion();
26112628 } else
26122629 if (source == restoreButton)
26132630 {
26142631 // Restore current version
26152632 Restore();
2633
+ //restoreButton.setEnabled(false);
26162634 } else
26172635 if (source == replaceButton)
26182636 {
26192637 // Overwrite current version
26202638 Replace();
2639
+ //replaceButton.setEnabled(false);
26212640 } else
2622
- if (source == redoButton)
2641
+ if (source == nextVersionButton)
26232642 {
26242643 // Go to next version
2625
- Redo();
2644
+ NextVersion();
26262645 } else
2627
- if (source == saveButton)
2646
+ if (source == saveVersionButton)
26282647 {
26292648 // Save a new version
26302649 if (!Save(true))
26312650 java.awt.Toolkit.getDefaultToolkit().beep();
2651
+ } else
2652
+ if (source == deleteVersionButton)
2653
+ {
2654
+ // Delete a new version
2655
+ DeleteVersion();
26322656 } else
26332657 if (source == oneStepButton)
26342658 {
....@@ -2683,11 +2707,11 @@
26832707 } else
26842708 if (source == undoItem)
26852709 {
2686
- Undo();
2710
+ PreviousVersion();
26872711 } else
26882712 if (source == redoItem)
26892713 {
2690
- Redo();
2714
+ NextVersion();
26912715 } else
26922716 if (source == duplicateItem)
26932717 {
....@@ -3820,10 +3844,10 @@
38203844 {
38213845 Object3D child = (Object3D)e.nextElement();
38223846 if(child.editWindow != null)
3823
- objectPanel.setSelectedIndex(objectPanel.indexOfTab("Edit"));
38243847 child.pinned = false;
38253848 child.CloseUI();
38263849 listUI.remove(child);
3850
+// objectPanel.setSelectedIndex(objectPanel.indexOfTab("Edit"));
38273851
38283852 //child.editWindow = null; // ???????????
38293853 }
....@@ -3842,6 +3866,7 @@
38423866 obj.CloseUI();
38433867 }
38443868 listUI.clear();
3869
+ SetPinStates(group.selection.size() > 0);
38453870 refreshContents(true);
38463871 } else
38473872 if (source == allParamsButton)
....@@ -3928,6 +3953,7 @@
39283953 radio.layout.doClick();
39293954
39303955 ClearUnpinned();
3956
+
39313957 //Grafreed.Assert(group != null);
39323958 //Grafreed.Assert(group.selection != null);
39333959 SetPinStates(group.selection == null || group.selection.size() > 0);
....@@ -5083,9 +5109,7 @@
50835109
50845110 freezemodel = false;
50855111 }
5086
-
5087
- boolean flashIt = true;
5088
-
5112
+
50895113 public void valueChanged(TreeSelectionEvent e)
50905114 //public boolean handleEvent(Event event)
50915115 {
....@@ -5160,6 +5184,8 @@
51605184 uneditButton.setEnabled(enabled);
51615185 unselectButton.setEnabled(enabled);
51625186 flashSelectionButton.setEnabled(enabled);
5187
+
5188
+ clearPanelButton.setEnabled(!listUI.isEmpty());
51635189 }
51645190
51655191 void refreshContents(boolean cp)
....@@ -6000,7 +6026,6 @@
60006026
60016027 cButton restoreCameraButton;
60026028
6003
- cButton saveButton;
60046029 cButton oneStepButton;
60056030
60066031 cButton groupButton;