Normand Briere
2019-08-07 59de607850161a26863f92961d53caae7a2dabc8
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("New 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");
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");
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");
....@@ -1094,7 +1111,7 @@
10941111 cGridBag skyboxpane = new cGridBag();
10951112 skyboxpane.preferredHeight = 100;
10961113
1097
- oe.toolboxPanel.add(skyboxpane);
1114
+ oe.skyboxPanel.add(skyboxpane);
10981115
10991116 JTabbedPane skyboxpanel = new JTabbedPane();
11001117 skyboxpane.add(skyboxpanel);
....@@ -1110,20 +1127,20 @@
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
1124
- editCommandsPanel.add(unselectButton = new cButton("U", !Grafreed.NIMBUSLAF)); //, oe.aConstraints);
1125
- unselectButton.setToolTipText("Unselect");
1126
- unselectButton.addActionListener(this);
1141
+ //editCommandsPanel.add(unselectButton = new cButton("U", !Grafreed.NIMBUSLAF)); //, oe.aConstraints);
1142
+ //unselectButton.setToolTipText("Unselect");
1143
+ //unselectButton.addActionListener(this);
11271144
11281145 editCommandsPanel.add(flashSelectionButton = GetButton("icons/flash-light.png", !Grafreed.NIMBUSLAF)); //, oe.aConstraints);
11291146 flashSelectionButton.setToolTipText("Highlight selection");
....@@ -1183,7 +1200,7 @@
11831200 dgr.addDragGestureListener(this);
11841201 }catch(Exception e) {}
11851202 */
1186
- radio.layout = sixButton; // sevenButton;
1203
+ radio.layout = threeButton; // sixButton;
11871204 oe.toolbarPanel.add(radioPanel); //, oe.aConstraints);
11881205 }
11891206
....@@ -1328,7 +1345,7 @@
13281345 }
13291346
13301347 radioButton.SetObject(obj);
1331
- radioButton.layout = sixButton; // sevenButton;
1348
+ radioButton.layout = threeButton; // sixButton;
13321349 radioButton.SetCamera(cameraView.renderCamera, false);
13331350 radioButton.addActionListener(this);
13341351 radioPanel.add(radioButton);
....@@ -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);
....@@ -3944,11 +3970,13 @@
39443970 } else if (event.getSource() == editCameraItem)
39453971 {
39463972 cameraView.ProtectCamera();
3973
+ cameraView.requestFocusInWindow();
39473974 cameraView.repaint();
39483975 return;
39493976 } else if (event.getSource() == restoreCameraItem || event.getSource() == restoreCameraButton)
39503977 {
39513978 cameraView.RevertCamera();
3979
+ cameraView.requestFocusInWindow();
39523980 cameraView.repaint();
39533981 return;
39543982 // } else if (event.getSource() == textureButton)
....@@ -5081,9 +5109,7 @@
50815109
50825110 freezemodel = false;
50835111 }
5084
-
5085
- boolean flashIt = true;
5086
-
5112
+
50875113 public void valueChanged(TreeSelectionEvent e)
50885114 //public boolean handleEvent(Event event)
50895115 {
....@@ -5156,13 +5182,15 @@
51565182 {
51575183 editButton.setEnabled(enabled);
51585184 uneditButton.setEnabled(enabled);
5159
- unselectButton.setEnabled(enabled);
5185
+ //unselectButton.setEnabled(enabled);
51605186 flashSelectionButton.setEnabled(enabled);
5187
+
5188
+ clearPanelButton.setEnabled(!listUI.isEmpty());
51615189 }
51625190
51635191 void refreshContents(boolean cp)
51645192 {
5165
- if (objectPanel.getSelectedIndex() == 2) // objectPanel.indexOfTab("Info"))
5193
+ //if (objectPanel.getSelectedIndex() == 2) // objectPanel.indexOfTab("Info"))
51665194 if (!Globals.MOUSEDRAGGED && group.selection != null) // && !Globals.TIMERRUNNING)
51675195 {
51685196 objEditor.ClearInfo(); // .GetMaterial());
....@@ -5998,7 +6026,6 @@
59986026
59996027 cButton restoreCameraButton;
60006028
6001
- cButton saveButton;
60026029 cButton oneStepButton;
60036030
60046031 cButton groupButton;