Files
DP44/DTS Viewer/DTS.Viewer/Modules/Main/View/ViewerMainViewGrid.xaml

212 lines
13 KiB
Plaintext
Raw Permalink Normal View History

2026-04-17 14:55:32 -04:00
<base:BaseView x:Class="DTS.Viewer.ViewerMainViewGrid"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:i="http://schemas.microsoft.com/xaml/behaviors"
xmlns:prism="http://prismlibrary.com/"
xmlns:classes="clr-namespace:DTS.Common.Classes;assembly=DTS.Common"
xmlns:controls="clr-namespace:DTS.Common.Controls;assembly=DTS.Common"
xmlns:dialogs="clr-namespace:DTS.Common.Dialogs;assembly=DTS.Common"
xmlns:base="clr-namespace:DTS.Common.Base;assembly=DTS.Common"
xmlns:strings="clr-namespace:DTS.Viewer"
xmlns:interactionRequest="clr-namespace:DTS.Common.Interactivity;assembly=DTS.Common"
HorizontalAlignment="Stretch" VerticalAlignment="Stretch">
<i:Interaction.Triggers>
<interactionRequest:InteractionRequestTrigger SourceObject="{Binding NotificationRequest, Mode=OneWay}">
<dialogs:PopupWindowAction IsModal="True" StartupPosition="CenterScreen"/>
</interactionRequest:InteractionRequestTrigger>
</i:Interaction.Triggers>
<Grid x:Name="MainShell" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" UseLayoutRounding="True" SnapsToDevicePixels="True" >
<Grid.ColumnDefinitions>
<ColumnDefinition x:Name="testsColumn" Width="310" />
<ColumnDefinition x:Name="separatorColumn" Width="5" />
<ColumnDefinition x:Name="graphsColumn" Width="*" />
<ColumnDefinition x:Name="optionsColumn" Width="310" />
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<!-- FB12164, a repurposed FB11709 -->
<ToggleButton Grid.Column="0" Grid.Row="0" VerticalAlignment="Top" HorizontalAlignment="Right" Panel.ZIndex="140" FontSize="8" AutomationProperties.AutomationId="btnCollapseNavPanel"
Height="15" Width="15" Background="{StaticResource Brush_ApplicationContentBackground}" Content="&lt;&lt;">
<ToggleButton.Triggers>
<EventTrigger RoutedEvent="ToggleButton.Unchecked">
<BeginStoryboard>
<Storyboard x:Name="ShowTabPanel">
<controls:GridLengthAnimation Storyboard.TargetName="testsColumn" Storyboard.TargetProperty="Width" From="15" Duration="0:0:0.1" FillBehavior="Stop" />
<DoubleAnimation Storyboard.TargetName="graphSelectionTabPane" Storyboard.TargetProperty="Opacity" From="0.0" To="1.0" Duration="0:0:0.1" />
<ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="Content">
<DiscreteObjectKeyFrame KeyTime="0:0:0" Value="&lt;&lt;" />
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</BeginStoryboard>
</EventTrigger>
<EventTrigger RoutedEvent="ToggleButton.Checked">
<BeginStoryboard>
<Storyboard x:Name="HideTabPanel">
<controls:GridLengthAnimation Storyboard.TargetName="testsColumn" Storyboard.TargetProperty="Width" To="15" Duration="0:0:0.1" />
<DoubleAnimation Storyboard.TargetName="graphSelectionTabPane" Storyboard.TargetProperty="Opacity" From="1.0" To="0.0" Duration="0:0:0.1" />
<ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="Content">
<DiscreteObjectKeyFrame KeyTime="0:0:0" Value="&gt;&gt;" />
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</BeginStoryboard>
</EventTrigger>
</ToggleButton.Triggers>
</ToggleButton>
<TabControl x:Name="graphSelectionTabPane" Grid.Column="0" Grid.Row="0" VerticalAlignment="Stretch" HorizontalAlignment="Stretch" AutomationProperties.AutomationId="GraphSelectionTabPane">
<TabItem x:Name="testsTab" Header="{Binding Path=TitleTests}" AutomationProperties.AutomationId="TestsTab">
<ContentControl x:Name="TestsRegion" prism:RegionManager.RegionName="ViewerTestsRegion2" VerticalAlignment="Stretch" HorizontalAlignment="Stretch">
<ContentControl.Template>
<ControlTemplate TargetType="{x:Type ContentControl}">
<Grid HorizontalAlignment="Stretch" VerticalAlignment="Stretch">
<ContentPresenter Content="{TemplateBinding Content}" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" />
</Grid>
</ControlTemplate>
</ContentControl.Template>
</ContentControl>
</TabItem>
<TabItem x:Name="graphsTab" Header="{Binding Path=TitleGraphs}" AutomationProperties.AutomationId="GraphsTab">
<ContentControl x:Name="GraphListRegion" prism:RegionManager.RegionName="{x:Static classes:RegionNames.ViewerGraphListRegion}" VerticalAlignment="Stretch" HorizontalAlignment="Stretch">
<ContentControl.Template>
<ControlTemplate TargetType="{x:Type ContentControl}">
<Grid HorizontalAlignment="Stretch" VerticalAlignment="Stretch">
<ContentPresenter Content="{TemplateBinding Content}" HorizontalAlignment="Stretch" VerticalAlignment="Stretch"/>
</Grid>
</ControlTemplate>
</ContentControl.Template>
</ContentControl>
</TabItem>
<TabItem Header="{strings:TranslateExtension SettingsTitle}" Visibility="{Binding SettingsVisibility}" AutomationProperties.AutomationId="SettingsTab">
<ContentControl x:Name="SettingsRegion" prism:RegionManager.RegionName="ViewerSettingsRegion2" VerticalAlignment="Stretch" HorizontalAlignment="Stretch">
<ContentControl.Template>
<ControlTemplate TargetType="{x:Type ContentControl}">
<Grid HorizontalAlignment="Stretch" VerticalAlignment="Stretch">
<ContentPresenter Content="{TemplateBinding Content}" HorizontalAlignment="Stretch" VerticalAlignment="Stretch"/>
</Grid>
</ControlTemplate>
</ContentControl.Template>
</ContentControl>
</TabItem>
<TabItem Header="Legend" Visibility="Collapsed" AutomationProperties.AutomationId="LegendTab">
<ContentControl x:Name="LegendRegion" prism:RegionManager.RegionName="{x:Static classes:RegionNames.ViewerLegendRegion}"
Height="Auto" Width="Auto" VerticalAlignment="Top" HorizontalAlignment="Stretch">
<ContentControl.Template>
<ControlTemplate TargetType="{x:Type ContentControl}">
<Grid HorizontalAlignment="Stretch" VerticalAlignment="Stretch">
<ContentPresenter Content="{TemplateBinding Content}" />
</Grid>
</ControlTemplate>
</ContentControl.Template>
</ContentControl>
</TabItem>
</TabControl>
<GridSplitter Grid.Row="0" Grid.Column="1" VerticalAlignment="Stretch" Width="5" ResizeBehavior="PreviousAndNext" ResizeDirection="Columns"/>
<!-- Graph -->
<ContentControl Grid.Column="2" Grid.Row="0" x:Name="GraphRegion" prism:RegionManager.RegionName="{x:Static classes:RegionNames.ViewerGraphsRegion}" VerticalAlignment="Stretch" HorizontalAlignment="Stretch" >
<ContentControl.Template>
<ControlTemplate TargetType="{x:Type ContentControl}">
<Grid HorizontalAlignment="Stretch" VerticalAlignment="Stretch">
<ContentPresenter Content="{TemplateBinding Content}" />
</Grid>
</ControlTemplate>
</ContentControl.Template>
</ContentControl>
<TabControl Grid.Column="3" Grid.Row="0" Width="310" HorizontalAlignment="Right" VerticalAlignment="Stretch" AutomationProperties.AutomationId="ModificationTabPane">
<TabItem x:Name="chartOptTab" Header="{strings:TranslateExtension ChartOptionsHeader}" AutomationProperties.AutomationId="ChartOptTab">
<ContentControl x:Name="ChartOptionsRegion" prism:RegionManager.RegionName="{x:Static classes:RegionNames.ViewerChartOptionsRegion}" Width="300" VerticalAlignment="Stretch" HorizontalAlignment="Right" HorizontalContentAlignment="Right" >
<ContentControl.Template>
<ControlTemplate TargetType="{x:Type ContentControl}">
<Grid>
<ContentPresenter Content="{TemplateBinding Content}" />
</Grid>
</ControlTemplate>
</ContentControl.Template>
</ContentControl>
</TabItem>
<TabItem x:Name="testModTab" Header="{strings:TranslateExtension ModificationsHeader}" IsSelected="{Binding ShowModifications}" AutomationProperties.AutomationId="TestModTab">
<ContentControl x:Name="TestModificationRegion" prism:RegionManager.RegionName="{x:Static classes:RegionNames.ViewerTestModificationRegion}" Width="300" VerticalAlignment="Stretch" HorizontalAlignment="Right" >
<ContentControl.Template>
<ControlTemplate TargetType="{x:Type ContentControl}">
<Grid>
<ContentPresenter Content="{TemplateBinding Content}" />
</Grid>
</ControlTemplate>
</ContentControl.Template>
</ContentControl>
</TabItem>
</TabControl>
<TabControl Grid.Column="3" Grid.Row="0" MinWidth="300" Visibility="Collapsed" AutomationProperties.AutomationId="ChartTabPane">
<TabItem>
<ContentControl x:Name="DiagRegion" prism:RegionManager.RegionName="{x:Static classes:RegionNames.ViewerDiagRegion}" Width="300" VerticalAlignment="Stretch" HorizontalAlignment="Right">
<ContentControl.Template>
<ControlTemplate TargetType="{x:Type ContentControl}">
<Grid>
<ContentPresenter Content="{TemplateBinding Content}" />
</Grid>
</ControlTemplate>
</ContentControl.Template>
</ContentControl>
</TabItem>
<TabItem>
<ContentControl x:Name="StatsRegion" prism:RegionManager.RegionName="{x:Static classes:RegionNames.ViewerStatsRegion}" Width="300" VerticalAlignment="Stretch" HorizontalAlignment="Right">
<ContentControl.Template>
<ControlTemplate TargetType="{x:Type ContentControl}">
<Grid>
<ContentPresenter Content="{TemplateBinding Content}" />
</Grid>
</ControlTemplate>
</ContentControl.Template>
</ContentControl>
</TabItem>
<TabItem>
<ContentControl x:Name="CursorRegion" prism:RegionManager.RegionName="{x:Static classes:RegionNames.ViewerCursorRegion}" Width="300" VerticalAlignment="Stretch" HorizontalAlignment="Right">
<ContentControl.Template>
<ControlTemplate TargetType="{x:Type ContentControl}">
<Grid>
<ContentPresenter Content="{TemplateBinding Content}" />
</Grid>
</ControlTemplate>
</ContentControl.Template>
</ContentControl>
</TabItem>
<TabItem>
<ContentControl x:Name="AddRegion" prism:RegionManager.RegionName="{x:Static classes:RegionNames.PropertyAddRegion}" Width="300" VerticalAlignment="Stretch" HorizontalAlignment="Right" >
<ContentControl.Template>
<ControlTemplate TargetType="{x:Type ContentControl}">
<Grid>
<ContentPresenter Content="{TemplateBinding Content}" />
</Grid>
</ControlTemplate>
</ContentControl.Template>
</ContentControl>
</TabItem>
</TabControl>
</Grid>
</base:BaseView>