Skip to content

Read-Only Mode

Read-only mode turns the packaged Gantt editing surface into an inspection surface. Users can still view the task table and timeline, navigate, search, filter, sort, zoom, and use non-mutating UI, but packaged project mutations are rejected.

Enable it on the Gantt config:

grid.gantt = {
id: 'project-1',
name: 'Project Roadmap',
version: '1',
currency: 'USD',
timeZone: 'UTC',
primaryCalendarId: 'standard',
updatedAt: new Date().toISOString(),
readOnly: true,
};

readOnly: true blocks mutations routed through the packaged Gantt services:

  • Task changes: move, resize, split, progress edits, inline task-field edits, task creation, indent, outdent, and delete.
  • Dependency changes: create, update, delete, and predecessor/successor field replacement.
  • Assignment changes: assignee/resource field updates and assignment replacement.

Blocked mutations return a failure result instead of updating the stores. Task changes return readonly-task; dependency and assignment changes return readonly-project.

Read-only mode does not turn the grid into a static screenshot. Non-mutating workflows remain available:

  • Timeline rendering, task bars, dependencies, baselines, critical-path visuals, and diagnostics.
  • Tree expand/collapse, search, filtering, sorting, scrolling, and zoom.
  • External application-controlled state replacement, such as loading a different project snapshot or changing the Gantt config.

The built-in Gantt context menu also hides mutating row actions when the project is read-only.

gantt.readOnly is a Gantt project mutation guard. It protects the packaged task, dependency, and assignment mutation paths.

The RevoGrid readonly property is a grid-level editing setting. Use it when you also want to prevent generic cell editing behavior outside Gantt’s mutation services.

grid.readonly = true;
grid.gantt = {
...projectConfig,
readOnly: true,
};