Repository navigation
Uo fiddler cn - #182
Closed
nbyaya wants to merge 76 commits into
Closed
Uo fiddler cn#182nbyaya wants to merge 76 commits into
nbyaya wants to merge 76 commits into
Conversation
- Create LocalizationService for dynamic UI translation - Create StringDictionary for JSON-based translation management - Add zh-CN.json dictionary with 22 tab names and 12 menu items - Initialize localization in Program.Main() - Apply localization in MainForm constructor - Configure .csproj to copy JSON dictionaries to output directory - Supports 22 tabs and 12 menu items including new 4.24.0 items * VerdataTab (Verdata补丁) * darkModeMenuItem (暗黑模式) - Minimal code changes: 3 lines of code + Localization service classes - Fully backwards compatible with existing codebase
- Changed tab keys from display names (e.g., 'Start') to actual control names (e.g., 'StartTab') - Updated menu item names to match actual control names from MainForm.Designer.cs - Added debug output to help diagnose localization issues - Chinese UI now displays correctly for all 22 tabs and 12 menu items
- Add LocalizeToolStripItems method to handle ToolStripDropDownButton - Add LocalizeToolStripItem method for menu button localization - Update zh-CN.json with all ToolStrip menu button names - Include View menu items (ToggleViewStart, ToggleViewItems, etc.) - Now supports both MenuStrip and ToolStrip menus - All 22 tabs and 41+ menu items now display in Chinese
- Add LocalizationService.LocalizeForm() to ManagePluginsForm, AboutBoxForm, and ExceptionForm - Add Chinese translations for 3 additional forms in zh-CN.json: - ManagePluginsForm: 管理插件(需要重新启动) - AboutBoxForm: 关于 with localized controls (checkboxes, buttons, labels) - ExceptionForm: 异常, 确定 - All localization follows non-invasive pattern: JSON-based translations with minimal code changes - Compilation: ✅ Success (0 errors)
…ation - Add mapping dictionary to separate display names from original plugin names - Localize plugin names in checklist using zh-CN.json entries - Update OnSelect method to use original names for plugin info lookup - Update OnClosing method to preserve check state using original names - Localize window title to '管理插件(需要重新启动)' - Add zh-CN.json entries for all 6 plugins: - MassImportPlugin -> 批量导入插件 - ComparePlugin -> 对比插件 - MultiEditorPlugin -> 多编辑器插件 - SendItemPlugin -> 发送物品插件 - UOP Packer -> UOP打包器 - PluginTest -> 插件测试 - Ensures check/uncheck functionality works correctly with localized names - Compilation: ✅ Success (0 errors)
- 改进 LocalizePluginTabPages() 方法,支持处理一个插件添加的多个标签页 - 在调用 ModifyTabPages() 前记录标签页数量,然后汉化所有新添加的标签页 - 修正 JSON 中 'Compare CliLocs' 的大小写(之前是 'Compare Clilocs') - 现在 Compare 插件的所有 10 个对比标签页都能正确显示中文 测试验证: ✅ Compare Items → 对比物品 ✅ Compare Land → 对比地形 ✅ Compare CliLocs → 对比CliLoc ✅ Compare Hues → 对比色调 ✅ Compare Gumps → 对比Gump ✅ Compare Map → 对比地图 ✅ Compare Texture → 对比纹理 ✅ Compare AnimData → 对比动画数据 ✅ Compare RadarCol → 对比雷达颜色 ✅ Compare TileData → 对比图块数据
- 添加 MassImportForm 的汉化支持 - 在 PluginBase 中添加静态 LocalizationGetter 属性作为汉化回调 - 在 MainForm 中初始化 PluginBase.LocalizationGetter - 修改 MassImportForm 添加 SetLocalization() 方法和 Shown 事件汉化 - 修改 MassImportPluginBase 在创建窗体时应用汉化 汉化内容: ✅ 窗口标题: MassImport → 批量导入 ✅ groupBox1: XML → XML ✅ button1: Create Default XML → 创建默认 XML ✅ button2: Load XML → 加载 XML ✅ groupBox2: OutPut → 输出 ✅ button3: Start → 开始 ✅ checkBoxDirectSave: DirectSave → 直接保存
- 添加Directory标签词条 - 添加Rules按钮两种状态词条(Open/Close) - CompareMapControl、CompareAnimDataControl、CompareRadarColControl词条细化
- 添加labelDir目录标签汉化 - 完善Rules按钮状态切换时的文本更新 - 修复GetLocalizedFlagName方法标志名称汉化
- CompareAnimDataControl、CompareCliLocControl等统一实现SetLocalization - 完善ApplyLocalization方法逻辑 - 删除重复的OnLoad本地化调用
- 汉化 Jump to Male/Female 菜单项(跳转到男/女角色) - 添加 jumpToMale 和 jumpToFemale 翻译支持 - JumpToMaleFemaleInvalidate 方法使用汉化文本 - 修复 MainForm 构造函数的调试输出 - Ctrl 多选和导出正常工作
- 添加 ListView_MouseClick 事件处理 Shift+Click - Shift+Click 选择范围内所有 Gump(包括端点) - 范围选择后支持批量导出 - 关键:检查 Ctrl 时立即返回,确保不影响 Ctrl 多选 - Ctrl 多选导出功能保持正常
- 复制图像、粘贴图像、删除、保存等操作的对话框汉化 - 尺寸验证错误信息汉化 - 使用 string.Format 支持动态参数(如删除确认中的 Gump ID) - 保留英文回退值,确保没有汉化项时仍可使用
- 修复 HuesControl/GumpControl Load 事件中的重复 ApplyLocalization() 调用 - 为 HueEditForm 添加汉化支持(SetLocalization/ApplyLocalization) - 处理动态窗口标题的汉化(保留索引信息) - 在 HuesControl 中调用 HueEditForm 时传入汉化 getter - 更新 MainForm 为 hueControl 调用 SetLocalization() - 添加 HueEditForm 的 14 个汉化词条到 zh-CN.json
- 为 MultisControl.cs 添加 SetLocalization/ApplyLocalization 方法 - 实现 55 个菜单项、标签页、按钮的汉化 - 支持 MUL 和 UOP 两个标签页 - MainForm.cs 中调用 multisControl.SetLocalization() - zh-CN.json 已包含所有 55 个词条 修复类型: 类型 1 - 简单 UI 控件文本汉化(非侵入式)
- 添加 35 个汉化词条到 zh-CN.json - Status 子字典:尺寸、最大高度、多重区域、表面、缩放 - HelpForm 子字典:帮助窗口完整的键盘快捷方式文本 修复类型: 汉化词条
- 实现 FormatMultiStatus()、GetMaxHeightLabel()、GetZoomLabel() - 添加 SetLocalization() 和 ApplyLocalization() - 动态状态文本应用汉化(类型8) - 帮助窗口汉化支持(类型11)
- 实现 SetLocalization() 和 ApplyLocalization() - 汉化窗口标题、列标题、按钮、快捷方式说明 - Designer.cs 硬编码文本修改
- 实现 SetLocalization/ApplyLocalization 方法 - 汉化 6 个按钮和窗口标题 - 在 MapDefragStaticsForm 中集成汉化调用 - 新增 6 个汉化词条到 zh-CN.json
- 添加 SetLocalization 和 ApplyLocalization 方法 - 保存 Map 和 Point 为实例变量 - 提取内容生成到 GenerateContent 方法,支持汉化重新生成 - 汉化标签:陆地图块、高度、静态物品、色调 - 共 6 个汉化元素
完整汉化两个相关窗口: 1. MapDiffInsertForm - 差异到地图复制(主窗口) - 窗口标题、分组框、复选框、按钮等 UI 元素 - 预览区域信息(块坐标、差异数据、扩展提示) - 进度状态消息(插入中、已取消、失败、完成等) - 下拉框格式选项(UOP/MUL 格式) 2. MapDiffApplyResultForm - 差异应用结果(结果窗口) - 窗口标题、按钮文本 - 验证、保存、复制、打开文件夹功能 共 48 个汉化词条,完整工作流测试通过
- 添加内容生成方法 GenerateContent() - 保存地图和坐标为实例变量 - SetLocalization 时重新生成内容以应用汉化 - 汉化标签:陆地图块、高度、静态物品、色调 - 现在点击地图时,详情窗口所有内容都是中文显示
- 为 MapRegionCopyResultForm 添加 SetLocalization/ApplyLocalization 方法 - 实现 6 个 UI 元素的汉化(窗口标题、验证、保存、复制、打开文件夹、关闭) - 在 MapReplaceForm 中通过反射调用 LocalizationService 为 MapRegionCopyResultForm 提供汉化 getter - zh-CN.json 已包含所有 6 个词条
- 为 MapReplaceForm 添加 SetLocalization/ApplyLocalization 方法 - 实现 28 个 UI 元素的汉化(窗口标题、所有分组框、标签、复选框、按钮等) - 在 MapControl 中为 MapReplaceForm 调用 SetLocalization() - zh-CN.json 已包含所有 28 个词条 这是最后一个 Map 窗口,完成了全部 12 个 Map 相关窗口的汉化
- 添加 ApplyComboBoxLocalization() 方法对动态生成的 ComboBox 项进行汉化 - 为 'the same format as this client (.mul/.uop)' 等动态项添加 JSON 词条 - 实现类型 2 汉化模式 - 动态列表项汉化 - 修复遗漏的 ComboBoxFormats 4 个词条 修复前:ComboBox 项显示英文 修复后:ComboBox 项显示中文
- 所有 UI 文本、菜单、按钮 - 预览消息、警告和错误提示 - 进度显示和高度范围信息 - 调整 UI 布局以适应中文文本
- ComboBox 选项汉化:Drop→丢弃, Mask to 0-7→掩码到 0-7, Keep→保留 - 状态消息汉化:分析中/整理中/已分析/已取消/失败/完成 - 标签宽度调整:Location 240, Size 56 - 提示框标题使用窗口标题(中文)
- OnClickReportInvisStatics:报告地图下方静态物体 → 文件保存对话框汉化 - OnClickReportInvalidMapIDs:报告无效地图ID → 文件保存对话框汉化
- OnClickRewriteMap:文件保存对话框汉化
- 添加菜单项、标签、对话框标题和按钮的中文翻译 - 支持 OpenFileDialog 和 FileSavedDialog 完整汉化 - 包含动态参数化标题处理
- 添加 20 个汉化词条到 zh-CN.json - 实现 SetLocalization/ApplyLocalization 模式 - 修复 DataGridView 列头汉化异常(类型 15 陷阱) - 测试通过
- AnimDataControl:标签页(19 个元素)、状态栏(3 个标签) - HuePopUpForm:色调拾取器窗口及内部 HuesControl - AnimDataExportForm/ImportForm:导出导入窗口 - 相关消息框与菜单项汉化 编译验证:0 个错误
- 32 个菜单项、标签、按钮汉化 - FileSavedDialog 标题、按钮汉化 - FolderBrowserDialog 描述文本汉化 - 共 5 个新 JSON 词条
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.