Ejemplo n.º 1
0
        private void ColorValueChanged()
        {
            var newColor = new Color(
                _colorSliderR.ColorValue,
                _colorSliderG.ColorValue,
                _colorSliderB.ColorValue
                );

            OnHairColorPicked?.Invoke(newColor);
            _lastColor = newColor;
            UpdateStylePickerColor();
        }
        public HairPickerWindow(IResourceCache resourceCache, ILocalizationManager localization)
        {
            Title         = "Hair";
            ResourceCache = resourceCache;
            var vBox = new VBoxContainer();

            Contents.AddChild(vBox);

            var colorHBox = new HBoxContainer();

            vBox.AddChild(colorHBox);

            var colorLabel = new Label
            {
                Text = localization.GetString("Color: ")
            };

            colorHBox.AddChild(colorLabel);

            var colorEdit = new LineEdit
            {
                SizeFlagsHorizontal = SizeFlags.FillExpand
            };

            colorEdit.OnTextChanged += args =>
            {
                var color = Color.TryFromHex(args.Text);
                if (color.HasValue)
                {
                    OnHairColorPicked?.Invoke(color.Value);
                }
            };
            colorHBox.AddChild(colorEdit);

            Items = new ItemList
            {
                SizeFlagsVertical = SizeFlags.FillExpand,
            };
            vBox.AddChild(Items);
            Items.OnItemSelected += ItemSelected;
        }
 private void ColorValueChanged(Color newColor)
 {
     OnHairColorPicked?.Invoke(newColor);
     _lastColor = newColor;
     UpdateStylePickerColor();
 }