/

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.

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

FeatureConfig-driven?Per-page override?
Column visibility toggleYes - XcrudConfig::$columnVisibilityToggleNo - site-wide only
Group expand/collapse-allAppears automatically when group_by_columns() is setN/A
Form Layout / edit-mode pickerInitial mode via set_edit_mode()Yes, per page; visitor can still change it live
Show search boxes in grid headersNo - pure client toggleN/A (session-remembered)
Inline click-to-editNo - always availableN/A