Skip to content

[1297] 另存为对话框 stem/tmu 互相可选 - #4550

Open
da-liii wants to merge 3 commits into
mainfrom
da/1297/stem_save_as
Open

[1297] 另存为对话框 stem/tmu 互相可选#4550
da-liii wants to merge 3 commits into
mainfrom
da/1297/stem_save_as

Conversation

@da-liii

@da-liii da-liii commented Sep 11, 2026

Copy link
Copy Markdown
Contributor

需求

1279 之后另存为对话框按当前 buffer 格式收窄过滤器,stem/tmu 两个方向互不可达:

  • stem buffer(或 .ts 文件)另存为:只有 STEM files (*.stem)TS files (*.ts)
  • tmu/tm buffer 另存为:只有 TMU files (*.tmu)TM files (*.tm)

本 PR 让两个方向互相可选:stem 格式的 save_as 增加 tmu,tmu 格式的 save_as 增加 stem。

改动

  • stem → tmuchooser_stem_save_as_filters()(原 chooser_style_filters 改名)追加 TMU files (*.tmu);默认仍是 STEM,切到 TMU 过滤器时沿用 1279 既有路径按所选过滤器后缀规范文件名
  • tmu → stemset_typeaction_save_as 分支追加 STEM files (*.stem);默认后缀仍是 tmu,切到 STEM 过滤器输无后缀文件名时按 QTBUG-59401 补全逻辑追加 .stem
  • ImGui 选择器 action_save_as 的 extensions 追加 stem,与 Qt 保持一致(桌面端为 stub,不影响行为)
  • 保存路径无需改动:scheme 侧 has-faithful-format? 已同时包含 stem/tmu

测试

  • qt_chooser_filters_test 9 项全部通过(更新 test_style_filters 为三项过滤器断言)
  • 手动验证步骤见 devel/1297.md

🤖 Generated with Claude Code

da-liii and others added 3 commits September 11, 2026 23:12
Co-Authored-By: Claude <noreply@anthropic.com>
- stem 方向:chooser_stem_save_as_filters(原 chooser_style_filters 改名)
  追加 TMU files (*.tmu) 过滤器
- tmu 方向:action_save_as 过滤器列表追加 STEM files (*.stem)
- ImGui 选择器 action_save_as extensions 追加 stem,与 Qt 保持一致

Co-Authored-By: Claude <noreply@anthropic.com>
- chooser_save_as_target 覆盖 .tmu(返回 tmu 不改写建议名),tmu buffer
  切 STEM/TM 过滤器时经 chooser_normalize_suffix 规范最终文件名,
  消除切过滤器不改名静默存原格式及 foo.tmu.tm 双后缀
- 修正 perform_dialog 头部陈旧注释(clang-format 断行 + 仍写 tmu/tm)
- test_style_filters 改名 test_stem_save_as_filters,新增 test_rewrite_tmu
- ImGui extensions 加注释说明 parity 性质(暂无消费者)

Co-Authored-By: Claude <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant