From d34fd9341c61d13677e029cb187d4dacff5e44ea Mon Sep 17 00:00:00 2001
From: Normand Briere <nbriere@noware.ca>
Date: Fri, 26 Oct 2018 20:31:01 -0400
Subject: [PATCH] Much better AO.

---
 ObjEditor.java |   54 ++++++++++++++++++++++++++++++++++++------------------
 1 files changed, 36 insertions(+), 18 deletions(-)

diff --git a/ObjEditor.java b/ObjEditor.java
index 6877515..a0dc1a7 100644
--- a/ObjEditor.java
+++ b/ObjEditor.java
@@ -28,6 +28,8 @@
         iSendInfo
 //KeyListener
 {
+        boolean timeline;
+        boolean wasFullScreen;
 
     // SCRIPT
     
@@ -238,7 +240,7 @@
         //if (!isDisplayable())
         //setUndecorated(true);
 
-        System.out.println("getFullScreenWindow? " + gd.getFullScreenWindow());
+        //System.out.println("getFullScreenWindow? " + gd.getFullScreenWindow());
         client = inClient;
         copy = localCopy;
         copy.editWindow = this;
@@ -292,11 +294,11 @@
         //normalLensItem.addActionListener(this);
         cameraMenu.add(revertCameraItem = new MenuItem("Revert Camera"));
         revertCameraItem.addActionListener(this);
+        cameraMenu.add(toggleTimelineItem = new CheckboxMenuItem("Timeline"));
+        toggleTimelineItem.addItemListener(this);
         cameraMenu.add(toggleFullScreenItem = new CheckboxMenuItem("Full Screen"));
         toggleFullScreenItem.addItemListener(this);
         toggleFullScreenItem.setState(CameraPane.FULLSCREEN);
-        cameraMenu.add(toggleTimelineItem = new CheckboxMenuItem("Timeline"));
-        toggleTimelineItem.addItemListener(this);
         cameraMenu.add("-");
         cameraMenu.add(toggleTextureItem = new CheckboxMenuItem("Texture"));
         toggleTextureItem.addItemListener(this);
@@ -595,6 +597,22 @@
             System.err.println("Couldn't insert initial text into text pane.");
         }
     }
+
+        void ToggleFullScreen()
+        {
+                if (CameraPane.FULLSCREEN)
+                {
+                    frame.getContentPane().remove(/*"Center",*/bigThree);
+                    framePanel.add(bigThree);
+                    frame.getContentPane().add(/*"Center",*/framePanel);
+                } else
+                {
+                    frame.getContentPane().remove(/*"Center",*/framePanel);
+                    framePanel.remove(bigThree);
+                    frame.getContentPane().add(/*"Center",*/bigThree);
+                }
+                cameraView.ToggleFullScreen();
+        }
 
     private JTextArea createTextPane()
     {
@@ -2966,37 +2984,34 @@
             return;
         } else if (event.getSource() == toggleTimelineItem)
         {
-            copy.timeline ^= true;
+            timeline ^= true;
 
-            if (copy.timeline)
+            if (timeline)
             {
                 centralPanel.remove(cameraView);
                 centralPanel.add(timelinePanel);
                 frame.setJMenuBar(timelineMenubar);
+                wasFullScreen = CameraPane.FULLSCREEN;
+                if (!CameraPane.FULLSCREEN)
+                    ToggleFullScreen();
+                toggleFullScreenItem.setEnabled(false);
             }
             else
             {
                 centralPanel.remove(timelinePanel);
                 centralPanel.add(cameraView);
                 frame.setJMenuBar(null);
+                if (!wasFullScreen)
+                    ToggleFullScreen();
+                toggleFullScreenItem.setEnabled(true);
             }
 
             frame.validate();
             return;
         } else if (event.getSource() == toggleFullScreenItem)
         {
-            if (CameraPane.FULLSCREEN)
-            {
-                frame.getContentPane().remove(/*"Center",*/bigThree);
-                framePanel.add(bigThree);
-                frame.getContentPane().add(/*"Center",*/framePanel);
-            } else
-            {
-                frame.getContentPane().remove(/*"Center",*/framePanel);
-                frame.getContentPane().add(/*"Center",*/bigThree);
-            }
+            ToggleFullScreen();
             frame.validate();
-            cameraView.ToggleFullScreen();
 
             return;
         } else if (event.getSource() == toggleRandomItem)
@@ -3574,8 +3589,11 @@
 
         void SnapObject()
         {
-            Object3D obj = (Object3D)copy.selection.elementAt(0);
-            SnapObject(obj);
+            if (copy.selection.size() > 0)
+            {
+                    Object3D obj = (Object3D)copy.selection.elementAt(0);
+                    SnapObject(obj);
+            }
         }
         
         void SnapObject(Object3D obj)

--
Gitblit v1.6.2