Normand Briere
2019-04-29 bed42c663d286d76a32f155049f9efabc2fdb73f
ObjEditor.java
....@@ -19,6 +19,8 @@
1919 import //weka.core.
2020 matrix.Matrix;
2121
22
+import grafeme.ui.*;
23
+
2224 class ObjEditor /*extends JFrame*/ implements iCallBack, ObjectUI,
2325 ActionListener, ChangeListener,
2426 InputMethodListener,
....@@ -31,6 +33,9 @@
3133 boolean timeline;
3234 boolean wasFullScreen;
3335
36
+ GroupEditor callee;
37
+ JFrame frame;
38
+
3439 // SCRIPT
3540
3641 transient JFrame textpanel = null;
....@@ -121,14 +126,13 @@
121126 void keyPressed(int key, int modifiers)
122127 {
123128 System.out.println("KEY PRESSED");
124
- CameraPane.theRenderer.keyPressed(key, modifiers);
129
+ Globals.theRenderer.keyPressed(key, modifiers);
125130 }
126131 */
127132
128133 static GridBagConstraints aConstraints;
129134 static GridBagConstraints aWindowConstraints;
130
- GroupEditor callee;
131
- JFrame frame;
135
+
132136 static int GRIDWIDTH = 100; // 4;
133137
134138 public void closeUI()
....@@ -160,12 +164,16 @@
160164 objEditor.ctrlPanel.remove(slowerButton);
161165 objEditor.ctrlPanel.remove(fasterButton);
162166 objEditor.ctrlPanel.remove(remarkButton);
167
+
168
+ Remove(normalpushField);
163169 }
164170
165171 public ObjEditor GetEditor()
166172 {
167173 return objEditor; //.GetEditor();
168174 }
175
+
176
+ // Sometimes myself, sometimes my callee's.
169177 ObjEditor objEditor;
170178
171179 /*
....@@ -305,7 +313,7 @@
305313 toggleTextureItem.setState(CameraPane.textureon);
306314 cameraMenu.add(toggleLiveItem = new CheckboxMenuItem("Live"));
307315 toggleLiveItem.addItemListener(this);
308
- toggleLiveItem.setState(CameraPane.isLIVE());
316
+ toggleLiveItem.setState(Globals.isLIVE());
309317 cameraMenu.add(stepItem = new MenuItem("Step"));
310318 stepItem.addActionListener(this);
311319 // cameraMenu.add(toggleDLItem = new CheckboxMenuItem("Display List"));
....@@ -814,7 +822,7 @@
814822
815823 aConstraints.fill = GridBagConstraints.VERTICAL;
816824 jlabel.setHorizontalAlignment(SwingConstants.TRAILING);
817
- aConstraints.gridwidth = 2;
825
+ aConstraints.gridwidth = 1;
818826 ctrlPanel.add(jlabel, aConstraints); //, oe.ctrlPanel.getComponentCount()-1);
819827 aConstraints.gridx += 1;
820828 aConstraints.fill = GridBagConstraints.HORIZONTAL;
....@@ -983,6 +991,9 @@
983991
984992 Return();
985993
994
+ normalpushField = AddSlider(oe.ctrlPanel, "Push", -10, 10, 0, -1);
995
+ Return();
996
+
986997 // oe.ctrlPanel.add(stepButton = new cButton("Step"), ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount() - 2);
987998 // ObjEditor.aConstraints.gridx += 1;
988999
....@@ -1182,6 +1193,13 @@
11821193 timelinePanel = new JPanel(new BorderLayout());
11831194 timelineMenubar = new timeflow.app.TimeflowApp().TimeFlowWindow(timelinePanel);
11841195
1196
+ cameraPanel = new JSplitPane(JSplitPane.VERTICAL_SPLIT, cameraView, timelinePanel);
1197
+ cameraPanel.setContinuousLayout(true);
1198
+ cameraPanel.setOneTouchExpandable(true);
1199
+// cameraPanel.setDividerLocation(0.9);
1200
+// cameraPanel.setDividerSize(9);
1201
+ cameraPanel.setResizeWeight(1.0);
1202
+
11851203 centralPanel.add(cameraView);
11861204 //frame.setJMenuBar(timelineMenubar);
11871205 //centralPanel.add(timelinePanel);
....@@ -1201,12 +1219,12 @@
12011219 //frontView.object = copy;
12021220 //sideView.object = copy;
12031221
1204
- XYZPanel = new JPanel();
1205
- XYZPanel.setLayout(new GridLayout(3, 1, 5, 5));
1222
+ XYZPanel = new cGridBag().setVertical(true);
1223
+ //XYZPanel.setLayout(new GridLayout(3, 1, 5, 5));
12061224
1207
- XYZPanel.add(/*BorderLayout.SOUTH,*/sideView); // Scroll);
1208
- XYZPanel.add(/*BorderLayout.CENTER,*/frontView); // Scroll);
1209
- XYZPanel.add(/*BorderLayout.NORTH,*/topView); // Scroll);
1225
+ XYZPanel.addComponent(/*BorderLayout.SOUTH,*/sideView); // Scroll);
1226
+ XYZPanel.addComponent(/*BorderLayout.CENTER,*/frontView); // Scroll);
1227
+ XYZPanel.addComponent(/*BorderLayout.NORTH,*/topView); // Scroll);
12101228
12111229 /*
12121230 gridPanel = new JPanel(); //new BorderLayout());
....@@ -1276,6 +1294,9 @@
12761294 optionsPanel = new JPanel(new GridBagLayout());
12771295
12781296 optionsPanel.setName("Options");
1297
+
1298
+ AddOptions(optionsPanel, aConstraints);
1299
+
12791300 scenePanel.add(optionsPanel);
12801301
12811302
....@@ -1311,6 +1332,7 @@
13111332 //bigPanel.setSize(new Dimension(10,10));
13121333 //bigPanel.add(ctrlPanel);
13131334 //bigPanel.add(gridPanel);
1335
+ /**
13141336 bigThree = new JPanel();
13151337 //big.setLayout(new FlowLayout(FlowLayout.LEFT));
13161338 bigThree.setLayout(new GridBagLayout()); //1,3,5,5));
....@@ -1334,7 +1356,13 @@
13341356 // aConstraints.gridheight = 3;
13351357 aWindowConstraints.fill = GridBagConstraints.VERTICAL;
13361358 bigThree.add(XYZPanel, aWindowConstraints);
1359
+ /**/
13371360
1361
+ bigThree = new cGridBag();
1362
+ bigThree.addComponent(scenePanel);
1363
+ bigThree.addComponent(centralPanel);
1364
+ bigThree.addComponent(XYZPanel);
1365
+
13381366 // // SIDE EFFECT!!!
13391367 // aConstraints.gridx = 0;
13401368 // aConstraints.gridy = 0;
....@@ -1355,7 +1383,8 @@
13551383 //worldPane.add(bigPanel);
13561384 //worldPane.add(worldPanel);
13571385 /**/
1358
- frame.getContentPane().add(/*"Center",*/framePanel);
1386
+ //frame.getContentPane().add(/*"Center",*/framePanel);
1387
+ frame.add(/*"Center",*/framePanel);
13591388 //frame.getContentPane().add(/*"Center",*/ worldPane);
13601389
13611390 // aConstraints = gbc; // (GridBagConstraints) GrafreeD.clone(gbc);
....@@ -1376,6 +1405,10 @@
13761405 });
13771406 }
13781407
1408
+ void AddOptions(JPanel panel, GridBagConstraints constraints)
1409
+ {
1410
+ }
1411
+
13791412 JTree GetTree()
13801413 {
13811414 return objEditor.jTree;
....@@ -1446,7 +1479,7 @@
14461479 aConstraints.gridx += 1;
14471480 aConstraints.gridwidth = ObjEditor.GRIDWIDTH;
14481481 //aConstraints.weightx = 0;
1449
- ctrlPanel.add(colorField = new NumberSlider(0.001, 1, -0.1), aConstraints);
1482
+ ctrlPanel.add(colorField = new NumberSlider(0.001, 1, -0.5), aConstraints);
14501483 aConstraints.gridx = 0;
14511484 aConstraints.gridy += 1;
14521485 aConstraints.gridwidth = 1;
....@@ -1456,7 +1489,7 @@
14561489 aConstraints.fill = GridBagConstraints.HORIZONTAL;
14571490 aConstraints.gridx += 1;
14581491 aConstraints.gridwidth = ObjEditor.GRIDWIDTH;
1459
- ctrlPanel.add(modulationField = new NumberSlider(0.001, 1, -0.1), aConstraints);
1492
+ ctrlPanel.add(modulationField = new NumberSlider(0.001, 1, -0.5), aConstraints);
14601493 aConstraints.gridx = 0;
14611494 aConstraints.gridy += 1;
14621495 aConstraints.gridwidth = 1;
....@@ -1466,7 +1499,7 @@
14661499 aConstraints.fill = GridBagConstraints.HORIZONTAL;
14671500 aConstraints.gridx += 1;
14681501 aConstraints.gridwidth = ObjEditor.GRIDWIDTH;
1469
- ctrlPanel.add(textureField = new NumberSlider(0.001, 1, -0.1), aConstraints);
1502
+ ctrlPanel.add(textureField = new NumberSlider(0.001, 1, -0.5), aConstraints);
14701503 aConstraints.gridx = 0;
14711504 aConstraints.gridy += 1;
14721505 aConstraints.gridwidth = 1;
....@@ -1476,7 +1509,7 @@
14761509 aConstraints.fill = GridBagConstraints.HORIZONTAL;
14771510 aConstraints.gridx += 1;
14781511 aConstraints.gridwidth = ObjEditor.GRIDWIDTH;
1479
- ctrlPanel.add(anisoField = new NumberSlider(0.001, 1, -0.1), aConstraints);
1512
+ ctrlPanel.add(anisoField = new NumberSlider(0.001, 1, -0.5), aConstraints);
14801513 aConstraints.gridx = 0;
14811514 aConstraints.gridy += 1;
14821515 aConstraints.gridwidth = 1;
....@@ -1486,7 +1519,7 @@
14861519 aConstraints.fill = GridBagConstraints.HORIZONTAL;
14871520 aConstraints.gridx += 1;
14881521 aConstraints.gridwidth = ObjEditor.GRIDWIDTH;
1489
- ctrlPanel.add(anisoVField = new NumberSlider(0.001, 1, -0.1), aConstraints);
1522
+ ctrlPanel.add(anisoVField = new NumberSlider(0.001, 1, -0.5), aConstraints);
14901523 aConstraints.gridx = 0;
14911524 aConstraints.gridy += 1;
14921525 aConstraints.gridwidth = 1;
....@@ -1555,7 +1588,7 @@
15551588 aConstraints.fill = GridBagConstraints.HORIZONTAL;
15561589 aConstraints.gridx += 1;
15571590 aConstraints.gridwidth = ObjEditor.GRIDWIDTH;
1558
- ctrlPanel.add(subsurfaceField = new NumberSlider(0.001, 1, -0.1), aConstraints);
1591
+ ctrlPanel.add(subsurfaceField = new NumberSlider(0.001, 1, -0.5), aConstraints);
15591592 aConstraints.gridx = 0;
15601593 aConstraints.gridy += 1;
15611594 aConstraints.gridwidth = 1;
....@@ -1624,7 +1657,7 @@
16241657 aConstraints.fill = GridBagConstraints.HORIZONTAL;
16251658 aConstraints.gridx += 1;
16261659 aConstraints.gridwidth = ObjEditor.GRIDWIDTH;
1627
- ctrlPanel.add(metalnessField = new NumberSlider(0.001, 1, -0.1), aConstraints);
1660
+ ctrlPanel.add(metalnessField = new NumberSlider(0.001, 1, -0.5), aConstraints);
16281661 aConstraints.gridx = 0;
16291662 aConstraints.gridy += 1;
16301663 aConstraints.gridwidth = 1;
....@@ -1695,7 +1728,7 @@
16951728 aConstraints.fill = GridBagConstraints.HORIZONTAL;
16961729 aConstraints.gridx += 1;
16971730 aConstraints.gridwidth = ObjEditor.GRIDWIDTH;
1698
- ctrlPanel.add(opacityField = new NumberSlider(0.001, 1, -0.1), aConstraints);
1731
+ ctrlPanel.add(opacityField = new NumberSlider(0.001, 1, -0.5), aConstraints);
16991732 aConstraints.gridx = 0;
17001733 aConstraints.gridy += 1;
17011734 aConstraints.gridwidth = 1;
....@@ -2989,7 +3022,8 @@
29893022 if (timeline)
29903023 {
29913024 centralPanel.remove(cameraView);
2992
- centralPanel.add(timelinePanel);
3025
+ cameraPanel.add(cameraView);
3026
+ centralPanel.add(cameraPanel);
29933027 frame.setJMenuBar(timelineMenubar);
29943028 wasFullScreen = CameraPane.FULLSCREEN;
29953029 if (!CameraPane.FULLSCREEN)
....@@ -2998,7 +3032,7 @@
29983032 }
29993033 else
30003034 {
3001
- centralPanel.remove(timelinePanel);
3035
+ centralPanel.remove(cameraPanel);
30023036 centralPanel.add(cameraView);
30033037 frame.setJMenuBar(null);
30043038 if (!wasFullScreen)
....@@ -3121,7 +3155,8 @@
31213155 objEditor.refreshContents();
31223156 } else if (event.getSource() == stepItem)
31233157 {
3124
- cameraView.ONESTEP = true;
3158
+ //cameraView.ONESTEP = true;
3159
+ Globals.ONESTEP = true;
31253160 cameraView.repaint();
31263161 return;
31273162 } else if (event.getSource() == stepButton)
....@@ -3278,25 +3313,25 @@
32783313
32793314 void ToggleAnimation()
32803315 {
3281
- if (!CameraPane.ANIMATION)
3316
+ if (!Globals.ANIMATION)
32823317 {
32833318 FileDialog browser = new FileDialog(frame, "Save Animation As...", FileDialog.SAVE);
32843319 browser.show();
32853320 String filename = browser.getFile();
32863321 if (filename != null && filename.length() > 0)
32873322 {
3288
- CameraPane.filename = browser.getDirectory() + filename;
3323
+ Globals.filename = browser.getDirectory() + filename;
32893324 //CameraPane.framecount = 0;
3290
- CameraPane.imagecount = 0;
3325
+ Globals.imagecount = 0;
32913326
3292
- CameraPane.ANIMATION ^= true;
3327
+ Globals.ANIMATION ^= true;
32933328
32943329 GrafreeD.wav.cursor = 0;
32953330 GrafreeD.wav.loop = 0;
32963331 }
32973332 } else
32983333 {
3299
- CameraPane.ANIMATION ^= true;
3334
+ Globals.ANIMATION ^= true;
33003335 }
33013336 }
33023337
....@@ -3549,7 +3584,13 @@
35493584 //System.out.println("PARENT = " + parent);
35503585 //if (parent != null)
35513586 // parent.applySelf();
3552
- refreshContents();
3587
+ if (e.getSource() == normalpushField)
3588
+ {
3589
+ objEditor.refreshContents();
3590
+ //Refresh();
3591
+ }
3592
+ else
3593
+ refreshContents();
35533594 // ??? client.refreshEditWindow();
35543595 }
35553596 //else
....@@ -3561,7 +3602,7 @@
35613602 //group.name = nameField.getText();
35623603 //objEditor.applySelf();
35633604
3564
- assert (objEditor == this);
3605
+ // OCT2018: assert (objEditor == this);
35653606 if (copy.selection == null || copy.selection.size() == 0)
35663607 //super.applySelf()
35673608 ; else
....@@ -3585,6 +3626,9 @@
35853626 objEditor.copy = keep;
35863627 }
35873628 }
3629
+
3630
+ if (normalpushField != null)
3631
+ copy.NORMALPUSH = (float)normalpushField.getFloat()/1000;
35883632 }
35893633
35903634 void SnapObject()
....@@ -4511,12 +4555,13 @@
45114555 JScrollPane infoPanel;
45124556 JPanel optionsPanel;
45134557 JTabbedPane objectPanel;
4514
- JPanel XYZPanel;
4558
+ cGridBag XYZPanel;
45154559 JSplitPane gridPanel;
45164560 JSplitPane bigPanel;
4517
- JPanel bigThree;
4561
+ cGridBag bigThree;
45184562 JTabbedPane scenePanel;
45194563 JPanel centralPanel;
4564
+ JSplitPane cameraPanel;
45204565 JPanel timelinePanel;
45214566 JMenuBar timelineMenubar;
45224567 JSplitPane framePanel;
....@@ -4629,4 +4674,6 @@
46294674 NumberSlider opacityPowerField;
46304675 JTree jTree;
46314676 //ObjectUI parent;
4677
+
4678
+ NumberSlider normalpushField;
46324679 }