| 123456789101112131415161718192021222324252627282930313233343536373839404142 |
- using Content.Shared.SprayPainter;
- using Content.Shared.SprayPainter.Components;
- using Robust.Client.UserInterface;
- using Robust.Client.UserInterface.Controls;
- namespace Content.Client.SprayPainter.UI;
- public sealed class SprayPainterBoundUserInterface : BoundUserInterface
- {
- [ViewVariables]
- private SprayPainterWindow? _window;
- public SprayPainterBoundUserInterface(EntityUid owner, Enum uiKey) : base(owner, uiKey)
- {
- }
- protected override void Open()
- {
- base.Open();
- _window = this.CreateWindow<SprayPainterWindow>();
- _window.OnSpritePicked = OnSpritePicked;
- _window.OnColorPicked = OnColorPicked;
- if (EntMan.TryGetComponent(Owner, out SprayPainterComponent? comp))
- {
- _window.Populate(EntMan.System<SprayPainterSystem>().Entries, comp.Index, comp.PickedColor, comp.ColorPalette);
- }
- }
- private void OnSpritePicked(ItemList.ItemListSelectedEventArgs args)
- {
- SendMessage(new SprayPainterSpritePickedMessage(args.ItemIndex));
- }
- private void OnColorPicked(ItemList.ItemListSelectedEventArgs args)
- {
- var key = _window?.IndexToColorKey(args.ItemIndex);
- SendMessage(new SprayPainterColorPickedMessage(key));
- }
- }
|