.. | .. |
---|
4 | 4 | |
---|
5 | 5 | import java.awt.*; |
---|
6 | 6 | import java.awt.event.*; |
---|
| 7 | +import java.awt.image.BufferedImage; |
---|
7 | 8 | import javax.swing.*; |
---|
8 | 9 | import javax.swing.event.*; |
---|
9 | 10 | import javax.swing.text.*; |
---|
.. | .. |
---|
37 | 38 | JFrame frame; |
---|
38 | 39 | |
---|
39 | 40 | static ObjEditor theFrame; |
---|
| 41 | + |
---|
| 42 | + cButton GetButton(String name, boolean border) |
---|
| 43 | + { |
---|
| 44 | + try |
---|
| 45 | + { |
---|
| 46 | + ImageIcon icon = GetIcon(name); |
---|
| 47 | + return new cButton(icon, border); |
---|
| 48 | + } |
---|
| 49 | + catch (Exception e) |
---|
| 50 | + { |
---|
| 51 | + return new cButton(name, border); |
---|
| 52 | + } |
---|
| 53 | + } |
---|
| 54 | + |
---|
| 55 | + cCheckBox GetCheckBox(String name, boolean border) |
---|
| 56 | + { |
---|
| 57 | + try |
---|
| 58 | + { |
---|
| 59 | + ImageIcon icon = GetIcon(name); |
---|
| 60 | + return new cCheckBox(icon, border); |
---|
| 61 | + } |
---|
| 62 | + catch (Exception e) |
---|
| 63 | + { |
---|
| 64 | + return new cCheckBox(name, border); |
---|
| 65 | + } |
---|
| 66 | + } |
---|
| 67 | + |
---|
| 68 | + private ImageIcon GetIcon(String name) throws IOException |
---|
| 69 | + { |
---|
| 70 | + BufferedImage image = javax.imageio.ImageIO.read(getClass().getClassLoader().getResourceAsStream(name)); |
---|
| 71 | + |
---|
| 72 | + if (image.getWidth() != 24 && image.getHeight() != 24) |
---|
| 73 | + { |
---|
| 74 | + BufferedImage resized = new BufferedImage(24, 24, image.getType()); |
---|
| 75 | + Graphics2D g = resized.createGraphics(); |
---|
| 76 | + g.setRenderingHint(RenderingHints.KEY_INTERPOLATION, RenderingHints.VALUE_INTERPOLATION_BILINEAR); |
---|
| 77 | + //g.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON); |
---|
| 78 | + g.drawImage(image, 0, 0, 24, 24, 0, 0, image.getWidth(), image.getHeight(), null); |
---|
| 79 | + g.dispose(); |
---|
| 80 | + |
---|
| 81 | + image = resized; |
---|
| 82 | + } |
---|
| 83 | + |
---|
| 84 | + javax.swing.ImageIcon icon = new javax.swing.ImageIcon(image); |
---|
| 85 | + return icon; |
---|
| 86 | + } |
---|
40 | 87 | |
---|
41 | 88 | // SCRIPT |
---|
42 | 89 | |
---|
.. | .. |
---|
171 | 218 | |
---|
172 | 219 | objEditor.ctrlPanel.remove(setupPanel); |
---|
173 | 220 | objEditor.ctrlPanel.remove(setupPanel2); |
---|
174 | | - objEditor.ctrlPanel.remove(commandsPanel); |
---|
| 221 | + objEditor.ctrlPanel.remove(objectCommandsPanel); |
---|
175 | 222 | objEditor.ctrlPanel.remove(pushPanel); |
---|
176 | 223 | //objEditor.ctrlPanel.remove(fillPanel); |
---|
177 | 224 | |
---|
.. | .. |
---|
327 | 374 | toolbarPanel.setName("Toolbar"); |
---|
328 | 375 | treePanel = new cGridBag(); |
---|
329 | 376 | treePanel.setName("Tree"); |
---|
| 377 | + |
---|
| 378 | + editPanel = new cGridBag().setVertical(true); |
---|
| 379 | + editPanel.setName("Edit"); |
---|
| 380 | + |
---|
330 | 381 | ctrlPanel = new cGridBag().setVertical(false); // new GridBagLayout()); |
---|
331 | | - ctrlPanel.setName("Edit"); |
---|
| 382 | + |
---|
| 383 | + editCommandsPanel = new cGridBag(); |
---|
| 384 | + editPanel.add(editCommandsPanel); |
---|
| 385 | + editPanel.add(ctrlPanel); |
---|
| 386 | + |
---|
332 | 387 | materialPanel = new cGridBag().setVertical(true); |
---|
| 388 | + |
---|
333 | 389 | materialPanel.setName("Material"); |
---|
334 | 390 | /*JTextPane*/ |
---|
335 | 391 | infoarea = createTextPane(); |
---|
.. | .. |
---|
819 | 875 | JButton fasterButton; |
---|
820 | 876 | JButton remarkButton; |
---|
821 | 877 | |
---|
| 878 | + cGridBag editPanel; |
---|
| 879 | + cGridBag editCommandsPanel; |
---|
| 880 | + |
---|
822 | 881 | cGridBag namePanel; |
---|
823 | 882 | cGridBag setupPanel; |
---|
824 | 883 | cGridBag setupPanel2; |
---|
825 | | - cGridBag commandsPanel; |
---|
| 884 | + cGridBag objectCommandsPanel; |
---|
826 | 885 | cGridBag pushPanel; |
---|
827 | 886 | cGridBag fillPanel; |
---|
828 | 887 | |
---|
.. | .. |
---|
1035 | 1094 | oe.ctrlPanel.add(setupPanel2); |
---|
1036 | 1095 | oe.ctrlPanel.Return(); |
---|
1037 | 1096 | |
---|
1038 | | - commandsPanel = new cGridBag().setVertical(false); |
---|
| 1097 | + objectCommandsPanel = new cGridBag().setVertical(false); |
---|
1039 | 1098 | |
---|
1040 | | - resetButton = AddButton(commandsPanel, "Reset"); |
---|
| 1099 | + resetButton = AddButton(objectCommandsPanel, "Reset"); |
---|
1041 | 1100 | resetButton.setToolTipText("Jump to frame zero"); |
---|
1042 | | - stepButton = AddButton(commandsPanel, "Step"); |
---|
| 1101 | + stepButton = AddButton(objectCommandsPanel, "Step"); |
---|
1043 | 1102 | stepButton.setToolTipText("Step one frame"); |
---|
1044 | 1103 | // resetAllButton = AddButton(oe, "Reset All"); |
---|
1045 | 1104 | // stepAllButton = AddButton(oe, "Step All"); |
---|
1046 | 1105 | // Return(); |
---|
1047 | | - slowerButton = AddButton(commandsPanel, "Slow"); |
---|
| 1106 | + slowerButton = AddButton(objectCommandsPanel, "Slow"); |
---|
1048 | 1107 | slowerButton.setToolTipText("Decrease animation speed"); |
---|
1049 | | - fasterButton = AddButton(commandsPanel, "Fast"); |
---|
| 1108 | + fasterButton = AddButton(objectCommandsPanel, "Fast"); |
---|
1050 | 1109 | fasterButton.setToolTipText("Increase animation speed"); |
---|
1051 | | - remarkButton = AddButton(commandsPanel, "Remark"); |
---|
| 1110 | + remarkButton = AddButton(objectCommandsPanel, "Remark"); |
---|
1052 | 1111 | remarkButton.setToolTipText("Set the current transform as the target"); |
---|
1053 | 1112 | |
---|
1054 | | - oe.ctrlPanel.add(commandsPanel); |
---|
| 1113 | + oe.ctrlPanel.add(objectCommandsPanel); |
---|
1055 | 1114 | oe.ctrlPanel.Return(); |
---|
1056 | 1115 | |
---|
1057 | 1116 | pushPanel = AddSlider(oe.ctrlPanel, "Push", -1, 1, copy.NORMALPUSH, 1.1); // To have the buttons |
---|
.. | .. |
---|
1340 | 1399 | // north.setName("Edit"); |
---|
1341 | 1400 | // north.add(ctrlPanel, BorderLayout.NORTH); |
---|
1342 | 1401 | // objectPanel.add(north); |
---|
1343 | | - objectPanel.add(ctrlPanel); |
---|
| 1402 | + objectPanel.add(editPanel); |
---|
1344 | 1403 | objectPanel.add(infoPanel); |
---|
1345 | 1404 | |
---|
1346 | 1405 | /* |
---|
.. | .. |
---|
3396 | 3455 | |
---|
3397 | 3456 | public void Save() |
---|
3398 | 3457 | { |
---|
| 3458 | + System.err.println("Save"); |
---|
| 3459 | + |
---|
3399 | 3460 | cRadio tab = GetCurrentTab(); |
---|
3400 | 3461 | |
---|
3401 | 3462 | boolean temp = CameraPane.SWITCH; |
---|
.. | .. |
---|
3480 | 3541 | |
---|
3481 | 3542 | public void Undo() |
---|
3482 | 3543 | { |
---|
| 3544 | + System.err.println("Undo"); |
---|
| 3545 | + |
---|
3483 | 3546 | cRadio tab = GetCurrentTab(); |
---|
3484 | 3547 | |
---|
3485 | 3548 | if (tab.undoindex == 0) |
---|
.. | .. |
---|
4158 | 4221 | |
---|
4159 | 4222 | void makeSomething(Object3D thing, boolean resetmodel) // deselect) |
---|
4160 | 4223 | { |
---|
4161 | | - Save(); |
---|
| 4224 | + if (Globals.SAVEONMAKE) |
---|
| 4225 | + Save(); |
---|
4162 | 4226 | //Tween.set(thing, 0).target(1).start(tweenManager); |
---|
4163 | 4227 | //Tween.to(thing, 0, 0.5f).target(0).start(tweenManager); |
---|
4164 | 4228 | // if (thing instanceof GenericJointDemo) |
---|
.. | .. |
---|
4467 | 4531 | |
---|
4468 | 4532 | if (readobj != null) |
---|
4469 | 4533 | { |
---|
| 4534 | + if (Globals.SAVEONMAKE) |
---|
4470 | 4535 | Save(); |
---|
4471 | 4536 | try |
---|
4472 | 4537 | { |
---|