ActionsWindow.xaml.cs 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. using Robust.Client.AutoGenerated;
  2. using Robust.Client.UserInterface.Controls;
  3. using Robust.Client.UserInterface.CustomControls;
  4. using Robust.Client.UserInterface.XAML;
  5. namespace Content.Client.UserInterface.Systems.Actions.Windows;
  6. [GenerateTypedNameReferences]
  7. public sealed partial class ActionsWindow : DefaultWindow
  8. {
  9. public MultiselectOptionButton<Filters> FilterButton { get; private set; }
  10. /// <summary>
  11. /// Whether the displayed actions or search filter needs updating.
  12. /// </summary>
  13. public bool UpdateNeeded;
  14. public ActionsWindow()
  15. {
  16. RobustXamlLoader.Load(this);
  17. SearchContainer.AddChild(FilterButton = new MultiselectOptionButton<Filters>
  18. {
  19. Label = Loc.GetString("ui-actionmenu-filter-button")
  20. });
  21. foreach (var filter in Enum.GetValues<Filters>())
  22. {
  23. FilterButton.AddItem(Loc.GetString($"ui-actionmenu-{filter.ToString().ToLower()}"), filter);
  24. }
  25. }
  26. public enum Filters
  27. {
  28. Enabled,
  29. Item,
  30. Innate,
  31. Instant,
  32. Targeted
  33. }
  34. }