Repository navigation
Uo fiddler cn - #181
Closed
nbyaya wants to merge 30 commits into
Closed
Uo fiddler cn#181nbyaya wants to merge 30 commits into
nbyaya wants to merge 30 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 硬编码文本修改
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.