From 47cd0f0a3870d843cb758535316060d30f15c811 Mon Sep 17 00:00:00 2001
From: Normand Briere <nbriere@noware.ca>
Date: Mon, 24 Jun 2019 19:10:13 -0400
Subject: [PATCH] Toolbox + DnD

---
 ObjEditor.java |   48 ++++++++++++++++++++++++++++++++++++++++++------
 1 files changed, 42 insertions(+), 6 deletions(-)

diff --git a/ObjEditor.java b/ObjEditor.java
index a1683f8..fdd2815 100644
--- a/ObjEditor.java
+++ b/ObjEditor.java
@@ -52,6 +52,19 @@
         }
     }
 
+    cToggleButton GetToggleButton(String name, boolean border)
+    {
+        try
+        {
+            ImageIcon icon = GetIcon(name);
+            return new cToggleButton(icon, border);
+        }
+        catch (Exception e)
+        {
+            return new cToggleButton(name, border);
+        }
+    }
+
     cCheckBox GetCheckBox(String name, boolean border)
     {
         try
@@ -384,9 +397,12 @@
         editPanel.add(editCommandsPanel);
         editPanel.add(ctrlPanel);
                 
-        materialPanel = new cGridBag().setVertical(true);
+        toolboxPanel = new cGridBag().setVertical(false);
+        toolboxPanel.setName("Toolbox");
         
+        materialPanel = new cGridBag().setVertical(true);
         materialPanel.setName("Material");
+        
         /*JTextPane*/
         infoarea = createTextPane();
         doc = infoarea.getStyledDocument();
@@ -659,6 +675,8 @@
         
         boolean maximized;
     
+        cButton fullscreenLayout;
+
         void Minimize()
         {
             frame.setState(Frame.ICONIFIED);
@@ -720,7 +738,7 @@
 // X                   frame.getContentPane().add(/*"Center",*/bigThree);
                     framePanel.setDividerLocation(0);
 
-                    radio.layout = twoButton;
+                    radio.layout = fullscreenLayout;
                     radio.layout.doClick();
                     //frame.setVisible(true);
                 }
@@ -1394,6 +1412,7 @@
 
         //JScrollPane tmp = new JScrollPane(ctrlPanel, ScrollPaneConstants.VERTICAL_SCROLLBAR_AS_NEEDED, ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER);
         //tmp.setName("Edit");
+        objectPanel.add(toolboxPanel);
         objectPanel.add(materialPanel);
 //        JPanel north = new JPanel(new BorderLayout());
 //        north.setName("Edit");
@@ -3726,7 +3745,7 @@
         assert false;
     }
 
-    void EditSelection()
+    void EditSelection(boolean newWindow)
     {
     }
 
@@ -4221,7 +4240,7 @@
 
     void makeSomething(Object3D thing, boolean resetmodel) // deselect)
     {
-        if (Globals.SAVEONMAKE)
+        if (Globals.SAVEONMAKE) // && resetmodel)
             Save();
         //Tween.set(thing, 0).target(1).start(tweenManager);
         //Tween.to(thing, 0, 0.5f).target(0).start(tweenManager);
@@ -4309,6 +4328,12 @@
         {
             ResetModel();
             Select(thing.GetTreePath(), true, false); // unselect... false);
+            
+        if (thing.Size() == 0)
+        {
+            //EditSelection(false);
+        }
+        
             refreshContents();
         }
 
@@ -4903,18 +4928,29 @@
     CheckboxMenuItem togglePaintItem;
     JSplitPane mainPanel;
     JScrollPane scrollpane;
+    
     JPanel toolbarPanel;
+    
     cGridBag treePanel;
+    
     JPanel radioPanel;
     ButtonGroup buttonGroup;
-    cGridBag ctrlPanel;
+    
+    cGridBag toolboxPanel;
     cGridBag materialPanel;
+    cGridBag ctrlPanel;
+    
     JScrollPane infoPanel;
+    
     cGridBag optionsPanel;
+    
     JTabbedPane objectPanel;
+    
     cGridBag XYZPanel;
+    
     JSplitPane gridPanel;
     JSplitPane bigPanel;
+    
     cGridBag bigThree;
     cGridBag scenePanel;
     cGridBag centralPanel;
@@ -5029,7 +5065,7 @@
     cNumberSlider fogField;
     JLabel opacityPowerLabel;
     cNumberSlider opacityPowerField;
-    JTree jTree;
+    cTree jTree;
     //ObjectUI parent;
     
     cNumberSlider normalpushField;

--
Gitblit v1.6.2