20 lines
1.4 KiB
Markdown
20 lines
1.4 KiB
Markdown
## Shell UI Command and Deferred Work Flow
|
|
|
|
- Roots: shell callback paths that converge on `shell_dispatch_ui_command` at `0x00464410`.
|
|
- Trigger/Cadence: event-driven UI command dispatch plus deferred-message queue flushing during
|
|
shell activity.
|
|
- Key Dispatchers: `shell_dispatch_ui_command`, `shell_enqueue_deferred_work_message`,
|
|
`shell_post_deferred_message_type5`, `shell_post_deferred_message_type6`,
|
|
`shell_enqueue_deferred_message_type4`, `shell_enqueue_deferred_message_type1`.
|
|
- State Anchors: shell object at `0x0062be68`, queue roots around `[this+0x11369d]`,
|
|
`[this+0x1136a1]`, and `[this+0x1136a5]`, global routing gates at `0x006d4034`, and the separate
|
|
detail-panel controller rooted at `0x006d0818`.
|
|
- Subsystem Handoffs: routes into graphics config, scenario-text export, overlay generation,
|
|
multiplayer UI, shell detail windows such as `EditorPanel.win` and `TrainDetail.win`, and
|
|
presentation-facing deferred work later drained by `shell_service_frame_cycle`.
|
|
- Evidence: function-map shell rows around `0x00464410`, `0x004d4500`, `0x004ddbd0`, and
|
|
`0x0051f1d0..0x0051f460`.
|
|
- Current Boundary: current local evidence keeps this dispatcher on the shell-side UI callback and
|
|
detail-panel command path. The live `0x006d0818` lane reads as shell-only, while gameplay world
|
|
entry and long-lived frame cadence still rendezvous through the broader shell-owned bring-up and
|
|
frame-service coordinators rather than through this command table.
|