Ejemplo n.º 1
0
        private void CreateFrame()
        {
            SetLabel(Proxy.Label, Proxy.Tooltip);

            _addButton = AddHeaderButton(_addIcon.Texture, Proxy.AddTooltip, AddButtonUssClassName, AddItem);
            _addButton.SetEnabled(false);
            _removeButtons = Content.Query <IconButton>(className: RemoveButtonUssClassName).Build();

            _keyField = new TextField();
            _keyField.AddToClassList(HeaderKeyTextUssClassName);
            _keyField.RegisterValueChangedCallback(evt => AddKeyChanged(evt.newValue));
            _keyField.Q(TextField.textInputUssName).RegisterCallback <KeyDownEvent>(evt => KeyPressed(evt));

            var keyPlaceholder = new PlaceholderControl(Proxy.AddPlaceholder);

            keyPlaceholder.AddToField(_keyField);

            Header.Add(_keyField);
            _keyField.PlaceInFront(Label);

            var empty = new TextElement {
                text = Proxy.EmptyLabel, tooltip = Proxy.EmptyTooltip
            };

            empty.AddToClassList(EmptyLabelUssClassName);

            Content.Add(empty);

            _itemsContainer = new VisualElement();
            _itemsContainer.AddToClassList(ItemsUssClassName);

            Content.Add(_itemsContainer);
        }
Ejemplo n.º 2
0
        public override VisualElement CreatePropertyGUI(SerializedProperty property)
        {
            var element = this.CreateNextElement(property);
            var placeholderAttribute = attribute as PlaceholderAttribute;
            var textField            = element.Q <TextField>();

            if (textField != null)
            {
                var placeholder = new PlaceholderControl(placeholderAttribute.Text);
                placeholder.AddToField(textField);
                return(element);
            }
            else
            {
                Debug.LogWarningFormat(_invalidDrawerWarning, property.propertyPath);
                return(new FieldContainer(property.displayName));
            }
        }