Grid Toolbar & the More Options Menu
The grid's toolbar and its "⋯ More Options" menu, which folds several client-side display controls behind a single button.
Overview
Most of the grid toolbar - Add, group-by, search, the advanced-filter panel - is driven directly by which methods you call in PHP. A few controls are different: they're pure client-side toggles that a visitor changes at will in their own browser, independent of your PHP configuration (though some still need a config switch to be present at all). Those live behind the "⋯ More Options" button so the primary toolbar doesn't get crowded. The menu only shows sections that are actually relevant to the current page - a page with no group_by_columns() call, for instance, never shows a group section.
Column visibility toggle
Lets a visitor hide/show individual grid columns at will, independent of whatever columns() configured for the page. It's gated by a single site-wide config switch, with no per-page override:
public static bool $columnVisibilityToggle = true;
When on (the default), every grid gets a "Columns" section in the More Options menu with a checkbox per column; unchecking one removes it from the header/body/sums footer immediately, client-side. The choice is remembered for the current browser session but doesn't persist across days or devices. There's no per-page XcrudConfig-style call to opt a single table in or out - it's on for every grid, or off for all of them.
Group expand/collapse-all
Only appears once a page calls group_by_columns() (see https://xcrudnova.xcrud.net/docs/grouped-rows-sums-and-reports). The menu shows a single toggle that expands every group at once, or collapses them all - a shortcut over clicking each group header individually.
Form Layout / edit-mode picker
The same edit-mode picker described in Form Layout Options is reachable from this menu too - it's how a visitor reaches the two JS-only split-view modes (split_left/split_right) that set_edit_mode() itself can't set. The menu lists all five: Side view, Split view - left, Split view - right, Modal, and Normal. Picking one applies immediately, even re-opening a form that's already open in the new mode rather than waiting for a refresh.
Show search boxes in grid headers
Toggles the per-column header search inputs (the row of small text boxes under the column headings) on or off. Shown by default; a visitor's choice here is remembered per browser session the same way the column-visibility toggle's choices are.
Related: inline click-to-edit
Not part of the More Options menu itself, but toolbar-adjacent: clicking directly on a grid cell edits that field in place, without opening the full add/edit form. It works alongside whatever edit mode is active and needs no extra configuration to enable - it's part of the base grid behavior.
What's config-driven vs. a pure client toggle
| Feature | Config-driven? | Per-page override? |
|---|---|---|
| Column visibility toggle | Yes - XcrudConfig::$columnVisibilityToggle | No - site-wide only |
| Group expand/collapse-all | Appears automatically when group_by_columns() is set | N/A |
| Form Layout / edit-mode picker | Initial mode via set_edit_mode() | Yes, per page; visitor can still change it live |
| Show search boxes in grid headers | No - pure client toggle | N/A (session-remembered) |
| Inline click-to-edit | No - always available | N/A |