using Robust.Client.UserInterface; using Robust.Client.UserInterface.Controls; namespace Content.Client.Humanoid; public sealed class EyeColorPicker : Control { public event Action? OnEyeColorPicked; private readonly ColorSelectorSliders _colorSelectors; private Color _lastColor; public void SetData(Color color) { _lastColor = color; _colorSelectors.Color = color; } public EyeColorPicker() { var vBox = new BoxContainer { Orientation = BoxContainer.LayoutOrientation.Vertical }; AddChild(vBox); vBox.AddChild(_colorSelectors = new ColorSelectorSliders()); _colorSelectors.SelectorType = ColorSelectorSliders.ColorSelectorType.Hsv; // defaults color selector to HSV _colorSelectors.OnColorChanged += ColorValueChanged; } private void ColorValueChanged(Color newColor) { OnEyeColorPicked?.Invoke(newColor); _lastColor = newColor; } }