Skip to content

图片"解说框(caption mode)"#703

Open
ismism-learner wants to merge 8 commits into
graphif:masterfrom
ismism-learner:master
Open

图片"解说框(caption mode)"#703
ismism-learner wants to merge 8 commits into
graphif:masterfrom
ismism-learner:master

Conversation

@ismism-learner
Copy link
Copy Markdown
Contributor

1.目标
完成图片"解说框(caption mode)"新功能的所有修复,并将改动提交推送到GitHub。具体包括:

  • 文字自动换行
  • 创建时不弹输入框,默认显示"..."
  • 编辑时用多行textarea替代单行input,宽度匹配解说框区域
  • 拖拽卡顿分析(结论:非图像重新解码问题)
  1. 已完成的工作
    代码修复(全部完成)
  2. SectionRenderer.tsx — 解说框渲染从单行文字改为多行文字渲染,传入宽度限制;用 textToTextArray() 计算多行高度
  3. Section.tsx — 解说框尺寸调整函数改用 textToTextArray() 计算多行行数和高度;无子节点时根据换行后最大行宽计算宽度
  4. StageSectionPackManager.tsx — 创建解说框时去掉弹窗,直接用"..."作为默认文字
  5. ControllerSectionEdit.tsx — 解说框编辑从单行输入框改为多行文本框;位置和宽度与渲染区域一致;支持自动换行
  6. StageSectionInOutManager.tsx — 解说框模式下删除图片后回退为分组模式
  7. Settings.tsx — 新增菜单项
  8. shortcutKeysRegister.tsx — 注册快捷键
  9. types/node.tsx — 序列化类型增加 mode 字段
  10. AIEngine.tsx + AIWindow.tsx — AI功能改进(与解说框无关)

ismism-learner and others added 6 commits May 8, 2026 12:30
Add SectionMode type (group/caption) to Section entity with caption-specific layout calculation using textToTextArray for proper multi-line text wrapping. Update SectionRenderer to use renderMultiLineText instead of renderText for caption text.

Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Replace single-line input with multi-line textarea when editing caption mode sections. Textarea width matches the caption text area and supports word wrap, enabling proper long-text editing.

Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Add wrapImageInCaptionSection to wrap selected images in a caption section with default '...' text (no dialog prompt). Add toggleSectionMode to switch between group and caption modes. Auto-revert caption to group mode when last image child is removed.

Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
…simulation bug

- Add 7 adjustable force-directed parameters (link distance, strength, collision, velocity decay, etc.) to Settings UI
- Replace hardcoded constants in forceDirectedLayout with real-time Settings getters
- Fix bug where dragging nodes would prematurely stop the force simulation
- Add translations for all new settings in 5 languages
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