.. | .. |
---|
83 | 83 | cButton GetButton(String name, boolean border) |
---|
84 | 84 | { |
---|
85 | 85 | ImageIcon icon = GetIcon(name); |
---|
86 | | - return new cButton(icon, border); |
---|
| 86 | + if (icon != null) |
---|
| 87 | + return new cButton(icon, border); |
---|
| 88 | + else |
---|
| 89 | + return new cButton(name, border); |
---|
87 | 90 | } |
---|
88 | 91 | |
---|
89 | 92 | cLabel GetLabel(String name, boolean border) |
---|
.. | .. |
---|
965 | 968 | object.versionlist = null; |
---|
966 | 969 | object.versiontable = null; |
---|
967 | 970 | |
---|
| 971 | + Object3D parent = object.parent; |
---|
| 972 | + object.parent = null; |
---|
| 973 | + |
---|
968 | 974 | //byte[] compress = Compress(copy); |
---|
969 | 975 | Object3D compress = (Object3D)Grafreed.clone(object); |
---|
| 976 | + |
---|
| 977 | + object.parent = parent; |
---|
970 | 978 | |
---|
971 | 979 | object.versionlist = versions; |
---|
972 | 980 | object.versiontable = versiontable; // if Grafreed.grafreed.universe |
---|
.. | .. |
---|
1624 | 1632 | //frontView.object = copy; |
---|
1625 | 1633 | //sideView.object = copy; |
---|
1626 | 1634 | |
---|
| 1635 | + transformPanel = new cGridBag().setVertical(true); |
---|
| 1636 | + |
---|
| 1637 | + cGridBag resetTransformPanel = new cGridBag(); |
---|
| 1638 | + |
---|
| 1639 | + resetTransformPanel.preferredHeight = 2; |
---|
| 1640 | + |
---|
| 1641 | + cButton resetTransform = GetButton("Reset all", !Grafreed.NIMBUSLAF); |
---|
| 1642 | + resetTransform.addMouseListener(new MouseAdapter() |
---|
| 1643 | + { |
---|
| 1644 | + public void mouseClicked(MouseEvent e) |
---|
| 1645 | + { |
---|
| 1646 | + ResetTransform(); |
---|
| 1647 | + } |
---|
| 1648 | + }); |
---|
| 1649 | + resetTransformPanel.add(resetTransform); |
---|
| 1650 | + |
---|
| 1651 | + resetTransform = GetButton("T only", !Grafreed.NIMBUSLAF); |
---|
| 1652 | + resetTransform.addMouseListener(new MouseAdapter() |
---|
| 1653 | + { |
---|
| 1654 | + public void mouseClicked(MouseEvent e) |
---|
| 1655 | + { |
---|
| 1656 | + ResetTransform(1); |
---|
| 1657 | + } |
---|
| 1658 | + }); |
---|
| 1659 | + resetTransformPanel.add(resetTransform); |
---|
| 1660 | + |
---|
| 1661 | + resetTransform = GetButton("RS only", !Grafreed.NIMBUSLAF); |
---|
| 1662 | + resetTransform.addMouseListener(new MouseAdapter() |
---|
| 1663 | + { |
---|
| 1664 | + public void mouseClicked(MouseEvent e) |
---|
| 1665 | + { |
---|
| 1666 | + ResetTransform(2); |
---|
| 1667 | + } |
---|
| 1668 | + }); |
---|
| 1669 | + resetTransformPanel.add(resetTransform); |
---|
| 1670 | + |
---|
1627 | 1671 | XYZPanel = new cGridBag().setVertical(true); |
---|
1628 | 1672 | //XYZPanel.setLayout(new GridLayout(3, 1, 5, 5)); |
---|
1629 | 1673 | |
---|
.. | .. |
---|
1633 | 1677 | XYZPanel.addComponent(/*BorderLayout.NORTH,*/topView); // Scroll); |
---|
1634 | 1678 | //XYZPanel.setName("XYZ"); |
---|
1635 | 1679 | |
---|
| 1680 | + transformPanel.add(resetTransformPanel); |
---|
| 1681 | + transformPanel.add(XYZPanel); |
---|
| 1682 | + |
---|
1636 | 1683 | /* |
---|
1637 | 1684 | gridPanel = new JPanel(); //new BorderLayout()); |
---|
1638 | 1685 | gridPanel.setLayout(new GridLayout(1, 2)); |
---|
.. | .. |
---|
1640 | 1687 | gridPanel.add(cameraView); |
---|
1641 | 1688 | gridPanel.add(XYZPanel); |
---|
1642 | 1689 | */ |
---|
1643 | | - gridPanel = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT, centralPanel, XYZPanel); //new BorderLayout()); |
---|
1644 | | - gridPanel.setContinuousLayout(true); |
---|
1645 | | - gridPanel.setOneTouchExpandable(true); |
---|
1646 | | - gridPanel.setDividerLocation(1.0); |
---|
1647 | | - gridPanel.setDividerSize(9); |
---|
1648 | | - gridPanel.setResizeWeight(0.85); |
---|
| 1690 | +// gridPanel = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT, centralPanel, XYZPanel); //new BorderLayout()); |
---|
| 1691 | +// gridPanel.setContinuousLayout(true); |
---|
| 1692 | +// gridPanel.setOneTouchExpandable(true); |
---|
| 1693 | +// gridPanel.setDividerLocation(1.0); |
---|
| 1694 | +// gridPanel.setDividerSize(9); |
---|
| 1695 | +// gridPanel.setResizeWeight(0.85); |
---|
1649 | 1696 | |
---|
1650 | 1697 | // aConstraints.weighty = 0; |
---|
1651 | 1698 | //System.out.println("THIS = " + this); |
---|
.. | .. |
---|
1688 | 1735 | objectPanel.setIconAt(3, GetIcon("icons/write.png")); |
---|
1689 | 1736 | objectPanel.setToolTipTextAt(3, "Edit controls"); |
---|
1690 | 1737 | |
---|
1691 | | - objectPanel.add(XYZPanel); |
---|
| 1738 | + objectPanel.add(transformPanel); |
---|
1692 | 1739 | objectPanel.setIconAt(4, GetIcon("icons/XYZ.png")); |
---|
1693 | | - objectPanel.setToolTipTextAt(4, "XYZ/RGB transform"); |
---|
| 1740 | + objectPanel.setToolTipTextAt(4, "TRS transform"); |
---|
1694 | 1741 | |
---|
1695 | 1742 | patchMaterial = true; |
---|
1696 | 1743 | cameraView.patchMaterial = this; |
---|
.. | .. |
---|
1757 | 1804 | jtp.add(tree); |
---|
1758 | 1805 | */ |
---|
1759 | 1806 | |
---|
1760 | | - bigPanel = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT, scenePanel, gridPanel); |
---|
1761 | | - bigPanel.setContinuousLayout(true); |
---|
1762 | | - bigPanel.setOneTouchExpandable(true); |
---|
1763 | | - bigPanel.setDividerLocation(0.8); |
---|
1764 | | - bigPanel.setDividerSize(15); |
---|
1765 | | - bigPanel.setResizeWeight(0.15); |
---|
1766 | | - bigPanel.setName("Scene"); |
---|
| 1807 | +// bigPanel = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT, scenePanel, gridPanel); |
---|
| 1808 | +// bigPanel.setContinuousLayout(true); |
---|
| 1809 | +// bigPanel.setOneTouchExpandable(true); |
---|
| 1810 | +// bigPanel.setDividerLocation(0.8); |
---|
| 1811 | +// bigPanel.setDividerSize(15); |
---|
| 1812 | +// bigPanel.setResizeWeight(0.15); |
---|
| 1813 | +// bigPanel.setName("Scene"); |
---|
1767 | 1814 | |
---|
1768 | 1815 | //bigPanel.setLayout(new BorderLayout()); |
---|
1769 | 1816 | //bigPanel.setSize(new Dimension(10,10)); |
---|
.. | .. |
---|
1847 | 1894 | |
---|
1848 | 1895 | cameraView.requestFocusInWindow(); |
---|
1849 | 1896 | |
---|
1850 | | - gridPanel.setDividerLocation(1.0); |
---|
| 1897 | +// gridPanel.setDividerLocation(1.0); |
---|
1851 | 1898 | |
---|
1852 | 1899 | frame.validate(); |
---|
1853 | 1900 | |
---|
.. | .. |
---|
4432 | 4479 | return count; |
---|
4433 | 4480 | } |
---|
4434 | 4481 | |
---|
| 4482 | + public cGridBag versionSliderPane; |
---|
| 4483 | + |
---|
4435 | 4484 | void SetVersionStates() |
---|
4436 | 4485 | { |
---|
4437 | 4486 | //if (true) |
---|
.. | .. |
---|
4439 | 4488 | |
---|
4440 | 4489 | //cRadio tab = GetCurrentTab(); |
---|
4441 | 4490 | |
---|
4442 | | - restoreButton.setEnabled(copy.versionindex != -1); |
---|
4443 | | - replaceButton.setEnabled(copy.versionindex != -1); |
---|
4444 | | - |
---|
4445 | | - previousVersionButton.setEnabled(copy.versionindex > 0); |
---|
4446 | | - nextVersionButton.setEnabled(copy.versionlist[copy.versionindex + 1] != null); |
---|
4447 | | - |
---|
4448 | | - deleteVersionButton.setEnabled(copy.versionindex != -1); |
---|
4449 | | - //copy.versionlist[copy.versionindex + 1] != null); |
---|
4450 | | - |
---|
4451 | | - muteSlider = true; |
---|
4452 | | - versionSlider.setMinimum(0); |
---|
4453 | | - versionSlider.setMaximum(VersionCount() - 1); |
---|
4454 | | - versionSlider.setInteger(copy.versionindex); |
---|
4455 | | - versionSlider.setEnabled(copy.versionindex != -1); |
---|
4456 | | - muteSlider = false; |
---|
| 4491 | + if (copy.versionlist == null) |
---|
| 4492 | + { |
---|
| 4493 | + saveVersionButton.setEnabled(false); |
---|
| 4494 | + restoreButton.setEnabled(false); |
---|
| 4495 | + replaceButton.setEnabled(false); |
---|
| 4496 | + previousVersionButton.setEnabled(false); |
---|
| 4497 | + nextVersionButton.setEnabled(false); |
---|
| 4498 | + deleteVersionButton.setEnabled(false); |
---|
| 4499 | + versionSliderPane.setVisible(false); |
---|
| 4500 | + } |
---|
| 4501 | + else |
---|
| 4502 | + { |
---|
| 4503 | + restoreButton.setEnabled(copy.versionindex != -1); |
---|
| 4504 | + replaceButton.setEnabled(copy.versionindex != -1); |
---|
| 4505 | + |
---|
| 4506 | + previousVersionButton.setEnabled(copy.versionindex > 0); |
---|
| 4507 | + nextVersionButton.setEnabled(copy.versionlist[copy.versionindex + 1] != null); |
---|
| 4508 | + |
---|
| 4509 | + deleteVersionButton.setEnabled(copy.versionindex != -1); |
---|
| 4510 | + //copy.versionlist[copy.versionindex + 1] != null); |
---|
| 4511 | + |
---|
| 4512 | + muteSlider = true; |
---|
| 4513 | + versionSlider.setMinimum(0); |
---|
| 4514 | + versionSlider.setMaximum(VersionCount() - 1); |
---|
| 4515 | + versionSlider.setInteger(copy.versionindex); |
---|
| 4516 | + versionSlider.setEnabled(copy.versionindex != -1); |
---|
| 4517 | + muteSlider = false; |
---|
| 4518 | + |
---|
| 4519 | + versionSliderPane.setVisible(true); |
---|
| 4520 | + } |
---|
4457 | 4521 | } |
---|
4458 | 4522 | |
---|
4459 | 4523 | public boolean PreviousVersion() |
---|
.. | .. |
---|
4873 | 4937 | |
---|
4874 | 4938 | public void stateChanged(ChangeEvent e) |
---|
4875 | 4939 | { |
---|
4876 | | - // assert(false); |
---|
| 4940 | + // assert(false); |
---|
4877 | 4941 | if (e.getSource() == versionSlider) |
---|
4878 | 4942 | { |
---|
4879 | 4943 | if (muteSlider) |
---|
.. | .. |
---|
5986 | 6050 | boolean materialFlushed; |
---|
5987 | 6051 | Object3D latestObject; |
---|
5988 | 6052 | |
---|
| 6053 | + cGridBag transformPanel; |
---|
5989 | 6054 | cGridBag XYZPanel; |
---|
5990 | 6055 | |
---|
5991 | 6056 | JSplitPane gridPanel; |
---|