From 6f94184b45f0fb0114c18ed77560e1c2556d628f Mon Sep 17 00:00:00 2001 From: Mikael Brochu Date: Tue, 13 Jun 2017 17:56:49 -0400 Subject: [PATCH 1/3] added an example for transform usage --- Assets/Editor/E07_VisualElementTransform.cs | 350 ++++++++++++++++++ .../Editor/E07_VisualElementTransform.cs.meta | 12 + 2 files changed, 362 insertions(+) create mode 100644 Assets/Editor/E07_VisualElementTransform.cs create mode 100644 Assets/Editor/E07_VisualElementTransform.cs.meta diff --git a/Assets/Editor/E07_VisualElementTransform.cs b/Assets/Editor/E07_VisualElementTransform.cs new file mode 100644 index 0000000..65afe18 --- /dev/null +++ b/Assets/Editor/E07_VisualElementTransform.cs @@ -0,0 +1,350 @@ +using System; +using System.Collections; +using UnityEngine; +using UnityEditor; +using UnityEditor.Experimental.UIElements; +using UnityEngine.Experimental.UIElements; +using UnityEngine.Experimental.UIElements.StyleEnums; +using UnityEngine.Experimental.UIElements.StyleSheets; + +namespace UIElementsExamples +{ + public class E07_VisualElementTransform : EditorWindow + { + float lowPosition; + float highPosition; + //Slider positionSlider; + //Label positionLabel; + + float lowRotation; + float highRotation; + //Slider rotationSlider; + //Label rotationLabel; + + float lowScale; + float highScale; + //Slider scaleSlider; + //Label scaleLabel; + + //Toggle buttonToggle; + //Toggle labelToggle; + //Toggle textFieldToggle; + //Toggle button2Toggle; + //Toggle label2Toggle; + + //Button buttonGeometry; + //Label labelGeometry; + //TextField textFieldGeometry; + //Button buttonGeometry2; + //Label labelGeometry2; + + ///////////////////////////////////// + + Label positionLabel; + Slider xPosSlider; + Slider yPosSlider; + Slider zPosSlider; + + Label rotationLabel; + Slider xRotSlider; + Slider yRotSlider; + Slider zRotSlider; + + Label scaleLabel; + Slider xScaSlider; + Slider yScaSlider; + Slider zScaSlider; + + Button button; + + + + [MenuItem("UIElementsExamples/07_VisualElementTransform")] + public static void ShowExample() + { + E07_VisualElementTransform window = GetWindow(); + window.minSize = new Vector2(200, 400); + window.titleContent = new GUIContent("Example 07"); + } + + protected void OnEnable() + { + lowPosition = -100; + highPosition = 100; + lowRotation = -180; + highRotation = 180; + lowScale = 0.5f; + highScale = 1.5f; + + var rootVisualContainer = UIElementsEntryPoint.GetRootVisualContainer(this); + + var optionsContainer = new VisualContainer(); + { + var positionContainer = new VisualContainer() { flexDirection = FlexDirection.Row}; + { + positionLabel = new Label("Position --> X: 0, Y: 0, Z: 0"); + xPosSlider = new Slider(lowPosition, highPosition, null) {width = 100, value = 0}; + yPosSlider = new Slider(lowPosition, highPosition, null) {width = 100, value = 0}; + zPosSlider = new Slider(lowPosition, highPosition, null) {width = 100, value = 0}; + + xPosSlider.valueChanged += (value) => PositionChanged(); + yPosSlider.valueChanged += (value) => PositionChanged(); + zPosSlider.valueChanged += (value) => PositionChanged(); + + positionContainer.AddChild(xPosSlider); + positionContainer.AddChild(yPosSlider); + positionContainer.AddChild(zPosSlider); + positionContainer.AddChild(positionLabel); + } + optionsContainer.AddChild(positionContainer); + + var rotationContainer = new VisualContainer() { flexDirection = FlexDirection.Row}; + { + rotationLabel = new Label("Rotation --> X: 0, Y: 0, Z: 0"); + xRotSlider = new Slider(lowRotation, highRotation, null) {width = 100, value = 0}; + yRotSlider = new Slider(lowRotation, highRotation, null) {width = 100, value = 0}; + zRotSlider = new Slider(lowRotation, highRotation, null) {width = 100, value = 0}; + + xRotSlider.valueChanged += (value) => RotationChanged(); + yRotSlider.valueChanged += (value) => RotationChanged(); + zRotSlider.valueChanged += (value) => RotationChanged(); + + rotationContainer.AddChild(xRotSlider); + rotationContainer.AddChild(yRotSlider); + rotationContainer.AddChild(zRotSlider); + rotationContainer.AddChild(rotationLabel); + } + optionsContainer.AddChild(rotationContainer); + + var scaleContainer = new VisualContainer() { flexDirection = FlexDirection.Row}; + { + scaleLabel = new Label("Scale --> X: 0, Y: 0, Z: 0"); + xScaSlider = new Slider(lowScale, highScale, null) {width = 100, value = 1}; + yScaSlider = new Slider(lowScale, highScale, null) {width = 100, value = 1}; + zScaSlider = new Slider(lowScale, highScale, null) {width = 100, value = 1}; + + xScaSlider.valueChanged += (value) => ScaleChanged(); + yScaSlider.valueChanged += (value) => ScaleChanged(); + zScaSlider.valueChanged += (value) => ScaleChanged(); + + scaleContainer.AddChild(xScaSlider); + scaleContainer.AddChild(yScaSlider); + scaleContainer.AddChild(zScaSlider); + scaleContainer.AddChild(scaleLabel); + } + optionsContainer.AddChild(scaleContainer); + + var resetButton = new Button(ResetTransform) { text = "Reset", width = 50f}; + optionsContainer.AddChild(resetButton); + } + + var elementsContainer = new VisualContainer(); + { + button = new Button(null); + button.width = 200; + button.height = 50; + elementsContainer.AddChild(button); + } + + rootVisualContainer.AddChild(optionsContainer); + rootVisualContainer.AddChild(elementsContainer); + + // var optionsContainer = new VisualContainer() { name = "OptionsContainer" }; + // { + // var positionContainer = new VisualContainer() { name = "PositionContainer", flexDirection = FlexDirection.Row }; + // { + // positionLabel = new Label("Position value: ") { name = "TestPositionLabel" }; + // positionContainer.AddChild(positionLabel); + + // positionSlider = new Slider(lowPosition, highPosition, PositionChanged); + // positionContainer.AddChild(positionSlider); + + // positionLabel = new Label("Position value: ") { name = "TestPositionLabel" }; + // positionContainer.AddChild(positionLabel); + // positionSlider = new Slider(lowPosition, highPosition, PositionChanged); + // positionContainer.AddChild(positionSlider); + // } + // optionsContainer.AddChild(positionContainer); + + // var rotationContainer = new VisualContainer() { name = "RotationContainer" }; + // { + // rotationLabel = new Label("Rotation value: ") { name = "TestRotationLabel" }; + // rotationContainer.AddChild(rotationLabel); + // rotationSlider = new Slider(lowRotation, highRotation, RotationChanged); + // rotationContainer.AddChild(rotationSlider); + // } + // optionsContainer.AddChild(rotationContainer); + + // var scaleContainer = new VisualContainer() { name = "ScaleContainer" }; + // { + // scaleLabel = new Label("Scale value: ") { name = "TestScaleLabel" }; + // scaleContainer.AddChild(scaleLabel); + // scaleSlider = new Slider(lowScale, highScale, ScaleChanged); + // scaleContainer.AddChild(scaleSlider); + // } + // optionsContainer.AddChild(scaleContainer); + + // var togglesContainer = new VisualContainer() { name = "TogglesContainer" }; + // { + // buttonToggle = new Toggle(ToggleButton) { name = "ButtonToggle", text = "Button", on = true }; + // togglesContainer.AddChild(buttonToggle); + // labelToggle = new Toggle(ToggleLabel) { name = "LabelToggle", text = "Label", on = true }; + // togglesContainer.AddChild(labelToggle); + // textFieldToggle = new Toggle(ToggleTextField) { name = "TextFieldToggle", text = "TextField", on = true }; + // togglesContainer.AddChild(textFieldToggle); + + // button2Toggle = new Toggle(ToggleButton2) { name = "Button2Toggle", text = "Button 2", on = true }; + // togglesContainer.AddChild(button2Toggle); + // label2Toggle = new Toggle(ToggleLabel2) { name = "Label2Toggle", text = "Label 2", on = true }; + // togglesContainer.AddChild(label2Toggle); + // } + // optionsContainer.AddChild(togglesContainer); + // } + // rootVisualContainer.AddChild(optionsContainer); + + // var elementsContainer = new VisualContainer() { name = "ElementsContainer" }; + // { + // buttonGeometry = new Button(null) { name = "ButtonGeometry" }; + // elementsContainer.AddChild(buttonGeometry); + // labelGeometry = new Label("Some label that will move") { name = "LabelGeometry" }; + // elementsContainer.AddChild(labelGeometry); + // textFieldGeometry = new TextField() + // { + // name = "TextFieldGeometry", + // text = "This is a UIElements text field\nSome text here\n\nLorem Ipsum", + // }; + // elementsContainer.AddChild(textFieldGeometry); + // } + // rootVisualContainer.AddChild(elementsContainer); + + // var elementsContainer2 = new VisualContainer(); + // { + // buttonGeometry2 = new Button(null); + // buttonGeometry2.text = "Some button for testing"; + // elementsContainer2.AddChild(buttonGeometry2); + // labelGeometry2 = new Label("Some other label that will move") { name = "LabelGeometry2" }; + // elementsContainer2.AddChild(labelGeometry2); + // } + // rootVisualContainer.AddChild(positionContainer); + } + + // void PositionChanged(float value) + // { + // positionLabel.text = "Position value: " + (int)value; + // positionLabel.Dirty(ChangeType.Styles); + + // if(buttonToggle.on) + // buttonGeometry.transform.position = new Vector3(value,0,0); + // if(labelToggle.on) + // labelGeometry.transform.position = new Vector3(value,0,0); + // if(textFieldToggle.on) + // textFieldGeometry.transform.position = new Vector3(value,0,0); + // if(button2Toggle.on) + // buttonGeometry2.transform.position = new Vector3(0,value,0); + // if(label2Toggle.on) + // labelGeometry2.transform.position = new Vector3(0,value,0); + // } + // void RotationChanged(float value) + // { + // rotationLabel.text = "Rotation value: " + (int)value; + // rotationLabel.Dirty(ChangeType.Styles); + // buttonGeometry.transform.rotation = Quaternion.Euler(0,0,value); + + // if(buttonToggle.on) + // buttonGeometry.transform.rotation = Quaternion.Euler(0,0,value); + // if(labelToggle.on) + // labelGeometry.transform.rotation = Quaternion.Euler(0,0,value); + // if(textFieldToggle.on) + // textFieldGeometry.transform.rotation = Quaternion.Euler(0,0,value); + // if (button2Toggle.on) + // buttonGeometry2.transform.rotation = Quaternion.Euler(0, 0, value); + // if (label2Toggle.on) + // labelGeometry2.transform.rotation = Quaternion.Euler(0, 0, value); + // } + // void ScaleChanged(float value) + // { + // scaleLabel.text = "Scale value: " + value; + // scaleLabel.Dirty(ChangeType.Styles); + + // if(buttonToggle.on) + // buttonGeometry.transform.scale = new Vector3(value,value,1); + // if(labelToggle.on) + // labelGeometry.transform.scale = new Vector3(value,value,1); + // if(textFieldToggle.on) + // textFieldGeometry.transform.scale = new Vector3(value,value,1); + // if(button2Toggle.on) + // buttonGeometry2.transform.scale = new Vector3(value,value,1); + // if(label2Toggle.on) + // labelGeometry2.transform.scale = new Vector3(value,value,1); + // } + + // void ToggleButton() + // { + // buttonGeometry.visible = buttonToggle.on; + // } + + // void ToggleLabel() + // { + // labelGeometry.visible = labelToggle.on; + // } + + // void ToggleTextField() + // { + // textFieldGeometry.visible = textFieldToggle.on; + // } + // void ToggleButton2() + // { + // buttonGeometry2.visible = button2Toggle.on; + // } + + // void ToggleLabel2() + // { + // labelGeometry2.visible = label2Toggle.on; + // } + + void ResetTransform() + { + button.transform.position = Vector3.zero; + button.transform.rotation = Quaternion.identity; + button.transform.scale = Vector3.one; + + positionLabel.text = "Position --> X: " + 0 + ", Y: " + 0 + ", Z: " + 0; + rotationLabel.text = "Rotation --> X: " + 0 + ", Y: " + 0 + ", Z: " + 0; + scaleLabel.text = "Scale --> X: " + 0 + ", Y: " + 0 + ", Z: " + 0; + + xPosSlider.value = 0; + yPosSlider.value = 0; + zPosSlider.value = 0; + xRotSlider.value = 0; + yRotSlider.value = 0; + zRotSlider.value = 0; + xScaSlider.value = 1; + yScaSlider.value = 1; + zScaSlider.value = 1; + + positionLabel.Dirty(ChangeType.Styles); + //Repaint(); + } + void PositionChanged() + { + positionLabel.text = "Position --> X: " + (int)xPosSlider.value + ", Y: " + (int)yPosSlider.value + ", Z: " + (int)zPosSlider.value; + positionLabel.Dirty(ChangeType.Styles); + + button.transform.position = new Vector3(xPosSlider.value, yPosSlider.value, zPosSlider.value); + } + void RotationChanged() + { + rotationLabel.text = "Rotation --> X: " + (int)xRotSlider.value + ", Y: " + (int)yRotSlider.value + ", Z: " + (int)zRotSlider.value; + rotationLabel.Dirty(ChangeType.Styles); + + button.transform.rotation = Quaternion.Euler(xRotSlider.value, yRotSlider.value, zRotSlider.value); + } + void ScaleChanged() + { + scaleLabel.text = "Scale --> X: " + Math.Round(xScaSlider.value,2) + ", Y: " + Math.Round(yScaSlider.value, 2) + ", Z: " + Math.Round(zScaSlider.value, 2); + scaleLabel.Dirty(ChangeType.Styles); + + button.transform.scale = new Vector3(xScaSlider.value, yScaSlider.value, zScaSlider.value); + } + } +} \ No newline at end of file diff --git a/Assets/Editor/E07_VisualElementTransform.cs.meta b/Assets/Editor/E07_VisualElementTransform.cs.meta new file mode 100644 index 0000000..b19afe2 --- /dev/null +++ b/Assets/Editor/E07_VisualElementTransform.cs.meta @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: fa481df55063dd34992ba584be01be59 +timeCreated: 1497382155 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: From 444a0f554fc5a7c8142fbf852ff07a9e41c8305b Mon Sep 17 00:00:00 2001 From: Mikael Brochu Date: Wed, 14 Jun 2017 10:43:49 -0400 Subject: [PATCH 2/3] improved example for transform usage --- Assets/Editor/E07_VisualElementTransform.cs | 283 +++++++------------- 1 file changed, 90 insertions(+), 193 deletions(-) diff --git a/Assets/Editor/E07_VisualElementTransform.cs b/Assets/Editor/E07_VisualElementTransform.cs index 65afe18..68a275d 100644 --- a/Assets/Editor/E07_VisualElementTransform.cs +++ b/Assets/Editor/E07_VisualElementTransform.cs @@ -6,6 +6,7 @@ using UnityEngine.Experimental.UIElements; using UnityEngine.Experimental.UIElements.StyleEnums; using UnityEngine.Experimental.UIElements.StyleSheets; +using TextEditor = UnityEngine.Experimental.UIElements.TextEditor; namespace UIElementsExamples { @@ -13,32 +14,10 @@ public class E07_VisualElementTransform : EditorWindow { float lowPosition; float highPosition; - //Slider positionSlider; - //Label positionLabel; - float lowRotation; float highRotation; - //Slider rotationSlider; - //Label rotationLabel; - float lowScale; float highScale; - //Slider scaleSlider; - //Label scaleLabel; - - //Toggle buttonToggle; - //Toggle labelToggle; - //Toggle textFieldToggle; - //Toggle button2Toggle; - //Toggle label2Toggle; - - //Button buttonGeometry; - //Label labelGeometry; - //TextField textFieldGeometry; - //Button buttonGeometry2; - //Label labelGeometry2; - - ///////////////////////////////////// Label positionLabel; Slider xPosSlider; @@ -56,25 +35,31 @@ public class E07_VisualElementTransform : EditorWindow Slider zScaSlider; Button button; - - - + Label label; + Slider slider; + TextField textField; + + Toggle buttonToggle; + Toggle labelToggle; + Toggle sliderToggle; + Toggle textToggle; + [MenuItem("UIElementsExamples/07_VisualElementTransform")] public static void ShowExample() { E07_VisualElementTransform window = GetWindow(); - window.minSize = new Vector2(200, 400); + window.minSize = new Vector2(800, 600); window.titleContent = new GUIContent("Example 07"); } protected void OnEnable() { - lowPosition = -100; - highPosition = 100; + lowPosition = -500; + highPosition = 500; lowRotation = -180; highRotation = 180; - lowScale = 0.5f; - highScale = 1.5f; + lowScale = 0f; + highScale = 2f; var rootVisualContainer = UIElementsEntryPoint.GetRootVisualContainer(this); @@ -138,175 +123,67 @@ protected void OnEnable() optionsContainer.AddChild(resetButton); } - var elementsContainer = new VisualContainer(); + var togglesContainer = new VisualContainer() { flexDirection = FlexDirection.Row}; { - button = new Button(null); - button.width = 200; - button.height = 50; + buttonToggle = new Toggle(null) { text = "Button", on = true }; + labelToggle = new Toggle(null) { text = "Label", on = true }; + sliderToggle = new Toggle(null) { text = "Slider", on = true }; + textToggle = new Toggle(null) { text = "TextField", on = true }; + + togglesContainer.AddChild(buttonToggle); + togglesContainer.AddChild(labelToggle); + togglesContainer.AddChild(sliderToggle); + togglesContainer.AddChild(textToggle); + } + + var elementsContainer = new VisualContainer() { layout = new Rect(0, 200, 800, 400), backgroundColor = Color.gray}; + { + button = new Button(null) { width = 200, height = 50 }; + + label = new Label("Label"); + slider = new Slider(0,100,null) { width = 300 }; + textField = new TextField() { text = "TextField aligned to center", width = 250, alignSelf = Align.Center, positionTop = 100}; + elementsContainer.AddChild(button); + elementsContainer.AddChild(label); + elementsContainer.AddChild(slider); + elementsContainer.AddChild(textField); } rootVisualContainer.AddChild(optionsContainer); + rootVisualContainer.AddChild(togglesContainer); rootVisualContainer.AddChild(elementsContainer); - - // var optionsContainer = new VisualContainer() { name = "OptionsContainer" }; - // { - // var positionContainer = new VisualContainer() { name = "PositionContainer", flexDirection = FlexDirection.Row }; - // { - // positionLabel = new Label("Position value: ") { name = "TestPositionLabel" }; - // positionContainer.AddChild(positionLabel); - - // positionSlider = new Slider(lowPosition, highPosition, PositionChanged); - // positionContainer.AddChild(positionSlider); - - // positionLabel = new Label("Position value: ") { name = "TestPositionLabel" }; - // positionContainer.AddChild(positionLabel); - // positionSlider = new Slider(lowPosition, highPosition, PositionChanged); - // positionContainer.AddChild(positionSlider); - // } - // optionsContainer.AddChild(positionContainer); - - // var rotationContainer = new VisualContainer() { name = "RotationContainer" }; - // { - // rotationLabel = new Label("Rotation value: ") { name = "TestRotationLabel" }; - // rotationContainer.AddChild(rotationLabel); - // rotationSlider = new Slider(lowRotation, highRotation, RotationChanged); - // rotationContainer.AddChild(rotationSlider); - // } - // optionsContainer.AddChild(rotationContainer); - - // var scaleContainer = new VisualContainer() { name = "ScaleContainer" }; - // { - // scaleLabel = new Label("Scale value: ") { name = "TestScaleLabel" }; - // scaleContainer.AddChild(scaleLabel); - // scaleSlider = new Slider(lowScale, highScale, ScaleChanged); - // scaleContainer.AddChild(scaleSlider); - // } - // optionsContainer.AddChild(scaleContainer); - - // var togglesContainer = new VisualContainer() { name = "TogglesContainer" }; - // { - // buttonToggle = new Toggle(ToggleButton) { name = "ButtonToggle", text = "Button", on = true }; - // togglesContainer.AddChild(buttonToggle); - // labelToggle = new Toggle(ToggleLabel) { name = "LabelToggle", text = "Label", on = true }; - // togglesContainer.AddChild(labelToggle); - // textFieldToggle = new Toggle(ToggleTextField) { name = "TextFieldToggle", text = "TextField", on = true }; - // togglesContainer.AddChild(textFieldToggle); - - // button2Toggle = new Toggle(ToggleButton2) { name = "Button2Toggle", text = "Button 2", on = true }; - // togglesContainer.AddChild(button2Toggle); - // label2Toggle = new Toggle(ToggleLabel2) { name = "Label2Toggle", text = "Label 2", on = true }; - // togglesContainer.AddChild(label2Toggle); - // } - // optionsContainer.AddChild(togglesContainer); - // } - // rootVisualContainer.AddChild(optionsContainer); - - // var elementsContainer = new VisualContainer() { name = "ElementsContainer" }; - // { - // buttonGeometry = new Button(null) { name = "ButtonGeometry" }; - // elementsContainer.AddChild(buttonGeometry); - // labelGeometry = new Label("Some label that will move") { name = "LabelGeometry" }; - // elementsContainer.AddChild(labelGeometry); - // textFieldGeometry = new TextField() - // { - // name = "TextFieldGeometry", - // text = "This is a UIElements text field\nSome text here\n\nLorem Ipsum", - // }; - // elementsContainer.AddChild(textFieldGeometry); - // } - // rootVisualContainer.AddChild(elementsContainer); - - // var elementsContainer2 = new VisualContainer(); - // { - // buttonGeometry2 = new Button(null); - // buttonGeometry2.text = "Some button for testing"; - // elementsContainer2.AddChild(buttonGeometry2); - // labelGeometry2 = new Label("Some other label that will move") { name = "LabelGeometry2" }; - // elementsContainer2.AddChild(labelGeometry2); - // } - // rootVisualContainer.AddChild(positionContainer); } - // void PositionChanged(float value) - // { - // positionLabel.text = "Position value: " + (int)value; - // positionLabel.Dirty(ChangeType.Styles); - - // if(buttonToggle.on) - // buttonGeometry.transform.position = new Vector3(value,0,0); - // if(labelToggle.on) - // labelGeometry.transform.position = new Vector3(value,0,0); - // if(textFieldToggle.on) - // textFieldGeometry.transform.position = new Vector3(value,0,0); - // if(button2Toggle.on) - // buttonGeometry2.transform.position = new Vector3(0,value,0); - // if(label2Toggle.on) - // labelGeometry2.transform.position = new Vector3(0,value,0); - // } - // void RotationChanged(float value) - // { - // rotationLabel.text = "Rotation value: " + (int)value; - // rotationLabel.Dirty(ChangeType.Styles); - // buttonGeometry.transform.rotation = Quaternion.Euler(0,0,value); - - // if(buttonToggle.on) - // buttonGeometry.transform.rotation = Quaternion.Euler(0,0,value); - // if(labelToggle.on) - // labelGeometry.transform.rotation = Quaternion.Euler(0,0,value); - // if(textFieldToggle.on) - // textFieldGeometry.transform.rotation = Quaternion.Euler(0,0,value); - // if (button2Toggle.on) - // buttonGeometry2.transform.rotation = Quaternion.Euler(0, 0, value); - // if (label2Toggle.on) - // labelGeometry2.transform.rotation = Quaternion.Euler(0, 0, value); - // } - // void ScaleChanged(float value) - // { - // scaleLabel.text = "Scale value: " + value; - // scaleLabel.Dirty(ChangeType.Styles); - - // if(buttonToggle.on) - // buttonGeometry.transform.scale = new Vector3(value,value,1); - // if(labelToggle.on) - // labelGeometry.transform.scale = new Vector3(value,value,1); - // if(textFieldToggle.on) - // textFieldGeometry.transform.scale = new Vector3(value,value,1); - // if(button2Toggle.on) - // buttonGeometry2.transform.scale = new Vector3(value,value,1); - // if(label2Toggle.on) - // labelGeometry2.transform.scale = new Vector3(value,value,1); - // } - - // void ToggleButton() - // { - // buttonGeometry.visible = buttonToggle.on; - // } - - // void ToggleLabel() - // { - // labelGeometry.visible = labelToggle.on; - // } - - // void ToggleTextField() - // { - // textFieldGeometry.visible = textFieldToggle.on; - // } - // void ToggleButton2() - // { - // buttonGeometry2.visible = button2Toggle.on; - // } - - // void ToggleLabel2() - // { - // labelGeometry2.visible = label2Toggle.on; - // } - void ResetTransform() { - button.transform.position = Vector3.zero; - button.transform.rotation = Quaternion.identity; - button.transform.scale = Vector3.one; + if (buttonToggle.on) + { + button.transform.position = Vector3.zero; + button.transform.rotation = Quaternion.identity; + button.transform.scale = Vector3.one; + } + + if (labelToggle.on) + { + label.transform.position = Vector3.zero; + label.transform.rotation = Quaternion.identity; + label.transform.scale = Vector3.one; + } + + if (sliderToggle.on) + { + slider.transform.position = Vector3.zero; + slider.transform.rotation = Quaternion.identity; + slider.transform.scale = Vector3.one; + } + + if (textToggle.on) + { + textField.transform.position = Vector3.zero; + textField.transform.rotation = Quaternion.identity; + textField.transform.scale = Vector3.one; + } positionLabel.text = "Position --> X: " + 0 + ", Y: " + 0 + ", Z: " + 0; rotationLabel.text = "Rotation --> X: " + 0 + ", Y: " + 0 + ", Z: " + 0; @@ -323,28 +200,48 @@ void ResetTransform() zScaSlider.value = 1; positionLabel.Dirty(ChangeType.Styles); - //Repaint(); } void PositionChanged() { positionLabel.text = "Position --> X: " + (int)xPosSlider.value + ", Y: " + (int)yPosSlider.value + ", Z: " + (int)zPosSlider.value; positionLabel.Dirty(ChangeType.Styles); - button.transform.position = new Vector3(xPosSlider.value, yPosSlider.value, zPosSlider.value); + if(buttonToggle.on) + button.transform.position = new Vector3(xPosSlider.value, yPosSlider.value, zPosSlider.value); + if(labelToggle.on) + label.transform.position = new Vector3(xPosSlider.value, yPosSlider.value, zPosSlider.value); + if(sliderToggle.on) + slider.transform.position = new Vector3(xPosSlider.value, yPosSlider.value, zPosSlider.value); + if(textToggle.on) + textField.transform.position = new Vector3(xPosSlider.value, yPosSlider.value, zPosSlider.value); } void RotationChanged() { rotationLabel.text = "Rotation --> X: " + (int)xRotSlider.value + ", Y: " + (int)yRotSlider.value + ", Z: " + (int)zRotSlider.value; rotationLabel.Dirty(ChangeType.Styles); - button.transform.rotation = Quaternion.Euler(xRotSlider.value, yRotSlider.value, zRotSlider.value); + if(buttonToggle.on) + button.transform.rotation = Quaternion.Euler(xRotSlider.value, yRotSlider.value, zRotSlider.value); + if(labelToggle.on) + label.transform.rotation = Quaternion.Euler(xRotSlider.value, yRotSlider.value, zRotSlider.value); + if(sliderToggle.on) + slider.transform.rotation = Quaternion.Euler(xRotSlider.value, yRotSlider.value, zRotSlider.value); + if(textToggle.on) + textField.transform.rotation = Quaternion.Euler(xRotSlider.value, yRotSlider.value, zRotSlider.value); } void ScaleChanged() { scaleLabel.text = "Scale --> X: " + Math.Round(xScaSlider.value,2) + ", Y: " + Math.Round(yScaSlider.value, 2) + ", Z: " + Math.Round(zScaSlider.value, 2); scaleLabel.Dirty(ChangeType.Styles); - button.transform.scale = new Vector3(xScaSlider.value, yScaSlider.value, zScaSlider.value); + if(buttonToggle.on) + button.transform.scale = new Vector3(xScaSlider.value, yScaSlider.value, zScaSlider.value); + if(labelToggle.on) + label.transform.scale = new Vector3(xScaSlider.value, yScaSlider.value, zScaSlider.value); + if(sliderToggle.on) + slider.transform.scale = new Vector3(xScaSlider.value, yScaSlider.value, zScaSlider.value); + if(textToggle.on) + textField.transform.scale = new Vector3(xScaSlider.value, yScaSlider.value, zScaSlider.value); } } } \ No newline at end of file From 43f08d61f11a723ad0e96c2857299247f544feb8 Mon Sep 17 00:00:00 2001 From: Mikael Brochu Date: Wed, 14 Jun 2017 10:46:35 -0400 Subject: [PATCH 3/3] updated readme --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 6f5674a..706949a 100644 --- a/README.md +++ b/README.md @@ -13,3 +13,4 @@ Please refer to the [Documentation preview document](https://docs.google.com/a/u 4. [Events](Assets/Editor/E04_Events.cs) 5. [Controls](Assets/Editor/E05_Controls.cs) 6. [IMGUI support](Assets/Editor/E06_IMGUISupport.cs) +7. [VisualElement transform](Assets/Editor/E07_VisualElementTransform.cs)