Files
Better-Seewo/Better-EN5/UI/SettingsWindow.xaml

169 lines
10 KiB
Plaintext
Raw Normal View History

<Window x:Class="BetterEN5.UI.SettingsWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="Better-Seewo 设置"
Height="520" Width="680"
ResizeMode="CanResize"
WindowStyle="SingleBorderWindow"
FontSize="14">
<Window.Resources>
<Style x:Key="TabHeaderStyle" TargetType="TabItem">
<Setter Property="FontSize" Value="15"/>
<Setter Property="Padding" Value="16,8"/>
<Setter Property="Background" Value="Transparent"/>
</Style>
<Style x:Key="ActionButton" TargetType="Button">
<Setter Property="Padding" Value="16,8"/>
<Setter Property="Margin" Value="8"/>
<Setter Property="FontSize" Value="14"/>
<Setter Property="Cursor" Value="Hand"/>
</Style>
<Style x:Key="GroupBoxStyle" TargetType="GroupBox">
<Setter Property="Margin" Value="8"/>
<Setter Property="Padding" Value="12"/>
<Setter Property="FontSize" Value="14"/>
</Style>
</Window.Resources>
<Grid Margin="12">
<TabControl>
<TabItem Header="墨迹管理" Style="{StaticResource TabHeaderStyle}">
<ScrollViewer VerticalScrollBarVisibility="Auto">
<StackPanel Margin="8">
<GroupBox Header="墨迹导出" Style="{StaticResource GroupBoxStyle}">
<StackPanel>
<TextBlock TextWrapping="Wrap" Margin="0,0,0,12">
将当前课件中的所有墨迹(笔迹、标注)导出为 JSON 文件,方便备份和迁移。
</TextBlock>
<UniformGrid Columns="2" HorizontalAlignment="Left">
<Button Content="导出墨迹..." Style="{StaticResource ActionButton}"
Click="ExportInk_Click"/>
<Button Content="导入墨迹..." Style="{StaticResource ActionButton}"
Click="ImportInk_Click"/>
</UniformGrid>
</StackPanel>
</GroupBox>
<GroupBox Header="墨迹设置" Style="{StaticResource GroupBoxStyle}">
<StackPanel>
<CheckBox x:Name="AutoSaveInkCheckBox" Margin="4" Content="关闭课件时自动备份墨迹"/>
<CheckBox x:Name="IncludeShapeInkCheckBox" Margin="4" Content="导出包含形状上的笔迹"/>
<Button Content="保存设置" Style="{StaticResource ActionButton}"
HorizontalAlignment="Left" Click="SaveInkSettings_Click"/>
</StackPanel>
</GroupBox>
<GroupBox Header="状态" Style="{StaticResource GroupBoxStyle}">
<TextBlock x:Name="InkStatusText" Text="就绪" Foreground="Gray"/>
</GroupBox>
</StackPanel>
</ScrollViewer>
</TabItem>
<TabItem Header="文件转换" Style="{StaticResource TabHeaderStyle}">
<ScrollViewer VerticalScrollBarVisibility="Auto">
<StackPanel Margin="8">
<GroupBox Header="PPT 转 ENBX" Style="{StaticResource GroupBoxStyle}">
<StackPanel>
<TextBlock TextWrapping="Wrap" Margin="0,0,0,12">
将 PowerPoint 文件(.pptx转换为希沃白板课件格式.enbx
保留更多原始格式和排版。
</TextBlock>
<Button Content="选择并转换 PPT..." Style="{StaticResource ActionButton}"
HorizontalAlignment="Left" Click="ConvertPptx_Click"/>
</StackPanel>
</GroupBox>
<GroupBox Header="ENBX 转 PPT" Style="{StaticResource GroupBoxStyle}">
<StackPanel>
<TextBlock TextWrapping="Wrap" Margin="0,0,0,12">
将希沃白板课件(.enbx导出为 PowerPoint 格式(.pptx
</TextBlock>
<Button Content="选择并转换 ENBX..." Style="{StaticResource ActionButton}"
HorizontalAlignment="Left" Click="ConvertEnbx_Click"/>
</StackPanel>
</GroupBox>
<GroupBox Header="转换修复" Style="{StaticResource GroupBoxStyle}">
<StackPanel>
<TextBlock TextWrapping="Wrap" Margin="0,0,0,12">
清除转换缓存和临时文件,修复可能的转换失败问题。
</TextBlock>
<UniformGrid Columns="2" HorizontalAlignment="Left">
<Button Content="清理转换缓存" Style="{StaticResource ActionButton}"
Click="ClearConversionCache_Click"/>
<Button Content="强制重新注册转换器" Style="{StaticResource ActionButton}"
Click="ReRegisterConverter_Click"/>
</UniformGrid>
</StackPanel>
</GroupBox>
<GroupBox Header="状态" Style="{StaticResource GroupBoxStyle}">
<TextBlock x:Name="ConversionStatusText" Text="就绪" Foreground="Gray"/>
</GroupBox>
</StackPanel>
</ScrollViewer>
</TabItem>
<TabItem Header="触摸修复" Style="{StaticResource TabHeaderStyle}">
<ScrollViewer VerticalScrollBarVisibility="Auto">
<StackPanel Margin="8">
<GroupBox Header="触摸检测状态" Style="{StaticResource GroupBoxStyle}">
<StackPanel>
<TextBlock x:Name="TouchStatusText" TextWrapping="Wrap" Margin="0,0,0,12">
正在检测触摸状态...
</TextBlock>
<UniformGrid Columns="2" HorizontalAlignment="Left">
<Button Content="检测触摸状态" Style="{StaticResource ActionButton}"
Click="CheckTouch_Click"/>
<Button Content="应用修复" Style="{StaticResource ActionButton}"
Click="ApplyTouchFix_Click"/>
</UniformGrid>
</StackPanel>
</GroupBox>
<GroupBox Header="修复选项" Style="{StaticResource GroupBoxStyle}">
<StackPanel>
<CheckBox x:Name="ForceIWBModeCheckBox" Margin="4" Content="强制启用 IWB 模式(白板模式)" IsChecked="True"/>
<CheckBox x:Name="SkipTouchCheckCheckBox" Margin="4" Content="跳过启动时的触摸检测" IsChecked="True"/>
<CheckBox x:Name="SuppressTouchErrorsCheckBox" Margin="4" Content="抑制触摸相关错误提示" IsChecked="True"/>
<CheckBox x:Name="EnableFallbackModeCheckBox" Margin="4" Content="启用鼠标回退模式(触摸失效时自动切换)" IsChecked="True"/>
<Button Content="保存触摸设置" Style="{StaticResource ActionButton}"
HorizontalAlignment="Left" Click="SaveTouchSettings_Click"/>
</StackPanel>
</GroupBox>
<GroupBox Header="说明" Style="{StaticResource GroupBoxStyle}">
<TextBlock TextWrapping="Wrap">
• 部分学校电脑的触摸硬件本身没有故障,但希沃白板的触摸检测逻辑存在兼容性问题。&#10;
• 本功能通过配置注册表和配置文件,强制启用触摸支持,跳过有问题的检测步骤。&#10;
• 如果修复后触摸仍不工作,请尝试重启希沃白板。&#10;
• 如遇到更严重的触摸问题,可使用"还原"功能恢复默认设置。
</TextBlock>
</GroupBox>
</StackPanel>
</ScrollViewer>
</TabItem>
<TabItem Header="关于" Style="{StaticResource TabHeaderStyle}">
<StackPanel Margin="24" VerticalAlignment="Center" HorizontalAlignment="Center">
<TextBlock Text="Better-Seewo" FontSize="24" FontWeight="Bold"
HorizontalAlignment="Center" Margin="0,0,0,8"/>
<TextBlock Text="希沃白板功能增强插件" FontSize="16"
HorizontalAlignment="Center" Margin="0,0,0,4"/>
<TextBlock x:Name="VersionText" Text="版本 1.0.0"
HorizontalAlignment="Center" Foreground="Gray" Margin="0,0,0,24"/>
<Separator Margin="0,0,0,16"/>
<TextBlock TextWrapping="Wrap" HorizontalAlignment="Center">
Better-EN5 模块提供以下增强功能:&#10;
• 墨迹(笔迹/标注)的独立导出和导入&#10;
• 增强的 PPT 与 ENBX 文件转换&#10;
• 触摸检测逻辑修复与错误抑制&#10;&#10;
项目地址https://github.com/anomalyco/opencode
</TextBlock>
</StackPanel>
</TabItem>
</TabControl>
</Grid>
</Window>