Skip to main content
Lightbox editing opens a modal dialog window for editing field values outside the grid. This provides dedicated space for rich text formatting, large text entry, and complex field editing. diagram

Triggering Lightbox Editing

Lightbox editing is triggered by clicking on a field configured for lightbox display.
Trigger MethodActivationUse Case
Cell clickSingle click on fieldText or rich text fields
Double clickDouble-click requiredWhen inline editing is too crowded
Edit buttonEmbedded cell buttonAccessibility and clarity
KeyboardF2 key or EnterKeyboard-only navigation

Text Field Lightbox Configuration

Text fields can be configured to use lightbox editing for better control and visibility.

Basic Configuration

{
  "header": "Description",
  "bindings": "description",
  "type": "text",
  "lightbox": true,
  "lightboxHeight": 400,
  "lightboxWidth": 600
}
PropertyTypeDefaultDescription
lightboxBooleanfalseEnable lightbox editing for this field
lightboxWidthNumber600Width of lightbox dialog in pixels
lightboxHeightNumber400Height of lightbox dialog in pixels
lightboxTitleStringColumn headerCustom title for the lightbox dialog
lightboxReadOnlyBooleanfalseOpen lightbox in read-only mode

Rich Text Field Lightbox

Rich text fields benefit from lightbox editing to preserve formatting and display editing tools.

Rich Text Lightbox Example

{
  "header": "Risk Description",
  "bindings": "description",
  "type": "text",
  "lightbox": true,
  "lightboxHeight": 500,
  "serverRender": false,
  "enableRichText": true
}
Inline grid editing of rich text fields may cause formatting loss (line breaks, images, styling). Always use lightbox editing for Text type fields to preserve Polarion formatting.
Lightbox dialogs provide standardized behavior across all field types.

Dialog Lifecycle

EventBehaviorNotes
OpenDisplays current field valueModal overlay blocks grid interaction
EditUser modifies contentChanges are staged in memory
CancelDiscards all changesReturns to previous value
SaveValidates and commits changesTriggers grid save operation
ValidationReal-time or on-saveError messages displayed in dialog

Dialog Controls

{
  "lightboxControls": {
    "showCancel": true,
    "showSave": true,
    "showClear": false,
    "autoSave": false,
    "saveOnEnter": false
  }
}
ControlTypeDefaultPurpose
showCancelBooleantrueShow Cancel button
showSaveBooleantrueShow Save button
showClearBooleanfalseShow Clear/Reset button
autoSaveBooleanfalseSave on blur/close
saveOnEnterBooleanfalseSave with Ctrl+Enter

Field-Specific Lightbox Configuration

Enumeration Field Lightbox

Enumeration fields can use lightbox for multiEnum display and filtering.
{
  "header": "Risk Categories",
  "bindings": "categories",
  "type": "multiEnum:riskCategory",
  "lightbox": true,
  "lightboxHeight": 350,
  "enableSearch": true
}

Date Field Lightbox

Date fields open a calendar picker in lightbox mode.
{
  "header": "Due Date",
  "bindings": "dueDate",
  "type": "date",
  "lightbox": true,
  "lightboxShowCalendar": true,
  "lightboxShowTime": false
}

User Reference Lightbox

User reference fields show user directory in lightbox.
{
  "header": "Assigned To",
  "bindings": "task.assignee",
  "type": "ref:user",
  "lightbox": true,
  "lightboxShowGroups": true,
  "enableSearch": true
}
Lightbox appearance can be customized through configuration properties.

Dialog Styling

{
  "header": "Notes",
  "bindings": "notes",
  "type": "text",
  "lightbox": true,
  "lightboxCss": "lightbox-large",
  "lightboxBodyCss": "lightbox-dark",
  "lightboxHeight": 500,
  "lightboxWidth": 700
}
PropertyTypePurpose
lightboxCssStringCSS class for dialog container
lightboxBodyCssStringCSS class for dialog body
lightboxHeaderCssStringCSS class for dialog header
lightboxHeightNumberDialog height in pixels
lightboxWidthNumberDialog width in pixels
How content is displayed within the lightbox depends on field type and configuration.

Text Content Display

{
  "header": "Analysis",
  "bindings": "analysis",
  "type": "text",
  "lightbox": true,
  "lightboxRenderMode": "html",
  "multiLine": true,
  "wordWrap": true
}
Render ModeDisplayUse Case
plaintextPlain text without formattingSimple text fields
htmlHTML-rendered contentRich text preserved
markdownMarkdown-formatted contentStructured documentation
preformattedMonospace, spaces preservedCode or logs
Lightbox dialogs support field validation before saving changes.

Validation Configuration

{
  "header": "Title",
  "bindings": "title",
  "type": "text",
  "lightbox": true,
  "lightboxValidation": {
    "required": true,
    "minLength": 3,
    "maxLength": 255,
    "pattern": "^[A-Z]",
    "customValidator": "validateTitle"
  }
}
ValidatorTypeExampleMessage
requiredBooleantrue”This field is required”
minLengthNumber3”Minimum 3 characters required”
maxLengthNumber255”Maximum 255 characters allowed”
patternRegex^[A-Z]”Must start with uppercase”
customValidatorFunctionvalidateTitleCustom error message

Keyboard Navigation in Lightbox

Lightbox dialogs support keyboard shortcuts for efficient editing.
Key CombinationActionNotes
TabMove to next fieldCycles through dialog controls
Shift+TabMove to previous fieldReverse tab order
Ctrl+EnterSave and closeWhen saveOnEnter: true
EscapeClose without savingCancels all changes
Ctrl+ASelect all textText fields only
Ctrl+ZUndoSupported in rich text
Ctrl+YRedoSupported in rich text
Lightbox dialogs can persist state across grid operations.

State Configuration

{
  "lightbox": true,
  "lightboxPersistState": true,
  "lightboxRememberSize": true,
  "lightboxRememberPosition": true
}
PropertyTypeDefaultEffect
lightboxPersistStateBooleanfalseRemember dialog state in session
lightboxRememberSizeBooleanfalseRemember user-resized dimensions
lightboxRememberPositionBooleanfalseRemember window position
Common configuration patterns for different use cases.

Large Text Entry

For fields that need significant space for editing:
{
  "header": "Detailed Analysis",
  "bindings": "detailedAnalysis",
  "type": "text",
  "lightbox": true,
  "lightboxHeight": 600,
  "lightboxWidth": 800,
  "multiLine": true,
  "wordWrap": true,
  "lightboxShowLineNumbers": true
}

Read-Only Content Display

For viewing complex formatted content:
{
  "header": "Risk Assessment",
  "bindings": "assessment",
  "type": "text",
  "lightbox": true,
  "lightboxReadOnly": true,
  "serverRender": true
}

Conditional Lightbox Display

Lightbox can be enabled conditionally based on field content or user role:
{
  "header": "Notes",
  "bindings": "notes",
  "type": "text",
  "lightbox": "${!shortNotes}",
  "lightboxHeight": 400
}

Accessibility and Lightbox

Lightbox dialogs should follow accessibility guidelines.
  • Ensure dialogs have proper ARIA labels
  • Support keyboard-only navigation
  • Provide clear focus indicators
  • Include descriptive error messages
  • Allow dialog dismissal with Escape key

Performance Considerations

Lightbox editing can impact performance with large documents.
ScenarioImpactRecommendation
Many lightbox fieldsSlower initial loadLimit to 5-10 lightbox fields
Large text contentSlow dialog openingConsider pagination or lazy-load
Complex validationValidation delayUse debouncing on custom validators
Real-time syncNetwork trafficBatch save operations
For guidance on configuring lightweight columns, see Column Configuration.
Support TicketsSource Code
  • PolarionAppConfigManager.java
  • SheetConstants.ts