138 lines
5.1 KiB
XML
138 lines
5.1 KiB
XML
<Window x:Class="AmebaPro3_ControlPanel.Views.MainWindow"
|
|
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
|
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"
|
|
mc:Ignorable="d"
|
|
Title="AmebaPro3 Control Panel"
|
|
Height="850"
|
|
Width="1400"
|
|
WindowStartupLocation="CenterScreen"
|
|
ClipToBounds="False">
|
|
<Grid x:Name="MainRootGrid" ClipToBounds="False">
|
|
<Grid.RowDefinitions>
|
|
<RowDefinition Height="Auto"/>
|
|
<RowDefinition Height="*"/>
|
|
<RowDefinition Height="Auto"/>
|
|
</Grid.RowDefinitions>
|
|
|
|
<!-- Top bar -->
|
|
<Border x:Name="TopBarBorder" Grid.Row="0"
|
|
Background="{StaticResource SurfaceAltBrush}"
|
|
BorderBrush="{StaticResource SubtleBorderBrush}"
|
|
BorderThickness="0,0,0,1"
|
|
Padding="20,12,20,12"
|
|
ClipToBounds="False">
|
|
<Grid x:Name="TopBarGrid" ClipToBounds="False">
|
|
<Grid.ColumnDefinitions>
|
|
<ColumnDefinition Width="*"/>
|
|
<ColumnDefinition Width="Auto"/>
|
|
</Grid.ColumnDefinitions>
|
|
|
|
<StackPanel x:Name="TopBarStackPanel" Orientation="Vertical"
|
|
VerticalAlignment="Center"
|
|
Margin="0,0,0,0"
|
|
ClipToBounds="False">
|
|
<TextBlock Text="AmebaPro3 Control Panel"
|
|
FontSize="20"
|
|
FontWeight="Bold"/>
|
|
<TextBlock Text="Powered by yiekheng, v2.0.0"
|
|
Style="{StaticResource CaptionTextStyle}"/>
|
|
</StackPanel>
|
|
|
|
<ListBox x:Name="TopNavListBox" Grid.Column="1"
|
|
VerticalAlignment="Center"
|
|
Margin="24,0,0,0"
|
|
ItemsSource="{Binding Pages}"
|
|
SelectedItem="{Binding CurrentPage}"
|
|
Style="{StaticResource TopNavListBoxStyle}"
|
|
ItemContainerStyle="{StaticResource TopNavListBoxItemStyle}">
|
|
<ListBox.ItemsPanel>
|
|
<ItemsPanelTemplate>
|
|
<StackPanel Orientation="Horizontal"/>
|
|
</ItemsPanelTemplate>
|
|
</ListBox.ItemsPanel>
|
|
<ListBox.ItemTemplate>
|
|
<DataTemplate>
|
|
<TextBlock Text="{Binding Title}"
|
|
Padding="18,8"
|
|
FontWeight="SemiBold"/>
|
|
</DataTemplate>
|
|
</ListBox.ItemTemplate>
|
|
</ListBox>
|
|
</Grid>
|
|
</Border>
|
|
|
|
<!-- Page content -->
|
|
<Border Grid.Row="1"
|
|
Margin="20,16"
|
|
Padding="0"
|
|
Background="Transparent">
|
|
<ContentControl x:Name="MainContentHost"
|
|
Content="{Binding CurrentPage}"/>
|
|
</Border>
|
|
|
|
<!-- Status bar -->
|
|
<Border Grid.Row="2"
|
|
Background="{StaticResource SurfaceAltBrush}"
|
|
BorderBrush="{StaticResource SubtleBorderBrush}"
|
|
BorderThickness="1,1,1,0"
|
|
Padding="20,8">
|
|
<Grid>
|
|
<Grid.ColumnDefinitions>
|
|
<ColumnDefinition Width="*"/>
|
|
<ColumnDefinition Width="Auto"/>
|
|
<ColumnDefinition Width="Auto"/>
|
|
<ColumnDefinition Width="Auto"/>
|
|
</Grid.ColumnDefinitions>
|
|
|
|
<StackPanel Orientation="Horizontal" VerticalAlignment="Center">
|
|
<TextBlock Text="{Binding SelectedDevice}"
|
|
FontWeight="SemiBold"/>
|
|
<TextBlock Text=" • "
|
|
Margin="6,0"
|
|
Foreground="{StaticResource TextBrushMuted}"/>
|
|
<TextBlock Text="{Binding ConnectionStatus}"
|
|
Foreground="{StaticResource TextBrushSecondary}"/>
|
|
</StackPanel>
|
|
|
|
<StackPanel Grid.Column="1"
|
|
Orientation="Horizontal"
|
|
VerticalAlignment="Center"
|
|
Margin="16,0">
|
|
<TextBlock Text="Last RX:"
|
|
Style="{StaticResource CaptionTextStyle}"/>
|
|
<TextBlock Text="{Binding LastRxTime}"
|
|
Margin="6,0,0,0"/>
|
|
</StackPanel>
|
|
|
|
<StackPanel Grid.Column="2"
|
|
Orientation="Horizontal"
|
|
VerticalAlignment="Center"
|
|
Margin="16,0">
|
|
<TextBlock Text="RX:"
|
|
Style="{StaticResource CaptionTextStyle}"/>
|
|
<TextBlock Text="{Binding RxBytes}"
|
|
Margin="6,0,0,0"/>
|
|
<TextBlock Text="bytes"
|
|
Margin="4,0,0,0"
|
|
Style="{StaticResource CaptionTextStyle}"/>
|
|
</StackPanel>
|
|
|
|
<StackPanel Grid.Column="3"
|
|
Orientation="Horizontal"
|
|
VerticalAlignment="Center"
|
|
Margin="16,0">
|
|
<TextBlock Text="TX:"
|
|
Style="{StaticResource CaptionTextStyle}"/>
|
|
<TextBlock Text="{Binding TxBytes}"
|
|
Margin="6,0,0,0"/>
|
|
<TextBlock Text="bytes"
|
|
Margin="4,0,0,0"
|
|
Style="{StaticResource CaptionTextStyle}"/>
|
|
</StackPanel>
|
|
</Grid>
|
|
</Border>
|
|
</Grid>
|
|
</Window>
|