大型 JSON 文件的结构化编辑器
树视图与代码编辑器双向同步,所有操作支持完整撤销重做
大型 JSON 文件难以理解和修改,纯文本编辑器缺少结构视角。嵌套层级深、键值对多时,人工编辑极易出错。
PluginJson 将 JSON 解析为 EItem 树(EJsonDocument → EJsonObject/EJsonArray → EJsonLeaf),每个 JSON 值成为树节点,属性自动暴露在属性面板。
PluginJson 同时展示树视图和代码编辑器,两者双向同步
代码编辑器和树视图实现深度联动 —— 点击树节点高亮对应 JSON 文本区域,编辑 JSON 文本自动更新树结构。所有操作(增/删/改/移节点)均支持完整 undo/redo。
rapidjson SAX 解析器在解析 JSON 时,通过偏移计算器精确记录每个 token 的字节范围。EJsonFindByOffset 实现反向定位:给定代码编辑器的光标字节偏移,快速找到对应的树节点。树编辑操作通过字节范围替换直接在代码编辑器中更新对应文本区间,保持 JSON 格式完整。
EItem 的继承层次 —— EJsonObject 和 EJsonLeaf 在树视图中的呈现