MaiTouchSensorEmulator/MainWindow.xaml

143 lines
8.8 KiB
Plaintext
Raw Permalink Normal View History

2024-02-08 12:41:21 +08:00
<Window x:Class="WpfMaiTouchEmulator.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"
xmlns:ui="http://schemas.lepo.co/wpfui/2022/xaml"
2024-02-08 12:41:21 +08:00
mc:Ignorable="d"
Closing="MainWindow_Closing"
Background="AliceBlue"
Title="MainWindow" Height="700" Width="500" WindowStartupLocation="CenterScreen">
<ScrollViewer>
<StackPanel MaxWidth="400" Margin="0,0,0,50">
<Menu>
<MenuItem Header="{Binding LbMenuCategoryHelp}" d:Header="_Help">
<MenuItem.Icon>
<ui:SymbolIcon Symbol="BookQuestionMark20" />
</MenuItem.Icon>
<MenuItem x:Name="instructionsLabel" Header="{Binding LbMenuItemSetup}" Click="instructionsLabel_Click"/>
</MenuItem>
</Menu>
<ui:Card Margin="0,0,0,10">
<StackPanel>
<ui:TextBlock d:Text="Connection State" Text="{Binding LbConnectionState}"/>
<Label x:Name="connectionStateLabel" Content="{Binding LbConnectionStateNotConnected}" d:Content="Not connected" FontSize="10"/>
<Separator Margin="0,6"/>
<Label x:Name="recievedDataLabel" Content="{Binding LbRecievedData}" d:Content="Recieved Data"/>
<ui:TextBox x:Name="RecievedLogBox"
IsReadOnly="True"
HorizontalScrollBarVisibility="Disabled"
VerticalScrollBarVisibility="Auto"
Focusable="False"
AcceptsReturn="True"
AcceptsTab="True"
TextWrapping="Wrap" Height="80">
<ui:TextBox.Icon>
<ui:SymbolIcon Symbol="ArrowDownLeft20" />
</ui:TextBox.Icon>
</ui:TextBox>
<Label x:Name="sentDataLabel" Content="{Binding LbSentData}" d:Content="Sent Data"/>
<ui:TextBox x:Name="SentLogBox"
IsReadOnly="True"
Focusable="False"
HorizontalScrollBarVisibility="Disabled"
VerticalScrollBarVisibility="Auto"
AcceptsReturn="True"
AcceptsTab="True"
TextWrapping="Wrap" Height="80">
<ui:TextBox.Icon>
<ui:SymbolIcon Symbol="ArrowUpRight20" />
</ui:TextBox.Icon>
</ui:TextBox>
<Separator Margin="0,6"/>
<Label x:Name="buttonStateLabel" Content="{Binding LbButtonState}" d:Content="Button state" />
<Label x:Name="buttonStateValue" Content="0" />
</StackPanel>
</ui:Card>
<ui:CardExpander
CornerRadius="8"
Margin="0,0,0,10"
Header="{Binding LbComPort}"
d:Header="COM Port">
<ui:CardExpander.Icon>
<ui:SymbolIcon Symbol="PlugDisconnected20" />
</ui:CardExpander.Icon>
<StackPanel>
<ui:Button x:Name="ConnectToPortButton" Content="{Binding LbConnectToPort}" d:Content="Connect to port" Click="ConnectToPortButton_Click" />
<Separator Margin="0,6"/>
<ui:Button x:Name="buttonInstallComPort" Content="{Binding LbInstallComPort}" Margin="0,0,0,10" d:Content="Install COM port" Click="buttonInstallComPort_Click" />
<ui:Button x:Name="buttonUninstallComPorts" Content="{Binding LbUninstallComPort}" Margin="0,0,0,10" d:Content="Uninstall COM port" Click="buttonUninstallComPorts_Click" />
<ui:Button x:Name="buttonListComPorts" Content="{Binding LbListComPorts}" d:Content="List installed COM ports" Click="buttonListComPorts_Click" />
</StackPanel>
</ui:CardExpander>
<ui:CardExpander
CornerRadius="8"
Margin="0,0,0,10"
Header="{Binding LbBorderSettings}"
d:Header="Border settings">
<ui:CardExpander.Icon>
<ui:SymbolIcon Symbol="EditSettings20" />
</ui:CardExpander.Icon>
<StackPanel>
<RadioButton x:Name="rbBorderDisabled" Content="{Binding LbBorderDisabled}" d:Content="Disabled" GroupName="ColorOptions" Checked="RadioButton1_Checked"/>
<RadioButton x:Name="rbBorderSolidColour" Content="{Binding LbBorderSolid}" d:Content="Solid Colour" GroupName="ColorOptions" Checked="RadioButton2_Checked"/>
<ui:TextBox x:Name="txtBorderHexColor" Text="{Binding Path=BorderColour}" PlaceholderText="#AARRGGBB" IsEnabled="False" Margin="10,10,0,10" TextChanged="txtBorderHexColor_TextChanged"/>
2024-02-08 12:41:21 +08:00
<RadioButton Name="rbBorderRainbow" Content="{Binding LbBorderRainbow}" d:Content="Rainbow" GroupName="ColorOptions" Checked="RadioButton3_Checked"/>
</StackPanel>
</ui:CardExpander>
<ui:CardExpander
CornerRadius="8"
Margin="0,0,0,10"
Header="{Binding LbSettings}"
d:Header="Settings">
<ui:CardExpander.Icon>
<ui:SymbolIcon Symbol="Settings20" />
</ui:CardExpander.Icon>
<StackPanel>
<Label x:Name="languageLabel" Content="{Binding LbLanguageDropdown}" d:Content="Language"/>
<ComboBox x:Name="languageSelector" ItemsSource="{Binding SupportedLanguages}" DisplayMemberPath="NativeName" SelectedItem="{Binding SelectedLanguage, Mode=TwoWay}"/>
<Separator Margin="0,6"/>
<CheckBox x:Name="debugMode" Content="{Binding LbDebugMode}" d:Content="Debug mode" IsChecked="{Binding Path=IsDebugEnabled}" Click="debugMode_Click" Cursor="" Focusable="False" ToolTip="Show the touchpad with translucency and show inputs highlighted" />
<CheckBox x:Name="automaticTouchPanelPositioning" d:Content="Automatic touch panel positioning" Content="{Binding LbAutoSensorPositioning}" IsChecked="{Binding Path=IsAutomaticPositioningEnabled}" Click="automaticTouchPanelPositioning_Click" ToolTip="{Binding LbAutoSensorPositioningTT}"/>
<CheckBox x:Name="automaticPortConnecting" d:Content="Automatic port connecting" Content="{Binding LbAutoPortConnecting}" IsChecked="{Binding Path=IsAutomaticPortConnectingEnabled}" Click="automaticPortConnecting_Click" ToolTip="{Binding LbAutoPortConnectingTT}"/>
<CheckBox x:Name="exitWithSinmai" Content="{Binding LbExitWithSinmai}" d:Content="Exit with Sinmai" IsChecked="{Binding IsExitWithSinmaiEnabled}" Click="exitWithSinmai_Click" ToolTip="{Binding LbExitWithSinmaiTT}"/>
<CheckBox x:Name="emulateRingButtons" Content="{Binding LbEmulateRingButtons}" d:Content="Emulate ring buttons" IsChecked="{Binding IsRingButtonEmulationEnabled}" ToolTip="{Binding LbEmulateRingButtonsTT}" Click="emulateRingButtons_Click"/>
<ui:Button x:Name="openLogFolderButton" Content="{Binding LbOpenLogFolder}" d:Content="Open log folder" Click="openLogFolderButton_Click" />
</StackPanel>
</ui:CardExpander>
<ui:Card>
<StackPanel>
<TextBlock Text="{Binding LbAbout}" d:Text="About" Margin="0,0,0,10"/>
<ui:Anchor
Margin="0"
Padding="16"
HorizontalAlignment="Stretch"
HorizontalContentAlignment="Stretch"
Background="Transparent"
BorderThickness="0,1,0,0"
CornerRadius="0"
NavigateUri="https://github.com/Leapward-Koex/MaiTouchSensorEmulator">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*" />
<ColumnDefinition Width="Auto" />
</Grid.ColumnDefinitions>
<TextBlock Grid.Column="0" Text="Github" />
<ui:SymbolIcon Grid.Column="1" Symbol="WindowNew20" />
</Grid>
</ui:Anchor>
<Label Content="{Binding LbAppVersion}" d:Content="1.0.0.0"/>
<Label Content="By Leapward-Koex"/>
</StackPanel>
</ui:Card>
</StackPanel>
</ScrollViewer>
2024-02-08 12:41:21 +08:00
</Window>