From b638d4e752dc9967f06c5206c42f41cbe90c8225 Mon Sep 17 00:00:00 2001 From: Alek-ban Date: Mon, 9 Feb 2026 15:23:43 +0300 Subject: [PATCH] feat: SectionPanel --- GSS2.Test/ViewModels/MainViewModel.cs | 9 ++- GSS2.Test/Views/MainView.axaml | 18 +++-- GSS2.UI.Core/SectionPanel.cs | 96 +++++++++++++++++++++++++++ 3 files changed, 114 insertions(+), 9 deletions(-) create mode 100644 GSS2.UI.Core/SectionPanel.cs diff --git a/GSS2.Test/ViewModels/MainViewModel.cs b/GSS2.Test/ViewModels/MainViewModel.cs index afab441..1cfad08 100644 --- a/GSS2.Test/ViewModels/MainViewModel.cs +++ b/GSS2.Test/ViewModels/MainViewModel.cs @@ -13,7 +13,10 @@ public partial class MainViewModel : ViewModelBase [ObservableProperty] private CameraViewModel _cameraViewModel; [ObservableProperty] private ResourcesViewModel _resourcesViewModel; [ObservableProperty] private OpenCvSharp.Mat? _image; - [ObservableProperty] private IRelayCommand _buttonClick; + [ObservableProperty] private IRelayCommand _buttonCaptureClick; + [ObservableProperty] private IRelayCommand _buttonUpClick; + [ObservableProperty] private IRelayCommand _buttonDownClick; + [ObservableProperty] private int _currentIndex; public MainViewModel(ILogger logger, CameraViewModel cameraViewModel, ResourcesViewModel resourcesViewModel, CameraService cameraService) { @@ -21,10 +24,12 @@ public partial class MainViewModel : ViewModelBase _cameraService = cameraService; CameraViewModel = cameraViewModel; ResourcesViewModel = resourcesViewModel; - ButtonClick = new RelayCommand(() => + ButtonCaptureClick = new RelayCommand(() => { Task.Run(() => cameraService.CaptureImage(CancellationToken.None, 10).ContinueWith(image => Image = image.Result)); }); + ButtonUpClick = new RelayCommand(() => CurrentIndex--); + ButtonDownClick = new RelayCommand(() => CurrentIndex++); _logger.LogInformation("{} initialized", nameof(MainViewModel)); } diff --git a/GSS2.Test/Views/MainView.axaml b/GSS2.Test/Views/MainView.axaml index 6256e2f..4b61d85 100644 --- a/GSS2.Test/Views/MainView.axaml +++ b/GSS2.Test/Views/MainView.axaml @@ -6,12 +6,16 @@ xmlns:core="using:GSS2.UI.Core" x:DataType="local_vm:MainViewModel" x:Class="GSS2.Test.Views.MainView"> - - - - -