refactor: format axamls

This commit is contained in:
2026-02-19 08:58:46 +03:00
parent 41e34e05e8
commit 14832e14c5
9 changed files with 289 additions and 172 deletions
+7 -3
View File
@@ -1,12 +1,16 @@
<Application xmlns="https://github.com/avaloniaui" <Application
x:Class="GSS2.Test.App"
xmlns="https://github.com/avaloniaui"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="using:GSS2.Test" xmlns:local="using:GSS2.Test"
x:Class="GSS2.Test.App"
RequestedThemeVariant="Dark"> RequestedThemeVariant="Dark">
<Application.Styles> <Application.Styles>
<FluentTheme /> <FluentTheme />
</Application.Styles> </Application.Styles>
<Application.DataTemplates> <Application.DataTemplates>
<local:DependencyInjectionViewLocator/> <local:DependencyInjectionViewLocator />
</Application.DataTemplates> </Application.DataTemplates>
</Application> </Application>
+11 -8
View File
@@ -1,10 +1,13 @@
<Window xmlns="https://github.com/avaloniaui" <Window
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:vm="using:GSS2.Test.ViewModels"
x:DataType="vm:MainWindowViewModel"
x:Class="GSS2.Test.MainWindow" x:Class="GSS2.Test.MainWindow"
Title="{Binding Title}"> xmlns="https://github.com/avaloniaui"
<ContentControl Content="{Binding MainViewModel}"/> xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:vm="using:GSS2.Test.ViewModels"
Title="{Binding Title}"
x:DataType="vm:MainWindowViewModel">
<ContentControl Content="{Binding MainViewModel}" />
</Window> </Window>
+88 -18
View File
@@ -1,30 +1,100 @@
<UserControl xmlns="https://github.com/avaloniaui" <UserControl
x:Class="GSS2.Test.Views.MainView"
xmlns="https://github.com/avaloniaui"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:local_vm="using:GSS2.Test.ViewModels"
xmlns:core_vm="using:GSS2.UI.Core.ViewModels"
xmlns:core="using:GSS2.UI.Core" xmlns:core="using:GSS2.UI.Core"
x:DataType="local_vm:MainViewModel" xmlns:core_vm="using:GSS2.UI.Core.ViewModels"
x:Class="GSS2.Test.Views.MainView"> xmlns:local_vm="using:GSS2.Test.ViewModels"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
x:DataType="local_vm:MainViewModel">
<Grid ColumnDefinitions="*,100" RowDefinitions="*,*"> <Grid ColumnDefinitions="*,100" RowDefinitions="*,*">
<Button Grid.Row="0" Grid.Column="1" VerticalAlignment="Stretch" HorizontalAlignment="Stretch" IsEnabled="{Binding CanScrollBackward}" Command="{Binding ButtonUpClick}"/>
<Button Grid.Row="1" Grid.Column="1" VerticalAlignment="Stretch" HorizontalAlignment="Stretch" IsEnabled="{Binding CanScrollForward}" Command="{Binding ButtonDownClick}"/> <core:SectionPanel
Grid.Row="0"
Grid.RowSpan="2"
Grid.Column="0"
CanScrollBackward="{Binding CanScrollBackward}"
CanScrollForward="{Binding CanScrollForward}"
ClipToBounds="True"
CurrentIndex="{Binding CurrentIndex}">
<core:SectionPanel Grid.Row="0" Grid.RowSpan="2" Grid.Column="0" ClipToBounds="True" CanScrollForward="{Binding CanScrollForward}" CanScrollBackward="{Binding CanScrollBackward}" CurrentIndex="{Binding CurrentIndex}">
<Grid ColumnDefinitions="300,*"> <Grid ColumnDefinitions="300,*">
<ContentControl Grid.Column="0" VerticalAlignment="Stretch" HorizontalAlignment="Stretch" Content="{Binding IlluminatorControllerViewModel}" />
<ContentControl Grid.Column="1" VerticalAlignment="Stretch" HorizontalAlignment="Stretch" Content="{Binding CameraViewModel}" /> <ContentControl
Grid.Column="0"
HorizontalAlignment="Stretch"
VerticalAlignment="Stretch"
Content="{Binding IlluminatorControllerViewModel}" />
<ContentControl
Grid.Column="1"
HorizontalAlignment="Stretch"
VerticalAlignment="Stretch"
Content="{Binding CameraViewModel}" />
</Grid> </Grid>
<Grid ColumnDefinitions="100,*"> <Grid ColumnDefinitions="100,*">
<Button Grid.Column="0" VerticalAlignment="Stretch" HorizontalAlignment="Stretch" Command="{Binding ButtonCaptureClick}"/>
<Grid Grid.Column="1" ColumnDefinitions="*,*" RowDefinitions="*,*" > <Button
<core:OpenCvImage Grid.Column="0" Grid.Row="0" Image="{Binding Image1}" /> Grid.Column="0"
<core:OpenCvImage Grid.Column="1" Grid.Row="0" Image="{Binding Image2}" /> HorizontalAlignment="Stretch"
<core:OpenCvImage Grid.Column="0" Grid.Row="1" Image="{Binding Image3}" /> VerticalAlignment="Stretch"
<core:OpenCvImage Grid.Column="1" Grid.Row="1" Image="{Binding Image4}" /> Command="{Binding ButtonCaptureClick}" />
<Grid
Grid.Column="1"
ColumnDefinitions="*,*"
RowDefinitions="*,*">
<core:OpenCvImage
Grid.Row="0"
Grid.Column="0"
Image="{Binding Image1}" />
<core:OpenCvImage
Grid.Row="0"
Grid.Column="1"
Image="{Binding Image2}" />
<core:OpenCvImage
Grid.Row="1"
Grid.Column="0"
Image="{Binding Image3}" />
<core:OpenCvImage
Grid.Row="1"
Grid.Column="1"
Image="{Binding Image4}" />
</Grid> </Grid>
</Grid> </Grid>
<ContentControl VerticalAlignment="Stretch" HorizontalAlignment="Stretch" Content="{Binding ResourcesViewModel}" />
<ContentControl
HorizontalAlignment="Stretch"
VerticalAlignment="Stretch"
Content="{Binding ResourcesViewModel}" />
</core:SectionPanel> </core:SectionPanel>
<Button
Grid.Row="0"
Grid.Column="1"
HorizontalAlignment="Stretch"
VerticalAlignment="Stretch"
Command="{Binding ButtonUpClick}"
IsEnabled="{Binding CanScrollBackward}" />
<Button
Grid.Row="1"
Grid.Column="1"
HorizontalAlignment="Stretch"
VerticalAlignment="Stretch"
Command="{Binding ButtonDownClick}"
IsEnabled="{Binding CanScrollForward}" />
</Grid> </Grid>
</UserControl> </UserControl>
+5 -5
View File
@@ -1,13 +1,13 @@
<Control xmlns="https://github.com/avaloniaui" <Control
x:Class="GSS2.UI.Core.Views.CameraView"
xmlns="https://github.com/avaloniaui"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:vm="using:GSS2.UI.Core.ViewModels" xmlns:vm="using:GSS2.UI.Core.ViewModels"
x:DataType="vm:CameraViewModel"
x:Class="GSS2.UI.Core.Views.CameraView"
HorizontalAlignment="Stretch" HorizontalAlignment="Stretch"
VerticalAlignment="Stretch" VerticalAlignment="Stretch"
x:DataType="vm:CameraViewModel"
Background="{Binding Background}" Background="{Binding Background}"
StretchMode="{Binding StretchMode}" StretchMode="{Binding StretchMode}"
TileMode="{Binding TileMode}"> TileMode="{Binding TileMode}" />
</Control>
@@ -1,80 +1,89 @@
<UserControl xmlns="https://github.com/avaloniaui" <UserControl
x:Class="GSS2.UI.Core.Views.IlluminatorControllerView"
xmlns="https://github.com/avaloniaui"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:layout="using:Avalonia.Layout"
xmlns:local="using:GSS2.UI.Core.Views"
xmlns:vm="using:GSS2.UI.Core.ViewModels"
xmlns:behaviors="using:GSS2.UI.Core.Behaviors" xmlns:behaviors="using:GSS2.UI.Core.Behaviors"
xmlns:converters="using:GSS2.UI.Core.Converters" xmlns:converters="using:GSS2.UI.Core.Converters"
xmlns:layout="using:Avalonia.Layout"
xmlns:local="using:GSS2.UI.Core.Views"
xmlns:lvc="using:LiveChartsCore.SkiaSharpView.Avalonia" xmlns:lvc="using:LiveChartsCore.SkiaSharpView.Avalonia"
x:Class="GSS2.UI.Core.Views.IlluminatorControllerView" xmlns:vm="using:GSS2.UI.Core.ViewModels"
x:DataType="vm:IlluminatorControllerViewModel"> x:DataType="vm:IlluminatorControllerViewModel">
<UserControl.Styles>
<Style Selector="Slider.horizontal">
<Setter Property="VerticalAlignment" Value="Stretch" />
<Setter Property="Maximum" Value="1" />
<Setter Property="Minimum" Value="0" />
<Setter Property="Orientation" Value="Vertical" />
</Style>
<Style Selector="Slider.vertical">
<Setter Property="HorizontalAlignment" Value="Stretch" />
<Setter Property="Maximum" Value="1" />
<Setter Property="Minimum" Value="0" />
<Setter Property="Orientation" Value="Horizontal" />
</Style>
</UserControl.Styles>
<Grid> <Grid>
<Grid x:Name="HorizontalLayout" IsVisible="{Binding Orientation, Converter={x:Static converters:OrientationToBoolConverter.IsHorizontal}}">
<Grid IsVisible="{Binding Orientation, Converter={x:Static converters:OrientationToBoolConverter.IsHorizontal}}">
<Grid.RowDefinitions> <Grid.RowDefinitions>
<RowDefinition Height="*" /> <RowDefinition Height="*" />
<RowDefinition Height="Auto" /> <RowDefinition Height="Auto" />
</Grid.RowDefinitions> </Grid.RowDefinitions>
<StackPanel Orientation="Horizontal"
<StackPanel
HorizontalAlignment="Center" HorizontalAlignment="Center"
Orientation="Horizontal"
Spacing="20"> Spacing="20">
<Slider Orientation="Vertical"
Minimum="0" Maximum="1" <Slider Classes="horizontal" Value="{Binding WhiteIntencity}" />
Value="{Binding WhiteIntencity}" <Slider Classes="horizontal" Value="{Binding Uv365Intencity}" />
VerticalAlignment="Stretch"/> <Slider Classes="horizontal" Value="{Binding Uv254Intencity}" />
<Slider Orientation="Vertical"
Minimum="0" Maximum="1"
Value="{Binding Uv365Intencity}"
VerticalAlignment="Stretch"/>
<Slider Orientation="Vertical"
Minimum="0" Maximum="1"
Value="{Binding Uv254Intencity}"
VerticalAlignment="Stretch"/>
</StackPanel> </StackPanel>
<ToggleButton Grid.Row="1" <ToggleButton
Content="Включить" Grid.Row="1"
IsChecked="{Binding Enabled}" Margin="0,10,0,0"
HorizontalAlignment="Stretch" HorizontalAlignment="Stretch"
HorizontalContentAlignment="Center" HorizontalContentAlignment="Center"
Margin="0,10,0,0"/> Content="Включить"
IsChecked="{Binding Enabled}" />
</Grid> </Grid>
<Grid IsVisible="{Binding Orientation, Converter={x:Static converters:OrientationToBoolConverter.IsVertical}}">
<Grid x:Name="VerticalLayout" IsVisible="{Binding Orientation, Converter={x:Static converters:OrientationToBoolConverter.IsVertical}}">
<Grid.ColumnDefinitions> <Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/> <ColumnDefinition Width="*" />
<ColumnDefinition Width="Auto"/> <ColumnDefinition Width="Auto" />
</Grid.ColumnDefinitions> </Grid.ColumnDefinitions>
<StackPanel Grid.Column="0" <StackPanel
Orientation="Vertical" Grid.Column="0"
VerticalAlignment="Center" VerticalAlignment="Center"
Orientation="Vertical"
Spacing="20"> Spacing="20">
<Slider Orientation="Horizontal" <Slider Classes="vertical" Value="{Binding WhiteIntencity}" />
Minimum="0" Maximum="1" <Slider Classes="vertical" Value="{Binding Uv365Intencity}" />
Value="{Binding WhiteIntencity}" <Slider Classes="vertical" Value="{Binding Uv254Intencity}" />
HorizontalAlignment="Stretch"/>
<Slider Orientation="Horizontal"
Minimum="0" Maximum="1"
Value="{Binding Uv365Intencity}"
HorizontalAlignment="Stretch"/>
<Slider Orientation="Horizontal"
Minimum="0" Maximum="1"
Value="{Binding Uv254Intencity}"
HorizontalAlignment="Stretch"/>
</StackPanel> </StackPanel>
<ToggleButton Grid.Column="1" <ToggleButton
Content="Включить" Grid.Column="1"
IsChecked="{Binding Enabled}" Margin="0,0,10,0"
VerticalAlignment="Stretch" VerticalAlignment="Stretch"
HorizontalContentAlignment="Center" HorizontalContentAlignment="Center"
Margin="0,0,10,0"/> Content="Включить"
IsChecked="{Binding Enabled}" />
</Grid> </Grid>
</Grid> </Grid>
</UserControl> </UserControl>
+7 -7
View File
@@ -1,9 +1,9 @@
<lvc:PieChart xmlns="https://github.com/avaloniaui" <lvc:PieChart
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:vm="using:GSS2.UI.Core.ViewModels"
xmlns:lvc="using:LiveChartsCore.SkiaSharpView.Avalonia"
x:Class="GSS2.UI.Core.Views.ResourceBarView" x:Class="GSS2.UI.Core.Views.ResourceBarView"
xmlns="https://github.com/avaloniaui"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:lvc="using:LiveChartsCore.SkiaSharpView.Avalonia"
xmlns:vm="using:GSS2.UI.Core.ViewModels"
x:DataType="vm:ResourceBarViewModel" x:DataType="vm:ResourceBarViewModel"
Series="{Binding Series}" Bounds="{Binding Bounds, Mode=OneWayToSource}"
Bounds="{Binding Bounds, Mode=OneWayToSource}"> Series="{Binding Series}" />
</lvc:PieChart>
+10 -10
View File
@@ -1,13 +1,13 @@
<lvc:CartesianChart xmlns="https://github.com/avaloniaui" <lvc:CartesianChart
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:vm="using:GSS2.UI.Core.ViewModels"
xmlns:lvc="using:LiveChartsCore.SkiaSharpView.Avalonia"
x:Class="GSS2.UI.Core.Views.ResourceChartView" x:Class="GSS2.UI.Core.Views.ResourceChartView"
xmlns="https://github.com/avaloniaui"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:lvc="using:LiveChartsCore.SkiaSharpView.Avalonia"
xmlns:vm="using:GSS2.UI.Core.ViewModels"
x:DataType="vm:ResourceChartViewModel" x:DataType="vm:ResourceChartViewModel"
Series="{Binding Series}" Bounds="{Binding Bounds, Mode=OneWayToSource}"
YAxes="{Binding YAxes}"
XAxes="{Binding XAxes}"
ZoomMode="None"
EasingFunction="{x:Null}" EasingFunction="{x:Null}"
Bounds="{Binding Bounds, Mode=OneWayToSource}"> Series="{Binding Series}"
</lvc:CartesianChart> XAxes="{Binding XAxes}"
YAxes="{Binding YAxes}"
ZoomMode="None" />
@@ -1,27 +1,53 @@
<UserControl xmlns="https://github.com/avaloniaui" <UserControl
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="using:GSS2.UI.Core.Views"
xmlns:vm="using:GSS2.UI.Core.ViewModels"
xmlns:behaviors="using:GSS2.UI.Core.Behaviors"
xmlns:lvc="using:LiveChartsCore.SkiaSharpView.Avalonia"
x:Class="GSS2.UI.Core.Views.ResourceCpuUsageBarsView" x:Class="GSS2.UI.Core.Views.ResourceCpuUsageBarsView"
xmlns="https://github.com/avaloniaui"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:behaviors="using:GSS2.UI.Core.Behaviors"
xmlns:local="using:GSS2.UI.Core.Views"
xmlns:lvc="using:LiveChartsCore.SkiaSharpView.Avalonia"
xmlns:vm="using:GSS2.UI.Core.ViewModels"
x:DataType="vm:ResourceCpuUsageBarsViewModel" x:DataType="vm:ResourceCpuUsageBarsViewModel"
Bounds="{Binding Bounds, Mode=OneWayToSource}"> Bounds="{Binding Bounds, Mode=OneWayToSource}">
<Grid> <Grid>
<Grid.ColumnDefinitions> <Grid.ColumnDefinitions>
<ColumnDefinition Width="2*"/> <ColumnDefinition Width="2*" />
<ColumnDefinition Width="*" behaviors:GridColumnHideBehavior.IsVisible="{Binding IsCoresColumnVisible}" /> <ColumnDefinition Width="*" behaviors:GridColumnHideBehavior.IsVisible="{Binding IsCoresColumnVisible}" />
<ColumnDefinition Width="*" behaviors:GridColumnHideBehavior.IsVisible="{Binding IsCoresColumnVisible}" /> <ColumnDefinition Width="*" behaviors:GridColumnHideBehavior.IsVisible="{Binding IsCoresColumnVisible}" />
</Grid.ColumnDefinitions> </Grid.ColumnDefinitions>
<Grid.RowDefinitions> <Grid.RowDefinitions>
<RowDefinition Height="*" /> <RowDefinition Height="*" />
<RowDefinition Height="*" /> <RowDefinition Height="*" />
</Grid.RowDefinitions> </Grid.RowDefinitions>
<local:ResourceBarView Grid.Row="0" Grid.RowSpan="2" Grid.Column="0" DataContext="{Binding Cpu}" />
<local:ResourceBarView Grid.Row="0" Grid.Column="1" DataContext="{Binding Cpu0}" /> <local:ResourceBarView
<local:ResourceBarView Grid.Row="0" Grid.Column="2" DataContext="{Binding Cpu1}" /> Grid.Row="0"
<local:ResourceBarView Grid.Row="1" Grid.Column="1" DataContext="{Binding Cpu2}" /> Grid.RowSpan="2"
<local:ResourceBarView Grid.Row="1" Grid.Column="2" DataContext="{Binding Cpu3}" /> Grid.Column="0"
DataContext="{Binding Cpu}" />
<local:ResourceBarView
Grid.Row="0"
Grid.Column="1"
DataContext="{Binding Cpu0}" />
<local:ResourceBarView
Grid.Row="0"
Grid.Column="2"
DataContext="{Binding Cpu1}" />
<local:ResourceBarView
Grid.Row="1"
Grid.Column="1"
DataContext="{Binding Cpu2}" />
<local:ResourceBarView
Grid.Row="1"
Grid.Column="2"
DataContext="{Binding Cpu3}" />
</Grid> </Grid>
</UserControl> </UserControl>
+13 -8
View File
@@ -1,28 +1,33 @@
<UserControl xmlns="https://github.com/avaloniaui" <UserControl
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="using:GSS2.UI.Core.Views"
xmlns:vm="using:GSS2.UI.Core.ViewModels"
xmlns:behaviors="using:GSS2.UI.Core.Behaviors"
xmlns:lvc="using:LiveChartsCore.SkiaSharpView.Avalonia"
x:Class="GSS2.UI.Core.Views.ResourcesView" x:Class="GSS2.UI.Core.Views.ResourcesView"
xmlns="https://github.com/avaloniaui"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:behaviors="using:GSS2.UI.Core.Behaviors"
xmlns:local="using:GSS2.UI.Core.Views"
xmlns:lvc="using:LiveChartsCore.SkiaSharpView.Avalonia"
xmlns:vm="using:GSS2.UI.Core.ViewModels"
x:DataType="vm:ResourcesViewModel" x:DataType="vm:ResourcesViewModel"
Bounds="{Binding Bounds, Mode=OneWayToSource}"> Bounds="{Binding Bounds, Mode=OneWayToSource}">
<Grid> <Grid>
<Grid.ColumnDefinitions> <Grid.ColumnDefinitions>
<ColumnDefinition Width="3*" behaviors:GridColumnHideBehavior.IsVisible="{Binding IsChartsColumnVisible}" /> <ColumnDefinition Width="3*" behaviors:GridColumnHideBehavior.IsVisible="{Binding IsChartsColumnVisible}" />
<ColumnDefinition Width="*" behaviors:GridColumnHideBehavior.IsVisible="{Binding IsBarsColumnVisible}" /> <ColumnDefinition Width="*" behaviors:GridColumnHideBehavior.IsVisible="{Binding IsBarsColumnVisible}" />
</Grid.ColumnDefinitions> </Grid.ColumnDefinitions>
<Grid RowDefinitions="*,*,*" Column="0"> <Grid Column="0" RowDefinitions="*,*,*">
<local:ResourceChartView Grid.Row="0" DataContext="{Binding CpuUsageChartViewModel}" /> <local:ResourceChartView Grid.Row="0" DataContext="{Binding CpuUsageChartViewModel}" />
<local:ResourceChartView Grid.Row="1" DataContext="{Binding CpuTemperatureChartViewModel}" /> <local:ResourceChartView Grid.Row="1" DataContext="{Binding CpuTemperatureChartViewModel}" />
<local:ResourceChartView Grid.Row="2" DataContext="{Binding MemoryUsageChartViewModel}" /> <local:ResourceChartView Grid.Row="2" DataContext="{Binding MemoryUsageChartViewModel}" />
</Grid> </Grid>
<Grid RowDefinitions="*,*,*" Column="1"> <Grid Column="1" RowDefinitions="*,*,*">
<local:ResourceCpuUsageBarsView Grid.Row="0" DataContext="{Binding CpuUsageBarsViewModel}" /> <local:ResourceCpuUsageBarsView Grid.Row="0" DataContext="{Binding CpuUsageBarsViewModel}" />
<local:ResourceBarView Grid.Row="1" DataContext="{Binding CpuTemperatureBarViewModel}" /> <local:ResourceBarView Grid.Row="1" DataContext="{Binding CpuTemperatureBarViewModel}" />
<local:ResourceBarView Grid.Row="2" DataContext="{Binding MemoryUsageBarViewModel}" /> <local:ResourceBarView Grid.Row="2" DataContext="{Binding MemoryUsageBarViewModel}" />
</Grid> </Grid>
</Grid> </Grid>
</UserControl> </UserControl>