Skip to content

Ribbon: RibbonGrid, a size picker (Table: columns by rows) - #504

Merged
tannevaled merged 1 commit into
mainfrom
ribbon-grid
Oct 23, 2026
Merged

tannevaled merged 1 commit into
mainfrom
ribbon-grid

Conversation

@tannevaled

Copy link
Copy Markdown
Contributor

Adds RibbonGrid to the Ribbon: a control whose popup is a grid of cells to size something by (a table), as the Table button of a word processor does.

  • GridCols x GridRows (8 x 6 by default, at most 16 x 16), OnGrid(cols, rows).
  • Pointer or arrows light the cells from the corner to the cell under them; a caption says "3 × 2"; click or Enter chooses and closes; Home/End; Escape closes.
  • Light and dark drawing, expanded/collapsed for assistive technology, disabled with its Action; it reuses the ribbon's popup geometry, hover, click and key routing.
  • 100% statement coverage, README updated. Release as a MINOR (v0.340.0) with ghrelease.

🤖 Generated with Claude Code

A control kind whose popup is a GridCols x GridRows grid of cells (8 x 6 by
default, at most 16 x 16): the pointer, or the arrow keys, light the cells from
the corner to the one they are on, a caption under them says "3 x 2", and
choosing a cell (click, Enter) calls OnGrid(cols, rows) and closes the popup.
Home/End jump to the first and the last cell, Escape closes. Drawn in both
themes (accent fill and edge on the lit cells), reported to assistive
technology as a button that is expanded while the grid is open, disabled with
its Action. The popup machinery is the ribbon's own (popupGeometry,
popupClick, popupKey), so a grid is positioned, hovered, clicked and keyed like
a gallery.

100% statement coverage; README updated.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
@tannevaled
tannevaled merged commit 12856eb into main Oct 23, 2026
1 check passed
@tannevaled
tannevaled deleted the ribbon-grid branch October 23, 2026 19:04
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