Example #1
0
    void CheckFocusedUnityWindow()
    {
        if (UnityEditor.EditorWindow.focusedWindow == null)
        {
            return;
        }

        string name = UnityEditor.EditorWindow.focusedWindow.ToString();

        bool[] m_bPrevFocusWindows = new bool[(int)(UNITYWINDOW.Count)];

        for (int n = 0; n < m_bFocusUnityWindows.Length; n++)
        {
            m_bPrevFocusWindows[n] = m_bFocusUnityWindows[n];
        }

        NgUtil.ClearBools(m_bFocusUnityWindows);

        if (name.Contains(".ProjectWindow"))
        {
            m_bFocusUnityWindows[(int)(UNITYWINDOW.ProjectWindow)] = true;
        }
        if (name.Contains(".HierarchyWindow"))
        {
            m_bFocusUnityWindows[(int)(UNITYWINDOW.HierarchyWindow)] = true;
        }
        if (name.Contains(".InspectorWindow"))
        {
            m_bFocusUnityWindows[(int)(UNITYWINDOW.InspectorWindow)] = true;
        }
        if (name.Contains(".ConsoleWindow"))
        {
            m_bFocusUnityWindows[(int)(UNITYWINDOW.ConsoleWindow)] = true;
        }
        if (name.Contains(".GameView"))
        {
            m_bFocusUnityWindows[(int)(UNITYWINDOW.GameView)] = true;
        }
        if (name.Contains(".ColorPicker"))
        {
            m_bFocusUnityWindows[(int)(UNITYWINDOW.ColorPicker)] = true;
        }
        if (name.Contains(".ParticlsSystemWindow"))
        {
            m_bFocusUnityWindows[(int)(UNITYWINDOW.ParticlsSystemWindow)] = true;
        }

        if (m_bPrevFocusWindows[(int)(UNITYWINDOW.ProjectWindow)] == false && m_bFocusUnityWindows[(int)(UNITYWINDOW.ProjectWindow)] == true)
        {
//          NgUtil.LogMessage("Focused ProjectWindow !!!");
//          SaveTool("AutoSave Prjoect");
        }

        if (m_bPrevFocusWindows[(int)(UNITYWINDOW.ProjectWindow)] == true && m_bFocusUnityWindows[(int)(UNITYWINDOW.ProjectWindow)] == false)
        {
//          NgUtil.LogMessage("Unfocused ProjectWindow !!!");
//          LoadTool("AutoReloaded Prjoect");
        }

        if (m_bPrevFocusWindows[(int)(UNITYWINDOW.GameView)] == true && m_bFocusUnityWindows[(int)(UNITYWINDOW.GameView)] == false)
        {
//          NgUtil.LogMessage("Unfocused GameView !!!");
            FxmPopupManager.inst.HideAllPopup(true);
        }

        if (m_bPrevFocusWindows[(int)(UNITYWINDOW.GameView)] == false && m_bFocusUnityWindows[(int)(UNITYWINDOW.GameView)] == true)
        {
//          NgUtil.LogMessage("Focused GameView !!!");
            FXMakerHierarchy.inst.OnActiveHierarchy();
            CreateCurrentInstanceEffect(true);
        }

        if ((m_bPrevFocusWindows[(int)(UNITYWINDOW.HierarchyWindow)] || m_bPrevFocusWindows[(int)(UNITYWINDOW.InspectorWindow)]) && m_bFocusUnityWindows[(int)(UNITYWINDOW.GameView)] == true)
        {
            // enable save
            FXMakerEffect.inst.SetChangePrefab();

            // save background
            if (m_nToolIndex == 0)
            {
                SaveTool("AutoSave");
            }


//			gUtil.LogMessage("Unfocused HierarchyWindow or InspectorWindow !!!");
//			ShowToolMessage("Update FxmHierarchy");
//			GetFXMakerHierarchy().ShowHierarchy(null);
        }
    }