You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
60 lines
2.2 KiB
60 lines
2.2 KiB
using UnityEngine; |
|
using UnityEditor; |
|
using UnityEditor.Callbacks; |
|
|
|
namespace Fungus |
|
{ |
|
namespace EditorUtils |
|
{ |
|
/// <summary> |
|
/// Shows Fungus section in the Edit->Preferences in unity allows you to configure Fungus behaviour |
|
/// |
|
/// ref https://docs.unity3d.com/ScriptReference/PreferenceItem.html |
|
/// </summary> |
|
[InitializeOnLoad] |
|
public static class FungusEditorPreferences |
|
{ |
|
// Have we loaded the prefs yet |
|
private static bool prefsLoaded = false; |
|
const string HIDE_MUSH_KEY = "hideMushroomInHierarchy"; |
|
const string USE_EXP_MENUS = "useExperimentalMenus"; |
|
|
|
public static bool hideMushroomInHierarchy; |
|
public static bool useExperimentalMenus; |
|
|
|
static FungusEditorPreferences() |
|
{ |
|
LoadOnScriptLoad(); |
|
} |
|
|
|
// Add preferences section named "My Preferences" to the Preferences Window |
|
[PreferenceItem("Fungus")] |
|
public static void PreferencesGUI() |
|
{ |
|
// Load the preferences |
|
if (!prefsLoaded) |
|
{ |
|
LoadOnScriptLoad(); |
|
} |
|
|
|
// Preferences GUI |
|
hideMushroomInHierarchy = EditorGUILayout.Toggle("Hide Mushroom Flowchart Icon", hideMushroomInHierarchy); |
|
useExperimentalMenus = EditorGUILayout.Toggle(new GUIContent("Experimental Searchable Menus", "Experimental menus replace the Event, Add Variable and Add Command menus with a searchable menu more like the Unity AddComponent menu."), useExperimentalMenus); |
|
|
|
// Save the preferences |
|
if (GUI.changed) |
|
{ |
|
EditorPrefs.SetBool(HIDE_MUSH_KEY, hideMushroomInHierarchy); |
|
EditorPrefs.SetBool(USE_EXP_MENUS, useExperimentalMenus); |
|
} |
|
} |
|
|
|
public static void LoadOnScriptLoad() |
|
{ |
|
hideMushroomInHierarchy = EditorPrefs.GetBool(HIDE_MUSH_KEY, false); |
|
useExperimentalMenus = EditorPrefs.GetBool(USE_EXP_MENUS, false); |
|
prefsLoaded = true; |
|
} |
|
} |
|
} |
|
} |