コード例 #1
0
        public VariableEditingHandler(BindableElement field)
        {
            targetField = field;

            if (targetField is DimensionStyleField || targetField is NumericStyleField || targetField is IntegerStyleField)
            {
                m_CompleterOnTarget           = CreateCompleter();
                m_CompleterOnTarget.textField = targetField.Q <TextField>();
            }

            labelElement = new Label();

            var fieldLabel = targetField.GetValueByReflection("labelElement") as Label;

            // TODO: Will need to bring this back once we can also do the dragger at the same time.
            //fieldLabel.RegisterCallback<MouseDownEvent>(OnMouseDownEvent);
            labelElement.RegisterValueChangedCallback(e => { e.StopImmediatePropagation(); });

            fieldLabel.Add(labelElement);
            labelElement.AddToClassList(s_LabelClassName);
            labelElement.text = fieldLabel.text;

            fieldLabel.generateVisualContent = null; // Leave the text of the default label as it is used in some queries (in tests) but prevent the text from being rendered

            m_Inspector = targetField.GetFirstAncestorOfType <BuilderInspector>();
            if (m_Inspector != null)
            {
                m_Builder = m_Inspector.paneWindow as Builder;
                m_Row     = targetField.GetFirstAncestorOfType <BuilderStyleRow>();
            }
        }
コード例 #2
0
        public VariableEditingHandler(BindableElement field)
        {
            targetField              = field;
            labelElement             = new Label();
            labelElement.pickingMode = PickingMode.Position;

            var fieldLabel = targetField.GetValueByReflection("labelElement") as Label;

            fieldLabel.RegisterCallback <MouseDownEvent>(OnMouseDownEvent);
            labelElement.RegisterValueChangedCallback(e => { e.StopImmediatePropagation(); });

            fieldLabel.Add(labelElement);
            labelElement.AddToClassList(s_LabelClassName);
            labelElement.text = fieldLabel.text;

            fieldLabel.generateVisualContent = null; // Leave the text of the default label as it is used in some queries (in tests) but prevent the text from being rendered

            m_Inspector = targetField.GetFirstAncestorOfType <BuilderInspector>();
            if (m_Inspector != null)
            {
                m_Builder = m_Inspector.paneWindow as Builder;
                m_Row     = targetField.GetFirstAncestorOfType <BuilderStyleRow>();
            }
        }