Context Menu Default Structure
Summary
- AdapTable provides a default menu structure for the Context Menu
- We describe it in detail here so that developers can easily move or remove items
AdapTable provides a large number of Menu Items which it appends to the Context Menu.
These Menu Items differ each time the Context Menu opens, based on the cell and column which was clicked.
AdapTable groups the Context Menu Items it provides into five sections (separated by menu dividers):
Note
A separator is provided between each section when that section has visible items
- Export
- Actions (cell / column actions from multiple modules)
- UI Components (Settings Panel and Dashboard)
- Editing (Smart Edit and Bulk Update)
- Grid & column related (Grid sub-menu and Column Info)
Caution
- The list below shows all Context Menu items AdapTable can provide and how they are arranged by default (
AgGridMenuAdapter.buildContextMenuDefaultStructure) - The menu displayed varies according to Entitlements, module visibility, and the nature / data type / editability of the cell and column
- Explicit parent group names include
export-group,column-filter-group,dashboard-group,edit-group, andgrid-group
Export Section
This section contains export actions from the Export module.
| Label (typical) | Name (parent) | Module | When displayed |
|---|---|---|---|
| Export | export-group | Export | Module visible and column is not the row-group column |
When more than one report menu is returned, AdapTable wraps them under a single parent labelled Export (export-group). A single visible report is shown without that parent.
The parent opens a sub-menu with one entry per available report (system reports plus any custom reports in state). Each report sub-menu lists formats, and each format lists destinations.
System reports
| Report name (label) | Menu name prefix | When omitted |
|---|---|---|
| All Data | export-all-data | Never (when Export is visible) |
| Current Layout | export-current-layout | Never |
| Selected Data | export-selected-data | Grid is not cell- or row-selectable |
Note
This replaces older report names such as Current Data, Selected Cells, and Selected Rows — there is a single Selected Data report today
Formats and destinations
Formats (labels in the menu): Excel, VisualExcel, CSV, JSON.
Destinations depend on format:
| Format | Destinations (labels) | Typical menu suffix |
|---|---|---|
| Excel | Download only | -excel-download |
| VisualExcel | Download only | -visualexcel-download |
| CSV | Download, Clipboard | -csv-download, -csv-clipboard |
| JSON | Download, Clipboard | -json-download, -json-clipboard |
Leaf item names follow:
export-{report-name}-{format}-{destination}
(with spaces in report/format names replaced by hyphens and lower-cased — see ExportModule.getMenuItemName).
Deep Dive
Example Export menu tree (system reports)
Actions Section
Flat items and small auto-generated parents (when a module returns more than one item) from these modules, in this order:
| Label (typical) | Name | Module | When displayed |
|---|---|---|---|
| Edit Calculated Column | calculated-column-edit | Calculated Column | Calculated column; single selected cell; module editable |
| Add Note | note-add | Notes | No note on cell; notes supported; single cell; not group row/column |
| Remove Note | note-remove | Notes | Cell has a note |
| Show Note | note-show | Notes | Cell has a note and showNoteAction is 'menu' |
| Add Comment | comment-add | Comments | No comment thread; comments supported in layout; single cell |
| Remove Comment | comment-remove | Comments | Cell has a comment thread |
| Show Comment | comment-show | Comments | Cell has a comment and showCommentAction is 'menu' |
| Filter on Cell Value(s) | column-filter-on-cell-value | Column Filter | Column filterable; Adaptable filtering on; no filter on column; single column selection |
| Clear Filter | column-filter-clear | Column Filter | Column already has a filter (see below) |
| Suspend Filter / Unsuspend Filter | column-filter-suspend / column-filter-unsuspend | Column Filter | Column has a filter |
| Clear Flashing Cell | flashing-cell-clear | Flashing Cell | Cell is flashing (cell target) |
| Clear Flashing Row | flashing-row-clear | Flashing Cell | Row is flashing (row target) |
| Clear Alert | alert-clear | Alerts | Cell or row highlighted by an alert |
| Broadcast … | fdc3-broadcast | FDC3 | Column configured for broadcast (label includes context type) |
| Raise … | fdc3-raise-intent | FDC3 | Column configured for raise intent (label includes intent type) |
Note
- When the column already has a filter, AdapTable returns Clear Filter and Suspend / Unsuspend items:
- If both are visible, they are wrapped under a parent labelled Column Filter (
column-filter-group) - When the column has no filter, a single Filter on Cell Value()s item is shown instead
UI Components Section
Settings Panel
From Settings Panel (SettingsPanelModule):
| Label | Name | When displayed |
|---|---|---|
| Open Settings Panel | settings-panel-open | Module visible |
Dashboard
From Dashboard (DashboardModule). When more than one dashboard item is visible, they are grouped under:
| Label | Name | Type |
|---|---|---|
| Dashboard | dashboard-group | Parent |
| Label | Name | When displayed |
|---|---|---|
| Configure | dashboard-configure | Module editable |
| Expand | dashboard-expand | Dashboard has tabs and is collapsed |
| Collapse | dashboard-collapse | Dashboard has tabs and is expanded |
| Dock | dashboard-dock | Dashboard is floating |
| Float | dashboard-float | Dashboard is docked and floating is allowed |
| Hide | dashboard-hide | Dashboard is visible |
| Show | dashboard-show | Dashboard is hidden |
Editing Section
From Bulk Update and Smart Edit, combined under an Edit parent when both are visible (edit-group).
If only one applies, that item is promoted to the root (no Edit parent)
Caution
- Smart Edit requires a numeric, non row-grouped column, single-column selection, and selected cells
- Bulk Update works on any editable, non row-grouped column type with a suitable selection
| Label | Name | Module | When displayed | Type |
|---|---|---|---|---|
| Edit | edit-group | — | Numeric editable column with both items below | Parent |
| Apply Bulk Update | bulk-update-apply | Bulk Update | Editable column; cells selected; single column | Child (listed first under Edit) |
| Apply Smart Edit | smart-edit-apply | Smart Edit | Numeric editable column; cells selected; single column | Child |
Grid & Column Related Section
Grid sub-menu
Layout, Cell Summary, Data Import, System Status, and Grid Info items are nested under a Grid parent (grid-group):
| Label | Name | Module | When displayed |
|---|---|---|---|
| Grid | grid-group | — | Always (when any child is visible) |
| Clear Selected Cells | layout-clear-selection | Layout | Cells or rows are selected |
| Select Grid | layout-select-all | Layout | gridApi.isGridRangeSelectable() |
| Auto Size | layout-auto-size | Layout | Always (within Layout items) |
| Edit Layout | layout-edit | Layout | Module editable and current layout not read-only |
| Expand Aggregated Value | layout-aggregated-view | Layout | Pivot layout; single selected cell; pivot/number column rules |
| See Cell Summary | cell-summary-show | Cell Summary | Numeric column; cell(s) selected |
| Import Data | data-import | Data Import | Module visible |
| Show System Status | system-status-show | System Status | Module visible |
| Grid Info | grid-info-show | Grid Info | Module visible |
Child order inside Grid matches AgGridMenuAdapter.getLayoutContextMenuStructure:
- Layout (first selection actions, then other items)
- Cell Summary
- Data Import
- System Status
- Grid Info
Column Info
| Label | Name | Module | When displayed |
|---|---|---|---|
| Column Info | column-info-show | Column Info | Module visible (root item after Grid) |