livia-test/Astroke/Views/Controls/AStrokeControl.xaml
2025-03-28 14:31:53 +08:00

284 lines
17 KiB
XML

<UserControl x:Class="Astroke.Views.Controls.AStrokeControl"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
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:viewModels="clr-namespace:Astroke.ViewModels"
xmlns:liviaControls="clr-namespace:Livia.Views.Controls;assembly=Livia"
xmlns:controls="clr-namespace:Astroke.Views.Controls"
xmlns:materialDesign="http://materialdesigninxaml.net/winfx/xaml/themes"
xmlns:attachedProperties="clr-namespace:Livia.Views.AttachedProperties;assembly=Livia"
mc:Ignorable="d"
VerticalAlignment="Stretch"
HorizontalAlignment="Stretch"
d:Background="{StaticResource PrimaryColorDarkBrush}"
d:DataContext="{d:DesignInstance Type=viewModels:AStrokeControlViewModel}"
d:DesignHeight="960"
d:DesignWidth="1920">
<Grid>
<StackPanel VerticalAlignment="Center"
Visibility="{Binding DataBlockLoader.PlaceholderVisible, Converter={StaticResource BooleanToVisibilityConverter}}">
<Image VerticalAlignment="Center"
RenderOptions.BitmapScalingMode="HighQuality"
Width="972"
Margin="0, 0, 0, 80"
Source="/Resources/Images/placeholder.png" />
<TextBlock Style="{StaticResource MaterialDesignHeadline5TextBlock}"
HorizontalAlignment="Center"
Foreground="{StaticResource PrimaryTextColorBrush}"
Text="{StaticResource PlaceHolderMessage}" />
</StackPanel>
<Grid Visibility="{Binding DataBlockLoader.PlaceholderVisible, Converter={StaticResource InverseBooleanToVisibilityConverter}}"
d:Visibility="Visible">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="*" />
<RowDefinition Height="2.5*" />
</Grid.RowDefinitions>
<Grid Grid.Column="0"
Grid.Row="0"
Margin="20, 20, 10, 10">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<Grid Grid.Column="0">
<liviaControls:ImageRotationViewerControl DataContext="{Binding ArterialTerritoriesImageRotationViewerControlViewModel}" />
<Button Style="{StaticResource LiviaStretchIconButton}"
Margin="5 5, 5, 45"
CommandParameter="{Binding ArterialTerritoriesImageRotationViewerControlViewModel}" />
</Grid>
<Grid Grid.Column="1"
Margin="20, 0, 0, 0">
<liviaControls:ImageRotationViewerControl DataContext="{Binding AspectsImageRotationViewerControlViewModel}" />
<Button Style="{StaticResource LiviaStretchIconButton}"
Margin="5 5, 5, 45"
CommandParameter="{Binding AspectsImageRotationViewerControlViewModel}" />
</Grid>
</Grid>
<Border Grid.Column="0"
Grid.Row="1"
CornerRadius="8"
Margin="20, 10, 10, 20"
Background="{StaticResource PrimaryColorBrush}">
<liviaControls:MosaicImageGroupControl DataContext="{Binding MosaicImageGroupViewModel}" />
</Border>
<Border Grid.Column="1"
Grid.Row="0"
Grid.RowSpan="2"
CornerRadius="8"
Margin="10, 20, 20, 20"
Background="{StaticResource PrimaryColorBrush}">
<TabControl Style="{StaticResource MaterialDesignFilledTabControl}"
materialDesign:ColorZoneAssist.Mode="Custom"
HorizontalContentAlignment="Left"
SelectedIndex="{Binding RoiTabSelectedIndex}"
SelectionChanged="TabSelectionChanged"
materialDesign:ColorZoneAssist.Foreground="{StaticResource PrimaryColorHighlightBrush}">
<TabItem Header="{StaticResource PerfusionDataGridTabName}">
<liviaControls:PerfusionDataGridGroupControl DataContext="{Binding PerfusionDataGridGroupViewModel}"/>
</TabItem>
<TabItem>
<TabItem.Header>
<TextBlock Text="{StaticResource RoiTabHeader1}"/>
</TabItem.Header>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*" />
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<Rectangle Grid.Column="1"
Width="2"
RadiusX="1"
RadiusY="1">
<Rectangle.Fill>
<LinearGradientBrush StartPoint="0, 0"
EndPoint="1, 1">
<GradientStop Color="#00D9D9D9"
Offset="0.1" />
<GradientStop Color="#D9D9D9"
Offset="0.5" />
<GradientStop Color="#00D9D9D9"
Offset="0.9" />
</LinearGradientBrush>
</Rectangle.Fill>
</Rectangle>
<controls:AStrokeRoiSummaryControl Grid.Column="2"
DataContext="{Binding LeftAStrokeRoiSummaryControlViewModel }" />
<controls:AStrokeRoiSummaryControl Grid.Column="0"
DataContext="{Binding RightAStrokeRoiSummaryControlViewModel }" />
</Grid>
</TabItem>
<TabItem>
<TabItem.Header>
<TextBlock Text="{StaticResource RoiTabHeader2}" />
</TabItem.Header>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*" />
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<Rectangle Grid.Column="1"
Width="2"
RadiusX="1"
RadiusY="1">
<Rectangle.Fill>
<LinearGradientBrush StartPoint="0, 0"
EndPoint="1, 1">
<GradientStop Color="#00D9D9D9"
Offset="0.1" />
<GradientStop Color="#D9D9D9"
Offset="0.5" />
<GradientStop Color="#00D9D9D9"
Offset="0.9" />
</LinearGradientBrush>
</Rectangle.Fill>
</Rectangle>
<liviaControls:RoiSummaryControl Grid.Column="2"
DataContext="{Binding LeftRestrictedDiffusionRoiSummaryControlViewModel }" />
<liviaControls:RoiSummaryControl Grid.Column="0"
DataContext="{Binding RightRestrictedDiffusionRoiSummaryControlViewModel}" />
</Grid>
</TabItem>
<TabItem Visibility="{Binding AttTabVisible, Converter={StaticResource BooleanToVisibilityConverter}}">
<TabItem.Header>
<TextBlock Text="{StaticResource RoiTabHeader3}"/>
</TabItem.Header>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*" />
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<Rectangle Grid.Column="1"
Width="2"
RadiusX="1"
RadiusY="1">
<Rectangle.Fill>
<LinearGradientBrush StartPoint="0, 0"
EndPoint="1, 1">
<GradientStop Color="#00D9D9D9"
Offset="0.1" />
<GradientStop Color="#D9D9D9"
Offset="0.5" />
<GradientStop Color="#00D9D9D9"
Offset="0.9" />
</LinearGradientBrush>
</Rectangle.Fill>
</Rectangle>
<liviaControls:RoiSummaryControl Grid.Column="2"
DataContext="{Binding LeftAttRoiSummaryControlViewModel }" />
<liviaControls:RoiSummaryControl Grid.Column="0"
DataContext="{Binding RightAttRoiSummaryControlViewModel }" />
</Grid>
</TabItem>
<TabItem Visibility="{Binding AttTabVisible, Converter={StaticResource BooleanToVisibilityConverter}}">
<TabItem.Header>
<TextBlock Text="{StaticResource RoiTabHeader4}" />
</TabItem.Header>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*" />
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<Rectangle Grid.Column="1"
Width="2"
RadiusX="1"
RadiusY="1">
<Rectangle.Fill>
<LinearGradientBrush StartPoint="0, 0"
EndPoint="1, 1">
<GradientStop Color="#00D9D9D9"
Offset="0.1" />
<GradientStop Color="#D9D9D9"
Offset="0.5" />
<GradientStop Color="#00D9D9D9"
Offset="0.9" />
</LinearGradientBrush>
</Rectangle.Fill>
</Rectangle>
<liviaControls:RoiSummaryControl Grid.Column="2"
DataContext="{Binding LeftAcbvRoiSummaryControlViewModel }" />
<liviaControls:RoiSummaryControl Grid.Column="0"
DataContext="{Binding RightAcbvRoiSummaryControlViewModel }" />
</Grid>
</TabItem>
<TabItem>
<TabItem.Header>
<StackPanel Orientation="Horizontal">
<TextBlock Text="{StaticResource RoiTabHeader5}" />
<Button Style="{StaticResource LiviaPrimaryTinyIconButton}"
Margin="4, 1, 0, 0"
Foreground="{StaticResource White1Brush}"
attachedProperties:IconKindProperties.IconKind="HelpCircleOutline"
VerticalAlignment="Center"
ToolTip="{StaticResource RoiTabHeader5Prompt}">
</Button>
</StackPanel>
</TabItem.Header>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*" />
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<Rectangle Grid.Row="0"
Grid.Column="1"
Width="2"
RadiusX="1"
RadiusY="1">
<Rectangle.Fill>
<LinearGradientBrush StartPoint="0, 0"
EndPoint="1, 1">
<GradientStop Color="#00D9D9D9"
Offset="0.1" />
<GradientStop Color="#D9D9D9"
Offset="0.5" />
<GradientStop Color="#00D9D9D9"
Offset="0.9" />
</LinearGradientBrush>
</Rectangle.Fill>
</Rectangle>
<controls:AspectsScoreRoiSummaryControl Grid.Column="2"
DataContext="{Binding LeftAnteriorAspectsScoreRoiSummaryControlViewModel }" />
<controls:AspectsScoreRoiSummaryControl Grid.Column="0"
DataContext="{Binding RightAnteriorAspectsScoreRoiSummaryControlViewModel }" />
</Grid>
</TabItem>
<TabItem>
<TabItem.Header>
<StackPanel Orientation="Horizontal">
<TextBlock Text="{StaticResource RoiTabHeader6}"/>
<Button Style="{StaticResource LiviaPrimaryTinyIconButton}"
Margin="4, 1, 0, 0"
Foreground="{StaticResource White1Brush}"
attachedProperties:IconKindProperties.IconKind="HelpCircleOutline"
VerticalAlignment="Center"
ToolTip="{StaticResource RoiTabHeader6Prompt}">
</Button>
</StackPanel>
</TabItem.Header>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<controls:AspectsScoreRoiSummaryControl Grid.Column="0"
DataContext="{Binding PosteriorAspectsScoreRoiSummaryControlViewModel}" />
</Grid>
</TabItem>
</TabControl>
</Border>
</Grid>
</Grid>
</UserControl>