FileAssociationsView.axaml.cs 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. using Avalonia.Controls;
  2. using PicView.Avalonia.ViewModels;
  3. namespace PicView.Avalonia.Views;
  4. public partial class FileAssociationsView : UserControl
  5. {
  6. private readonly List<(CheckBox CheckBox, string SearchText)> _allCheckBoxes = [];
  7. public FileAssociationsView()
  8. {
  9. InitializeComponent();
  10. FilterBox.TextChanged += FilterBox_TextChanged;
  11. // Clear button functionality
  12. var clearButton = ClearButton;
  13. if (clearButton != null)
  14. {
  15. clearButton.Click += (s, e) =>
  16. {
  17. FilterBox.Text = string.Empty;
  18. FilterCheckBoxes(string.Empty);
  19. };
  20. }
  21. // Initialize the collection of checkboxes for filtering
  22. InitializeCheckBoxesCollection();
  23. }
  24. private void InitializeCheckBoxesCollection()
  25. {
  26. var container = FileTypesContainer;
  27. if (DataContext is not MainViewModel vm)
  28. {
  29. return;
  30. }
  31. foreach (var fileTypeGroup in vm.AssociationsViewModel.FileTypeGroups)
  32. {
  33. }
  34. }
  35. private void FilterBox_TextChanged(object? sender, EventArgs e)
  36. {
  37. FilterCheckBoxes(FilterBox.Text);
  38. }
  39. private void FilterCheckBoxes(string filterText)
  40. {
  41. }
  42. }