From 7b6b5ba546450e71ecc812356952b594acc5add5 Mon Sep 17 00:00:00 2001
From: Normand Briere <nbriere@noware.ca>
Date: Sun, 16 Jun 2019 12:44:54 -0400
Subject: [PATCH] Fix shadow touched.

---
 ObjEditor.java |   46 ++++++++++++++++++++++++++++++++++------------
 1 files changed, 34 insertions(+), 12 deletions(-)

diff --git a/ObjEditor.java b/ObjEditor.java
index 13331f4..9cf4839 100644
--- a/ObjEditor.java
+++ b/ObjEditor.java
@@ -278,7 +278,7 @@
         frame.setMenuBar(menuBar = new MenuBar());
         menuBar.add(fileMenu = new Menu("File"));
         fileMenu.add(newItem = new MenuItem("New"));
-        fileMenu.add(loadItem = new MenuItem("Load..."));
+        fileMenu.add(loadItem = new MenuItem("Open..."));
         
                 //oe.menuBar.add(menu = new Menu("Include"));
         Menu menu = new Menu("Import");
@@ -419,10 +419,10 @@
             e.printStackTrace();
         }
         
-        String selection = infoarea.getText();
-        java.awt.datatransfer.StringSelection data = new java.awt.datatransfer.StringSelection(selection);
-        java.awt.datatransfer.Clipboard clipboard = 
-                Toolkit.getDefaultToolkit().getSystemClipboard();
+//        String selection = infoarea.getText();
+//        java.awt.datatransfer.StringSelection data = new java.awt.datatransfer.StringSelection(selection);
+//        java.awt.datatransfer.Clipboard clipboard = 
+//                Toolkit.getDefaultToolkit().getSystemClipboard();
         //clipboard.setContents(data, data);
     }
     
@@ -2072,19 +2072,19 @@
 
     void LoadObjFile(String fullname)
     {
-        /*
+        System.out.println("Loading " + fullname);
+        /**/
         //lastFilename = fullname;
         if(loadObjThread == null)
         {
-        loadObjThread = new LoadOBJThread();
-        loadObjThread.start();
+            loadObjThread = new LoadOBJThread();
+            loadObjThread.start();
         }
         
         loadObjThread.add(fullname);
-         */
+        /**/
 
-        System.out.println("Loading " + fullname);
-        makeSomething(new FileObject(fullname, true), true);
+        //makeSomething(new FileObject(fullname, true), true);
     }
 
     void LoadGFDFile(String fullname)
@@ -3214,7 +3214,7 @@
         objEditor.refreshContents();
     }
     
-    static public byte[] Compress(Object o)
+    static public byte[] Compress(Object3D o)
     {
         try
         {
@@ -3222,8 +3222,13 @@
             java.util.zip.GZIPOutputStream zstream = new java.util.zip.GZIPOutputStream(baos);
             ObjectOutputStream out = new ObjectOutputStream(zstream);
 
+        Object3D parent = o.parent;
+        o.parent = null;
+        
             out.writeObject(o);
             
+        o.parent = parent;
+        
             out.flush();
 
             zstream.close();
@@ -3306,12 +3311,17 @@
     {
         cRadio tab = GetCurrentTab();
         
+        boolean temp = CameraPane.SWITCH;
+        CameraPane.SWITCH = false;
+        
         copy.ExtractBigData(hashtable);
         
         //EditorFrame.m_MainFrame.requestFocusInWindow();
         tab.graphs[tab.undoindex++] = Compress(copy);
 
         copy.RestoreBigData(hashtable);
+
+        CameraPane.SWITCH = temp;
         
         //assert(hashtable.isEmpty());
         
@@ -3342,6 +3352,9 @@
 
     void CopyChanged(Object3D obj)
     {
+        boolean temp = CameraPane.SWITCH;
+        CameraPane.SWITCH = false;
+        
         copy.ExtractBigData(hashtable);
         
         copy.clear();
@@ -3352,6 +3365,8 @@
         }
         
         copy.RestoreBigData(hashtable);
+        
+        CameraPane.SWITCH = temp;
         
         //assert(hashtable.isEmpty());
         
@@ -4280,6 +4295,7 @@
 
         try
         {
+            // Try compressed version first.
             java.io.FileInputStream istream = new java.io.FileInputStream(fullname);
             java.util.zip.GZIPInputStream zstream = new java.util.zip.GZIPInputStream(istream);
             java.io.ObjectInputStream p = new java.io.ObjectInputStream(zstream);
@@ -4349,6 +4365,12 @@
 
     void LoadIt(Object obj)
     {
+        if (obj == null)
+        {
+            // Invalid file
+            return;
+        }
+        
         System.out.println("Loaded " + obj);
         //new Exception().printStackTrace();
         Object3D readobj = (Object3D) obj;

--
Gitblit v1.6.2