Skip to content

Add CDI editor widget and finish CDI XML parser - #10

Merged
rm5248 merged 1 commit into
masterfrom
cdi-editing
Sep 21, 2026
Merged

rm5248 merged 1 commit into
masterfrom
cdi-editing

Conversation

@rm5248

@rm5248 rm5248 commented Sep 21, 2026

Copy link
Copy Markdown
Owner

The CDI parser under GUI/lcc/cdi/ was mostly stubs: only
was ever parsed, string/eventid/map parsing were no-ops, and the segment and group token loops silently dropped every other XML token due to a shadowed loop variable that called readNext() twice per iteration. Finish the parser (segment/group/int/string/eventid/map, including self-closing elements like and padding ) and add the missing accessors needed to consume the parsed tree.

Add CdiEditorWidget, which lets the user pick a CDI XML file and generates a tree/form GUI from it: a tree of segments and groups (with replicated groups expanded into numbered entries), and a right-hand form with a line edit per string, a combo box per mapped int, a spin box per plain int, and a placeholder line edit per event ID. This is GUI generation only - reading/writing the actual node configuration memory is not implemented yet. Wired up as a new "CDI Editor..." entry under the LCC menu.

The CDI parser under GUI/lcc/cdi/ was mostly stubs: only <identification>
was ever parsed, string/eventid/map parsing were no-ops, and the segment
and group token loops silently dropped every other XML token due to a
shadowed loop variable that called readNext() twice per iteration. Finish
the parser (segment/group/int/string/eventid/map, including self-closing
elements like <acdi/> and padding <group offset='n'/>) and add the
missing accessors needed to consume the parsed tree.

Add CdiEditorWidget, which lets the user pick a CDI XML file and
generates a tree/form GUI from it: a tree of segments and groups (with
replicated groups expanded into numbered entries), and a right-hand
form with a line edit per string, a combo box per mapped int, a spin
box per plain int, and a placeholder line edit per event ID. This is
GUI generation only - reading/writing the actual node configuration
memory is not implemented yet. Wired up as a new "CDI Editor..." entry
under the LCC menu.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
@rm5248
rm5248 merged commit 9bfdd73 into master Sep 21, 2026
1 check failed
@rm5248
rm5248 deleted the cdi-editing branch September 21, 2026 22:31
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