public static void Attach(EditorWindow moveWindow, EditorWindow attachToWindow)
        {
            if (attachToWindow == null)
            {
                return;
            }
            if (moveWindow == attachToWindow)
            {
                return;
            }

            var attach          = new UnityEditorEditorWindow(attachToWindow);
            var attachContainer = new UnityEditorContainerWindow(attach.dockArea.window);

            if (attachContainer.m_ShowMode != 0 && attachContainer.m_ShowMode != 4)
            {
                return;
            }

            var move          = new UnityEditorEditorWindow(moveWindow);
            var moveContainer = new UnityEditorContainerWindow(move.dockArea.window);

            if (moveContainer.m_ShowMode != 0 && attachContainer.m_ShowMode != 4)
            {
                return;
            }

            move.dockArea.RemoveTab(moveWindow, true, false);

            attach.dockArea.AddTab(moveWindow, false);

            moveWindow.Show();
        }
        public static void Detach(EditorWindow moveWindow)
        {
            var move = new UnityEditorEditorWindow(moveWindow);

            if (!move.docked)
            {
                return;
            }

            move.dockArea.RemoveTab(moveWindow);
            moveWindow.Show();
        }
Exemple #3
0
 public void OnGUI()
 {
     if (_editorWindow == null)
     {
         _editorWindow = new UnityEditorEditorWindow(this);
     }
     HGUIScope.Reset();
     try {
         OnDefaultGUI();
     }
     //catch( ArgumentException ) {
     // GUILayout.FlexibleSpace
     //}
     catch (ExitGUIException) {
     }
     //catch( MissingReferenceException ) {
     //}
     catch (Exception e) {
         Debug.LogException(e);
     }
     //HGUIScope.SafePop();
 }
Exemple #4
0
 public HNEditorWindow()
 {
     m_self = new UnityEditorEditorWindow(this);
 }