Skip to content

Editor: widget palette — add-widget sidebar #112

Description

@jonocodes

Design: #82. The left pane of the three-pane editor is a palette the user drags/clicks to add widgets to the canvas.

Scope

  • Palette entries for the v1 widget kinds: button, blank (gap), meter, stats, jogstrip, trackpad. Omit media/mediabrowser (those are daemon-discovered only — not palette-insertable per Advanced field round-trip #89).
  • Insertion: clicking a palette entry appends a new widget at the end of the layout's widget list (the canvas re-renders with the new cell).
  • New-widget id: button-<n>, blank-<n>, meter-<n>, etc. — minted by the palette, auto-incrementing to avoid collisions. Editable post-insertion in the properties panel (existing id field). Backstopped by the YAML round-trip strategy #85 uniqueness validator.
  • Default shape: each new widget gets reasonable defaults — 1×1 size, empty label, no icon, no action.

Done when

  • Palette entries are clickable, each inserts a widget of the correct kind at the end of the layout.
  • Multiple inserts produce unique ids.
  • The new widget appears in the canvas immediately and can be selected for property editing.

Metadata

Metadata

Assignees

No one assigned

    Labels

    needs-triageMaintainer needs to evaluate this issue

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions