.. | .. |
---|
388 | 388 | //parent = p; |
---|
389 | 389 | |
---|
390 | 390 | GraphicsDevice gd = GraphicsEnvironment.getLocalGraphicsEnvironment().getDefaultScreenDevice(); |
---|
391 | | - System.out.println("getFullScreenWindow? " + gd.getFullScreenWindow()); |
---|
| 391 | + if (Globals.DEBUG) |
---|
| 392 | + System.out.println("getFullScreenWindow? " + gd.getFullScreenWindow()); |
---|
392 | 393 | //gd.setFullScreenWindow(this); |
---|
393 | 394 | //setResizable(false); |
---|
394 | 395 | //if (!isDisplayable()) |
---|
.. | .. |
---|
425 | 426 | |
---|
426 | 427 | static java.util.Vector<Object3D> listUI = new java.util.Vector<Object3D>(); |
---|
427 | 428 | |
---|
| 429 | + // This is to refresh the UI of the material panel. |
---|
| 430 | + boolean patchMaterial; |
---|
| 431 | + |
---|
428 | 432 | void SetupMenu() |
---|
429 | 433 | { |
---|
430 | 434 | frame.setMenuBar(menuBar = new MenuBar()); |
---|
.. | .. |
---|
950 | 954 | boolean temp = CameraPane.SWITCH; |
---|
951 | 955 | CameraPane.SWITCH = false; |
---|
952 | 956 | |
---|
953 | | - object.ExtractBigData(versiontable); |
---|
| 957 | + if (Grafreed.grafreed.universe.versiontable == null) |
---|
| 958 | + Grafreed.grafreed.universe.versiontable = new java.util.Hashtable<java.util.UUID, Object3D>(); |
---|
| 959 | + |
---|
| 960 | + object.ExtractBigData(Grafreed.grafreed.universe.versiontable); |
---|
954 | 961 | // if (copy == client) |
---|
955 | 962 | |
---|
956 | 963 | Object3D versions[] = object.versionlist; |
---|
| 964 | + java.util.Hashtable<java.util.UUID, Object3D> versiontable = object.versiontable; // if Grafreed.grafreed.universe |
---|
957 | 965 | object.versionlist = null; |
---|
| 966 | + object.versiontable = null; |
---|
958 | 967 | |
---|
959 | 968 | //byte[] compress = Compress(copy); |
---|
960 | 969 | Object3D compress = (Object3D)Grafreed.clone(object); |
---|
961 | 970 | |
---|
962 | 971 | object.versionlist = versions; |
---|
| 972 | + object.versiontable = versiontable; // if Grafreed.grafreed.universe |
---|
963 | 973 | |
---|
964 | | - object.RestoreBigData(versiontable); |
---|
| 974 | + object.RestoreBigData(Grafreed.grafreed.universe.versiontable); |
---|
965 | 975 | |
---|
966 | 976 | CameraPane.SWITCH = temp; |
---|
967 | 977 | |
---|
.. | .. |
---|
1323 | 1333 | |
---|
1324 | 1334 | liveCB = AddCheckBox(setupPanel, "Live", copy.live); |
---|
1325 | 1335 | liveCB.setToolTipText("Animate object"); |
---|
| 1336 | + markCB = AddCheckBox(setupPanel, "Anim", copy.marked); |
---|
| 1337 | + markCB.setToolTipText("Set target transform"); |
---|
1326 | 1338 | selectableCB = AddCheckBox(setupPanel, "Select", !copy.dontselect); |
---|
1327 | 1339 | selectableCB.setToolTipText("Make object selectable"); |
---|
1328 | 1340 | // Return(); |
---|
1329 | 1341 | |
---|
1330 | 1342 | hideCB = AddCheckBox(setupPanel, "Hide", copy.hide); |
---|
1331 | 1343 | hideCB.setToolTipText("Hide object"); |
---|
1332 | | - markCB = AddCheckBox(setupPanel, "Mark", copy.marked); |
---|
1333 | | - markCB.setToolTipText("As animation target transform"); |
---|
1334 | 1344 | |
---|
1335 | 1345 | ToolTipManager.sharedInstance().setLightWeightPopupEnabled(false); |
---|
1336 | 1346 | |
---|
.. | .. |
---|
1532 | 1542 | |
---|
1533 | 1543 | if (cam == null || !(copy.get(0) instanceof cGroup)) |
---|
1534 | 1544 | { |
---|
| 1545 | + if (Globals.DEBUG) |
---|
1535 | 1546 | System.out.println("CREATE CAMERAS"); |
---|
1536 | 1547 | cams = new cTemplate(); |
---|
1537 | 1548 | cams.name = "Cameras"; |
---|
.. | .. |
---|
1657 | 1668 | |
---|
1658 | 1669 | //JScrollPane tmp = new JScrollPane(ctrlPanel, ScrollPaneConstants.VERTICAL_SCROLLBAR_AS_NEEDED, ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER); |
---|
1659 | 1670 | //tmp.setName("Edit"); |
---|
1660 | | - objectPanel.add(materialPanel); |
---|
1661 | | - objectPanel.setIconAt(0, GetIcon("icons/material.png")); |
---|
1662 | | - objectPanel.setToolTipTextAt(0, "Material"); |
---|
1663 | | - |
---|
1664 | 1671 | objectPanel.add(toolboxPanel); |
---|
1665 | | - objectPanel.setIconAt(1, GetIcon("icons/primitives.png")); |
---|
1666 | | - objectPanel.setToolTipTextAt(1, "Objects & textures"); |
---|
| 1672 | + objectPanel.setIconAt(0, GetIcon("icons/primitives.png")); |
---|
| 1673 | + objectPanel.setToolTipTextAt(0, "Objects & textures"); |
---|
1667 | 1674 | |
---|
| 1675 | + objectPanel.add(materialPanel); |
---|
| 1676 | + objectPanel.setIconAt(1, GetIcon("icons/material.png")); |
---|
| 1677 | + objectPanel.setToolTipTextAt(1, "Material"); |
---|
| 1678 | + |
---|
1668 | 1679 | objectPanel.add(skyboxPanel); |
---|
1669 | 1680 | objectPanel.setIconAt(2, GetIcon("icons/skybox.jpg")); |
---|
1670 | 1681 | objectPanel.setToolTipTextAt(2, "Backgrounds"); |
---|
.. | .. |
---|
1681 | 1692 | objectPanel.setIconAt(4, GetIcon("icons/XYZ.png")); |
---|
1682 | 1693 | objectPanel.setToolTipTextAt(4, "XYZ/RGB transform"); |
---|
1683 | 1694 | |
---|
| 1695 | + patchMaterial = true; |
---|
| 1696 | + cameraView.patchMaterial = this; |
---|
| 1697 | + objectPanel.setSelectedIndex(1); |
---|
| 1698 | + |
---|
1684 | 1699 | /* |
---|
1685 | 1700 | aConstraints.gridx = 0; |
---|
1686 | 1701 | aConstraints.gridwidth = 1; |
---|
.. | .. |
---|
1878 | 1893 | |
---|
1879 | 1894 | // Skin |
---|
1880 | 1895 | colorField.setFloat(material.color); |
---|
1881 | | - saturationField.setFloat(material.modulation); |
---|
| 1896 | + float saturation = material.modulation; |
---|
| 1897 | + |
---|
| 1898 | + if (!cameraView.Skinshader) |
---|
| 1899 | + { |
---|
| 1900 | + saturation /= 1.5; |
---|
| 1901 | + } |
---|
| 1902 | + |
---|
| 1903 | + saturationField.setFloat(saturation); |
---|
| 1904 | + |
---|
1882 | 1905 | subsurfaceField.setFloat(material.subsurface); |
---|
1883 | 1906 | selfshadowField.setFloat(material.diffuseness); |
---|
1884 | 1907 | diffusenessField.setFloat(material.factor); |
---|
.. | .. |
---|
2196 | 2219 | public void mouseClicked(MouseEvent e) |
---|
2197 | 2220 | { |
---|
2198 | 2221 | borderfadeField.setFloat(0.5); |
---|
2199 | | - opacityField.setFloat(0.6); |
---|
| 2222 | + opacityField.setFloat(0.75); |
---|
2200 | 2223 | |
---|
2201 | 2224 | materialtouched = true; |
---|
2202 | 2225 | applySelf(); |
---|
.. | .. |
---|
2311 | 2334 | |
---|
2312 | 2335 | cGridBag huepanel = new cGridBag(); |
---|
2313 | 2336 | cGridBag huelabel = new cGridBag(); |
---|
2314 | | - skin = GetLabel("icons/hue.png", false); |
---|
2315 | | - skin.fit = true; |
---|
2316 | | - huelabel.add(skin); |
---|
| 2337 | + cLabel hue = GetLabel("icons/hue.png", false); |
---|
| 2338 | + hue.fit = true; |
---|
| 2339 | + |
---|
| 2340 | + hue.addMouseListener(new MouseAdapter() |
---|
| 2341 | + { |
---|
| 2342 | + public void mousePressed(MouseEvent e) |
---|
| 2343 | + { |
---|
| 2344 | + int x = e.getX(); |
---|
| 2345 | + |
---|
| 2346 | + colorField.setFloat((double)x / ((cLabel)e.getSource()).getWidth()); |
---|
| 2347 | + } |
---|
| 2348 | + }); |
---|
| 2349 | + |
---|
| 2350 | + huelabel.add(hue); |
---|
2317 | 2351 | huelabel.preferredWidth = 20; |
---|
2318 | 2352 | huepanel.add(new cGridBag()); // Label |
---|
2319 | 2353 | huepanel.add(huelabel); // Field/slider |
---|
.. | .. |
---|
3900 | 3934 | //System.out.println("ObjEditor " + event); |
---|
3901 | 3935 | applySelf0(true); |
---|
3902 | 3936 | //parent.applySelf(); |
---|
3903 | | - objEditor.refreshContents(); |
---|
| 3937 | + // conflicts with requestFocus objEditor.refreshContents(); |
---|
3904 | 3938 | } else if (source == resetButton) |
---|
3905 | 3939 | { |
---|
3906 | 3940 | CameraPane.fullreset = true; |
---|
.. | .. |
---|
4212 | 4246 | return true; |
---|
4213 | 4247 | } |
---|
4214 | 4248 | |
---|
4215 | | - java.util.Hashtable<java.util.UUID, Object3D> versiontable = new java.util.Hashtable<java.util.UUID, Object3D>(); |
---|
4216 | | - |
---|
4217 | 4249 | void DeleteVersion() |
---|
4218 | 4250 | { |
---|
4219 | 4251 | for (int i = copy.versionindex; i < copy.versionlist.length-1; i++) |
---|
.. | .. |
---|
4221 | 4253 | copy.versionlist[i] = copy.versionlist[i+1]; |
---|
4222 | 4254 | } |
---|
4223 | 4255 | |
---|
4224 | | - CopyChanged(); |
---|
| 4256 | + if (copy.versionlist[copy.versionindex] == null) |
---|
| 4257 | + copy.versionindex -= 1; |
---|
| 4258 | + |
---|
| 4259 | + if (copy.versionindex != -1) |
---|
| 4260 | + CopyChanged(); |
---|
4225 | 4261 | |
---|
4226 | 4262 | SetVersionStates(); |
---|
4227 | 4263 | } |
---|
.. | .. |
---|
4334 | 4370 | boolean temp = CameraPane.SWITCH; |
---|
4335 | 4371 | CameraPane.SWITCH = false; |
---|
4336 | 4372 | |
---|
4337 | | - copy.ExtractBigData(versiontable); |
---|
| 4373 | + copy.ExtractBigData(Grafreed.grafreed.universe.versiontable); |
---|
4338 | 4374 | |
---|
4339 | 4375 | copy.clear(); |
---|
4340 | 4376 | |
---|
.. | .. |
---|
4346 | 4382 | copy.add(obj.get(i)); |
---|
4347 | 4383 | } |
---|
4348 | 4384 | |
---|
4349 | | - copy.RestoreBigData(versiontable); |
---|
| 4385 | + copy.RestoreBigData(Grafreed.grafreed.universe.versiontable); |
---|
4350 | 4386 | |
---|
4351 | 4387 | CameraPane.SWITCH = temp; |
---|
4352 | 4388 | |
---|
.. | .. |
---|
4409 | 4445 | previousVersionButton.setEnabled(copy.versionindex > 0); |
---|
4410 | 4446 | nextVersionButton.setEnabled(copy.versionlist[copy.versionindex + 1] != null); |
---|
4411 | 4447 | |
---|
4412 | | - deleteVersionButton.setEnabled(//copy.versionindex > 0 && |
---|
4413 | | - copy.versionlist[copy.versionindex + 1] != null); |
---|
| 4448 | + deleteVersionButton.setEnabled(copy.versionindex != -1); |
---|
| 4449 | + //copy.versionlist[copy.versionindex + 1] != null); |
---|
4414 | 4450 | |
---|
4415 | 4451 | muteSlider = true; |
---|
4416 | 4452 | versionSlider.setMinimum(0); |
---|
.. | .. |
---|
4475 | 4511 | |
---|
4476 | 4512 | public boolean Replace() |
---|
4477 | 4513 | { |
---|
4478 | | - System.err.println("Replace"); |
---|
| 4514 | + //System.err.println("Replace"); |
---|
4479 | 4515 | |
---|
4480 | 4516 | //cRadio tab = GetCurrentTab(); |
---|
4481 | 4517 | |
---|
.. | .. |
---|
5178 | 5214 | |
---|
5179 | 5215 | if (previousVersionButton != null && copy.versionlist != null) |
---|
5180 | 5216 | SetVersionStates(); |
---|
| 5217 | + |
---|
| 5218 | + cameraView.requestFocusInWindow(); |
---|
5181 | 5219 | } |
---|
5182 | 5220 | |
---|
5183 | 5221 | static TweenManager tweenManager = new TweenManager(); |
---|
.. | .. |
---|
5209 | 5247 | // group = (Composite) group.get(0); |
---|
5210 | 5248 | // } |
---|
5211 | 5249 | |
---|
5212 | | - System.out.println("makeSomething of " + thing); |
---|
| 5250 | + //System.out.println("makeSomething of " + thing); |
---|
5213 | 5251 | |
---|
5214 | 5252 | /* |
---|
5215 | 5253 | if (deselect && jList != null) |
---|
.. | .. |
---|
5563 | 5601 | |
---|
5564 | 5602 | copy.versionlist = readobj.versionlist; |
---|
5565 | 5603 | copy.versionindex = readobj.versionindex; |
---|
| 5604 | + copy.versiontable = readobj.versiontable; |
---|
5566 | 5605 | |
---|
5567 | 5606 | if (copy.versionlist == null) |
---|
5568 | 5607 | { |
---|