Name | Type | Default |
---|---|---|
contextMenu | boolean | false |
Sets or gets wheter a custom context menu will appear when certain elements of the widget are right-clicked. /* tslint:disable */ import * as React from 'react'; import * as ReactDOM from 'react-dom'; import 'jqwidgets-scripts/jqwidgets/styles/jqx.base.css'; import JqxDockingLayout, { IDockingLayoutProps } from 'jqwidgets-scripts/jqwidgets-react-tsx/jqxdockinglayout'; class App extends React.PureComponent<{}, IDockingLayoutProps> { private myDockingLayout = React.createRef<JqxDockingLayout>(); constructor(props: {}) { super(props); this.state = { layout: [ { type: 'layoutGroup', orientation: 'horizontal', items: [{ type: 'layoutGroup', orientation: 'vertical', width: '60%', items: [{ type: 'documentGroup', height: '50%', minHeight: '25%', items: [{ type: 'documentPanel', title: 'Document 1', contentContainer: 'Document1Panel' }, { type: 'documentPanel', title: 'Document 2', contentContainer: 'Document2Panel' }] }, { type: 'tabbedGroup', height: '50%', pinnedHeight: '10%', items: [{ type: 'layoutPanel', title: 'Error List', contentContainer: 'ErrorListPanel' }, { type: 'layoutPanel', title: 'Output', contentContainer: 'OutputPanel', selected: true }] }] }, { type: 'tabbedGroup', width: '40%', items: [{ type: 'layoutPanel', title: 'Solution Explorer', contentContainer: 'SolutionExplorerPanel' }, { type: 'layoutPanel', title: 'Properties', contentContainer: 'PropertiesPanel' }] }] } ] } } public render() { return ( <JqxDockingLayout ref={this.myDockingLayout} width={850} height={600} layout={this.state.layout} contextMenu={true}> <div data-container='Document1Panel'> Document 1 Content </div> <div data-container='Document2Panel'> Document 2 Content </div> <div data-container='ErrorListPanel'> List of Errors </div> <div data-container='OutputPanel'> Output </div> <div data-container='SolutionExplorerPanel'> Solution Structure </div> <div data-container='PropertiesPanel'> List of properties </div> </JqxDockingLayout> ); } } ReactDOM.render(<App />, document.querySelector('#app') as HTMLElement); |
||
height | string | number | null |
Sets or gets the docking layout's height. /* tslint:disable */ import * as React from 'react'; import * as ReactDOM from 'react-dom'; import 'jqwidgets-scripts/jqwidgets/styles/jqx.base.css'; import JqxDockingLayout, { IDockingLayoutProps } from 'jqwidgets-scripts/jqwidgets-react-tsx/jqxdockinglayout'; class App extends React.PureComponent<{}, IDockingLayoutProps> { private myDockingLayout = React.createRef<JqxDockingLayout>(); constructor(props: {}) { super(props); this.state = { layout: [ { type: 'layoutGroup', orientation: 'horizontal', items: [{ type: 'layoutGroup', orientation: 'vertical', width: '60%', items: [{ type: 'documentGroup', height: '50%', minHeight: '25%', items: [{ type: 'documentPanel', title: 'Document 1', contentContainer: 'Document1Panel' }, { type: 'documentPanel', title: 'Document 2', contentContainer: 'Document2Panel' }] }, { type: 'tabbedGroup', height: '50%', pinnedHeight: '10%', items: [{ type: 'layoutPanel', title: 'Error List', contentContainer: 'ErrorListPanel' }, { type: 'layoutPanel', title: 'Output', contentContainer: 'OutputPanel', selected: true }] }] }, { type: 'tabbedGroup', width: '40%', items: [{ type: 'layoutPanel', title: 'Solution Explorer', contentContainer: 'SolutionExplorerPanel' }, { type: 'layoutPanel', title: 'Properties', contentContainer: 'PropertiesPanel' }] }] } ] } } public render() { return ( <JqxDockingLayout ref={this.myDockingLayout} width={850} height={600} layout={this.state.layout}> <div data-container='Document1Panel'> Document 1 Content </div> <div data-container='Document2Panel'> Document 2 Content </div> <div data-container='ErrorListPanel'> List of Errors </div> <div data-container='OutputPanel'> Output </div> <div data-container='SolutionExplorerPanel'> Solution Structure </div> <div data-container='PropertiesPanel'> List of properties </div> </JqxDockingLayout> ); } } ReactDOM.render(<App />, document.querySelector('#app') as HTMLElement); |
||
layout | Array<DockingLayoutLayout> | [] |
DockingLayoutLayoutType: "layoutGroup" | "tabbedGroup" | "documentGroup" | "autoHideGroup" | "layoutPanel" | "documentPanel" | "floatGroup"
DockingLayoutLayoutAlignment: "left" | "right" | "top" | "bottom" DockingLayoutLayoutOrientation: "horizontal" | "vertical" Interface DockingLayoutLayout { type?: DockingLayoutLayoutType; alignment?: DockingLayoutLayoutAlignment; allowClose?: boolean; allowPin?: boolean; allowUnpin?: boolean; contentContainer?: string; height?: number | string; initContent?: () => void; minHeight?: number | string; minWidth?: number | string; orientation?: DockingLayoutLayoutOrientation; pinnedHeight?: number | string; pinnedWidth?: number | string; position?: DockingLayoutLayoutPosition; selected?: boolean; title?: string; unpinnedHeight?: number | string; unpinnedWidth?: number | string; width?: number | string; items?: Array<DockingLayoutLayout>; } Interface DockingLayoutLayoutPosition { x?: number; y?: number; } Sets or gets the layout. This property determines the position of the docking layout elements and their characteristics. The first member of the layout array should always be an item of type 'layoutGroup'. Each object in the layout array can have the following properties, with some restrictions based on the type :
/* tslint:disable */ import * as React from 'react'; import * as ReactDOM from 'react-dom'; import 'jqwidgets-scripts/jqwidgets/styles/jqx.base.css'; import JqxDockingLayout, { IDockingLayoutProps } from 'jqwidgets-scripts/jqwidgets-react-tsx/jqxdockinglayout'; class App extends React.PureComponent<{}, IDockingLayoutProps> { private myDockingLayout = React.createRef<JqxDockingLayout>(); constructor(props: {}) { super(props); this.state = { layout: [ { type: 'layoutGroup', orientation: 'horizontal', items: [{ type: 'layoutGroup', orientation: 'vertical', width: '60%', items: [{ type: 'documentGroup', height: '50%', minHeight: '25%', items: [{ type: 'documentPanel', title: 'Document 1', contentContainer: 'Document1Panel' }, { type: 'documentPanel', title: 'Document 2', contentContainer: 'Document2Panel' }] }, { type: 'tabbedGroup', height: '50%', pinnedHeight: '10%', items: [{ type: 'layoutPanel', title: 'Error List', contentContainer: 'ErrorListPanel' }, { type: 'layoutPanel', title: 'Output', contentContainer: 'OutputPanel', selected: true }] }] }, { type: 'tabbedGroup', width: '40%', items: [{ type: 'layoutPanel', title: 'Solution Explorer', contentContainer: 'SolutionExplorerPanel' }, { type: 'layoutPanel', title: 'Properties', contentContainer: 'PropertiesPanel' }] }] } ] } } public render() { return ( <JqxDockingLayout ref={this.myDockingLayout} width={850} height={600} layout={this.state.layout}> <div data-container='Document1Panel'> Document 1 Content </div> <div data-container='Document2Panel'> Document 2 Content </div> <div data-container='ErrorListPanel'> List of Errors </div> <div data-container='OutputPanel'> Output </div> <div data-container='SolutionExplorerPanel'> Solution Structure </div> <div data-container='PropertiesPanel'> List of properties </div> </JqxDockingLayout> ); } } ReactDOM.render(<App />, document.querySelector('#app') as HTMLElement); |
||
minGroupHeight | number | string | 100 |
Sets the default minimumn height for groups which are vertically aligned within their parent group. /* tslint:disable */ import * as React from 'react'; import * as ReactDOM from 'react-dom'; import 'jqwidgets-scripts/jqwidgets/styles/jqx.base.css'; import JqxDockingLayout, { IDockingLayoutProps } from 'jqwidgets-scripts/jqwidgets-react-tsx/jqxdockinglayout'; class App extends React.PureComponent<{}, IDockingLayoutProps> { private myDockingLayout = React.createRef<JqxDockingLayout>(); constructor(props: {}) { super(props); this.state = { layout: [ { type: 'layoutGroup', orientation: 'horizontal', items: [{ type: 'layoutGroup', orientation: 'vertical', width: '60%', items: [{ type: 'documentGroup', height: '50%', minHeight: '25%', items: [{ type: 'documentPanel', title: 'Document 1', contentContainer: 'Document1Panel' }, { type: 'documentPanel', title: 'Document 2', contentContainer: 'Document2Panel' }] }, { type: 'tabbedGroup', height: '50%', pinnedHeight: '10%', items: [{ type: 'layoutPanel', title: 'Error List', contentContainer: 'ErrorListPanel' }, { type: 'layoutPanel', title: 'Output', contentContainer: 'OutputPanel', selected: true }] }] }, { type: 'tabbedGroup', width: '40%', items: [{ type: 'layoutPanel', title: 'Solution Explorer', contentContainer: 'SolutionExplorerPanel' }, { type: 'layoutPanel', title: 'Properties', contentContainer: 'PropertiesPanel' }] }] } ] } } public render() { return ( <JqxDockingLayout ref={this.myDockingLayout} width={850} height={600} layout={this.state.layout} minGroupHeight={200}> <div data-container='Document1Panel'> Document 1 Content </div> <div data-container='Document2Panel'> Document 2 Content </div> <div data-container='ErrorListPanel'> List of Errors </div> <div data-container='OutputPanel'> Output </div> <div data-container='SolutionExplorerPanel'> Solution Structure </div> <div data-container='PropertiesPanel'> List of properties </div> </JqxDockingLayout> ); } } ReactDOM.render(<App />, document.querySelector('#app') as HTMLElement); |
||
minGroupWidth | number | string | 100 |
Sets the default minimumn width for groups which are horizontally aligned within their parent group. /* tslint:disable */ import * as React from 'react'; import * as ReactDOM from 'react-dom'; import 'jqwidgets-scripts/jqwidgets/styles/jqx.base.css'; import JqxDockingLayout, { IDockingLayoutProps } from 'jqwidgets-scripts/jqwidgets-react-tsx/jqxdockinglayout'; class App extends React.PureComponent<{}, IDockingLayoutProps> { private myDockingLayout = React.createRef<JqxDockingLayout>(); constructor(props: {}) { super(props); this.state = { layout: [ { type: 'layoutGroup', orientation: 'horizontal', items: [{ type: 'layoutGroup', orientation: 'vertical', width: '60%', items: [{ type: 'documentGroup', height: '50%', minHeight: '25%', items: [{ type: 'documentPanel', title: 'Document 1', contentContainer: 'Document1Panel' }, { type: 'documentPanel', title: 'Document 2', contentContainer: 'Document2Panel' }] }, { type: 'tabbedGroup', height: '50%', pinnedHeight: '10%', items: [{ type: 'layoutPanel', title: 'Error List', contentContainer: 'ErrorListPanel' }, { type: 'layoutPanel', title: 'Output', contentContainer: 'OutputPanel', selected: true }] }] }, { type: 'tabbedGroup', width: '40%', items: [{ type: 'layoutPanel', title: 'Solution Explorer', contentContainer: 'SolutionExplorerPanel' }, { type: 'layoutPanel', title: 'Properties', contentContainer: 'PropertiesPanel' }] }] } ] } } public render() { return ( <JqxDockingLayout ref={this.myDockingLayout} width={850} height={600} layout={this.state.layout} minGroupWidth={150}> <div data-container='Document1Panel'> Document 1 Content </div> <div data-container='Document2Panel'> Document 2 Content </div> <div data-container='ErrorListPanel'> List of Errors </div> <div data-container='OutputPanel'> Output </div> <div data-container='SolutionExplorerPanel'> Solution Structure </div> <div data-container='PropertiesPanel'> List of properties </div> </JqxDockingLayout> ); } } ReactDOM.render(<App />, document.querySelector('#app') as HTMLElement); |
||
resizable | boolean | true |
Sets or gets wheter panels can be dynamically resized. /* tslint:disable */ import * as React from 'react'; import * as ReactDOM from 'react-dom'; import 'jqwidgets-scripts/jqwidgets/styles/jqx.base.css'; import JqxDockingLayout, { IDockingLayoutProps } from 'jqwidgets-scripts/jqwidgets-react-tsx/jqxdockinglayout'; class App extends React.PureComponent<{}, IDockingLayoutProps> { private myDockingLayout = React.createRef<JqxDockingLayout>(); constructor(props: {}) { super(props); this.state = { layout: [ { type: 'layoutGroup', orientation: 'horizontal', items: [{ type: 'layoutGroup', orientation: 'vertical', width: '60%', items: [{ type: 'documentGroup', height: '50%', minHeight: '25%', items: [{ type: 'documentPanel', title: 'Document 1', contentContainer: 'Document1Panel' }, { type: 'documentPanel', title: 'Document 2', contentContainer: 'Document2Panel' }] }, { type: 'tabbedGroup', height: '50%', pinnedHeight: '10%', items: [{ type: 'layoutPanel', title: 'Error List', contentContainer: 'ErrorListPanel' }, { type: 'layoutPanel', title: 'Output', contentContainer: 'OutputPanel', selected: true }] }] }, { type: 'tabbedGroup', width: '40%', items: [{ type: 'layoutPanel', title: 'Solution Explorer', contentContainer: 'SolutionExplorerPanel' }, { type: 'layoutPanel', title: 'Properties', contentContainer: 'PropertiesPanel' }] }] } ] } } public render() { return ( <JqxDockingLayout ref={this.myDockingLayout} width={850} height={600} layout={this.state.layout} resizable={false}> <div data-container='Document1Panel'> Document 1 Content </div> <div data-container='Document2Panel'> Document 2 Content </div> <div data-container='ErrorListPanel'> List of Errors </div> <div data-container='OutputPanel'> Output </div> <div data-container='SolutionExplorerPanel'> Solution Structure </div> <div data-container='PropertiesPanel'> List of properties </div> </JqxDockingLayout> ); } } ReactDOM.render(<App />, document.querySelector('#app') as HTMLElement); |
||
rtl | boolean | false |
Sets or gets a value indicating whether widget's elements are aligned to support locales using right-to-left fonts. /* tslint:disable */ import * as React from 'react'; import * as ReactDOM from 'react-dom'; import 'jqwidgets-scripts/jqwidgets/styles/jqx.base.css'; import JqxDockingLayout, { IDockingLayoutProps } from 'jqwidgets-scripts/jqwidgets-react-tsx/jqxdockinglayout'; class App extends React.PureComponent<{}, IDockingLayoutProps> { private myDockingLayout = React.createRef<JqxDockingLayout>(); constructor(props: {}) { super(props); this.state = { layout: [ { type: 'layoutGroup', orientation: 'horizontal', items: [{ type: 'layoutGroup', orientation: 'vertical', width: '60%', items: [{ type: 'documentGroup', height: '50%', minHeight: '25%', items: [{ type: 'documentPanel', title: 'Document 1', contentContainer: 'Document1Panel' }, { type: 'documentPanel', title: 'Document 2', contentContainer: 'Document2Panel' }] }, { type: 'tabbedGroup', height: '50%', pinnedHeight: '10%', items: [{ type: 'layoutPanel', title: 'Error List', contentContainer: 'ErrorListPanel' }, { type: 'layoutPanel', title: 'Output', contentContainer: 'OutputPanel', selected: true }] }] }, { type: 'tabbedGroup', width: '40%', items: [{ type: 'layoutPanel', title: 'Solution Explorer', contentContainer: 'SolutionExplorerPanel' }, { type: 'layoutPanel', title: 'Properties', contentContainer: 'PropertiesPanel' }] }] } ] } } public render() { return ( <JqxDockingLayout ref={this.myDockingLayout} width={850} height={600} layout={this.state.layout} rtl={true}> <div data-container='Document1Panel'> Document 1 Content </div> <div data-container='Document2Panel'> Document 2 Content </div> <div data-container='ErrorListPanel'> List of Errors </div> <div data-container='OutputPanel'> Output </div> <div data-container='SolutionExplorerPanel'> Solution Structure </div> <div data-container='PropertiesPanel'> List of properties </div> </JqxDockingLayout> ); } } ReactDOM.render(<App />, document.querySelector('#app') as HTMLElement); |
||
theme | string | '' |
/* tslint:disable */ import * as React from 'react'; import * as ReactDOM from 'react-dom'; import 'jqwidgets-scripts/jqwidgets/styles/jqx.base.css'; import JqxDockingLayout, { IDockingLayoutProps } from 'jqwidgets-scripts/jqwidgets-react-tsx/jqxdockinglayout'; class App extends React.PureComponent<{}, IDockingLayoutProps> { private myDockingLayout = React.createRef<JqxDockingLayout>(); constructor(props: {}) { super(props); this.state = { layout: [ { type: 'layoutGroup', orientation: 'horizontal', items: [{ type: 'layoutGroup', orientation: 'vertical', width: '60%', items: [{ type: 'documentGroup', height: '50%', minHeight: '25%', items: [{ type: 'documentPanel', title: 'Document 1', contentContainer: 'Document1Panel' }, { type: 'documentPanel', title: 'Document 2', contentContainer: 'Document2Panel' }] }, { type: 'tabbedGroup', height: '50%', pinnedHeight: '10%', items: [{ type: 'layoutPanel', title: 'Error List', contentContainer: 'ErrorListPanel' }, { type: 'layoutPanel', title: 'Output', contentContainer: 'OutputPanel', selected: true }] }] }, { type: 'tabbedGroup', width: '40%', items: [{ type: 'layoutPanel', title: 'Solution Explorer', contentContainer: 'SolutionExplorerPanel' }, { type: 'layoutPanel', title: 'Properties', contentContainer: 'PropertiesPanel' }] }] } ] } } public render() { return ( <JqxDockingLayout ref={this.myDockingLayout} width={850} height={600} layout={this.state.layout} theme={'material'}> <div data-container='Document1Panel'> Document 1 Content </div> <div data-container='Document2Panel'> Document 2 Content </div> <div data-container='ErrorListPanel'> List of Errors </div> <div data-container='OutputPanel'> Output </div> <div data-container='SolutionExplorerPanel'> Solution Structure </div> <div data-container='PropertiesPanel'> List of properties </div> </JqxDockingLayout> ); } } ReactDOM.render(<App />, document.querySelector('#app') as HTMLElement); |
||
width | string | number | null |
Sets or gets the docking layout's width. /* tslint:disable */ import * as React from 'react'; import * as ReactDOM from 'react-dom'; import 'jqwidgets-scripts/jqwidgets/styles/jqx.base.css'; import JqxDockingLayout, { IDockingLayoutProps } from 'jqwidgets-scripts/jqwidgets-react-tsx/jqxdockinglayout'; class App extends React.PureComponent<{}, IDockingLayoutProps> { private myDockingLayout = React.createRef<JqxDockingLayout>(); constructor(props: {}) { super(props); this.state = { layout: [ { type: 'layoutGroup', orientation: 'horizontal', items: [{ type: 'layoutGroup', orientation: 'vertical', width: '60%', items: [{ type: 'documentGroup', height: '50%', minHeight: '25%', items: [{ type: 'documentPanel', title: 'Document 1', contentContainer: 'Document1Panel' }, { type: 'documentPanel', title: 'Document 2', contentContainer: 'Document2Panel' }] }, { type: 'tabbedGroup', height: '50%', pinnedHeight: '10%', items: [{ type: 'layoutPanel', title: 'Error List', contentContainer: 'ErrorListPanel' }, { type: 'layoutPanel', title: 'Output', contentContainer: 'OutputPanel', selected: true }] }] }, { type: 'tabbedGroup', width: '40%', items: [{ type: 'layoutPanel', title: 'Solution Explorer', contentContainer: 'SolutionExplorerPanel' }, { type: 'layoutPanel', title: 'Properties', contentContainer: 'PropertiesPanel' }] }] } ] } } public render() { return ( <JqxDockingLayout ref={this.myDockingLayout} width={850} height={600} layout={this.state.layout}> <div data-container='Document1Panel'> Document 1 Content </div> <div data-container='Document2Panel'> Document 2 Content </div> <div data-container='ErrorListPanel'> List of Errors </div> <div data-container='OutputPanel'> Output </div> <div data-container='SolutionExplorerPanel'> Solution Structure </div> <div data-container='PropertiesPanel'> List of properties </div> </JqxDockingLayout> ); } } ReactDOM.render(<App />, document.querySelector('#app') as HTMLElement); |
||
Events |
||
dock | Event | |
This event is triggered when a floatGroup has been docked. Code examples
Bind to the
/* tslint:disable */ import * as React from 'react'; import * as ReactDOM from 'react-dom'; import 'jqwidgets-scripts/jqwidgets/styles/jqx.base.css'; import JqxDockingLayout, { IDockingLayoutProps } from 'jqwidgets-scripts/jqwidgets-react-tsx/jqxdockinglayout'; class App extends React.PureComponent<{}, IDockingLayoutProps> { private myDockingLayout = React.createRef<JqxDockingLayout>(); constructor(props: {}) { super(props); this.state = { layout: [ { type: 'layoutGroup', orientation: 'horizontal', items: [{ type: 'layoutGroup', orientation: 'vertical', width: '60%', items: [{ type: 'documentGroup', height: '50%', minHeight: '25%', items: [{ type: 'documentPanel', title: 'Document 1', contentContainer: 'Document1Panel' }, { type: 'documentPanel', title: 'Document 2', contentContainer: 'Document2Panel' }] }, { type: 'tabbedGroup', height: '50%', pinnedHeight: '10%', items: [{ type: 'layoutPanel', title: 'Error List', contentContainer: 'ErrorListPanel' }, { type: 'layoutPanel', title: 'Output', contentContainer: 'OutputPanel', selected: true }] }] }, { type: 'tabbedGroup', width: '40%', items: [{ type: 'layoutPanel', title: 'Solution Explorer', contentContainer: 'SolutionExplorerPanel' }, { type: 'layoutPanel', title: 'Properties', contentContainer: 'PropertiesPanel' }] }] } ] } } public render() { return ( <JqxDockingLayout ref={this.myDockingLayout} onDock={this.onDock} width={850} height={600} layout={this.state.layout}> <div data-container='Document1Panel'> Document 1 Content </div> <div data-container='Document2Panel'> Document 2 Content </div> <div data-container='ErrorListPanel'> List of Errors </div> <div data-container='OutputPanel'> Output </div> <div data-container='SolutionExplorerPanel'> Solution Structure </div> <div data-container='PropertiesPanel'> List of properties </div> </JqxDockingLayout> ); } private onDock(e: Event): void { alert('do something...'); } } ReactDOM.render(<App />, document.querySelector('#app') as HTMLElement); |
||
floatGroupClosed | Event | |
This event is triggered when a floatGroup has been closed. Code examples
Bind to the
/* tslint:disable */ import * as React from 'react'; import * as ReactDOM from 'react-dom'; import 'jqwidgets-scripts/jqwidgets/styles/jqx.base.css'; import JqxDockingLayout, { IDockingLayoutProps } from 'jqwidgets-scripts/jqwidgets-react-tsx/jqxdockinglayout'; class App extends React.PureComponent<{}, IDockingLayoutProps> { private myDockingLayout = React.createRef<JqxDockingLayout>(); constructor(props: {}) { super(props); this.state = { layout: [ { type: 'layoutGroup', orientation: 'horizontal', items: [{ type: 'layoutGroup', orientation: 'vertical', width: '60%', items: [{ type: 'documentGroup', height: '50%', minHeight: '25%', items: [{ type: 'documentPanel', title: 'Document 1', contentContainer: 'Document1Panel' }, { type: 'documentPanel', title: 'Document 2', contentContainer: 'Document2Panel' }] }, { type: 'tabbedGroup', height: '50%', pinnedHeight: '10%', items: [{ type: 'layoutPanel', title: 'Error List', contentContainer: 'ErrorListPanel' }, { type: 'layoutPanel', title: 'Output', contentContainer: 'OutputPanel', selected: true }] }] }, { type: 'tabbedGroup', width: '40%', items: [{ type: 'layoutPanel', title: 'Solution Explorer', contentContainer: 'SolutionExplorerPanel' }, { type: 'layoutPanel', title: 'Properties', contentContainer: 'PropertiesPanel' }] }] } ] } } public render() { return ( <JqxDockingLayout ref={this.myDockingLayout} onFloatGroupClosed={this.onFloatGroupClosed} width={850} height={600} layout={this.state.layout}> <div data-container='Document1Panel'> Document 1 Content </div> <div data-container='Document2Panel'> Document 2 Content </div> <div data-container='ErrorListPanel'> List of Errors </div> <div data-container='OutputPanel'> Output </div> <div data-container='SolutionExplorerPanel'> Solution Structure </div> <div data-container='PropertiesPanel'> List of properties </div> </JqxDockingLayout> ); } private onFloatGroupClosed(e: Event): void { alert('do something...'); } } ReactDOM.render(<App />, document.querySelector('#app') as HTMLElement); |
||
float | Event | |
This event is triggered when a group or panel has been floated. Code examples
Bind to the
/* tslint:disable */ import * as React from 'react'; import * as ReactDOM from 'react-dom'; import 'jqwidgets-scripts/jqwidgets/styles/jqx.base.css'; import JqxDockingLayout, { IDockingLayoutProps } from 'jqwidgets-scripts/jqwidgets-react-tsx/jqxdockinglayout'; class App extends React.PureComponent<{}, IDockingLayoutProps> { private myDockingLayout = React.createRef<JqxDockingLayout>(); constructor(props: {}) { super(props); this.state = { layout: [ { type: 'layoutGroup', orientation: 'horizontal', items: [{ type: 'layoutGroup', orientation: 'vertical', width: '60%', items: [{ type: 'documentGroup', height: '50%', minHeight: '25%', items: [{ type: 'documentPanel', title: 'Document 1', contentContainer: 'Document1Panel' }, { type: 'documentPanel', title: 'Document 2', contentContainer: 'Document2Panel' }] }, { type: 'tabbedGroup', height: '50%', pinnedHeight: '10%', items: [{ type: 'layoutPanel', title: 'Error List', contentContainer: 'ErrorListPanel' }, { type: 'layoutPanel', title: 'Output', contentContainer: 'OutputPanel', selected: true }] }] }, { type: 'tabbedGroup', width: '40%', items: [{ type: 'layoutPanel', title: 'Solution Explorer', contentContainer: 'SolutionExplorerPanel' }, { type: 'layoutPanel', title: 'Properties', contentContainer: 'PropertiesPanel' }] }] } ] } } public render() { return ( <JqxDockingLayout ref={this.myDockingLayout} onFloat={this.onFloat} width={850} height={600} layout={this.state.layout}> <div data-container='Document1Panel'> Document 1 Content </div> <div data-container='Document2Panel'> Document 2 Content </div> <div data-container='ErrorListPanel'> List of Errors </div> <div data-container='OutputPanel'> Output </div> <div data-container='SolutionExplorerPanel'> Solution Structure </div> <div data-container='PropertiesPanel'> List of properties </div> </JqxDockingLayout> ); } private onFloat(e: Event): void { alert('do something...'); } } ReactDOM.render(<App />, document.querySelector('#app') as HTMLElement); |
||
pin | Event | |
This event is triggered when a group has been pinned. Code examples
Bind to the
/* tslint:disable */ import * as React from 'react'; import * as ReactDOM from 'react-dom'; import 'jqwidgets-scripts/jqwidgets/styles/jqx.base.css'; import JqxDockingLayout, { IDockingLayoutProps } from 'jqwidgets-scripts/jqwidgets-react-tsx/jqxdockinglayout'; class App extends React.PureComponent<{}, IDockingLayoutProps> { private myDockingLayout = React.createRef<JqxDockingLayout>(); constructor(props: {}) { super(props); this.state = { layout: [ { type: 'layoutGroup', orientation: 'horizontal', items: [{ type: 'layoutGroup', orientation: 'vertical', width: '60%', items: [{ type: 'documentGroup', height: '50%', minHeight: '25%', items: [{ type: 'documentPanel', title: 'Document 1', contentContainer: 'Document1Panel' }, { type: 'documentPanel', title: 'Document 2', contentContainer: 'Document2Panel' }] }, { type: 'tabbedGroup', height: '50%', pinnedHeight: '10%', items: [{ type: 'layoutPanel', title: 'Error List', contentContainer: 'ErrorListPanel' }, { type: 'layoutPanel', title: 'Output', contentContainer: 'OutputPanel', selected: true }] }] }, { type: 'tabbedGroup', width: '40%', items: [{ type: 'layoutPanel', title: 'Solution Explorer', contentContainer: 'SolutionExplorerPanel' }, { type: 'layoutPanel', title: 'Properties', contentContainer: 'PropertiesPanel' }] }] } ] } } public render() { return ( <JqxDockingLayout ref={this.myDockingLayout} onPin={this.onPin} width={850} height={600} layout={this.state.layout}> <div data-container='Document1Panel'> Document 1 Content </div> <div data-container='Document2Panel'> Document 2 Content </div> <div data-container='ErrorListPanel'> List of Errors </div> <div data-container='OutputPanel'> Output </div> <div data-container='SolutionExplorerPanel'> Solution Structure </div> <div data-container='PropertiesPanel'> List of properties </div> </JqxDockingLayout> ); } private onPin(e: Event): void { alert('do something...'); } } ReactDOM.render(<App />, document.querySelector('#app') as HTMLElement); |
||
resize | Event | |
This event is triggered when a group has been resized (when the group has been resized with the mouse or when an adjacent group has been pinned, unpinned or closed). Code examples
Bind to the
/* tslint:disable */ import * as React from 'react'; import * as ReactDOM from 'react-dom'; import 'jqwidgets-scripts/jqwidgets/styles/jqx.base.css'; import JqxDockingLayout, { IDockingLayoutProps } from 'jqwidgets-scripts/jqwidgets-react-tsx/jqxdockinglayout'; class App extends React.PureComponent<{}, IDockingLayoutProps> { private myDockingLayout = React.createRef<JqxDockingLayout>(); constructor(props: {}) { super(props); this.state = { layout: [ { type: 'layoutGroup', orientation: 'horizontal', items: [{ type: 'layoutGroup', orientation: 'vertical', width: '60%', items: [{ type: 'documentGroup', height: '50%', minHeight: '25%', items: [{ type: 'documentPanel', title: 'Document 1', contentContainer: 'Document1Panel' }, { type: 'documentPanel', title: 'Document 2', contentContainer: 'Document2Panel' }] }, { type: 'tabbedGroup', height: '50%', pinnedHeight: '10%', items: [{ type: 'layoutPanel', title: 'Error List', contentContainer: 'ErrorListPanel' }, { type: 'layoutPanel', title: 'Output', contentContainer: 'OutputPanel', selected: true }] }] }, { type: 'tabbedGroup', width: '40%', items: [{ type: 'layoutPanel', title: 'Solution Explorer', contentContainer: 'SolutionExplorerPanel' }, { type: 'layoutPanel', title: 'Properties', contentContainer: 'PropertiesPanel' }] }] } ] } } public render() { return ( <JqxDockingLayout ref={this.myDockingLayout} onResize={this.onResize} width={850} height={600} layout={this.state.layout}> <div data-container='Document1Panel'> Document 1 Content </div> <div data-container='Document2Panel'> Document 2 Content </div> <div data-container='ErrorListPanel'> List of Errors </div> <div data-container='OutputPanel'> Output </div> <div data-container='SolutionExplorerPanel'> Solution Structure </div> <div data-container='PropertiesPanel'> List of properties </div> </JqxDockingLayout> ); } private onResize(e: Event): void { alert('do something...'); } } ReactDOM.render(<App />, document.querySelector('#app') as HTMLElement); |
||
unpin | Event | |
This event is triggered when a group has been unpinned. Code examples
Bind to the
/* tslint:disable */ import * as React from 'react'; import * as ReactDOM from 'react-dom'; import 'jqwidgets-scripts/jqwidgets/styles/jqx.base.css'; import JqxDockingLayout, { IDockingLayoutProps } from 'jqwidgets-scripts/jqwidgets-react-tsx/jqxdockinglayout'; class App extends React.PureComponent<{}, IDockingLayoutProps> { private myDockingLayout = React.createRef<JqxDockingLayout>(); constructor(props: {}) { super(props); this.state = { layout: [ { type: 'layoutGroup', orientation: 'horizontal', items: [{ type: 'layoutGroup', orientation: 'vertical', width: '60%', items: [{ type: 'documentGroup', height: '50%', minHeight: '25%', items: [{ type: 'documentPanel', title: 'Document 1', contentContainer: 'Document1Panel' }, { type: 'documentPanel', title: 'Document 2', contentContainer: 'Document2Panel' }] }, { type: 'tabbedGroup', height: '50%', pinnedHeight: '10%', items: [{ type: 'layoutPanel', title: 'Error List', contentContainer: 'ErrorListPanel' }, { type: 'layoutPanel', title: 'Output', contentContainer: 'OutputPanel', selected: true }] }] }, { type: 'tabbedGroup', width: '40%', items: [{ type: 'layoutPanel', title: 'Solution Explorer', contentContainer: 'SolutionExplorerPanel' }, { type: 'layoutPanel', title: 'Properties', contentContainer: 'PropertiesPanel' }] }] } ] } } public render() { return ( <JqxDockingLayout ref={this.myDockingLayout} onUnpin={this.onUnpin} width={850} height={600} layout={this.state.layout}> <div data-container='Document1Panel'> Document 1 Content </div> <div data-container='Document2Panel'> Document 2 Content </div> <div data-container='ErrorListPanel'> List of Errors </div> <div data-container='OutputPanel'> Output </div> <div data-container='SolutionExplorerPanel'> Solution Structure </div> <div data-container='PropertiesPanel'> List of properties </div> </JqxDockingLayout> ); } private onUnpin(e: Event): void { alert('do something...'); } } ReactDOM.render(<App />, document.querySelector('#app') as HTMLElement); |
||
Methods |
||
Name | Arguments | Return Type |
addFloatGroup | width, height, position, panelType, title, content, initContent | |
Adds a new floatGroup. /* tslint:disable */ import * as React from 'react'; import * as ReactDOM from 'react-dom'; import 'jqwidgets-scripts/jqwidgets/styles/jqx.base.css'; import JqxDockingLayout, { IDockingLayoutProps } from 'jqwidgets-scripts/jqwidgets-react-tsx/jqxdockinglayout'; class App extends React.PureComponent<{}, IDockingLayoutProps> { private myDockingLayout = React.createRef<JqxDockingLayout>(); constructor(props: {}) { super(props); this.state = { layout: [ { type: 'layoutGroup', orientation: 'horizontal', items: [{ type: 'layoutGroup', orientation: 'vertical', width: '60%', items: [{ type: 'documentGroup', height: '50%', minHeight: '25%', items: [{ type: 'documentPanel', title: 'Document 1', contentContainer: 'Document1Panel' }, { type: 'documentPanel', title: 'Document 2', contentContainer: 'Document2Panel' }] }, { type: 'tabbedGroup', height: '50%', pinnedHeight: '10%', items: [{ type: 'layoutPanel', title: 'Error List', contentContainer: 'ErrorListPanel' }, { type: 'layoutPanel', title: 'Output', contentContainer: 'OutputPanel', selected: true }] }] }, { type: 'tabbedGroup', width: '40%', items: [{ type: 'layoutPanel', title: 'Solution Explorer', contentContainer: 'SolutionExplorerPanel' }, { type: 'layoutPanel', title: 'Properties', contentContainer: 'PropertiesPanel' }] }] } ] } } public componentDidMount(): void { this.myDockingLayout.current!.addFloatGroup(200,200,{x:10, y:10},'layoutPanel','Title','Content'); } public render() { return ( <JqxDockingLayout ref={this.myDockingLayout} width={850} height={600} layout={this.state.layout}> <div data-container='Document1Panel'> Document 1 Content </div> <div data-container='Document2Panel'> Document 2 Content </div> <div data-container='ErrorListPanel'> List of Errors </div> <div data-container='OutputPanel'> Output </div> <div data-container='SolutionExplorerPanel'> Solution Structure </div> <div data-container='PropertiesPanel'> List of properties </div> </JqxDockingLayout> ); } } ReactDOM.render(<App />, document.querySelector('#app') as HTMLElement); |
||
destroy | None | |
Destroys the widget. /* tslint:disable */ import * as React from 'react'; import * as ReactDOM from 'react-dom'; import 'jqwidgets-scripts/jqwidgets/styles/jqx.base.css'; import JqxDockingLayout, { IDockingLayoutProps } from 'jqwidgets-scripts/jqwidgets-react-tsx/jqxdockinglayout'; class App extends React.PureComponent<{}, IDockingLayoutProps> { private myDockingLayout = React.createRef<JqxDockingLayout>(); constructor(props: {}) { super(props); this.state = { layout: [ { type: 'layoutGroup', orientation: 'horizontal', items: [{ type: 'layoutGroup', orientation: 'vertical', width: '60%', items: [{ type: 'documentGroup', height: '50%', minHeight: '25%', items: [{ type: 'documentPanel', title: 'Document 1', contentContainer: 'Document1Panel' }, { type: 'documentPanel', title: 'Document 2', contentContainer: 'Document2Panel' }] }, { type: 'tabbedGroup', height: '50%', pinnedHeight: '10%', items: [{ type: 'layoutPanel', title: 'Error List', contentContainer: 'ErrorListPanel' }, { type: 'layoutPanel', title: 'Output', contentContainer: 'OutputPanel', selected: true }] }] }, { type: 'tabbedGroup', width: '40%', items: [{ type: 'layoutPanel', title: 'Solution Explorer', contentContainer: 'SolutionExplorerPanel' }, { type: 'layoutPanel', title: 'Properties', contentContainer: 'PropertiesPanel' }] }] } ] } } public componentDidMount(): void { this.myDockingLayout.current!.destroy(); } public render() { return ( <JqxDockingLayout ref={this.myDockingLayout} width={850} height={600} layout={this.state.layout}> <div data-container='Document1Panel'> Document 1 Content </div> <div data-container='Document2Panel'> Document 2 Content </div> <div data-container='ErrorListPanel'> List of Errors </div> <div data-container='OutputPanel'> Output </div> <div data-container='SolutionExplorerPanel'> Solution Structure </div> <div data-container='PropertiesPanel'> List of properties </div> </JqxDockingLayout> ); } } ReactDOM.render(<App />, document.querySelector('#app') as HTMLElement); |
||
loadLayout | layout | |
Loads a previously saved layout. |
||
refresh | None | |
Refreshes the widget. /* tslint:disable */ import * as React from 'react'; import * as ReactDOM from 'react-dom'; import 'jqwidgets-scripts/jqwidgets/styles/jqx.base.css'; import JqxDockingLayout, { IDockingLayoutProps } from 'jqwidgets-scripts/jqwidgets-react-tsx/jqxdockinglayout'; class App extends React.PureComponent<{}, IDockingLayoutProps> { private myDockingLayout = React.createRef<JqxDockingLayout>(); constructor(props: {}) { super(props); this.state = { layout: [ { type: 'layoutGroup', orientation: 'horizontal', items: [{ type: 'layoutGroup', orientation: 'vertical', width: '60%', items: [{ type: 'documentGroup', height: '50%', minHeight: '25%', items: [{ type: 'documentPanel', title: 'Document 1', contentContainer: 'Document1Panel' }, { type: 'documentPanel', title: 'Document 2', contentContainer: 'Document2Panel' }] }, { type: 'tabbedGroup', height: '50%', pinnedHeight: '10%', items: [{ type: 'layoutPanel', title: 'Error List', contentContainer: 'ErrorListPanel' }, { type: 'layoutPanel', title: 'Output', contentContainer: 'OutputPanel', selected: true }] }] }, { type: 'tabbedGroup', width: '40%', items: [{ type: 'layoutPanel', title: 'Solution Explorer', contentContainer: 'SolutionExplorerPanel' }, { type: 'layoutPanel', title: 'Properties', contentContainer: 'PropertiesPanel' }] }] } ] } } public componentDidMount(): void { this.myDockingLayout.current!.refresh(); } public render() { return ( <JqxDockingLayout ref={this.myDockingLayout} width={850} height={600} layout={this.state.layout}> <div data-container='Document1Panel'> Document 1 Content </div> <div data-container='Document2Panel'> Document 2 Content </div> <div data-container='ErrorListPanel'> List of Errors </div> <div data-container='OutputPanel'> Output </div> <div data-container='SolutionExplorerPanel'> Solution Structure </div> <div data-container='PropertiesPanel'> List of properties </div> </JqxDockingLayout> ); } } ReactDOM.render(<App />, document.querySelector('#app') as HTMLElement); |
||
render | None | |
Renders the widget. /* tslint:disable */ import * as React from 'react'; import * as ReactDOM from 'react-dom'; import 'jqwidgets-scripts/jqwidgets/styles/jqx.base.css'; import JqxDockingLayout, { IDockingLayoutProps } from 'jqwidgets-scripts/jqwidgets-react-tsx/jqxdockinglayout'; class App extends React.PureComponent<{}, IDockingLayoutProps> { private myDockingLayout = React.createRef<JqxDockingLayout>(); constructor(props: {}) { super(props); this.state = { layout: [ { type: 'layoutGroup', orientation: 'horizontal', items: [{ type: 'layoutGroup', orientation: 'vertical', width: '60%', items: [{ type: 'documentGroup', height: '50%', minHeight: '25%', items: [{ type: 'documentPanel', title: 'Document 1', contentContainer: 'Document1Panel' }, { type: 'documentPanel', title: 'Document 2', contentContainer: 'Document2Panel' }] }, { type: 'tabbedGroup', height: '50%', pinnedHeight: '10%', items: [{ type: 'layoutPanel', title: 'Error List', contentContainer: 'ErrorListPanel' }, { type: 'layoutPanel', title: 'Output', contentContainer: 'OutputPanel', selected: true }] }] }, { type: 'tabbedGroup', width: '40%', items: [{ type: 'layoutPanel', title: 'Solution Explorer', contentContainer: 'SolutionExplorerPanel' }, { type: 'layoutPanel', title: 'Properties', contentContainer: 'PropertiesPanel' }] }] } ] } } public componentDidMount(): void { this.myDockingLayout.current!.render(); } public render() { return ( <JqxDockingLayout ref={this.myDockingLayout} width={850} height={600} layout={this.state.layout}> <div data-container='Document1Panel'> Document 1 Content </div> <div data-container='Document2Panel'> Document 2 Content </div> <div data-container='ErrorListPanel'> List of Errors </div> <div data-container='OutputPanel'> Output </div> <div data-container='SolutionExplorerPanel'> Solution Structure </div> <div data-container='PropertiesPanel'> List of properties </div> </JqxDockingLayout> ); } } ReactDOM.render(<App />, document.querySelector('#app') as HTMLElement); |
||
saveLayout | None | |
Saves the current layout of the widget. The object returned by this method can be passed to the method loadLayout. /* tslint:disable */ import * as React from 'react'; import * as ReactDOM from 'react-dom'; import 'jqwidgets-scripts/jqwidgets/styles/jqx.base.css'; import JqxDockingLayout, { IDockingLayoutProps } from 'jqwidgets-scripts/jqwidgets-react-tsx/jqxdockinglayout'; class App extends React.PureComponent<{}, IDockingLayoutProps> { private myDockingLayout = React.createRef<JqxDockingLayout>(); constructor(props: {}) { super(props); this.state = { layout: [ { type: 'layoutGroup', orientation: 'horizontal', items: [{ type: 'layoutGroup', orientation: 'vertical', width: '60%', items: [{ type: 'documentGroup', height: '50%', minHeight: '25%', items: [{ type: 'documentPanel', title: 'Document 1', contentContainer: 'Document1Panel' }, { type: 'documentPanel', title: 'Document 2', contentContainer: 'Document2Panel' }] }, { type: 'tabbedGroup', height: '50%', pinnedHeight: '10%', items: [{ type: 'layoutPanel', title: 'Error List', contentContainer: 'ErrorListPanel' }, { type: 'layoutPanel', title: 'Output', contentContainer: 'OutputPanel', selected: true }] }] }, { type: 'tabbedGroup', width: '40%', items: [{ type: 'layoutPanel', title: 'Solution Explorer', contentContainer: 'SolutionExplorerPanel' }, { type: 'layoutPanel', title: 'Properties', contentContainer: 'PropertiesPanel' }] }] } ] } } public componentDidMount(): void { this.myDockingLayout.current!.saveLayout(); } public render() { return ( <JqxDockingLayout ref={this.myDockingLayout} width={850} height={600} layout={this.state.layout}> <div data-container='Document1Panel'> Document 1 Content </div> <div data-container='Document2Panel'> Document 2 Content </div> <div data-container='ErrorListPanel'> List of Errors </div> <div data-container='OutputPanel'> Output </div> <div data-container='SolutionExplorerPanel'> Solution Structure </div> <div data-container='PropertiesPanel'> List of properties </div> </JqxDockingLayout> ); } } ReactDOM.render(<App />, document.querySelector('#app') as HTMLElement); |