public SettingsPage(ScriptDependencyWindow window) { namespaces = new List <string> (); typeNames = new List <string> (); maxCycles = PlayerPrefs.GetInt("BPS_maxCycles", 1000); allowLoners = PlayerPrefs.GetInt("BPS_allowLoners", 0) == 1 ? true : false; onlyMonos = PlayerPrefs.GetInt("BPS_onlyMonos", 1) == 1 ? true : false; string[] a_typeNames = PlayerPrefs.GetString("BPS_typeNames", "UnityAction").Split("|".ToCharArray()); foreach (string s in a_typeNames) { typeNames.Add(s); } if (typeNames.Count < 2) { typeNames.Add(""); } string[] a_namespaces = PlayerPrefs.GetString("BPS_namespaces", "UnityEngine|UnityEngine.UI|UnityEngine.EventSystems|System").Split("|".ToCharArray()); foreach (string s in a_namespaces) { namespaces.Add(s); } if (namespaces.Count < 2) { namespaces.Add(""); } SetClean(); scrollPosition = new Vector2(window.position.width, window.position.height / 2f); buttonBackgroundTexture = UnityEngine.Resources.Load("BackgroundButton") as Texture2D; buttonBackgroundTextureActive = UnityEngine.Resources.Load("BackgroundButtonActive") as Texture2D; }
public static void Init() { window = (ScriptDependencyWindow)EditorWindow.GetWindow(typeof(ScriptDependencyWindow), false, "Visualizer"); Serializer.Init(window.GetSavePath()); window.InitScriptData(); window.antiAlias = 4; window.minSize = new Vector2(600, 450); window.weaveStartTime = Time.realtimeSinceStartup; skin = UnityEngine.Resources.Load("GUISKin") as GUISkin; LoadTextures(true); window.Show(); }
public void Draw(ScriptDependencyWindow window, out bool active) { GUISkin skin = GUI.skin; GUI.skin = null; Color defaultColor = GUI.color; GUI.color = new Color(.2f, .2f, .2f, .9f); GUI.Box(new Rect(0, 0, window.position.width, window.position.height), ""); GUI.color = defaultColor; GUI.skin = skin; scrollPosition = GUILayout.BeginScrollView(scrollPosition); Texture2D tempNormal = GUI.skin.button.normal.background; Texture2D tempActive = GUI.skin.button.active.background; Texture2D tempHover = GUI.skin.button.hover.background; GUI.skin.button.normal.background = buttonBackgroundTexture; GUI.skin.button.active.background = buttonBackgroundTextureActive; GUI.skin.button.hover.background = buttonBackgroundTexture; GUILayout.BeginHorizontal(); GUILayout.Space(50f); GUILayout.BeginVertical(); GUILayout.Space(20f); if (GUILayout.Button(IsDirty() ? "Apply" : "Close", GUILayout.MaxWidth(120f), GUILayout.Height(30f))) { active = false; } else { active = true; } GUILayout.Space(20f); if (GUILayout.Button("Reset to Defaults", GUILayout.MaxWidth(120f), GUILayout.Height(30f))) { ResetValues(); } GUILayout.Space(20f); onlyMonos = GUILayout.Toggle(onlyMonos, "Only MonoBehaviours", GUILayout.MaxWidth(200f), GUILayout.Height(30f)); allowLoners = GUILayout.Toggle(allowLoners, "Allow Loners", GUILayout.MaxWidth(200f), GUILayout.Height(30f)); GUILayout.BeginHorizontal(); GUILayout.Label("Max Cycles", GUILayout.MaxWidth(120f), GUILayout.Height(30f)); GUILayout.Space(50f); maxCycles = int.Parse(GUILayout.TextField(maxCycles.ToString(), GUILayout.Width(60f), GUILayout.Height(30f))); GUILayout.EndHorizontal(); GUILayout.Label("Exclude Namespaces", GUILayout.MaxWidth(120f), GUILayout.Height(30f)); GUILayout.BeginHorizontal(); if (GUILayout.Button("+", GUILayout.MaxWidth(30f), GUILayout.Height(30f))) { namespaces.Add(""); } GUILayout.Space(120f); namespaces [0] = GUILayout.TextField(namespaces [0], GUILayout.MaxWidth(200f), GUILayout.Height(30f)); GUILayout.EndHorizontal(); for (int i = 1; i < namespaces.Count; i++) { GUILayout.BeginHorizontal(); GUILayout.Space(158f); namespaces [i] = GUILayout.TextField(namespaces [i], GUILayout.MaxWidth(200f), GUILayout.Height(30f)); GUILayout.EndHorizontal(); } GUILayout.Label("Exclude Type Names", GUILayout.MaxWidth(120f), GUILayout.Height(30f)); GUILayout.BeginHorizontal(); if (GUILayout.Button("+", GUILayout.MaxWidth(30f), GUILayout.Height(30f))) { typeNames.Add(""); } GUILayout.Space(120f); typeNames [0] = GUILayout.TextField(typeNames [0], GUILayout.MaxWidth(200f), GUILayout.Height(30f)); GUILayout.EndHorizontal(); for (int i = 1; i < typeNames.Count; i++) { GUILayout.BeginHorizontal(); GUILayout.Space(158f); typeNames [i] = GUILayout.TextField(typeNames [i], GUILayout.MaxWidth(200f), GUILayout.Height(30f)); GUILayout.EndHorizontal(); } GUILayout.EndVertical(); GUILayout.EndScrollView(); GUILayout.EndHorizontal(); GUI.skin.button.normal.background = tempNormal; GUI.skin.button.active.background = tempActive; GUI.skin.button.hover.background = tempHover; }
public Background(ref ScriptDependencyWindow window) { m_window = window; }