dockview 0.0.28 → 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -21
- package/README.md +60 -0
- package/dist/cjs/actionbar/actionsContainer.d.ts +7 -7
- package/dist/cjs/actionbar/actionsContainer.js +26 -26
- package/dist/cjs/api/component.api.d.ts +131 -131
- package/dist/cjs/api/component.api.js +444 -444
- package/dist/cjs/api/gridviewPanelApi.d.ts +36 -36
- package/dist/cjs/api/gridviewPanelApi.js +46 -46
- package/dist/cjs/api/groupPanelApi.d.ts +44 -44
- package/dist/cjs/api/groupPanelApi.js +94 -94
- package/dist/cjs/api/groupPanelApi.js.map +1 -1
- package/dist/cjs/api/panelApi.d.ts +107 -107
- package/dist/cjs/api/panelApi.js +140 -140
- package/dist/cjs/api/paneviewPanelApi.d.ts +26 -26
- package/dist/cjs/api/paneviewPanelApi.js +56 -56
- package/dist/cjs/api/splitviewPanelApi.d.ts +33 -33
- package/dist/cjs/api/splitviewPanelApi.js +51 -51
- package/dist/cjs/array.d.ts +13 -13
- package/dist/cjs/array.js +77 -77
- package/dist/cjs/dnd/abstractDragHandler.d.ts +11 -11
- package/dist/cjs/dnd/abstractDragHandler.js +115 -115
- package/dist/cjs/dnd/dataTransfer.d.ts +56 -56
- package/dist/cjs/dnd/dataTransfer.js +144 -144
- package/dist/cjs/dnd/dataTransfer.js.map +1 -1
- package/dist/cjs/dnd/dnd.d.ts +40 -40
- package/dist/cjs/dnd/dnd.js +142 -142
- package/dist/cjs/dnd/droptarget.d.ts +37 -37
- package/dist/cjs/dnd/droptarget.js +177 -177
- package/dist/cjs/dockview/components/tab/defaultTab.d.ts +44 -44
- package/dist/cjs/dockview/components/tab/defaultTab.js +186 -186
- package/dist/cjs/dockview/components/watermark/watermark.d.ts +20 -20
- package/dist/cjs/dockview/components/watermark/watermark.js +99 -99
- package/dist/cjs/dockview/defaultGroupPanelView.d.ts +34 -34
- package/dist/cjs/dockview/defaultGroupPanelView.js +83 -83
- package/dist/cjs/dockview/deserializer.d.ts +14 -14
- package/dist/cjs/dockview/deserializer.js +47 -47
- package/dist/cjs/dockview/dockviewComponent.d.ts +121 -121
- package/dist/cjs/dockview/dockviewComponent.js +692 -692
- package/dist/cjs/dockview/dockviewComponent.js.map +1 -1
- package/dist/cjs/dockview/dockviewGroupPanel.d.ts +35 -35
- package/dist/cjs/dockview/dockviewGroupPanel.js +195 -195
- package/dist/cjs/dockview/options.d.ts +79 -79
- package/dist/cjs/dockview/options.js +2 -2
- package/dist/cjs/dom.d.ts +14 -14
- package/dist/cjs/dom.js +182 -182
- package/dist/cjs/events.d.ts +23 -23
- package/dist/cjs/events.js +87 -87
- package/dist/cjs/footnote.d.ts +1 -1
- package/dist/cjs/footnote.js +19 -19
- package/dist/cjs/footnote.js.map +1 -1
- package/dist/cjs/functions.d.ts +1 -1
- package/dist/cjs/functions.js +41 -41
- package/dist/cjs/gridview/baseComponentGridview.d.ts +98 -98
- package/dist/cjs/gridview/baseComponentGridview.js +292 -292
- package/dist/cjs/gridview/baseComponentGridview.js.map +1 -1
- package/dist/cjs/gridview/basePanelView.d.ts +46 -46
- package/dist/cjs/gridview/basePanelView.js +115 -115
- package/dist/cjs/gridview/branchNode.d.ts +46 -46
- package/dist/cjs/gridview/branchNode.js +342 -342
- package/dist/cjs/gridview/gridview.d.ts +123 -123
- package/dist/cjs/gridview/gridview.js +477 -477
- package/dist/cjs/gridview/gridviewComponent.d.ts +88 -88
- package/dist/cjs/gridview/gridviewComponent.js +303 -303
- package/dist/cjs/gridview/gridviewComponent.js.map +1 -1
- package/dist/cjs/gridview/gridviewPanel.d.ts +62 -62
- package/dist/cjs/gridview/gridviewPanel.js +205 -205
- package/dist/cjs/gridview/leafNode.d.ts +31 -31
- package/dist/cjs/gridview/leafNode.js +164 -164
- package/dist/cjs/gridview/options.d.ts +18 -18
- package/dist/cjs/gridview/options.js +2 -2
- package/dist/cjs/gridview/types.d.ts +3 -3
- package/dist/cjs/gridview/types.js +2 -2
- package/dist/cjs/groupview/dnd.d.ts +5 -5
- package/dist/cjs/groupview/dnd.js +9 -9
- package/dist/cjs/groupview/groupPanel.d.ts +41 -41
- package/dist/cjs/groupview/groupPanel.js +2 -2
- package/dist/cjs/groupview/groupview.d.ts +154 -154
- package/dist/cjs/groupview/groupview.js +633 -633
- package/dist/cjs/groupview/groupviewPanel.d.ts +18 -18
- package/dist/cjs/groupview/groupviewPanel.js +83 -83
- package/dist/cjs/groupview/panel/content.d.ts +30 -30
- package/dist/cjs/groupview/panel/content.js +99 -99
- package/dist/cjs/groupview/panel/hostedPanel.d.ts +22 -22
- package/dist/cjs/groupview/panel/hostedPanel.js +56 -56
- package/dist/cjs/groupview/panel/hostedPanel.js.map +1 -1
- package/dist/cjs/groupview/tab.d.ts +44 -44
- package/dist/cjs/groupview/tab.js +182 -182
- package/dist/cjs/groupview/titlebar/tabsContainer.d.ts +66 -66
- package/dist/cjs/groupview/titlebar/tabsContainer.js +260 -260
- package/dist/cjs/groupview/titlebar/tabsContainer.js.map +1 -1
- package/dist/cjs/groupview/types.d.ts +59 -59
- package/dist/cjs/groupview/types.js +2 -2
- package/dist/cjs/hostedContainer.d.ts +23 -23
- package/dist/cjs/hostedContainer.js +73 -73
- package/dist/cjs/hostedContainer.js.map +1 -1
- package/dist/cjs/index.d.ts +29 -26
- package/dist/cjs/index.js +38 -35
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/json.d.ts +1 -1
- package/dist/cjs/json.js +13 -13
- package/dist/cjs/lifecycle.d.ts +22 -22
- package/dist/cjs/lifecycle.js +87 -87
- package/dist/cjs/math.d.ts +4 -4
- package/dist/cjs/math.js +15 -15
- package/dist/cjs/math.js.map +1 -1
- package/dist/cjs/panel/componentFactory.d.ts +8 -8
- package/dist/cjs/panel/componentFactory.js +30 -30
- package/dist/cjs/panel/componentFactory.js.map +1 -1
- package/dist/cjs/panel/types.d.ts +34 -34
- package/dist/cjs/panel/types.js +2 -2
- package/dist/cjs/paneview/defaultPaneviewHeader.d.ts +18 -18
- package/dist/cjs/paneview/defaultPaneviewHeader.js +64 -64
- package/dist/cjs/paneview/draggablePaneviewPanel.d.ts +17 -17
- package/dist/cjs/paneview/draggablePaneviewPanel.js +111 -111
- package/dist/cjs/paneview/options.d.ts +25 -25
- package/dist/cjs/paneview/options.js +2 -2
- package/dist/cjs/paneview/paneview.d.ts +38 -38
- package/dist/cjs/paneview/paneview.js +198 -198
- package/dist/cjs/paneview/paneviewComponent.d.ts +113 -113
- package/dist/cjs/paneview/paneviewComponent.js +338 -338
- package/dist/cjs/paneview/paneviewPanel.d.ts +85 -85
- package/dist/cjs/paneview/paneviewPanel.js +262 -262
- package/dist/cjs/paneview/paneviewPanel.js.map +1 -1
- package/dist/cjs/react/deserializer.d.ts +8 -8
- package/dist/cjs/react/deserializer.js +39 -39
- package/dist/cjs/react/dockview/components.d.ts +11 -11
- package/dist/cjs/react/dockview/components.js +76 -76
- package/dist/cjs/react/dockview/dockview.d.ts +34 -34
- package/dist/cjs/react/dockview/dockview.js +135 -135
- package/dist/cjs/react/dockview/reactContentPart.d.ts +47 -47
- package/dist/cjs/react/dockview/reactContentPart.js +88 -88
- package/dist/cjs/react/dockview/reactHeaderPart.d.ts +24 -24
- package/dist/cjs/react/dockview/reactHeaderPart.js +50 -50
- package/dist/cjs/react/dockview/reactWatermarkPart.d.ts +30 -30
- package/dist/cjs/react/dockview/reactWatermarkPart.js +66 -66
- package/dist/cjs/react/dockview/v2/reactContentRenderer.d.ts +30 -30
- package/dist/cjs/react/dockview/v2/reactContentRenderer.js +90 -90
- package/dist/cjs/react/dockview/v2/reactGroupPanelView.d.ts +7 -7
- package/dist/cjs/react/dockview/v2/reactGroupPanelView.js +34 -34
- package/dist/cjs/react/dockview/v2/webviewContentRenderer.d.ts +18 -18
- package/dist/cjs/react/dockview/v2/webviewContentRenderer.js +45 -45
- package/dist/cjs/react/gridview/gridview.d.ts +24 -24
- package/dist/cjs/react/gridview/gridview.js +96 -96
- package/dist/cjs/react/gridview/view.d.ts +10 -10
- package/dist/cjs/react/gridview/view.js +40 -40
- package/dist/cjs/react/index.d.ts +9 -9
- package/dist/cjs/react/index.js +21 -21
- package/dist/cjs/react/paneview/paneview.d.ts +28 -28
- package/dist/cjs/react/paneview/paneview.js +138 -138
- package/dist/cjs/react/paneview/view.d.ts +20 -20
- package/dist/cjs/react/paneview/view.js +44 -44
- package/dist/cjs/react/react.d.ts +35 -35
- package/dist/cjs/react/react.js +181 -181
- package/dist/cjs/react/react.js.map +1 -1
- package/dist/cjs/react/splitview/splitview.d.ts +24 -24
- package/dist/cjs/react/splitview/splitview.js +93 -93
- package/dist/cjs/react/splitview/view.d.ts +10 -10
- package/dist/cjs/react/splitview/view.js +40 -40
- package/dist/cjs/react/types.d.ts +7 -7
- package/dist/cjs/react/types.js +2 -2
- package/dist/cjs/splitview/core/options.d.ts +26 -26
- package/dist/cjs/splitview/core/options.js +2 -2
- package/dist/cjs/splitview/core/splitview.d.ts +124 -124
- package/dist/cjs/splitview/core/splitview.js +908 -908
- package/dist/cjs/splitview/core/splitview.js.map +1 -1
- package/dist/cjs/splitview/core/viewItem.d.ts +25 -25
- package/dist/cjs/splitview/core/viewItem.js +124 -124
- package/dist/cjs/splitview/splitviewComponent.d.ts +100 -100
- package/dist/cjs/splitview/splitviewComponent.js +327 -327
- package/dist/cjs/splitview/splitviewComponent.js.map +1 -1
- package/dist/cjs/splitview/splitviewPanel.d.ts +47 -47
- package/dist/cjs/splitview/splitviewPanel.js +178 -178
- package/dist/cjs/types.d.ts +7 -7
- package/dist/cjs/types.js +2 -2
- package/dist/dockview.amd.js +6714 -6711
- package/dist/dockview.amd.min.js +3 -3
- package/dist/dockview.amd.min.noStyle.js +3 -3
- package/dist/dockview.amd.noStyle.js +6706 -6703
- package/dist/dockview.cjs.js +6708 -6705
- package/dist/dockview.esm.js +6706 -6706
- package/dist/dockview.esm.min.js +3 -3
- package/dist/dockview.js +6714 -6711
- package/dist/dockview.min.js +3 -3
- package/dist/dockview.min.noStyle.js +3 -3
- package/dist/dockview.noStyle.js +6706 -6703
- package/dist/esm/actionbar/actionsContainer.d.ts +7 -7
- package/dist/esm/actionbar/actionsContainer.js +17 -17
- package/dist/esm/api/component.api.d.ts +131 -131
- package/dist/esm/api/component.api.js +287 -287
- package/dist/esm/api/gridviewPanelApi.d.ts +36 -36
- package/dist/esm/api/gridviewPanelApi.js +24 -24
- package/dist/esm/api/groupPanelApi.d.ts +44 -44
- package/dist/esm/api/groupPanelApi.js +52 -52
- package/dist/esm/api/panelApi.d.ts +107 -107
- package/dist/esm/api/panelApi.js +98 -98
- package/dist/esm/api/paneviewPanelApi.d.ts +26 -26
- package/dist/esm/api/paneviewPanelApi.js +26 -26
- package/dist/esm/api/splitviewPanelApi.d.ts +33 -33
- package/dist/esm/api/splitviewPanelApi.js +29 -29
- package/dist/esm/array.d.ts +13 -13
- package/dist/esm/array.js +67 -67
- package/dist/esm/dnd/abstractDragHandler.d.ts +11 -11
- package/dist/esm/dnd/abstractDragHandler.js +37 -37
- package/dist/esm/dnd/dataTransfer.d.ts +56 -56
- package/dist/esm/dnd/dataTransfer.js +109 -109
- package/dist/esm/dnd/dnd.d.ts +40 -40
- package/dist/esm/dnd/dnd.js +109 -109
- package/dist/esm/dnd/droptarget.d.ts +37 -37
- package/dist/esm/dnd/droptarget.js +143 -143
- package/dist/esm/dockview/components/tab/defaultTab.d.ts +44 -44
- package/dist/esm/dockview/components/tab/defaultTab.js +130 -130
- package/dist/esm/dockview/components/watermark/watermark.d.ts +20 -20
- package/dist/esm/dockview/components/watermark/watermark.js +68 -68
- package/dist/esm/dockview/defaultGroupPanelView.d.ts +34 -34
- package/dist/esm/dockview/defaultGroupPanelView.js +55 -55
- package/dist/esm/dockview/deserializer.d.ts +14 -14
- package/dist/esm/dockview/deserializer.js +20 -20
- package/dist/esm/dockview/dockviewComponent.d.ts +121 -121
- package/dist/esm/dockview/dockviewComponent.js +533 -533
- package/dist/esm/dockview/dockviewGroupPanel.d.ts +35 -35
- package/dist/esm/dockview/dockviewGroupPanel.js +145 -145
- package/dist/esm/dockview/options.d.ts +79 -79
- package/dist/esm/dockview/options.js +1 -1
- package/dist/esm/dom.d.ts +14 -14
- package/dist/esm/dom.js +113 -113
- package/dist/esm/events.d.ts +23 -23
- package/dist/esm/events.js +71 -71
- package/dist/esm/footnote.d.ts +1 -1
- package/dist/esm/footnote.js +19 -19
- package/dist/esm/functions.d.ts +1 -1
- package/dist/esm/functions.js +8 -8
- package/dist/esm/gridview/baseComponentGridview.d.ts +98 -98
- package/dist/esm/gridview/baseComponentGridview.js +224 -224
- package/dist/esm/gridview/basePanelView.d.ts +46 -46
- package/dist/esm/gridview/basePanelView.js +70 -70
- package/dist/esm/gridview/branchNode.d.ts +46 -46
- package/dist/esm/gridview/branchNode.js +218 -218
- package/dist/esm/gridview/gridview.d.ts +123 -123
- package/dist/esm/gridview/gridview.js +396 -396
- package/dist/esm/gridview/gridviewComponent.d.ts +88 -88
- package/dist/esm/gridview/gridviewComponent.js +238 -238
- package/dist/esm/gridview/gridviewPanel.d.ts +62 -62
- package/dist/esm/gridview/gridviewPanel.js +141 -141
- package/dist/esm/gridview/leafNode.d.ts +31 -31
- package/dist/esm/gridview/leafNode.js +97 -97
- package/dist/esm/gridview/options.d.ts +18 -18
- package/dist/esm/gridview/options.js +1 -1
- package/dist/esm/gridview/types.d.ts +3 -3
- package/dist/esm/gridview/types.js +1 -1
- package/dist/esm/groupview/dnd.d.ts +5 -5
- package/dist/esm/groupview/dnd.js +6 -6
- package/dist/esm/groupview/groupPanel.d.ts +41 -41
- package/dist/esm/groupview/groupPanel.js +1 -1
- package/dist/esm/groupview/groupview.d.ts +154 -154
- package/dist/esm/groupview/groupview.js +448 -448
- package/dist/esm/groupview/groupviewPanel.d.ts +18 -18
- package/dist/esm/groupview/groupviewPanel.js +41 -41
- package/dist/esm/groupview/panel/content.d.ts +30 -30
- package/dist/esm/groupview/panel/content.js +72 -72
- package/dist/esm/groupview/panel/hostedPanel.d.ts +22 -22
- package/dist/esm/groupview/panel/hostedPanel.js +43 -43
- package/dist/esm/groupview/tab.d.ts +44 -44
- package/dist/esm/groupview/tab.js +101 -101
- package/dist/esm/groupview/titlebar/tabsContainer.d.ts +66 -66
- package/dist/esm/groupview/titlebar/tabsContainer.js +185 -185
- package/dist/esm/groupview/types.d.ts +59 -59
- package/dist/esm/groupview/types.js +1 -1
- package/dist/esm/hostedContainer.d.ts +23 -23
- package/dist/esm/hostedContainer.js +63 -63
- package/dist/esm/index.d.ts +29 -26
- package/dist/esm/index.js +24 -21
- package/dist/esm/json.d.ts +1 -1
- package/dist/esm/json.js +9 -9
- package/dist/esm/lifecycle.d.ts +22 -22
- package/dist/esm/lifecycle.js +38 -38
- package/dist/esm/math.d.ts +4 -4
- package/dist/esm/math.js +10 -10
- package/dist/esm/panel/componentFactory.d.ts +8 -8
- package/dist/esm/panel/componentFactory.js +24 -24
- package/dist/esm/panel/types.d.ts +34 -34
- package/dist/esm/panel/types.js +1 -1
- package/dist/esm/paneview/defaultPaneviewHeader.d.ts +18 -18
- package/dist/esm/paneview/defaultPaneviewHeader.js +37 -37
- package/dist/esm/paneview/draggablePaneviewPanel.d.ts +17 -17
- package/dist/esm/paneview/draggablePaneviewPanel.js +72 -72
- package/dist/esm/paneview/options.d.ts +25 -25
- package/dist/esm/paneview/options.js +1 -1
- package/dist/esm/paneview/paneview.d.ts +38 -38
- package/dist/esm/paneview/paneview.js +144 -144
- package/dist/esm/paneview/paneviewComponent.d.ts +113 -113
- package/dist/esm/paneview/paneviewComponent.js +247 -247
- package/dist/esm/paneview/paneviewPanel.d.ts +85 -85
- package/dist/esm/paneview/paneviewPanel.js +183 -183
- package/dist/esm/react/deserializer.d.ts +8 -8
- package/dist/esm/react/deserializer.js +34 -34
- package/dist/esm/react/dockview/components.d.ts +11 -11
- package/dist/esm/react/dockview/components.js +54 -54
- package/dist/esm/react/dockview/dockview.d.ts +34 -34
- package/dist/esm/react/dockview/dockview.js +97 -97
- package/dist/esm/react/dockview/reactContentPart.d.ts +47 -47
- package/dist/esm/react/dockview/reactContentPart.js +75 -75
- package/dist/esm/react/dockview/reactHeaderPart.d.ts +24 -24
- package/dist/esm/react/dockview/reactHeaderPart.js +41 -41
- package/dist/esm/react/dockview/reactWatermarkPart.d.ts +30 -30
- package/dist/esm/react/dockview/reactWatermarkPart.js +56 -56
- package/dist/esm/react/dockview/v2/reactContentRenderer.d.ts +30 -30
- package/dist/esm/react/dockview/v2/reactContentRenderer.js +72 -72
- package/dist/esm/react/dockview/v2/reactGroupPanelView.d.ts +7 -7
- package/dist/esm/react/dockview/v2/reactGroupPanelView.js +12 -12
- package/dist/esm/react/dockview/v2/webviewContentRenderer.d.ts +18 -18
- package/dist/esm/react/dockview/v2/webviewContentRenderer.js +36 -36
- package/dist/esm/react/gridview/gridview.d.ts +24 -24
- package/dist/esm/react/gridview/gridview.js +58 -58
- package/dist/esm/react/gridview/view.d.ts +10 -10
- package/dist/esm/react/gridview/view.js +18 -18
- package/dist/esm/react/index.d.ts +9 -9
- package/dist/esm/react/index.js +9 -9
- package/dist/esm/react/paneview/paneview.d.ts +28 -28
- package/dist/esm/react/paneview/paneview.js +87 -87
- package/dist/esm/react/paneview/view.d.ts +20 -20
- package/dist/esm/react/paneview/view.js +35 -35
- package/dist/esm/react/react.d.ts +35 -35
- package/dist/esm/react/react.js +116 -116
- package/dist/esm/react/splitview/splitview.d.ts +24 -24
- package/dist/esm/react/splitview/splitview.js +55 -55
- package/dist/esm/react/splitview/view.d.ts +10 -10
- package/dist/esm/react/splitview/view.js +18 -18
- package/dist/esm/react/types.d.ts +7 -7
- package/dist/esm/react/types.js +1 -1
- package/dist/esm/splitview/core/options.d.ts +26 -26
- package/dist/esm/splitview/core/options.js +1 -1
- package/dist/esm/splitview/core/splitview.d.ts +124 -124
- package/dist/esm/splitview/core/splitview.js +689 -689
- package/dist/esm/splitview/core/viewItem.d.ts +25 -25
- package/dist/esm/splitview/core/viewItem.js +79 -79
- package/dist/esm/splitview/splitviewComponent.d.ts +100 -100
- package/dist/esm/splitview/splitviewComponent.js +241 -241
- package/dist/esm/splitview/splitviewPanel.d.ts +47 -47
- package/dist/esm/splitview/splitviewPanel.js +107 -107
- package/dist/esm/types.d.ts +7 -7
- package/dist/esm/types.js +1 -1
- package/package.json +75 -75
|
@@ -1,247 +1,247 @@
|
|
|
1
|
-
import { PaneviewApi } from '../api/component.api';
|
|
2
|
-
import { createComponent } from '../panel/componentFactory';
|
|
3
|
-
import { Emitter } from '../events';
|
|
4
|
-
import { CompositeDisposable, MutableDisposable, } from '../lifecycle';
|
|
5
|
-
import { Orientation, Sizing, } from '../splitview/core/splitview';
|
|
6
|
-
import { Paneview } from './paneview';
|
|
7
|
-
import { DraggablePaneviewPanel, } from './draggablePaneviewPanel';
|
|
8
|
-
import { DefaultHeader } from './defaultPaneviewHeader';
|
|
9
|
-
export class PaneFramework extends DraggablePaneviewPanel {
|
|
10
|
-
constructor(options) {
|
|
11
|
-
super(options.id, options.component, options.headerComponent, options.orientation, options.isExpanded, options.disableDnd);
|
|
12
|
-
this.options = options;
|
|
13
|
-
}
|
|
14
|
-
getBodyComponent() {
|
|
15
|
-
return this.options.body;
|
|
16
|
-
}
|
|
17
|
-
getHeaderComponent() {
|
|
18
|
-
return this.options.header;
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
export class PaneviewComponent extends CompositeDisposable {
|
|
22
|
-
constructor(element, options) {
|
|
23
|
-
super();
|
|
24
|
-
this.element = element;
|
|
25
|
-
this._disposable = new MutableDisposable();
|
|
26
|
-
this._onDidLayoutChange = new Emitter();
|
|
27
|
-
this.onDidLayoutChange = this._onDidLayoutChange.event;
|
|
28
|
-
this._onDidDrop = new Emitter();
|
|
29
|
-
this.onDidDrop = this._onDidDrop.event;
|
|
30
|
-
this._options = options;
|
|
31
|
-
if (!options.components) {
|
|
32
|
-
options.components = {};
|
|
33
|
-
}
|
|
34
|
-
if (!options.frameworkComponents) {
|
|
35
|
-
options.frameworkComponents = {};
|
|
36
|
-
}
|
|
37
|
-
this.paneview = new Paneview(this.element, {
|
|
38
|
-
// only allow paneview in the vertical orientation for now
|
|
39
|
-
orientation: Orientation.VERTICAL,
|
|
40
|
-
});
|
|
41
|
-
this.addDisposables(this._disposable);
|
|
42
|
-
}
|
|
43
|
-
get onDidAddView() {
|
|
44
|
-
return this._paneview.onDidAddView;
|
|
45
|
-
}
|
|
46
|
-
get onDidRemoveView() {
|
|
47
|
-
return this._paneview.onDidRemoveView;
|
|
48
|
-
}
|
|
49
|
-
set paneview(value) {
|
|
50
|
-
this._paneview = value;
|
|
51
|
-
this._disposable.value = new CompositeDisposable(this.paneview.onDidChange(() => {
|
|
52
|
-
this._onDidLayoutChange.fire(undefined);
|
|
53
|
-
}));
|
|
54
|
-
}
|
|
55
|
-
get paneview() {
|
|
56
|
-
return this._paneview;
|
|
57
|
-
}
|
|
58
|
-
get minimumSize() {
|
|
59
|
-
return this.paneview.minimumSize;
|
|
60
|
-
}
|
|
61
|
-
get maximumSize() {
|
|
62
|
-
return this.paneview.maximumSize;
|
|
63
|
-
}
|
|
64
|
-
get height() {
|
|
65
|
-
return this.paneview.orientation === Orientation.HORIZONTAL
|
|
66
|
-
? this.paneview.orthogonalSize
|
|
67
|
-
: this.paneview.size;
|
|
68
|
-
}
|
|
69
|
-
get width() {
|
|
70
|
-
return this.paneview.orientation === Orientation.HORIZONTAL
|
|
71
|
-
? this.paneview.size
|
|
72
|
-
: this.paneview.orthogonalSize;
|
|
73
|
-
}
|
|
74
|
-
get options() {
|
|
75
|
-
return this._options;
|
|
76
|
-
}
|
|
77
|
-
focus() {
|
|
78
|
-
//
|
|
79
|
-
}
|
|
80
|
-
updateOptions(options) {
|
|
81
|
-
this._options = Object.assign(Object.assign({}, this.options), options);
|
|
82
|
-
}
|
|
83
|
-
addPanel(options) {
|
|
84
|
-
const body = createComponent(options.id, options.component, this.options.components || {}, this.options.frameworkComponents || {}, this.options.frameworkWrapper
|
|
85
|
-
? {
|
|
86
|
-
createComponent: this.options.frameworkWrapper.body.createComponent,
|
|
87
|
-
}
|
|
88
|
-
: undefined);
|
|
89
|
-
let header;
|
|
90
|
-
if (options.headerComponent) {
|
|
91
|
-
header = createComponent(options.id, options.headerComponent, this.options.headerComponents || {}, this.options.headerframeworkComponents, this.options.frameworkWrapper
|
|
92
|
-
? {
|
|
93
|
-
createComponent: this.options.frameworkWrapper.header
|
|
94
|
-
.createComponent,
|
|
95
|
-
}
|
|
96
|
-
: undefined);
|
|
97
|
-
}
|
|
98
|
-
else {
|
|
99
|
-
header = new DefaultHeader();
|
|
100
|
-
}
|
|
101
|
-
const view = new PaneFramework({
|
|
102
|
-
id: options.id,
|
|
103
|
-
component: options.component,
|
|
104
|
-
headerComponent: options.headerComponent,
|
|
105
|
-
header,
|
|
106
|
-
body,
|
|
107
|
-
orientation: Orientation.VERTICAL,
|
|
108
|
-
isExpanded: !!options.isExpanded,
|
|
109
|
-
disableDnd: !!this.options.disableDnd,
|
|
110
|
-
});
|
|
111
|
-
const disposable = new CompositeDisposable(view.onDidDrop((event) => {
|
|
112
|
-
this._onDidDrop.fire(event);
|
|
113
|
-
}));
|
|
114
|
-
const size = typeof options.size === 'number' ? options.size : Sizing.Distribute;
|
|
115
|
-
const index = typeof options.index === 'number' ? options.index : undefined;
|
|
116
|
-
view.init({
|
|
117
|
-
params: options.params || {},
|
|
118
|
-
minimumBodySize: options.minimumBodySize,
|
|
119
|
-
maximumBodySize: options.maximumBodySize,
|
|
120
|
-
isExpanded: options.isExpanded,
|
|
121
|
-
title: options.title,
|
|
122
|
-
containerApi: new PaneviewApi(this),
|
|
123
|
-
});
|
|
124
|
-
this.paneview.addPane(view, size, index);
|
|
125
|
-
view.orientation = this.paneview.orientation;
|
|
126
|
-
return disposable;
|
|
127
|
-
}
|
|
128
|
-
getPanels() {
|
|
129
|
-
return this.paneview.getPanes();
|
|
130
|
-
}
|
|
131
|
-
removePanel(panel) {
|
|
132
|
-
const views = this.getPanels();
|
|
133
|
-
const index = views.findIndex((_) => _ === panel);
|
|
134
|
-
this.paneview.removePane(index);
|
|
135
|
-
}
|
|
136
|
-
movePanel(from, to) {
|
|
137
|
-
this.paneview.moveView(from, to);
|
|
138
|
-
}
|
|
139
|
-
getPanel(id) {
|
|
140
|
-
return this.getPanels().find((view) => view.id === id);
|
|
141
|
-
}
|
|
142
|
-
layout(width, height) {
|
|
143
|
-
const [size, orthogonalSize] = this.paneview.orientation === Orientation.HORIZONTAL
|
|
144
|
-
? [width, height]
|
|
145
|
-
: [height, width];
|
|
146
|
-
this.paneview.layout(size, orthogonalSize);
|
|
147
|
-
}
|
|
148
|
-
/**
|
|
149
|
-
* Resize the layout to fit the parent container
|
|
150
|
-
*/
|
|
151
|
-
resizeToFit() {
|
|
152
|
-
if (!this.element.parentElement) {
|
|
153
|
-
return;
|
|
154
|
-
}
|
|
155
|
-
const { width, height } = this.element.parentElement.getBoundingClientRect();
|
|
156
|
-
this.layout(width, height);
|
|
157
|
-
}
|
|
158
|
-
toJSON() {
|
|
159
|
-
const maximum = (value) => value === Number.MAX_SAFE_INTEGER ||
|
|
160
|
-
value === Number.POSITIVE_INFINITY
|
|
161
|
-
? undefined
|
|
162
|
-
: value;
|
|
163
|
-
const minimum = (value) => (value <= 0 ? undefined : value);
|
|
164
|
-
const views = this.paneview
|
|
165
|
-
.getPanes()
|
|
166
|
-
.map((view, i) => {
|
|
167
|
-
const size = this.paneview.getViewSize(i);
|
|
168
|
-
return {
|
|
169
|
-
size,
|
|
170
|
-
data: view.toJSON(),
|
|
171
|
-
minimumSize: minimum(view.minimumBodySize),
|
|
172
|
-
maximumSize: maximum(view.maximumBodySize),
|
|
173
|
-
expanded: view.isExpanded(),
|
|
174
|
-
};
|
|
175
|
-
});
|
|
176
|
-
return {
|
|
177
|
-
views,
|
|
178
|
-
size: this.paneview.size,
|
|
179
|
-
};
|
|
180
|
-
}
|
|
181
|
-
fromJSON(serializedPaneview, deferComponentLayout) {
|
|
182
|
-
const { views, size } = serializedPaneview;
|
|
183
|
-
const queue = [];
|
|
184
|
-
this.paneview.dispose();
|
|
185
|
-
this.paneview = new Paneview(this.element, {
|
|
186
|
-
orientation: Orientation.VERTICAL,
|
|
187
|
-
descriptor: {
|
|
188
|
-
size,
|
|
189
|
-
views: views.map((view) => {
|
|
190
|
-
const data = view.data;
|
|
191
|
-
const body = createComponent(data.id, data.component, this.options.components || {}, this.options.frameworkComponents || {}, this.options.frameworkWrapper
|
|
192
|
-
? {
|
|
193
|
-
createComponent: this.options.frameworkWrapper.body
|
|
194
|
-
.createComponent,
|
|
195
|
-
}
|
|
196
|
-
: undefined);
|
|
197
|
-
let header;
|
|
198
|
-
if (data.headerComponent) {
|
|
199
|
-
header = createComponent(data.id, data.headerComponent, this.options.headerComponents || {}, this.options.headerframeworkComponents || {}, this.options.frameworkWrapper
|
|
200
|
-
? {
|
|
201
|
-
createComponent: this.options.frameworkWrapper.header
|
|
202
|
-
.createComponent,
|
|
203
|
-
}
|
|
204
|
-
: undefined);
|
|
205
|
-
}
|
|
206
|
-
else {
|
|
207
|
-
header = new DefaultHeader();
|
|
208
|
-
}
|
|
209
|
-
const panel = new PaneFramework({
|
|
210
|
-
id: data.id,
|
|
211
|
-
component: data.component,
|
|
212
|
-
headerComponent: data.headerComponent,
|
|
213
|
-
header,
|
|
214
|
-
body,
|
|
215
|
-
orientation: Orientation.VERTICAL,
|
|
216
|
-
isExpanded: !!view.expanded,
|
|
217
|
-
disableDnd: !!this.options.disableDnd,
|
|
218
|
-
});
|
|
219
|
-
panel.onDidDrop((event) => {
|
|
220
|
-
this._onDidDrop.fire(event);
|
|
221
|
-
});
|
|
222
|
-
queue.push(() => {
|
|
223
|
-
panel.init({
|
|
224
|
-
params: data.params || {},
|
|
225
|
-
minimumBodySize: view.minimumSize,
|
|
226
|
-
maximumBodySize: view.maximumSize,
|
|
227
|
-
title: data.title,
|
|
228
|
-
isExpanded: !!view.expanded,
|
|
229
|
-
containerApi: new PaneviewApi(this),
|
|
230
|
-
});
|
|
231
|
-
panel.orientation = this.paneview.orientation;
|
|
232
|
-
});
|
|
233
|
-
return { size: view.size, view: panel };
|
|
234
|
-
}),
|
|
235
|
-
},
|
|
236
|
-
});
|
|
237
|
-
this.layout(this.width, this.height);
|
|
238
|
-
if (deferComponentLayout) {
|
|
239
|
-
setTimeout(() => {
|
|
240
|
-
queue.forEach((f) => f());
|
|
241
|
-
}, 0);
|
|
242
|
-
}
|
|
243
|
-
else {
|
|
244
|
-
queue.forEach((f) => f());
|
|
245
|
-
}
|
|
246
|
-
}
|
|
247
|
-
}
|
|
1
|
+
import { PaneviewApi } from '../api/component.api';
|
|
2
|
+
import { createComponent } from '../panel/componentFactory';
|
|
3
|
+
import { Emitter } from '../events';
|
|
4
|
+
import { CompositeDisposable, MutableDisposable, } from '../lifecycle';
|
|
5
|
+
import { Orientation, Sizing, } from '../splitview/core/splitview';
|
|
6
|
+
import { Paneview } from './paneview';
|
|
7
|
+
import { DraggablePaneviewPanel, } from './draggablePaneviewPanel';
|
|
8
|
+
import { DefaultHeader } from './defaultPaneviewHeader';
|
|
9
|
+
export class PaneFramework extends DraggablePaneviewPanel {
|
|
10
|
+
constructor(options) {
|
|
11
|
+
super(options.id, options.component, options.headerComponent, options.orientation, options.isExpanded, options.disableDnd);
|
|
12
|
+
this.options = options;
|
|
13
|
+
}
|
|
14
|
+
getBodyComponent() {
|
|
15
|
+
return this.options.body;
|
|
16
|
+
}
|
|
17
|
+
getHeaderComponent() {
|
|
18
|
+
return this.options.header;
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
export class PaneviewComponent extends CompositeDisposable {
|
|
22
|
+
constructor(element, options) {
|
|
23
|
+
super();
|
|
24
|
+
this.element = element;
|
|
25
|
+
this._disposable = new MutableDisposable();
|
|
26
|
+
this._onDidLayoutChange = new Emitter();
|
|
27
|
+
this.onDidLayoutChange = this._onDidLayoutChange.event;
|
|
28
|
+
this._onDidDrop = new Emitter();
|
|
29
|
+
this.onDidDrop = this._onDidDrop.event;
|
|
30
|
+
this._options = options;
|
|
31
|
+
if (!options.components) {
|
|
32
|
+
options.components = {};
|
|
33
|
+
}
|
|
34
|
+
if (!options.frameworkComponents) {
|
|
35
|
+
options.frameworkComponents = {};
|
|
36
|
+
}
|
|
37
|
+
this.paneview = new Paneview(this.element, {
|
|
38
|
+
// only allow paneview in the vertical orientation for now
|
|
39
|
+
orientation: Orientation.VERTICAL,
|
|
40
|
+
});
|
|
41
|
+
this.addDisposables(this._disposable);
|
|
42
|
+
}
|
|
43
|
+
get onDidAddView() {
|
|
44
|
+
return this._paneview.onDidAddView;
|
|
45
|
+
}
|
|
46
|
+
get onDidRemoveView() {
|
|
47
|
+
return this._paneview.onDidRemoveView;
|
|
48
|
+
}
|
|
49
|
+
set paneview(value) {
|
|
50
|
+
this._paneview = value;
|
|
51
|
+
this._disposable.value = new CompositeDisposable(this.paneview.onDidChange(() => {
|
|
52
|
+
this._onDidLayoutChange.fire(undefined);
|
|
53
|
+
}));
|
|
54
|
+
}
|
|
55
|
+
get paneview() {
|
|
56
|
+
return this._paneview;
|
|
57
|
+
}
|
|
58
|
+
get minimumSize() {
|
|
59
|
+
return this.paneview.minimumSize;
|
|
60
|
+
}
|
|
61
|
+
get maximumSize() {
|
|
62
|
+
return this.paneview.maximumSize;
|
|
63
|
+
}
|
|
64
|
+
get height() {
|
|
65
|
+
return this.paneview.orientation === Orientation.HORIZONTAL
|
|
66
|
+
? this.paneview.orthogonalSize
|
|
67
|
+
: this.paneview.size;
|
|
68
|
+
}
|
|
69
|
+
get width() {
|
|
70
|
+
return this.paneview.orientation === Orientation.HORIZONTAL
|
|
71
|
+
? this.paneview.size
|
|
72
|
+
: this.paneview.orthogonalSize;
|
|
73
|
+
}
|
|
74
|
+
get options() {
|
|
75
|
+
return this._options;
|
|
76
|
+
}
|
|
77
|
+
focus() {
|
|
78
|
+
//
|
|
79
|
+
}
|
|
80
|
+
updateOptions(options) {
|
|
81
|
+
this._options = Object.assign(Object.assign({}, this.options), options);
|
|
82
|
+
}
|
|
83
|
+
addPanel(options) {
|
|
84
|
+
const body = createComponent(options.id, options.component, this.options.components || {}, this.options.frameworkComponents || {}, this.options.frameworkWrapper
|
|
85
|
+
? {
|
|
86
|
+
createComponent: this.options.frameworkWrapper.body.createComponent,
|
|
87
|
+
}
|
|
88
|
+
: undefined);
|
|
89
|
+
let header;
|
|
90
|
+
if (options.headerComponent) {
|
|
91
|
+
header = createComponent(options.id, options.headerComponent, this.options.headerComponents || {}, this.options.headerframeworkComponents, this.options.frameworkWrapper
|
|
92
|
+
? {
|
|
93
|
+
createComponent: this.options.frameworkWrapper.header
|
|
94
|
+
.createComponent,
|
|
95
|
+
}
|
|
96
|
+
: undefined);
|
|
97
|
+
}
|
|
98
|
+
else {
|
|
99
|
+
header = new DefaultHeader();
|
|
100
|
+
}
|
|
101
|
+
const view = new PaneFramework({
|
|
102
|
+
id: options.id,
|
|
103
|
+
component: options.component,
|
|
104
|
+
headerComponent: options.headerComponent,
|
|
105
|
+
header,
|
|
106
|
+
body,
|
|
107
|
+
orientation: Orientation.VERTICAL,
|
|
108
|
+
isExpanded: !!options.isExpanded,
|
|
109
|
+
disableDnd: !!this.options.disableDnd,
|
|
110
|
+
});
|
|
111
|
+
const disposable = new CompositeDisposable(view.onDidDrop((event) => {
|
|
112
|
+
this._onDidDrop.fire(event);
|
|
113
|
+
}));
|
|
114
|
+
const size = typeof options.size === 'number' ? options.size : Sizing.Distribute;
|
|
115
|
+
const index = typeof options.index === 'number' ? options.index : undefined;
|
|
116
|
+
view.init({
|
|
117
|
+
params: options.params || {},
|
|
118
|
+
minimumBodySize: options.minimumBodySize,
|
|
119
|
+
maximumBodySize: options.maximumBodySize,
|
|
120
|
+
isExpanded: options.isExpanded,
|
|
121
|
+
title: options.title,
|
|
122
|
+
containerApi: new PaneviewApi(this),
|
|
123
|
+
});
|
|
124
|
+
this.paneview.addPane(view, size, index);
|
|
125
|
+
view.orientation = this.paneview.orientation;
|
|
126
|
+
return disposable;
|
|
127
|
+
}
|
|
128
|
+
getPanels() {
|
|
129
|
+
return this.paneview.getPanes();
|
|
130
|
+
}
|
|
131
|
+
removePanel(panel) {
|
|
132
|
+
const views = this.getPanels();
|
|
133
|
+
const index = views.findIndex((_) => _ === panel);
|
|
134
|
+
this.paneview.removePane(index);
|
|
135
|
+
}
|
|
136
|
+
movePanel(from, to) {
|
|
137
|
+
this.paneview.moveView(from, to);
|
|
138
|
+
}
|
|
139
|
+
getPanel(id) {
|
|
140
|
+
return this.getPanels().find((view) => view.id === id);
|
|
141
|
+
}
|
|
142
|
+
layout(width, height) {
|
|
143
|
+
const [size, orthogonalSize] = this.paneview.orientation === Orientation.HORIZONTAL
|
|
144
|
+
? [width, height]
|
|
145
|
+
: [height, width];
|
|
146
|
+
this.paneview.layout(size, orthogonalSize);
|
|
147
|
+
}
|
|
148
|
+
/**
|
|
149
|
+
* Resize the layout to fit the parent container
|
|
150
|
+
*/
|
|
151
|
+
resizeToFit() {
|
|
152
|
+
if (!this.element.parentElement) {
|
|
153
|
+
return;
|
|
154
|
+
}
|
|
155
|
+
const { width, height } = this.element.parentElement.getBoundingClientRect();
|
|
156
|
+
this.layout(width, height);
|
|
157
|
+
}
|
|
158
|
+
toJSON() {
|
|
159
|
+
const maximum = (value) => value === Number.MAX_SAFE_INTEGER ||
|
|
160
|
+
value === Number.POSITIVE_INFINITY
|
|
161
|
+
? undefined
|
|
162
|
+
: value;
|
|
163
|
+
const minimum = (value) => (value <= 0 ? undefined : value);
|
|
164
|
+
const views = this.paneview
|
|
165
|
+
.getPanes()
|
|
166
|
+
.map((view, i) => {
|
|
167
|
+
const size = this.paneview.getViewSize(i);
|
|
168
|
+
return {
|
|
169
|
+
size,
|
|
170
|
+
data: view.toJSON(),
|
|
171
|
+
minimumSize: minimum(view.minimumBodySize),
|
|
172
|
+
maximumSize: maximum(view.maximumBodySize),
|
|
173
|
+
expanded: view.isExpanded(),
|
|
174
|
+
};
|
|
175
|
+
});
|
|
176
|
+
return {
|
|
177
|
+
views,
|
|
178
|
+
size: this.paneview.size,
|
|
179
|
+
};
|
|
180
|
+
}
|
|
181
|
+
fromJSON(serializedPaneview, deferComponentLayout) {
|
|
182
|
+
const { views, size } = serializedPaneview;
|
|
183
|
+
const queue = [];
|
|
184
|
+
this.paneview.dispose();
|
|
185
|
+
this.paneview = new Paneview(this.element, {
|
|
186
|
+
orientation: Orientation.VERTICAL,
|
|
187
|
+
descriptor: {
|
|
188
|
+
size,
|
|
189
|
+
views: views.map((view) => {
|
|
190
|
+
const data = view.data;
|
|
191
|
+
const body = createComponent(data.id, data.component, this.options.components || {}, this.options.frameworkComponents || {}, this.options.frameworkWrapper
|
|
192
|
+
? {
|
|
193
|
+
createComponent: this.options.frameworkWrapper.body
|
|
194
|
+
.createComponent,
|
|
195
|
+
}
|
|
196
|
+
: undefined);
|
|
197
|
+
let header;
|
|
198
|
+
if (data.headerComponent) {
|
|
199
|
+
header = createComponent(data.id, data.headerComponent, this.options.headerComponents || {}, this.options.headerframeworkComponents || {}, this.options.frameworkWrapper
|
|
200
|
+
? {
|
|
201
|
+
createComponent: this.options.frameworkWrapper.header
|
|
202
|
+
.createComponent,
|
|
203
|
+
}
|
|
204
|
+
: undefined);
|
|
205
|
+
}
|
|
206
|
+
else {
|
|
207
|
+
header = new DefaultHeader();
|
|
208
|
+
}
|
|
209
|
+
const panel = new PaneFramework({
|
|
210
|
+
id: data.id,
|
|
211
|
+
component: data.component,
|
|
212
|
+
headerComponent: data.headerComponent,
|
|
213
|
+
header,
|
|
214
|
+
body,
|
|
215
|
+
orientation: Orientation.VERTICAL,
|
|
216
|
+
isExpanded: !!view.expanded,
|
|
217
|
+
disableDnd: !!this.options.disableDnd,
|
|
218
|
+
});
|
|
219
|
+
panel.onDidDrop((event) => {
|
|
220
|
+
this._onDidDrop.fire(event);
|
|
221
|
+
});
|
|
222
|
+
queue.push(() => {
|
|
223
|
+
panel.init({
|
|
224
|
+
params: data.params || {},
|
|
225
|
+
minimumBodySize: view.minimumSize,
|
|
226
|
+
maximumBodySize: view.maximumSize,
|
|
227
|
+
title: data.title,
|
|
228
|
+
isExpanded: !!view.expanded,
|
|
229
|
+
containerApi: new PaneviewApi(this),
|
|
230
|
+
});
|
|
231
|
+
panel.orientation = this.paneview.orientation;
|
|
232
|
+
});
|
|
233
|
+
return { size: view.size, view: panel };
|
|
234
|
+
}),
|
|
235
|
+
},
|
|
236
|
+
});
|
|
237
|
+
this.layout(this.width, this.height);
|
|
238
|
+
if (deferComponentLayout) {
|
|
239
|
+
setTimeout(() => {
|
|
240
|
+
queue.forEach((f) => f());
|
|
241
|
+
}, 0);
|
|
242
|
+
}
|
|
243
|
+
else {
|
|
244
|
+
queue.forEach((f) => f());
|
|
245
|
+
}
|
|
246
|
+
}
|
|
247
|
+
}
|
|
@@ -1,85 +1,85 @@
|
|
|
1
|
-
import { PaneviewApi } from '../api/component.api';
|
|
2
|
-
import { PaneviewPanelApiImpl } from '../api/paneviewPanelApi';
|
|
3
|
-
import { Event } from '../events';
|
|
4
|
-
import { BasePanelView, BasePanelViewExported, BasePanelViewState } from '../gridview/basePanelView';
|
|
5
|
-
import { IDisposable } from '../lifecycle';
|
|
6
|
-
import { IFrameworkPart, PanelInitParameters, PanelUpdateEvent } from '../panel/types';
|
|
7
|
-
import { IView, Orientation } from '../splitview/core/splitview';
|
|
8
|
-
export interface PanePanelViewState extends BasePanelViewState {
|
|
9
|
-
headerComponent?: string;
|
|
10
|
-
title: string;
|
|
11
|
-
}
|
|
12
|
-
export interface PanePanelInitParameter extends PanelInitParameters {
|
|
13
|
-
minimumBodySize?: number;
|
|
14
|
-
maximumBodySize?: number;
|
|
15
|
-
isExpanded?: boolean;
|
|
16
|
-
title: string;
|
|
17
|
-
containerApi: PaneviewApi;
|
|
18
|
-
}
|
|
19
|
-
export interface PanePanelComponentInitParameter extends PanePanelInitParameter {
|
|
20
|
-
api: PaneviewPanelApiImpl;
|
|
21
|
-
}
|
|
22
|
-
export interface IPaneBodyPart extends IDisposable {
|
|
23
|
-
readonly element: HTMLElement;
|
|
24
|
-
update(params: PanelUpdateEvent): void;
|
|
25
|
-
init(parameters: PanePanelComponentInitParameter): void;
|
|
26
|
-
}
|
|
27
|
-
export interface IPaneHeaderPart extends IDisposable {
|
|
28
|
-
readonly element: HTMLElement;
|
|
29
|
-
update(params: PanelUpdateEvent): void;
|
|
30
|
-
init(parameters: PanePanelComponentInitParameter): void;
|
|
31
|
-
}
|
|
32
|
-
export interface IPaneview extends IView {
|
|
33
|
-
onDidChangeExpansionState: Event<boolean>;
|
|
34
|
-
}
|
|
35
|
-
export interface IPaneviewPanel extends BasePanelViewExported<PaneviewPanelApiImpl> {
|
|
36
|
-
readonly minimumSize: number;
|
|
37
|
-
readonly maximumSize: number;
|
|
38
|
-
readonly minimumBodySize: number;
|
|
39
|
-
readonly maximumBodySize: number;
|
|
40
|
-
isExpanded(): boolean;
|
|
41
|
-
setExpanded(isExpanded: boolean): void;
|
|
42
|
-
}
|
|
43
|
-
export declare abstract class PaneviewPanel extends BasePanelView<PaneviewPanelApiImpl> implements IPaneview, IPaneviewPanel {
|
|
44
|
-
private readonly headerComponent;
|
|
45
|
-
private _onDidChangeExpansionState;
|
|
46
|
-
onDidChangeExpansionState: Event<boolean>;
|
|
47
|
-
private readonly _onDidChange;
|
|
48
|
-
readonly onDidChange: Event<number | undefined>;
|
|
49
|
-
private headerSize;
|
|
50
|
-
private _orthogonalSize;
|
|
51
|
-
private _size;
|
|
52
|
-
private _minimumBodySize;
|
|
53
|
-
private _maximumBodySize;
|
|
54
|
-
private _isExpanded;
|
|
55
|
-
protected header?: HTMLElement;
|
|
56
|
-
protected body?: HTMLElement;
|
|
57
|
-
private bodyPart?;
|
|
58
|
-
private headerPart?;
|
|
59
|
-
private expandedSize;
|
|
60
|
-
private animationTimer;
|
|
61
|
-
private _orientation;
|
|
62
|
-
set orientation(value: Orientation);
|
|
63
|
-
get orientation(): Orientation;
|
|
64
|
-
get minimumSize(): number;
|
|
65
|
-
get maximumSize(): number;
|
|
66
|
-
get size(): number;
|
|
67
|
-
get orthogonalSize(): number;
|
|
68
|
-
set orthogonalSize(size: number);
|
|
69
|
-
get minimumBodySize(): number;
|
|
70
|
-
set minimumBodySize(value: number);
|
|
71
|
-
get maximumBodySize(): number;
|
|
72
|
-
set maximumBodySize(value: number);
|
|
73
|
-
constructor(id: string, component: string, headerComponent: string | undefined, orientation: Orientation, isExpanded: boolean);
|
|
74
|
-
setVisible(isVisible: boolean): void;
|
|
75
|
-
setActive(isActive: boolean): void;
|
|
76
|
-
isExpanded(): boolean;
|
|
77
|
-
setExpanded(expanded: boolean): void;
|
|
78
|
-
layout(size: number, orthogonalSize: number): void;
|
|
79
|
-
init(parameters: PanePanelInitParameter): void;
|
|
80
|
-
toJSON(): PanePanelViewState;
|
|
81
|
-
private renderOnce;
|
|
82
|
-
getComponent(): IFrameworkPart;
|
|
83
|
-
protected abstract getBodyComponent(): IPaneBodyPart;
|
|
84
|
-
protected abstract getHeaderComponent(): IPaneHeaderPart;
|
|
85
|
-
}
|
|
1
|
+
import { PaneviewApi } from '../api/component.api';
|
|
2
|
+
import { PaneviewPanelApiImpl } from '../api/paneviewPanelApi';
|
|
3
|
+
import { Event } from '../events';
|
|
4
|
+
import { BasePanelView, BasePanelViewExported, BasePanelViewState } from '../gridview/basePanelView';
|
|
5
|
+
import { IDisposable } from '../lifecycle';
|
|
6
|
+
import { IFrameworkPart, PanelInitParameters, PanelUpdateEvent } from '../panel/types';
|
|
7
|
+
import { IView, Orientation } from '../splitview/core/splitview';
|
|
8
|
+
export interface PanePanelViewState extends BasePanelViewState {
|
|
9
|
+
headerComponent?: string;
|
|
10
|
+
title: string;
|
|
11
|
+
}
|
|
12
|
+
export interface PanePanelInitParameter extends PanelInitParameters {
|
|
13
|
+
minimumBodySize?: number;
|
|
14
|
+
maximumBodySize?: number;
|
|
15
|
+
isExpanded?: boolean;
|
|
16
|
+
title: string;
|
|
17
|
+
containerApi: PaneviewApi;
|
|
18
|
+
}
|
|
19
|
+
export interface PanePanelComponentInitParameter extends PanePanelInitParameter {
|
|
20
|
+
api: PaneviewPanelApiImpl;
|
|
21
|
+
}
|
|
22
|
+
export interface IPaneBodyPart extends IDisposable {
|
|
23
|
+
readonly element: HTMLElement;
|
|
24
|
+
update(params: PanelUpdateEvent): void;
|
|
25
|
+
init(parameters: PanePanelComponentInitParameter): void;
|
|
26
|
+
}
|
|
27
|
+
export interface IPaneHeaderPart extends IDisposable {
|
|
28
|
+
readonly element: HTMLElement;
|
|
29
|
+
update(params: PanelUpdateEvent): void;
|
|
30
|
+
init(parameters: PanePanelComponentInitParameter): void;
|
|
31
|
+
}
|
|
32
|
+
export interface IPaneview extends IView {
|
|
33
|
+
onDidChangeExpansionState: Event<boolean>;
|
|
34
|
+
}
|
|
35
|
+
export interface IPaneviewPanel extends BasePanelViewExported<PaneviewPanelApiImpl> {
|
|
36
|
+
readonly minimumSize: number;
|
|
37
|
+
readonly maximumSize: number;
|
|
38
|
+
readonly minimumBodySize: number;
|
|
39
|
+
readonly maximumBodySize: number;
|
|
40
|
+
isExpanded(): boolean;
|
|
41
|
+
setExpanded(isExpanded: boolean): void;
|
|
42
|
+
}
|
|
43
|
+
export declare abstract class PaneviewPanel extends BasePanelView<PaneviewPanelApiImpl> implements IPaneview, IPaneviewPanel {
|
|
44
|
+
private readonly headerComponent;
|
|
45
|
+
private _onDidChangeExpansionState;
|
|
46
|
+
onDidChangeExpansionState: Event<boolean>;
|
|
47
|
+
private readonly _onDidChange;
|
|
48
|
+
readonly onDidChange: Event<number | undefined>;
|
|
49
|
+
private headerSize;
|
|
50
|
+
private _orthogonalSize;
|
|
51
|
+
private _size;
|
|
52
|
+
private _minimumBodySize;
|
|
53
|
+
private _maximumBodySize;
|
|
54
|
+
private _isExpanded;
|
|
55
|
+
protected header?: HTMLElement;
|
|
56
|
+
protected body?: HTMLElement;
|
|
57
|
+
private bodyPart?;
|
|
58
|
+
private headerPart?;
|
|
59
|
+
private expandedSize;
|
|
60
|
+
private animationTimer;
|
|
61
|
+
private _orientation;
|
|
62
|
+
set orientation(value: Orientation);
|
|
63
|
+
get orientation(): Orientation;
|
|
64
|
+
get minimumSize(): number;
|
|
65
|
+
get maximumSize(): number;
|
|
66
|
+
get size(): number;
|
|
67
|
+
get orthogonalSize(): number;
|
|
68
|
+
set orthogonalSize(size: number);
|
|
69
|
+
get minimumBodySize(): number;
|
|
70
|
+
set minimumBodySize(value: number);
|
|
71
|
+
get maximumBodySize(): number;
|
|
72
|
+
set maximumBodySize(value: number);
|
|
73
|
+
constructor(id: string, component: string, headerComponent: string | undefined, orientation: Orientation, isExpanded: boolean);
|
|
74
|
+
setVisible(isVisible: boolean): void;
|
|
75
|
+
setActive(isActive: boolean): void;
|
|
76
|
+
isExpanded(): boolean;
|
|
77
|
+
setExpanded(expanded: boolean): void;
|
|
78
|
+
layout(size: number, orthogonalSize: number): void;
|
|
79
|
+
init(parameters: PanePanelInitParameter): void;
|
|
80
|
+
toJSON(): PanePanelViewState;
|
|
81
|
+
private renderOnce;
|
|
82
|
+
getComponent(): IFrameworkPart;
|
|
83
|
+
protected abstract getBodyComponent(): IPaneBodyPart;
|
|
84
|
+
protected abstract getHeaderComponent(): IPaneHeaderPart;
|
|
85
|
+
}
|