private void DrawColors() { colorScroll = EditorGUILayout.BeginScrollView(colorScroll); foreach (var v in UssValues.values.Where(x => x.Value is UssColorValue)) { if (string.IsNullOrEmpty(query) == false && v.Key.Contains(query) == false) { continue; } var colorValue = (UssColorValue)v.Value; var str = ColorUtility.ToHtmlStringRGBA(colorValue.value); EditorGUILayout.BeginHorizontal(); EditorGUILayout.LabelField(v.Key, valueNameStyle); colorValue.value = EditorGUILayout.ColorField(colorValue.value); EditorGUILayout.EndHorizontal(); EditorGUILayout.BeginHorizontal(); if (GUILayout.Button("References")) { Selection.objects = UssStyleModifier.GetReferences(GameObject.Find("Canvas"), v.Key); } EditorGUILayout.SelectableLabel("#" + str); EditorGUILayout.EndHorizontal(); queryResults++; } EditorGUILayout.EndScrollView(); }
public void OnSelectorChanged(string text) { var conditions = UssParser.ParseConditions(text); var go = UssStyleModifier.FindObjects( UssRoot.FindRootInScene().gameObject, conditions); foreach (var c in prevObjects) { if (go.Contains(c.gameObject)) { continue; } c.CrossFadeColor(Color.white, 0, true, true); } prevObjects.Clear(); foreach (var g in go) { foreach (var c in g.GetComponentsInChildren <Graphic>()) { c.CrossFadeColor(new Color32(255, 64, 64, 255), 0.5f, true, true); prevObjects.Add(c); } } selectedObjects.text = go.Length + " object(s)"; }
private void DrawNumbers() { colorScroll = EditorGUILayout.BeginScrollView(colorScroll); foreach (var v in UssValues.values.Where(x => (x.Value is UssFloatValue || x.Value is UssIntValue))) { if (string.IsNullOrEmpty(query) == false && v.Key.Contains(query) == false) { continue; } EditorGUILayout.BeginHorizontal(); EditorGUILayout.LabelField(v.Key, valueNameStyle); if (v.Value is UssFloatValue) { var floatValue = (UssFloatValue)v.Value; floatValue.value = EditorGUILayout.FloatField(floatValue.value); } else { var intValue = (UssIntValue)v.Value; intValue.value = EditorGUILayout.IntField(intValue.value); } EditorGUILayout.EndHorizontal(); EditorGUILayout.BeginHorizontal(); if (GUILayout.Button("References")) { Selection.objects = UssStyleModifier.GetReferences(GameObject.Find("Canvas"), v.Key); } EditorGUILayout.EndHorizontal(); queryResults++; } EditorGUILayout.EndScrollView(); }
void OnGUI() { EditorGUILayout.BeginHorizontal(); EditorGUILayout.LabelField("INSTANT EVAL"); if (GUILayout.Button("run!")) { /* * var result = UssParser.Parse(script); * UssStyleModifier.Apply( * UssRoot.FindRootInScene().gameObject, * result.styles); */ UssStyleModifier.LoadUss(script); } EditorGUILayout.EndHorizontal(); script = GUI.TextArea(new Rect(0, 30, position.width, 300), script); var editor = (TextEditor)GUIUtility.GetStateObject(typeof(TextEditor), GUIUtility.keyboardControl); if (string.IsNullOrEmpty(editor.SelectedText) == false) { if (prevSelectionText == editor.SelectedText) { return; } var result = UssParser.ParseConditions(editor.SelectedText); Selection.objects = UssStyleModifier.FindObjects( UssRoot.FindRootInScene().gameObject, result); prevSelectionText = editor.SelectedText; } }
void OnGUI() { EditorGUI.DrawPreviewTexture(new Rect(position.width / 2 - 50, 20, 100, 100), cssTex); GUILayout.Space(140); if (GUILayout.Button("apply")) { UssAutoRefresh.currentUcss = "Assets/Resources/default.ucss"; UssStyleModifier.LoadUss(File.ReadAllText("Assets/Resources/default.ucss")); } }
public static void EnsureLastUcssLoaded() { if (UssStyleModifier.loaded) { return; } if (string.IsNullOrEmpty(currentUcss) == false) { UssStyleModifier.LoadUss(File.ReadAllText(currentUcss)); } }
static void OnPostprocessAllAssets(string[] importedAssets, string[] deletedAssets, string[] movedAssets, string[] movedFromAssetPaths) { foreach (var asset in importedAssets) { if (asset.EndsWith(".ucss") == false) { continue; } if (asset == currentUcss) { UssStyleModifier.LoadUss(File.ReadAllText(asset)); } } }
public void OnStyleSheetChanged(string text) { try { var styles = UssParser.Parse(text); UssStyleModifier.Apply( UssRoot.FindRootInScene().gameObject, styles.styles); errorMessage.CrossFadeColor(Color.white, 0.5f, true, true); errorMessage.text = "SUCCESS"; } catch (Exception e) { errorMessage.CrossFadeColor(Color.red, 0.5f, true, true); errorMessage.text = e.Message; } }
void OnGUI() { EditorGUILayout.BeginHorizontal(GUI.skin.FindStyle("Toolbar")); query = GUILayout.TextField(query, GUI.skin.FindStyle("ToolbarSeachTextField")); EditorGUILayout.EndHorizontal(); EditorGUILayout.Space(); EditorGUILayout.LabelField(selections + " object(s) found."); if (GUI.changed && string.IsNullOrEmpty(query) == false) { var conditions = UssParser.ParseConditions(query); if (conditions.Length == 0) { return; } Selection.objects = UssStyleModifier.FindObjects( UssRoot.FindRootInScene().gameObject, conditions); selections = Selection.objects.Length; } }
public void Rebuild(string doc) { for (int i = 0; i < transform.childCount; i++) { DestroyImmediate(transform.GetChild(0).gameObject); } var html = new HtmlDocument(); html.LoadHtml(doc); inlineStyle = ""; foreach (var child in html.DocumentNode.ChildNodes) { ComposeNode(child, transform); } if (string.IsNullOrEmpty(inlineStyle) == false) { UssStyleModifier.ApplyUss(inlineStyle); } UssStyleModifier.LoadUss(UssRoot.FindRootInScene().ucssPath); }
public void OnGUI() { UssAutoRefresh.EnsureLastUcssLoaded(); tab = GUILayout.Toolbar(tab, new string[] { "Color", "Number", "String" }); EditorGUILayout.BeginHorizontal(GUI.skin.FindStyle("Toolbar")); query = GUILayout.TextField(query, GUI.skin.FindStyle("ToolbarSeachTextField")); EditorGUILayout.EndHorizontal(); EditorGUILayout.Space(); queryResults = 0; if (tab == 0) { DrawColors(); } else if (tab == 1) { DrawNumbers(); } else if (tab == 2) { DrawStrings(); } if (queryResults == 0) { GUILayout.Box(noResultTex, GUILayout.Width(100), GUILayout.Height(100)); EditorGUILayout.LabelField("No results"); } if (GUI.changed) { var root = UssRoot.FindRootInScene(); UssStyleModifier.Apply(root.gameObject); EditorUtility.SetDirty(root.gameObject); } }