JavaScript/jQuery Diagram API
The Diagram UI component provides a visual interface to help you design new and modify existing diagrams.
See Also
jQuery
Angular
Vue
React
Options
An object that defines the Diagram UI component's configuration properties.
| Name | Description | 
|---|---|
| autoZoomMode | Specifies how the Diagram UI component automatically zooms the work area.  | 
            
| contextMenu | Configures the context menu's settings.  | 
            
| contextToolbox | Configures the context toolbox's settings.  | 
            
| customShapeComponent | An alias for the customShapeTemplate property specified in React. Accepts a custom component. Refer to Using a Custom Component for more information.  | 
            
| customShapeRender | An alias for the customShapeTemplate property specified in React. Accepts a rendering function. Refer to Using a Rendering Function for more information.  | 
            
| customShapes | Provide access to an array of custom shapes.  | 
            
| customShapeTemplate | Specifies a custom template for shapes.  | 
            
| customShapeToolboxComponent | An alias for the customShapeToolboxTemplate property specified in React. Accepts a custom component. Refer to Using a Custom Component for more information.  | 
            
| customShapeToolboxRender | An alias for the customShapeToolboxTemplate property specified in React. Accepts a rendering function. Refer to Using a Rendering Function for more information.  | 
            
| customShapeToolboxTemplate | Specifies a custom template for shapes in the toolbox.  | 
            
| defaultItemProperties | Configures default item properties.  | 
            
| disabled | Specifies whether the UI component responds to user interaction.  | 
            
| edges | Allows you to bind the collection of diagram edges to a data source. For more information, see the Data Binding section.  | 
            
| editing | Specifies which editing operations a user can perform.  | 
            
| elementAttr | Specifies the global attributes to be attached to the UI component's container element.  | 
            
| export | Configures export settings.  | 
            
| fullScreen | Specifies whether or not to display the UI component in full-screen mode.  | 
            
| gridSize | Specifies the grid pitch.  | 
            
| hasChanges | Indicates whether diagram content has unsaved changes.  | 
            
| height | Specifies the UI component's height.  | 
            
| historyToolbar | Configures the history toolbar's settings.  | 
            
| mainToolbar | Configures the main toolbar settings.  | 
            
| nodes | Allows you to bind the collection of diagram nodes to a data source. For more information, see the Data Binding section.  | 
            
| onContentReady | A function that is executed when the UI component is rendered and each time the component is repainted.  | 
            
| onCustomCommand | A function that is executed after a custom command item was clicked and allows you to implement the custom command's logic.  | 
            
| onDisposing | A function that is executed before the UI component is disposed of.  | 
            
| onInitialized | A function used in JavaScript frameworks to save the UI component instance.  | 
            
| onItemClick | A function that is executed after a shape or connector is clicked.  | 
            
| onItemDblClick | A function that is executed after a shape or connector is double-clicked.  | 
            
| onOptionChanged | A function that is executed after a UI component property is changed.  | 
            
| onRequestEditOperation | A function that allows you to prohibit an edit operation at run time.  | 
            
| onRequestLayoutUpdate | A function that is executed after diagram data is reloaded and allows you to specify whether or not the UI component should update the diagram layout.  | 
            
| onSelectionChanged | A function that is executed after the selection is changed in the Diagram.  | 
            
| pageColor | Specifies the color of a diagram page.  | 
            
| pageOrientation | Specifies the page orientation.  | 
            
| pageSize | Specifies a size of pages.  | 
            
| propertiesPanel | Configures the Properties panel settings.  | 
            
| readOnly | Specifies whether the diagram is read-only.  | 
            
| rtlEnabled | Switches the UI component to a right-to-left representation.  | 
            
| showGrid | Specifies whether grid lines are visible.  | 
            
| simpleView | Switch the Diagram UI component to simple view mode.  | 
            
| snapToGrid | Specifies whether diagram elements should snap to grid lines.  | 
            
| toolbox | Configures the toolbox settings.  | 
            
| units | Specifies the measurement unit for size properties.  | 
            
| useNativeScrolling | Specifies whether or not the UI component uses native scrolling.  | 
            
| viewToolbar | Configures the view toolbar settings.  | 
            
| viewUnits | Specifies the measurement unit that is displayed in user interface elements.  | 
            
| visible | Specifies whether the UI component is visible.  | 
            
| width | Specifies the UI component's width.  | 
            
| zoomLevel | Specifies the zoom level.  | 
            
See Also
Methods
This section describes members used to manipulate the UI component.
| Name | Description | 
|---|---|
| beginUpdate() | Prevents the UI component from refreshing until the endUpdate() method is called.  | 
            
| defaultOptions(rule) | Specifies the device-dependent default configuration properties for this component.  | 
            
| dispose() | Disposes of all the resources allocated to the Diagram instance.  | 
            
| element() | Gets the root UI component element.  | 
            
| endUpdate() | Refreshes the UI component after a call of the beginUpdate() method.  | 
            
| export() | Exports the diagram data to a JSON object.  | 
            
| exportTo(format, callback) | Exports the diagram to an image format.  | 
            
| fitToContent() | Fits the diagram content into the work area. The maximum scale is 100%.  | 
            
| fitToWidth() | Fits the diagram content's width into the work area width. The maximum scale is 100%.  | 
            
| focus() | Sets focus on the UI component.  | 
            
| getEdgeDataSource() | Returns the DataSource instance.  | 
            
| getInstance(element) | Gets the instance of a UI component found using its DOM node.  | 
            
| getItemById(id) | Returns a shape or connector object specified by its internal identifier.  | 
            
| getItemByKey(key) | |
| getItems() | Returns an array of diagram items.  | 
            
| getNodeDataSource() | Gets the DataSource instance.  | 
            
| getSelectedItems() | Returns an array of selected diagram items.  | 
            
| import(data, updateExistingItemsOnly) | Imports the diagram data.  | 
            
| instance() | Gets the UI component's instance. Use it to access other methods of the UI component.  | 
            
| off(eventName) | Detaches all event handlers from a single event.  | 
            
| off(eventName, eventHandler) | Detaches a particular event handler from a single event.  | 
            
| on(eventName, eventHandler) | Subscribes to an event.  | 
            
| on(events) | Subscribes to events.  | 
            
| option() | Gets all UI component properties.  | 
            
| option(optionName) | Gets the value of a single property.  | 
            
| option(optionName, optionValue) | Updates the value of a single property.  | 
            
| option(options) | Updates the values of several properties.  | 
            
| repaint() | Repaints the UI component without reloading data. Call it to update the UI component's markup.  | 
            
| resetOption(optionName) | Resets a property to its default value.  | 
            
| scrollToItem(item) | Scrolls the view area to the specified item.  | 
            
| setSelectedItems(items) | Selects the specified items.  | 
            
| updateToolbox() | Updates the diagram toolboxes.  | 
            
See Also
Events
This section describes events this UI component fires.
| Name | Description | 
|---|---|
| contentReady | Raised when the UI component's content is ready.  | 
            
| customCommand | Raised after a custom command item was clicked and allows you to implement custom command logic.  | 
            
| disposing | Raised before the UI component is disposed of.  | 
            
| initialized | Raised only once, after the UI component is initialized.  | 
            
| itemClick | Raised after a shape or connector is clicked.  | 
            
| itemDblClick | Raised after a shape or connector is double-clicked.  | 
            
| optionChanged | Raised after a UI component property is changed.  | 
            
| requestEditOperation | Raised before a user edits a diagram and before the UI related to an edit operation is updated. Requests clarification about edit operation availability.  | 
            
| requestLayoutUpdate | Raised after diagram data has been changed and requests whether the UI component should update the diagram layout.  | 
            
| selectionChanged | Raised after the selection is changed in the Diagram.  | 
            
See Also
If you have technical questions, please create a support ticket in the DevExpress Support Center.