Files
Orbis-Suite-3.0/Windows/OrbisNeighborHood/MVVM/View/DashboardView.xaml
T
2022-07-31 21:46:49 -06:00

435 lines
22 KiB
XML

<UserControl x:Class="OrbisNeighborHood.MVVM.View.DashboardView"
x:Name="DashboardElement"
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:local="clr-namespace:OrbisNeighborHood.MVVM.View"
xmlns:controls="clr-namespace:OrbisNeighborHood.Controls"
xmlns:simpleControls="clr-namespace:SimpleUI.Controls;assembly=SimpleUI"
mc:Ignorable="d"
Background="Transparent"
d:DesignHeight="585" d:DesignWidth="700">
<StackPanel>
<TextBlock Text="{Binding ElementName=DashboardElement, Path=TitleString}"
Foreground="{DynamicResource Text}"
FontSize="28"
HorizontalAlignment="Left"
Margin="30,10,0,10"/>
<!-- First Row -->
<StackPanel Orientation="Horizontal" Height="175">
<Border Width="305"
Height="160"
VerticalAlignment="Center"
Margin="30,0,30,0"
CornerRadius="10"
Background="{DynamicResource WindowBar}">
<StackPanel Orientation="Vertical"
Margin="5">
<!-- Target Name & State -->
<StackPanel Orientation="Horizontal">
<!-- Target State -->
<Ellipse Name="TargetStatusElement"
Grid.ColumnSpan="2" Grid.Row="0"
Fill="Red"
Width="14"
Height="14"
HorizontalAlignment="Left"
VerticalAlignment="Center"
Margin="5 0 0 0"
ToolTip="Online &amp; API Available"/>
<!-- Target Name -->
<TextBlock Text="{Binding ElementName=DashboardElement, Path=TargetName}"
Foreground="{DynamicResource Text}"
FontSize="18"
VerticalAlignment="Center"
Margin="5 0 0 0"/>
</StackPanel>
<Grid Margin="7 3 7 0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="*" />
<ColumnDefinition Width="Auto" />
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition/>
<RowDefinition/>
<RowDefinition/>
</Grid.RowDefinitions>
<!-- Firmware Version -->
<simpleControls:SimpleTextField Grid.Column="0" Grid.Row="0"
FieldName="Firmware Version"
FieldText="{Binding ElementName=DashboardElement, Path=FirmwareVersion}"
Width="135"
Height="35"
Margin="0 5 0 0"/>
<!-- SDK Version -->
<simpleControls:SimpleTextField Grid.Column="2" Grid.Row="0"
FieldName="SDK Version"
FieldText="{Binding ElementName=DashboardElement, Path=SDKVersion}"
Width="135"
Height="35"
Margin="0 5 0 0"/>
<!-- IP Address -->
<simpleControls:SimpleTextField Grid.Column="0" Grid.Row="1"
FieldName="IP Address"
FieldText="{Binding ElementName=DashboardElement, Path=IPAddress}"
Width="135"
Height="35"
Margin="0 5 0 0"/>
<!-- Console Type -->
<simpleControls:SimpleTextField Grid.Column="2" Grid.Row="1"
FieldName="Payload Port"
FieldText="{Binding ElementName=DashboardElement, Path=PayloadPort}"
Width="135"
Height="35"
Margin="0 5 0 0"/>
<!-- Console Name -->
<simpleControls:SimpleTextField Grid.Column="0" Grid.Row="2"
FieldName="Console Name"
FieldText="{Binding ElementName=DashboardElement, Path=ConsoleName}"
Width="135"
Height="35"
Margin="0 5 0 0"/>
<StackPanel Grid.Column="2" Grid.Row="2"
Orientation="Horizontal"
Margin="0 5 0 0">
<simpleControls:SimpleButton Name="EditButton"
Content="Edit"
Width="50"
Height="35"
Click="EditButton_Click"/>
<simpleControls:SimpleButton Name="DetailsButton"
Margin="5 0 0 0"
Content="More Details"
Width="80"
Height="35"
Click="DetailsButton_Click"/>
</StackPanel>
</Grid>
</StackPanel>
</Border>
<Border Width="305"
Height="160"
VerticalAlignment="Center"
Margin="0,0,30,0"
CornerRadius="10"
Background="{DynamicResource WindowBar}">
<StackPanel Orientation="Vertical"
Margin="5">
<!-- Title Text -->
<TextBlock Text="Quick Launch"
Foreground="{DynamicResource Text}"
FontSize="18"
VerticalAlignment="Center"
Margin="5 0 0 0"/>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="85"/>
<ColumnDefinition Width="23*"/>
<ColumnDefinition Width="19*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="85"/>
</Grid.RowDefinitions>
<!-- Current Title Image -->
<Border Grid.Column="0"
BorderThickness="1"
BorderBrush="#333333"
Margin="8,8,8,8">
<Image Source="/OrbisNeighborHood;component/Images/DefaultTitleIcon.png"
RenderOptions.BitmapScalingMode="Fant"
RenderOptions.EdgeMode="Aliased"
Name="TitleImage"/>
</Border>
<StackPanel Grid.Column="1"
Orientation="Vertical"
VerticalAlignment="Center" Grid.ColumnSpan="2">
<TextBlock HorizontalAlignment="Left"
Margin="5 0 0 0"
Text="{Binding ElementName=DashboardElement, Path=TitleName}"
Foreground="{DynamicResource Text}"
FontSize="14"/>
<TextBlock HorizontalAlignment="Left"
Margin="5 0 0 0"
Text="{Binding ElementName=DashboardElement, Path=TitleId}"
Foreground="{DynamicResource Text}"
FontSize="14"/>
<TextBlock HorizontalAlignment="Left"
Margin="5 0 0 0"
Text="{Binding ElementName=DashboardElement, Path=ProcessName}"
Foreground="{DynamicResource Text}"
FontSize="14"/>
</StackPanel>
</Grid>
<Grid Margin="3 0 7 0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="*" />
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="*" />
<ColumnDefinition Width="Auto" />
</Grid.ColumnDefinitions>
<simpleControls:SimpleButton Name="LaunchDebugger"
IsEnabled="False"
Grid.Column="0"
Margin="5 0 0 0"
Content="Debugger"
Width="70"
Height="35"
Click="LaunchDebugger_Click"/>
<simpleControls:SimpleButton Name="LaunchPeekPoke"
IsEnabled="False"
Grid.Column="2"
Margin="5 0 0 0"
Content="Peek n' Poke"
Width="85"
Height="35"
Click="LaunchPeekPoke_Click"/>
<simpleControls:SimpleButton Name="LaunchLibraryManager"
IsEnabled="False"
Grid.Column="4"
Margin="5 0 0 0"
Content="Library Manager"
Width="100"
Height="35"
Click="LaunchLibraryManager_Click"/>
</Grid>
</StackPanel>
</Border>
</StackPanel>
<!-- Second Row -->
<StackPanel Orientation="Horizontal" Height="175">
<Border Width="305"
Height="160"
VerticalAlignment="Center"
Margin="30,0,30,0"
CornerRadius="10"
Background="{DynamicResource WindowBar}">
<StackPanel Orientation="Vertical"
Margin="5">
<!-- Title Text -->
<TextBlock Text="Storage Usage"
Foreground="{DynamicResource Text}"
FontSize="18"
VerticalAlignment="Center"
Margin="5 0 0 0"/>
<StackPanel Margin="2 4 0 0" Orientation="Horizontal">
<!-- Usage Percentage -->
<simpleControls:SimpleCircleProgressBar Name="HDDUsage"
Width="125" Height="125"
Thickness="18"
FontSize="18"
ProgressPercentage="{Binding ElementName=DashboardElement, Path=StorageUsagePercentage}"/>
<!-- Info Fields -->
<StackPanel Margin="3 5 0 0" Orientation="Vertical">
<simpleControls:SimpleTextField FieldName="Used Space"
FieldText="{Binding ElementName=DashboardElement, Path=HDDUsedSpace}"
Width="157"
Height="35"/>
<simpleControls:SimpleTextField FieldName="Free Space"
FieldText="{Binding ElementName=DashboardElement, Path=HDDFreeSpace}"
Width="157"
Height="35"
Margin="0 5 0 0"/>
<simpleControls:SimpleTextField FieldName="Total Space"
FieldText="{Binding ElementName=DashboardElement, Path=HDDTotalSpace}"
Width="157"
Height="35"
Margin="0 5 0 0"/>
</StackPanel>
</StackPanel>
</StackPanel>
</Border>
<Border Width="305"
Height="160"
VerticalAlignment="Center"
Margin="0,0,30,0"
CornerRadius="10"
Background="{DynamicResource WindowBar}">
<StackPanel Orientation="Vertical"
Margin="5">
<!-- Title Text -->
<TextBlock Text="System Stats"
Foreground="{DynamicResource Text}"
FontSize="18"
VerticalAlignment="Center"
Margin="5 0 0 0"/>
<StackPanel Margin="2 4 0 0" Orientation="Horizontal">
<!-- Usage Percentage -->
<simpleControls:SimpleCircleProgressBar Name="CPUUsage"
Width="125" Height="125"
Thickness="18"
FontSize="18"
ProgressPercentage="{Binding ElementName=DashboardElement, Path=AverageCPUUsage}"/>
<!-- Info Fields -->
<StackPanel Margin="3 5 0 0" Orientation="Vertical">
<StackPanel Orientation="Horizontal">
<simpleControls:SimpleTextField FieldName="CPU Temp"
FieldText="{Binding ElementName=DashboardElement, Path=CPUTemp}"
Width="73.5"
Height="35"
Margin="0 0 10 0"/>
<simpleControls:SimpleTextField FieldName="SOC Temp"
FieldText="{Binding ElementName=DashboardElement, Path=SOCTemp}"
Width="73.5"
Height="35"/>
</StackPanel>
<StackPanel Margin="0 5 0 0" Orientation="Horizontal">
<simpleControls:SimpleTextField FieldName="Thread Count"
FieldText="{Binding ElementName=DashboardElement, Path=ThreadCount}"
Width="73.5"
Height="35"
Margin="0 0 10 0"/>
<simpleControls:SimpleTextField FieldName="Top Core"
FieldText="{Binding ElementName=DashboardElement, Path=TopCore}"
Width="73.5"
Height="35"/>
</StackPanel>
<StackPanel Margin="0 5 0 0" Orientation="Horizontal">
<simpleControls:SimpleTextField FieldName="Ram Usage"
FieldText="{Binding ElementName=DashboardElement, Path=RamUsage}"
Width="73.5"
Height="35"
Margin="0 0 10 0"/>
<simpleControls:SimpleTextField FieldName="V-Ram Usage"
FieldText="{Binding ElementName=DashboardElement, Path=VRamUsage}"
Width="73.5"
Height="35"/>
</StackPanel>
</StackPanel>
</StackPanel>
</StackPanel>
</Border>
</StackPanel>
<!-- App Selection -->
<StackPanel Margin="0,0,0,0">
<TextBlock Text="Orbis Suite Apps"
Foreground="{DynamicResource Text}"
FontSize="20"
HorizontalAlignment="Left"
Margin="30,10,0,10"/>
<!-- Orbis Suite Apps -->
<Grid Margin="30 0 30 0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="0" />
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="*" />
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="*" />
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="*" />
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="*" />
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="0" />
</Grid.ColumnDefinitions>
<!-- Peek n' Poke -->
<controls:AppLauncherButton
Grid.Column="1"
IsEnabled="False"
ToolTip="Currently under development."
Text="Peek n' Poke"
Source="/OrbisNeighborHood;component/Images/Icons/OrbisPeeknPoke.ico"/>
<!-- Library Manager -->
<controls:AppLauncherButton
Grid.Column="3"
IsEnabled="true"
ToolTip="Launch the Orbis Library Manager to load SPRX, ELF's and more!"
Text="Library Manager"
Source="/OrbisNeighborHood;component/Images/Icons/OrbisModuleManager.ico"/>
<!-- Debugger -->
<controls:AppLauncherButton
Grid.Column="5"
IsEnabled="False"
ToolTip="Currently under development."
Text="Debugger"
Source="/OrbisNeighborHood;component/Images/Icons/OrbisDebugger.ico"/>
<!-- Console Output -->
<controls:AppLauncherButton
Grid.Column="7"
IsEnabled="False"
ToolTip="Currently under development."
Text="Console Output"
Source="/OrbisNeighborHood;component/Images/Icons/OrbisConsoleOutput.ico"/>
<!-- Taskbar App -->
<controls:AppLauncherButton
Grid.Column="9"
IsEnabled="False"
ToolTip="Currently under development."
Text="Taskbar App"
Source="/OrbisNeighborHood;component/Images/Icons/OrbisTaskbarApp.ico"/>
</Grid>
</StackPanel>
</StackPanel>
</UserControl>