feat(console): parameter builder in the command explorer (phase 3)
The detail pane's Parameters section is now an editable form: each parameter is a type-hinted input field (string / number / json, optional marked), and a live "Builds" preview shows the command being assembled. String values are auto-quoted; a required field left empty keeps its placeholder and disables "Insert & run"; trailing empty optionals are omitted. Insert and Insert & run now use the assembled command (not just the template), so Insert & run works for parameterized commands once the required fields are filled — destructive commands still confirm first. Param fields reset when the selected command changes or the modal opens. Keyboard nav (Up/Down/Enter) is scoped to the search box so typing in a field doesn't move the selection. A best-effort parseParamSpecs turns the human-readable param templates into fields; JSON-array params (z_sendmany, createrawtransaction) surface as a single "json" field the user pastes into. Adds the console_ref_builds label + 8 translations. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -193,6 +193,8 @@ private:
|
||||
int cmd_sel_idx_ = -1; // detail-pane selection: command index within that category
|
||||
std::string pending_submit_; // command to run next frame (deferred so the modal needs no executor)
|
||||
const ConsoleCommandEntry* run_confirm_cmd_ = nullptr; // destructive "Insert & run" awaiting confirmation
|
||||
char cmd_param_bufs_[6][256] = {{0}}; // parameter-builder input fields
|
||||
const ConsoleCommandEntry* cmd_param_owner_ = nullptr; // command the param buffers currently hold
|
||||
};
|
||||
|
||||
} // namespace ui
|
||||
|
||||
Reference in New Issue
Block a user