diff --git a/Content.Client/_Forge/Silicons/StationAi/StationAiCustomizationBoundUserInterface.cs b/Content.Client/_Forge/Silicons/StationAi/StationAiCustomizationBoundUserInterface.cs new file mode 100644 index 00000000000..a7d05a52fa3 --- /dev/null +++ b/Content.Client/_Forge/Silicons/StationAi/StationAiCustomizationBoundUserInterface.cs @@ -0,0 +1,23 @@ +using Content.Shared._Forge.Silicons.StationAi; +using Robust.Client.UserInterface; + +namespace Content.Client._Forge.Silicons.StationAi; + +public sealed class StationAiCustomizationBoundUserInterface(EntityUid owner, Enum uiKey) : BoundUserInterface(owner, uiKey) +{ + private StationAiCustomizationWindow? _window; + + protected override void Open() + { + base.Open(); + _window = this.CreateWindow(); + _window.OnApply += (name, screen, color) => SendMessage(new StationAiCustomizationApplyMessage(name, screen, color)); + } + + protected override void UpdateState(BoundUserInterfaceState state) + { + base.UpdateState(state); + if (state is StationAiCustomizationState customization) + _window?.UpdateState(customization); + } +} diff --git a/Content.Client/_Forge/Silicons/StationAi/StationAiCustomizationWindow.xaml b/Content.Client/_Forge/Silicons/StationAi/StationAiCustomizationWindow.xaml new file mode 100644 index 00000000000..d4a68d4efac --- /dev/null +++ b/Content.Client/_Forge/Silicons/StationAi/StationAiCustomizationWindow.xaml @@ -0,0 +1,23 @@ + + +