src/ImeWlConverterMac/MENU_IMPLEMENTATION.md
本次更新已经将 Windows 版本的所有菜单功能复刻到 macOS 版本中。
Views/FilterConfigWindow.axaml 和 Views/FilterConfigWindow.axaml.csViews/WordRankGenerateWindow.axaml 和 Views/WordRankGenerateWindow.axaml.csViews/ChineseConverterSelectWindow.axaml 和 Views/ChineseConverterSelectWindow.axaml.csViews/DonateWindow.axaml 和 Views/DonateWindow.axaml.csViews/HelpWindow.axaml 和 Views/HelpWindow.axaml.csViews/AboutWindow.axaml 和 Views/AboutWindow.axaml.csViews/SplitFileWindow.axaml 和 Views/SplitFileWindow.axaml.csViews/MergeWLWindow.axaml 和 Views/MergeWLWindow.axaml.cs所有对话框都使用 Avalonia 的 ShowDialog 方法,确保模态显示:
var window = new FilterConfigWindow(_filterConfig);
var result = await window.ShowDialog<bool?>(mainWindow);
if (result == true)
{
// 用户点击了确定
}
FilterConfig: 过滤配置在 ViewModel 中保存WordRankGenerater: 词频生成器在 ViewModel 中保存ChineseTranslate 和 IChineseConverter: 简繁转换配置在 ViewModel 中保存菜单项通过 Command 绑定到 ViewModel 中的命令:
<MenuItem Header="词条过滤设置" Command="{Binding FilterConfigCommand}"/>
使用 IsVisible 属性实现复选框效果:
<MenuItem Header="✓ 结果只显示首、末10万字符"
Command="{Binding ToggleShowLessCommand}"
IsVisible="{Binding ShowLess}"/>
<MenuItem Header=" 结果只显示首、末10万字符"
Command="{Binding ToggleShowLessCommand}"
IsVisible="{Binding !ShowLess}"/>
按行数分割
按文件大小分割
按字符数分割
分割后的文件会自动命名为:原文件名01.扩展名、原文件名02.扩展名 等
每一行的格式必须为:编码 词1 词2 词3
例如:
a 啊 阿 呵
ai 爱 哀 唉