1
0

TransferAmountWindow.xaml.cs 1.2 KB

123456789101112131415161718192021222324252627282930313233343536
  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.Chemistry.UI
  6. {
  7. [GenerateTypedNameReferences]
  8. public sealed partial class TransferAmountWindow : DefaultWindow
  9. {
  10. private int _max = Int32.MaxValue;
  11. private int _min = 1;
  12. public TransferAmountWindow()
  13. {
  14. RobustXamlLoader.Load(this);
  15. AmountLineEdit.OnTextChanged += OnValueChanged;
  16. }
  17. public void SetBounds(int min, int max)
  18. {
  19. _min = min;
  20. _max = max;
  21. MinimumAmount.Text = Loc.GetString("comp-solution-transfer-set-amount-min", ("amount", _min));
  22. MaximumAmount.Text = Loc.GetString("comp-solution-transfer-set-amount-max", ("amount", _max));
  23. }
  24. private void OnValueChanged(LineEdit.LineEditEventArgs args)
  25. {
  26. if (!int.TryParse(AmountLineEdit.Text, out var amount) || amount > _max || amount < _min)
  27. ApplyButton.Disabled = true;
  28. else
  29. ApplyButton.Disabled = false;
  30. }
  31. }
  32. }