using System; using UnityEditor.Perception.Randomization; using UnityEditor.UIElements; using UnityEngine.Perception.GroundTruth; using UnityEngine.UIElements; namespace UnityEditor.Perception.GroundTruth.DatasetConsumer { public class ConsumerEndpointElement : VisualElement { const string k_CollapsedParameterClass = "collapsed"; SerializedProperty m_Collapsed; VisualElement m_PropertiesContainer; SerializedProperty m_Property; public ConsumerEndpointElement(SerializedProperty property, EndpointList endpointList) { m_Property = property; this.endpointList = endpointList; m_Collapsed = property.FindPropertyRelative("collapsed"); collapsed = m_Collapsed.boolValue; AssetDatabase.LoadAssetAtPath( $"{StaticData.uxmlDir}/ConsumerEndpoint/ConsumerEndpointElement.uxml").CloneTree(this); var classNameLabel = this.Q("class-name"); var splitType = property.managedReferenceFullTypename.Split(' ', '.'); classNameLabel.text = splitType[splitType.Length - 1]; m_PropertiesContainer = this.Q("properties"); var collapseToggle = this.Q("collapse"); collapseToggle.RegisterCallback(evt => collapsed = !collapsed); var enabledToggle = this.Q("enabled"); enabledToggle.BindProperty(property.FindPropertyRelative("m_Enabled")); var removeButton = this.Q