private void DrawToolbar(Rect rect)
        {
            Rect add = new Rect(rect)
            {
                x = rect.x + 6, width = 52
            };

            if (GUI.Button(add, "Create", EditorStyles.toolbarButton))
            {
                HierarchyProGroup group = HierarchyProGroup.Create();
                group.AddObjects(Selection.objects);
                if (HierarchyProEditorGroupWindow.Selected != null)
                {
                    group.Parent = HierarchyProEditorGroupWindow.Selected;
                }
                group.GenerateName();

                HierarchyProGroupLibrary.Add(group);
                HierarchyProEditorGroupWindow.Selected = group;

                EditorUtility.SetDirty(HierarchyProGroupLibrary.Instance);
            }

            Rect settings = new Rect(rect)
            {
                x = rect.xMax - 32, width = 26
            };

            if (GUI.Button(settings, new GUIContent(HierarchyProEditorIcons.Cog), EditorStyles.toolbarButton))
            {
                if (Event.current.control)
                {
                    Object.DestroyImmediate(HierarchyProGroupLibrary.Instance.gameObject);
                }
                if (Event.current.shift)
                {
                    Selection.activeObject = HierarchyProGroupLibrary.Instance.gameObject;
                }

                Vector2 centerScreen                = new Vector2(Screen.width / 2f, Screen.height / 2f);
                Vector2 rectPreferencesSize         = new Vector2(500, 340);
                var     rectPreferencesCenter       = centerScreen - (rectPreferencesSize / 2f);
                Rect    rectPreferences             = new Rect(rectPreferencesCenter.x, rectPreferencesCenter.y, rectPreferencesSize.x, rectPreferencesSize.y);
                HierarchyProPreferences preferences = EditorWindow.GetWindowWithRect <HierarchyProPreferences>(rectPreferences, true, "HierarchyPro Preferences", true);
                preferences.Show();
            }
        }
        private static void Load()
        {
            HierarchyProPreferences.Load();

            HierarchyProEditorCache.Initialize();
            HierarchyProEditorReflection.Load();
            HierarchyProEditorIcons.Load();
            HierarchyProEditorColors.Load();
            HierarchyProEditorStyles.Load();

            HierarchyProGroupLibrary.FindInstance();

            EditorApplication.update -= HierarchyProEditorLoader.Update;
            EditorApplication.hierarchyWindowChanged   -= HierarchyProEditorLoader.WindowChanged;
            EditorApplication.hierarchyWindowItemOnGUI -= HierarchyProEditorLoader.ItemOnGUI;
            Undo.undoRedoPerformed -= HierarchyProEditorLoader.UndoRedoPerformed;

            EditorApplication.update += HierarchyProEditorLoader.Update;
            EditorApplication.hierarchyWindowChanged   += HierarchyProEditorLoader.WindowChanged;
            EditorApplication.hierarchyWindowItemOnGUI += HierarchyProEditorLoader.ItemOnGUI;
            Undo.undoRedoPerformed += HierarchyProEditorLoader.UndoRedoPerformed;
        }
예제 #3
0
    private void OnGUI()
    {
        EditorGUILayout.LabelField("HierarchyPro", HierarchyProEditorStyles.PreferencesTitle, GUILayout.Height(48));

        HierarchyProPreferences.OnPreferencesGUI();
    }
예제 #4
0
 public static void Load()
 {
     HierarchyProPreferences.showGizmos     = HierarchyProPreferences.GetBool("showGizmos", true);
     HierarchyProPreferences.showComponents = HierarchyProPreferences.GetBool("showComponents", true);
     HierarchyProPreferences.showLayersTags = HierarchyProPreferences.GetBool("showLayersTags", true);
 }