public static void OnGUI() { if (!loaded) { LoadPrefs(); } EditorGUILayout.LabelField("Newly created splines:", EditorStyles.boldLabel); startInCreationMode = EditorGUILayout.Toggle("Start in Creation Mode", startInCreationMode); defaultComputerSpace = (SplineComputer.Space)EditorGUILayout.EnumPopup("Space", defaultComputerSpace); defaultType = (Spline.Type)EditorGUILayout.EnumPopup("Type", defaultType); defaultAlwaysDraw = EditorGUILayout.Toggle("Always draw", defaultAlwaysDraw); defaultShowThickness = EditorGUILayout.Toggle("Show thickness", defaultShowThickness); default2D = EditorGUILayout.Toggle("2D Mode", default2D); defaultColor = EditorGUILayout.ColorField("Spline color", defaultColor); EditorGUILayout.Space(); EditorGUILayout.LabelField("Newly created points:", EditorStyles.boldLabel); createPointSize = EditorGUILayout.FloatField("Default Size", createPointSize); createPointColor = EditorGUILayout.ColorField("Default Color", createPointColor); EditorGUILayout.Space(); EditorGUILayout.LabelField("Editor", EditorStyles.boldLabel); highlightColor = EditorGUILayout.ColorField("Highlight color", highlightColor); highlightContentColor = EditorGUILayout.ColorField("Highlight content color", highlightContentColor); duplicationDirection = (DuplicationDirection)EditorGUILayout.EnumPopup("Duplicate Direction", duplicationDirection); showPointNumbers = EditorGUILayout.Toggle("Show point numbers", showPointNumbers); if (GUILayout.Button("Use Defaults", GUILayout.Width(120))) { duplicationDirection = DuplicationDirection.Forward; defaultAlwaysDraw = false; defaultShowThickness = false; default2D = false; startInCreationMode = true; defaultColor = Color.white; highlightColor = new Color(0f, 0.564f, 1f, 1f); highlightContentColor = new Color(1f, 1f, 1f, 0.95f); showPointNumbers = false; defaultComputerSpace = SplineComputer.Space.Local; defaultType = Spline.Type.Hermite; createPointSize = 1f; createPointColor = Color.white; SavePrefs(); } if (GUI.changed) { SavePrefs(); } }
public static void LoadPrefs() { defaultAlwaysDraw = EditorPrefs.GetBool("Dreamteck.Splines.defaultAlwaysDraw", false); defaultShowThickness = EditorPrefs.GetBool("Dreamteck.Splines.defaultShowThickness", false); default2D = EditorPrefs.GetBool("Dreamteck.Splines.default2D", false); startInCreationMode = EditorPrefs.GetBool("Dreamteck.Splines.startInCreationMode", true); showPointNumbers = EditorPrefs.GetBool("Dreamteck.Splines.showPointNumbers", false); pointEditSpace = (SplineComputer.Space)EditorPrefs.GetInt("Dreamteck.Splines.pointEditSpace", 1); defaultColor = LoadColor("Dreamteck.Splines.defaultColor", Color.white); highlightColor = LoadColor("Dreamteck.Splines.highlightColor", new Color(0f, 0.564f, 1f, 1f)); highlightContentColor = LoadColor("Dreamteck.Splines.highlightContentColor", new Color(1f, 1f, 1f, 0.95f)); defaultComputerSpace = (SplineComputer.Space)EditorPrefs.GetInt("Dreamteck.Splines.defaultComputerSpace", 0); defaultType = (Spline.Type)EditorPrefs.GetInt("Dreamteck.Splines.defaultType", 0); duplicationDirection = (DuplicationDirection)EditorPrefs.GetInt("Dreamteck.Splines.duplicationDirection", 0); createPointSize = EditorPrefs.GetFloat("Dreamteck.Splines.createPointSize", 1f); createPointColor = LoadColor("Dreamteck.Splines.createPointColor", Color.white); loaded = true; }