AmiiboWindow.axaml.cs 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. using Avalonia.Interactivity;
  2. using Ryujinx.Ava.Common.Locale;
  3. using Ryujinx.Ava.UI.ViewModels;
  4. using Ryujinx.Ui.Common.Models.Amiibo;
  5. namespace Ryujinx.Ava.UI.Windows
  6. {
  7. public partial class AmiiboWindow : StyleableWindow
  8. {
  9. public AmiiboWindow(bool showAll, string lastScannedAmiiboId, string titleId)
  10. {
  11. ViewModel = new AmiiboWindowViewModel(this, lastScannedAmiiboId, titleId);
  12. ViewModel.ShowAllAmiibo = showAll;
  13. DataContext = ViewModel;
  14. InitializeComponent();
  15. Title = $"Ryujinx {Program.Version} - " + LocaleManager.Instance[LocaleKeys.Amiibo];
  16. }
  17. public AmiiboWindow()
  18. {
  19. ViewModel = new AmiiboWindowViewModel(this, string.Empty, string.Empty);
  20. DataContext = ViewModel;
  21. InitializeComponent();
  22. if (Program.PreviewerDetached)
  23. {
  24. Title = $"Ryujinx {Program.Version} - " + LocaleManager.Instance[LocaleKeys.Amiibo];
  25. }
  26. }
  27. public bool IsScanned { get; set; }
  28. public AmiiboApi ScannedAmiibo { get; set; }
  29. public AmiiboWindowViewModel ViewModel { get; set; }
  30. private void ScanButton_Click(object sender, RoutedEventArgs e)
  31. {
  32. if (ViewModel.AmiiboSelectedIndex > -1)
  33. {
  34. AmiiboApi amiibo = ViewModel.AmiiboList[ViewModel.AmiiboSelectedIndex];
  35. ScannedAmiibo = amiibo;
  36. IsScanned = true;
  37. Close();
  38. }
  39. }
  40. private void CancelButton_Click(object sender, RoutedEventArgs e)
  41. {
  42. IsScanned = false;
  43. Close();
  44. }
  45. }
  46. }