예제 #1
0
 public void NewCanvas()
 {
     if (currentCanvas != null)
     {
         uNodeEditorSaveManager.Flush();
         // @To do ask for confirmation to clear the current canvas
         // Ask for save (?)
     }
     currentCanvas = ScriptableObject.CreateInstance <uCanvas>();
     currentCanvas.Init("NewCancas");
     currentCanvas = uNodeEditorSaveManager.SaveCanvasState(currentCanvas);
 }
예제 #2
0
        public static uCanvas CreateWorkingCopy(uCanvas canvas)
        {
            uCanvas ret = ScriptableObject.CreateInstance <uCanvas>();

            ret.Init(canvas.Name);

            // Copy each node
            foreach (uNode n in canvas.Nodes)
            {
                uNode copy = n.GetCopy();
                ret.Nodes.Add(copy);
            }

            // Restore hirearchy
            ret.SetParentFromCopy();

            return(ret);
        }