dockview 1.5.1 → 1.5.2
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 +52 -52
- 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 +144 -144
- package/dist/cjs/api/component.api.js +571 -571
- package/dist/cjs/api/gridviewPanelApi.d.ts +36 -36
- package/dist/cjs/api/gridviewPanelApi.js +47 -47
- package/dist/cjs/api/groupPanelApi.d.ts +34 -34
- package/dist/cjs/api/groupPanelApi.js +85 -85
- package/dist/cjs/api/panelApi.d.ts +81 -81
- package/dist/cjs/api/panelApi.js +121 -121
- package/dist/cjs/api/paneviewPanelApi.d.ts +26 -26
- package/dist/cjs/api/paneviewPanelApi.js +57 -57
- package/dist/cjs/api/splitviewPanelApi.d.ts +32 -32
- package/dist/cjs/api/splitviewPanelApi.js +47 -47
- 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 +31 -31
- package/dist/cjs/dnd/dataTransfer.js +100 -100
- package/dist/cjs/dnd/dnd.d.ts +27 -27
- package/dist/cjs/dnd/dnd.js +64 -64
- package/dist/cjs/dnd/droptarget.d.ts +37 -37
- package/dist/cjs/dnd/droptarget.js +201 -201
- package/dist/cjs/dockview/components/tab/defaultTab.d.ts +27 -27
- package/dist/cjs/dockview/components/tab/defaultTab.js +121 -121
- package/dist/cjs/dockview/components/watermark/watermark.d.ts +20 -20
- package/dist/cjs/dockview/components/watermark/watermark.js +101 -101
- package/dist/cjs/dockview/defaultGroupPanelView.d.ts +29 -29
- package/dist/cjs/dockview/defaultGroupPanelView.js +68 -68
- package/dist/cjs/dockview/deserializer.d.ts +5 -5
- package/dist/cjs/dockview/deserializer.js +2 -2
- package/dist/cjs/dockview/dockviewComponent.d.ts +125 -125
- package/dist/cjs/dockview/dockviewComponent.js +614 -614
- package/dist/cjs/dockview/dockviewComponent.js.map +1 -1
- package/dist/cjs/dockview/dockviewGroupPanel.d.ts +31 -31
- package/dist/cjs/dockview/dockviewGroupPanel.js +156 -156
- package/dist/cjs/dockview/options.d.ts +88 -88
- 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 +30 -30
- package/dist/cjs/events.js +129 -129
- package/dist/cjs/gridview/baseComponentGridview.d.ts +87 -87
- package/dist/cjs/gridview/baseComponentGridview.js +279 -279
- package/dist/cjs/gridview/basePanelView.d.ts +43 -43
- package/dist/cjs/gridview/basePanelView.js +123 -123
- package/dist/cjs/gridview/branchNode.d.ts +49 -46
- package/dist/cjs/gridview/branchNode.js +342 -342
- package/dist/cjs/gridview/branchNode.js.map +1 -1
- package/dist/cjs/gridview/gridview.d.ts +126 -123
- package/dist/cjs/gridview/gridview.js +479 -479
- package/dist/cjs/gridview/gridview.js.map +1 -1
- package/dist/cjs/gridview/gridviewComponent.d.ts +85 -85
- package/dist/cjs/gridview/gridviewComponent.js +325 -325
- package/dist/cjs/gridview/gridviewPanel.d.ts +60 -60
- package/dist/cjs/gridview/gridviewPanel.js +202 -202
- package/dist/cjs/gridview/leafNode.d.ts +34 -31
- package/dist/cjs/gridview/leafNode.js +170 -165
- package/dist/cjs/gridview/leafNode.js.map +1 -1
- 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 +32 -32
- package/dist/cjs/groupview/groupPanel.js +2 -2
- package/dist/cjs/groupview/groupview.d.ts +177 -177
- package/dist/cjs/groupview/groupview.js +589 -589
- package/dist/cjs/groupview/groupviewPanel.d.ts +35 -35
- package/dist/cjs/groupview/groupviewPanel.js +128 -128
- package/dist/cjs/groupview/panel/content.d.ts +30 -30
- package/dist/cjs/groupview/panel/content.js +100 -100
- package/dist/cjs/groupview/tab.d.ts +41 -41
- package/dist/cjs/groupview/tab.js +120 -120
- package/dist/cjs/groupview/titlebar/tabsContainer.d.ts +68 -68
- package/dist/cjs/groupview/titlebar/tabsContainer.js +258 -258
- package/dist/cjs/groupview/types.d.ts +52 -52
- 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/index.d.ts +30 -30
- package/dist/cjs/index.js +46 -46
- package/dist/cjs/lifecycle.d.ts +22 -22
- package/dist/cjs/lifecycle.js +88 -88
- package/dist/cjs/math.d.ts +4 -4
- package/dist/cjs/math.js +15 -15
- package/dist/cjs/panel/componentFactory.d.ts +8 -8
- package/dist/cjs/panel/componentFactory.js +30 -30
- package/dist/cjs/panel/types.d.ts +33 -33
- package/dist/cjs/panel/types.js +2 -2
- package/dist/cjs/paneview/defaultPaneviewHeader.d.ts +21 -21
- package/dist/cjs/paneview/defaultPaneviewHeader.js +90 -90
- package/dist/cjs/paneview/draggablePaneviewPanel.d.ts +19 -19
- package/dist/cjs/paneview/draggablePaneviewPanel.js +129 -129
- package/dist/cjs/paneview/options.d.ts +27 -27
- package/dist/cjs/paneview/options.js +2 -2
- package/dist/cjs/paneview/paneview.d.ts +40 -40
- package/dist/cjs/paneview/paneview.js +201 -201
- package/dist/cjs/paneview/paneviewComponent.d.ts +129 -129
- package/dist/cjs/paneview/paneviewComponent.js +394 -394
- package/dist/cjs/paneview/paneviewPanel.d.ts +92 -89
- package/dist/cjs/paneview/paneviewPanel.js +274 -274
- package/dist/cjs/paneview/paneviewPanel.js.map +1 -1
- package/dist/cjs/react/deserializer.d.ts +9 -9
- package/dist/cjs/react/deserializer.js +43 -43
- package/dist/cjs/react/dockview/defaultTab.d.ts +4 -4
- package/dist/cjs/react/dockview/defaultTab.js +72 -72
- package/dist/cjs/react/dockview/dockview.d.ts +34 -34
- package/dist/cjs/react/dockview/dockview.js +212 -212
- package/dist/cjs/react/dockview/groupControlsRenderer.d.ts +43 -43
- package/dist/cjs/react/dockview/groupControlsRenderer.js +86 -86
- package/dist/cjs/react/dockview/reactContentPart.d.ts +30 -30
- package/dist/cjs/react/dockview/reactContentPart.js +58 -58
- package/dist/cjs/react/dockview/reactHeaderPart.d.ts +26 -26
- package/dist/cjs/react/dockview/reactHeaderPart.js +55 -55
- package/dist/cjs/react/dockview/reactWatermarkPart.d.ts +29 -29
- package/dist/cjs/react/dockview/reactWatermarkPart.js +65 -65
- package/dist/cjs/react/dockview/v2/reactContentRenderer.d.ts +29 -29
- package/dist/cjs/react/dockview/v2/reactContentRenderer.js +87 -87
- 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 +112 -112
- package/dist/cjs/react/gridview/view.d.ts +11 -11
- package/dist/cjs/react/gridview/view.js +40 -40
- package/dist/cjs/react/index.d.ts +9 -9
- package/dist/cjs/react/index.js +23 -23
- package/dist/cjs/react/paneview/paneview.d.ts +30 -30
- package/dist/cjs/react/paneview/paneview.js +155 -155
- 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 +36 -36
- package/dist/cjs/react/react.js +194 -194
- package/dist/cjs/react/splitview/splitview.d.ts +24 -24
- package/dist/cjs/react/splitview/splitview.js +108 -108
- package/dist/cjs/react/splitview/view.d.ts +10 -10
- package/dist/cjs/react/splitview/view.js +40 -40
- package/dist/cjs/react/svg.d.ts +3 -3
- package/dist/cjs/react/svg.js +35 -35
- 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 +127 -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 +101 -101
- package/dist/cjs/splitview/splitviewComponent.js +373 -373
- package/dist/cjs/splitview/splitviewPanel.d.ts +45 -42
- package/dist/cjs/splitview/splitviewPanel.js +178 -178
- package/dist/cjs/splitview/splitviewPanel.js.map +1 -1
- package/dist/cjs/svg.d.ts +3 -3
- package/dist/cjs/svg.js +43 -43
- package/dist/cjs/types.d.ts +7 -7
- package/dist/cjs/types.js +2 -2
- package/dist/dockview.amd.js +6737 -6732
- package/dist/dockview.amd.min.js +2 -2
- package/dist/dockview.amd.min.noStyle.js +2 -2
- package/dist/dockview.amd.noStyle.js +6743 -6738
- package/dist/dockview.cjs.js +6736 -6731
- package/dist/dockview.esm.js +6731 -6726
- package/dist/dockview.esm.min.js +2 -2
- package/dist/dockview.js +6737 -6732
- package/dist/dockview.min.js +2 -2
- package/dist/dockview.min.noStyle.js +2 -2
- package/dist/dockview.noStyle.js +6743 -6738
- 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 +144 -144
- package/dist/esm/api/component.api.js +326 -326
- package/dist/esm/api/gridviewPanelApi.d.ts +36 -36
- package/dist/esm/api/gridviewPanelApi.js +25 -25
- package/dist/esm/api/groupPanelApi.d.ts +34 -34
- package/dist/esm/api/groupPanelApi.js +50 -50
- package/dist/esm/api/panelApi.d.ts +81 -81
- package/dist/esm/api/panelApi.js +79 -79
- package/dist/esm/api/paneviewPanelApi.d.ts +26 -26
- package/dist/esm/api/paneviewPanelApi.js +27 -27
- package/dist/esm/api/splitviewPanelApi.d.ts +32 -32
- package/dist/esm/api/splitviewPanelApi.js +25 -25
- 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 +31 -31
- package/dist/esm/dnd/dataTransfer.js +69 -69
- package/dist/esm/dnd/dnd.d.ts +27 -27
- package/dist/esm/dnd/dnd.js +41 -41
- package/dist/esm/dnd/droptarget.d.ts +37 -37
- package/dist/esm/dnd/droptarget.js +167 -167
- package/dist/esm/dockview/components/tab/defaultTab.d.ts +27 -27
- package/dist/esm/dockview/components/tab/defaultTab.js +79 -79
- package/dist/esm/dockview/components/watermark/watermark.d.ts +20 -20
- package/dist/esm/dockview/components/watermark/watermark.js +70 -70
- package/dist/esm/dockview/defaultGroupPanelView.d.ts +29 -29
- package/dist/esm/dockview/defaultGroupPanelView.js +44 -44
- package/dist/esm/dockview/deserializer.d.ts +5 -5
- package/dist/esm/dockview/deserializer.js +1 -1
- package/dist/esm/dockview/dockviewComponent.d.ts +125 -125
- package/dist/esm/dockview/dockviewComponent.js +468 -468
- package/dist/esm/dockview/dockviewGroupPanel.d.ts +31 -31
- package/dist/esm/dockview/dockviewGroupPanel.js +107 -107
- package/dist/esm/dockview/options.d.ts +88 -88
- 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 +30 -30
- package/dist/esm/events.js +88 -88
- package/dist/esm/gridview/baseComponentGridview.d.ts +87 -87
- package/dist/esm/gridview/baseComponentGridview.js +189 -189
- package/dist/esm/gridview/basePanelView.d.ts +43 -43
- package/dist/esm/gridview/basePanelView.js +74 -74
- package/dist/esm/gridview/branchNode.d.ts +49 -46
- package/dist/esm/gridview/branchNode.js +218 -218
- package/dist/esm/gridview/gridview.d.ts +126 -123
- package/dist/esm/gridview/gridview.js +397 -397
- package/dist/esm/gridview/gridviewComponent.d.ts +85 -85
- package/dist/esm/gridview/gridviewComponent.js +238 -238
- package/dist/esm/gridview/gridviewPanel.d.ts +60 -60
- package/dist/esm/gridview/gridviewPanel.js +138 -138
- package/dist/esm/gridview/leafNode.d.ts +34 -31
- package/dist/esm/gridview/leafNode.js +103 -98
- 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 +32 -32
- package/dist/esm/groupview/groupPanel.js +1 -1
- package/dist/esm/groupview/groupview.d.ts +177 -177
- package/dist/esm/groupview/groupview.js +444 -444
- package/dist/esm/groupview/groupviewPanel.d.ts +35 -35
- package/dist/esm/groupview/groupviewPanel.js +61 -61
- package/dist/esm/groupview/panel/content.d.ts +30 -30
- package/dist/esm/groupview/panel/content.js +73 -73
- package/dist/esm/groupview/tab.d.ts +41 -41
- package/dist/esm/groupview/tab.js +90 -90
- package/dist/esm/groupview/titlebar/tabsContainer.d.ts +68 -68
- package/dist/esm/groupview/titlebar/tabsContainer.js +190 -190
- package/dist/esm/groupview/types.d.ts +52 -52
- 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 +30 -30
- package/dist/esm/index.js +23 -23
- package/dist/esm/lifecycle.d.ts +22 -22
- package/dist/esm/lifecycle.js +39 -39
- 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 +33 -33
- package/dist/esm/panel/types.js +1 -1
- package/dist/esm/paneview/defaultPaneviewHeader.d.ts +21 -21
- package/dist/esm/paneview/defaultPaneviewHeader.js +63 -63
- package/dist/esm/paneview/draggablePaneviewPanel.d.ts +19 -19
- package/dist/esm/paneview/draggablePaneviewPanel.js +90 -90
- package/dist/esm/paneview/options.d.ts +27 -27
- package/dist/esm/paneview/options.js +1 -1
- package/dist/esm/paneview/paneview.d.ts +40 -40
- package/dist/esm/paneview/paneview.js +145 -145
- package/dist/esm/paneview/paneviewComponent.d.ts +129 -129
- package/dist/esm/paneview/paneviewComponent.js +270 -270
- package/dist/esm/paneview/paneviewPanel.d.ts +92 -89
- package/dist/esm/paneview/paneviewPanel.js +191 -191
- package/dist/esm/react/deserializer.d.ts +9 -9
- package/dist/esm/react/deserializer.js +38 -38
- package/dist/esm/react/dockview/defaultTab.d.ts +4 -4
- package/dist/esm/react/dockview/defaultTab.js +34 -34
- package/dist/esm/react/dockview/dockview.d.ts +34 -34
- package/dist/esm/react/dockview/dockview.js +157 -157
- package/dist/esm/react/dockview/groupControlsRenderer.d.ts +43 -43
- package/dist/esm/react/dockview/groupControlsRenderer.js +68 -68
- package/dist/esm/react/dockview/reactContentPart.d.ts +30 -30
- package/dist/esm/react/dockview/reactContentPart.js +49 -49
- package/dist/esm/react/dockview/reactHeaderPart.d.ts +26 -26
- package/dist/esm/react/dockview/reactHeaderPart.js +46 -46
- package/dist/esm/react/dockview/reactWatermarkPart.d.ts +29 -29
- package/dist/esm/react/dockview/reactWatermarkPart.js +55 -55
- package/dist/esm/react/dockview/v2/reactContentRenderer.d.ts +29 -29
- package/dist/esm/react/dockview/v2/reactContentRenderer.js +69 -69
- 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 +70 -70
- package/dist/esm/react/gridview/view.d.ts +11 -11
- package/dist/esm/react/gridview/view.js +18 -18
- package/dist/esm/react/index.d.ts +9 -9
- package/dist/esm/react/index.js +7 -7
- package/dist/esm/react/paneview/paneview.d.ts +30 -30
- package/dist/esm/react/paneview/paneview.js +100 -100
- 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 +36 -36
- package/dist/esm/react/react.js +125 -125
- package/dist/esm/react/splitview/splitview.d.ts +24 -24
- package/dist/esm/react/splitview/splitview.js +66 -66
- package/dist/esm/react/splitview/view.d.ts +10 -10
- package/dist/esm/react/splitview/view.js +18 -18
- package/dist/esm/react/svg.d.ts +3 -3
- package/dist/esm/react/svg.js +7 -7
- 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 +127 -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 +101 -101
- package/dist/esm/splitview/splitviewComponent.js +249 -249
- package/dist/esm/splitview/splitviewPanel.d.ts +45 -42
- package/dist/esm/splitview/splitviewPanel.js +107 -107
- package/dist/esm/svg.d.ts +3 -3
- package/dist/esm/svg.js +31 -31
- package/dist/esm/types.d.ts +7 -7
- package/dist/esm/types.js +1 -1
- package/package.json +2 -2
|
@@ -1,35 +1,35 @@
|
|
|
1
|
-
import { IFrameworkPart } from '../panel/types';
|
|
2
|
-
import { DockviewComponent } from '../dockview/dockviewComponent';
|
|
3
|
-
import { GridviewPanelApi } from '../api/gridviewPanelApi';
|
|
4
|
-
import { Groupview, GroupOptions, IHeader } from './groupview';
|
|
5
|
-
import { GridviewPanel, IGridviewPanel } from '../gridview/gridviewPanel';
|
|
6
|
-
import { IDockviewPanel } from './groupPanel';
|
|
7
|
-
export interface IGroupviewPanel extends IGridviewPanel {
|
|
8
|
-
model: Groupview;
|
|
9
|
-
locked: boolean;
|
|
10
|
-
readonly size: number;
|
|
11
|
-
readonly panels: IDockviewPanel[];
|
|
12
|
-
readonly activePanel: IDockviewPanel | undefined;
|
|
13
|
-
}
|
|
14
|
-
export declare type IGroupviewPanelPublic = IGroupviewPanel;
|
|
15
|
-
export declare type GroupviewPanelApi = GridviewPanelApi;
|
|
16
|
-
export declare class GroupPanel extends GridviewPanel implements IGroupviewPanel {
|
|
17
|
-
private readonly _model;
|
|
18
|
-
get panels(): IDockviewPanel[];
|
|
19
|
-
get activePanel(): IDockviewPanel | undefined;
|
|
20
|
-
get size(): number;
|
|
21
|
-
get model(): Groupview;
|
|
22
|
-
get minimumHeight(): number;
|
|
23
|
-
get maximumHeight(): number;
|
|
24
|
-
get minimumWidth(): number;
|
|
25
|
-
get maximumWidth(): number;
|
|
26
|
-
get locked(): boolean;
|
|
27
|
-
set locked(value: boolean);
|
|
28
|
-
get header(): IHeader;
|
|
29
|
-
constructor(accessor: DockviewComponent, id: string, options: GroupOptions);
|
|
30
|
-
initialize(): void;
|
|
31
|
-
setActive(isActive: boolean): void;
|
|
32
|
-
layout(width: number, height: number): void;
|
|
33
|
-
getComponent(): IFrameworkPart;
|
|
34
|
-
toJSON(): any;
|
|
35
|
-
}
|
|
1
|
+
import { IFrameworkPart } from '../panel/types';
|
|
2
|
+
import { DockviewComponent } from '../dockview/dockviewComponent';
|
|
3
|
+
import { GridviewPanelApi } from '../api/gridviewPanelApi';
|
|
4
|
+
import { Groupview, GroupOptions, IHeader } from './groupview';
|
|
5
|
+
import { GridviewPanel, IGridviewPanel } from '../gridview/gridviewPanel';
|
|
6
|
+
import { IDockviewPanel } from './groupPanel';
|
|
7
|
+
export interface IGroupviewPanel extends IGridviewPanel {
|
|
8
|
+
model: Groupview;
|
|
9
|
+
locked: boolean;
|
|
10
|
+
readonly size: number;
|
|
11
|
+
readonly panels: IDockviewPanel[];
|
|
12
|
+
readonly activePanel: IDockviewPanel | undefined;
|
|
13
|
+
}
|
|
14
|
+
export declare type IGroupviewPanelPublic = IGroupviewPanel;
|
|
15
|
+
export declare type GroupviewPanelApi = GridviewPanelApi;
|
|
16
|
+
export declare class GroupPanel extends GridviewPanel implements IGroupviewPanel {
|
|
17
|
+
private readonly _model;
|
|
18
|
+
get panels(): IDockviewPanel[];
|
|
19
|
+
get activePanel(): IDockviewPanel | undefined;
|
|
20
|
+
get size(): number;
|
|
21
|
+
get model(): Groupview;
|
|
22
|
+
get minimumHeight(): number;
|
|
23
|
+
get maximumHeight(): number;
|
|
24
|
+
get minimumWidth(): number;
|
|
25
|
+
get maximumWidth(): number;
|
|
26
|
+
get locked(): boolean;
|
|
27
|
+
set locked(value: boolean);
|
|
28
|
+
get header(): IHeader;
|
|
29
|
+
constructor(accessor: DockviewComponent, id: string, options: GroupOptions);
|
|
30
|
+
initialize(): void;
|
|
31
|
+
setActive(isActive: boolean): void;
|
|
32
|
+
layout(width: number, height: number): void;
|
|
33
|
+
getComponent(): IFrameworkPart;
|
|
34
|
+
toJSON(): any;
|
|
35
|
+
}
|
|
@@ -1,61 +1,61 @@
|
|
|
1
|
-
import { GridviewPanelApiImpl, } from '../api/gridviewPanelApi';
|
|
2
|
-
import { Groupview } from './groupview';
|
|
3
|
-
import { GridviewPanel } from '../gridview/gridviewPanel';
|
|
4
|
-
class GroupviewApi extends GridviewPanelApiImpl {
|
|
5
|
-
}
|
|
6
|
-
export class GroupPanel extends GridviewPanel {
|
|
7
|
-
constructor(accessor, id, options) {
|
|
8
|
-
super(id, 'groupview_default', new GroupviewApi(id));
|
|
9
|
-
this._model = new Groupview(this.element, accessor, id, options, this);
|
|
10
|
-
}
|
|
11
|
-
get panels() {
|
|
12
|
-
return this._model.panels;
|
|
13
|
-
}
|
|
14
|
-
get activePanel() {
|
|
15
|
-
return this._model.activePanel;
|
|
16
|
-
}
|
|
17
|
-
get size() {
|
|
18
|
-
return this._model.size;
|
|
19
|
-
}
|
|
20
|
-
get model() {
|
|
21
|
-
return this._model;
|
|
22
|
-
}
|
|
23
|
-
get minimumHeight() {
|
|
24
|
-
return this._model.minimumHeight;
|
|
25
|
-
}
|
|
26
|
-
get maximumHeight() {
|
|
27
|
-
return this._model.maximumHeight;
|
|
28
|
-
}
|
|
29
|
-
get minimumWidth() {
|
|
30
|
-
return this._model.minimumWidth;
|
|
31
|
-
}
|
|
32
|
-
get maximumWidth() {
|
|
33
|
-
return this._model.maximumWidth;
|
|
34
|
-
}
|
|
35
|
-
get locked() {
|
|
36
|
-
return this._model.locked;
|
|
37
|
-
}
|
|
38
|
-
set locked(value) {
|
|
39
|
-
this._model.locked = value;
|
|
40
|
-
}
|
|
41
|
-
get header() {
|
|
42
|
-
return this._model.header;
|
|
43
|
-
}
|
|
44
|
-
initialize() {
|
|
45
|
-
this._model.initialize();
|
|
46
|
-
}
|
|
47
|
-
setActive(isActive) {
|
|
48
|
-
super.setActive(isActive);
|
|
49
|
-
this.model.setActive(isActive);
|
|
50
|
-
}
|
|
51
|
-
layout(width, height) {
|
|
52
|
-
super.layout(width, height);
|
|
53
|
-
this.model.layout(width, height);
|
|
54
|
-
}
|
|
55
|
-
getComponent() {
|
|
56
|
-
return this._model;
|
|
57
|
-
}
|
|
58
|
-
toJSON() {
|
|
59
|
-
return this.model.toJSON();
|
|
60
|
-
}
|
|
61
|
-
}
|
|
1
|
+
import { GridviewPanelApiImpl, } from '../api/gridviewPanelApi';
|
|
2
|
+
import { Groupview } from './groupview';
|
|
3
|
+
import { GridviewPanel } from '../gridview/gridviewPanel';
|
|
4
|
+
class GroupviewApi extends GridviewPanelApiImpl {
|
|
5
|
+
}
|
|
6
|
+
export class GroupPanel extends GridviewPanel {
|
|
7
|
+
constructor(accessor, id, options) {
|
|
8
|
+
super(id, 'groupview_default', new GroupviewApi(id));
|
|
9
|
+
this._model = new Groupview(this.element, accessor, id, options, this);
|
|
10
|
+
}
|
|
11
|
+
get panels() {
|
|
12
|
+
return this._model.panels;
|
|
13
|
+
}
|
|
14
|
+
get activePanel() {
|
|
15
|
+
return this._model.activePanel;
|
|
16
|
+
}
|
|
17
|
+
get size() {
|
|
18
|
+
return this._model.size;
|
|
19
|
+
}
|
|
20
|
+
get model() {
|
|
21
|
+
return this._model;
|
|
22
|
+
}
|
|
23
|
+
get minimumHeight() {
|
|
24
|
+
return this._model.minimumHeight;
|
|
25
|
+
}
|
|
26
|
+
get maximumHeight() {
|
|
27
|
+
return this._model.maximumHeight;
|
|
28
|
+
}
|
|
29
|
+
get minimumWidth() {
|
|
30
|
+
return this._model.minimumWidth;
|
|
31
|
+
}
|
|
32
|
+
get maximumWidth() {
|
|
33
|
+
return this._model.maximumWidth;
|
|
34
|
+
}
|
|
35
|
+
get locked() {
|
|
36
|
+
return this._model.locked;
|
|
37
|
+
}
|
|
38
|
+
set locked(value) {
|
|
39
|
+
this._model.locked = value;
|
|
40
|
+
}
|
|
41
|
+
get header() {
|
|
42
|
+
return this._model.header;
|
|
43
|
+
}
|
|
44
|
+
initialize() {
|
|
45
|
+
this._model.initialize();
|
|
46
|
+
}
|
|
47
|
+
setActive(isActive) {
|
|
48
|
+
super.setActive(isActive);
|
|
49
|
+
this.model.setActive(isActive);
|
|
50
|
+
}
|
|
51
|
+
layout(width, height) {
|
|
52
|
+
super.layout(width, height);
|
|
53
|
+
this.model.layout(width, height);
|
|
54
|
+
}
|
|
55
|
+
getComponent() {
|
|
56
|
+
return this._model;
|
|
57
|
+
}
|
|
58
|
+
toJSON() {
|
|
59
|
+
return this.model.toJSON();
|
|
60
|
+
}
|
|
61
|
+
}
|
|
@@ -1,30 +1,30 @@
|
|
|
1
|
-
import { CompositeDisposable, IDisposable } from '../../lifecycle';
|
|
2
|
-
import { Event } from '../../events';
|
|
3
|
-
import { IDockviewPanel } from '../groupPanel';
|
|
4
|
-
export interface IContentContainer extends IDisposable {
|
|
5
|
-
onDidFocus: Event<void>;
|
|
6
|
-
onDidBlur: Event<void>;
|
|
7
|
-
element: HTMLElement;
|
|
8
|
-
layout(width: number, height: number): void;
|
|
9
|
-
openPanel: (panel: IDockviewPanel) => void;
|
|
10
|
-
closePanel: () => void;
|
|
11
|
-
show(): void;
|
|
12
|
-
hide(): void;
|
|
13
|
-
}
|
|
14
|
-
export declare class ContentContainer extends CompositeDisposable implements IContentContainer {
|
|
15
|
-
private _element;
|
|
16
|
-
private panel;
|
|
17
|
-
private disposable;
|
|
18
|
-
private readonly _onDidFocus;
|
|
19
|
-
readonly onDidFocus: Event<void>;
|
|
20
|
-
private readonly _onDidBlur;
|
|
21
|
-
readonly onDidBlur: Event<void>;
|
|
22
|
-
get element(): HTMLElement;
|
|
23
|
-
constructor();
|
|
24
|
-
show(): void;
|
|
25
|
-
hide(): void;
|
|
26
|
-
openPanel(panel: IDockviewPanel): void;
|
|
27
|
-
layout(_width: number, _height: number): void;
|
|
28
|
-
closePanel(): void;
|
|
29
|
-
dispose(): void;
|
|
30
|
-
}
|
|
1
|
+
import { CompositeDisposable, IDisposable } from '../../lifecycle';
|
|
2
|
+
import { Event } from '../../events';
|
|
3
|
+
import { IDockviewPanel } from '../groupPanel';
|
|
4
|
+
export interface IContentContainer extends IDisposable {
|
|
5
|
+
onDidFocus: Event<void>;
|
|
6
|
+
onDidBlur: Event<void>;
|
|
7
|
+
element: HTMLElement;
|
|
8
|
+
layout(width: number, height: number): void;
|
|
9
|
+
openPanel: (panel: IDockviewPanel) => void;
|
|
10
|
+
closePanel: () => void;
|
|
11
|
+
show(): void;
|
|
12
|
+
hide(): void;
|
|
13
|
+
}
|
|
14
|
+
export declare class ContentContainer extends CompositeDisposable implements IContentContainer {
|
|
15
|
+
private _element;
|
|
16
|
+
private panel;
|
|
17
|
+
private disposable;
|
|
18
|
+
private readonly _onDidFocus;
|
|
19
|
+
readonly onDidFocus: Event<void>;
|
|
20
|
+
private readonly _onDidBlur;
|
|
21
|
+
readonly onDidBlur: Event<void>;
|
|
22
|
+
get element(): HTMLElement;
|
|
23
|
+
constructor();
|
|
24
|
+
show(): void;
|
|
25
|
+
hide(): void;
|
|
26
|
+
openPanel(panel: IDockviewPanel): void;
|
|
27
|
+
layout(_width: number, _height: number): void;
|
|
28
|
+
closePanel(): void;
|
|
29
|
+
dispose(): void;
|
|
30
|
+
}
|
|
@@ -1,73 +1,73 @@
|
|
|
1
|
-
import { CompositeDisposable, MutableDisposable, } from '../../lifecycle';
|
|
2
|
-
import { Emitter } from '../../events';
|
|
3
|
-
import { trackFocus } from '../../dom';
|
|
4
|
-
export class ContentContainer extends CompositeDisposable {
|
|
5
|
-
constructor() {
|
|
6
|
-
super();
|
|
7
|
-
this.disposable = new MutableDisposable();
|
|
8
|
-
this._onDidFocus = new Emitter();
|
|
9
|
-
this.onDidFocus = this._onDidFocus.event;
|
|
10
|
-
this._onDidBlur = new Emitter();
|
|
11
|
-
this.onDidBlur = this._onDidBlur.event;
|
|
12
|
-
this._element = document.createElement('div');
|
|
13
|
-
this._element.className = 'content-container';
|
|
14
|
-
this._element.tabIndex = -1;
|
|
15
|
-
this.addDisposables(this._onDidFocus, this._onDidBlur);
|
|
16
|
-
// for hosted containers
|
|
17
|
-
// 1) register a drop target on the host
|
|
18
|
-
// 2) register window dragStart events to disable pointer events
|
|
19
|
-
// 3) register dragEnd events
|
|
20
|
-
// 4) register mouseMove events (if no buttons are present we take this as a dragEnd event)
|
|
21
|
-
}
|
|
22
|
-
get element() {
|
|
23
|
-
return this._element;
|
|
24
|
-
}
|
|
25
|
-
show() {
|
|
26
|
-
this.element.style.display = '';
|
|
27
|
-
}
|
|
28
|
-
hide() {
|
|
29
|
-
this.element.style.display = 'none';
|
|
30
|
-
}
|
|
31
|
-
openPanel(panel) {
|
|
32
|
-
var _a;
|
|
33
|
-
if (this.panel === panel) {
|
|
34
|
-
return;
|
|
35
|
-
}
|
|
36
|
-
if (this.panel) {
|
|
37
|
-
if ((_a = this.panel.view) === null || _a === void 0 ? void 0 : _a.content) {
|
|
38
|
-
this._element.removeChild(this.panel.view.content.element);
|
|
39
|
-
}
|
|
40
|
-
this.panel = undefined;
|
|
41
|
-
}
|
|
42
|
-
this.panel = panel;
|
|
43
|
-
const disposable = new CompositeDisposable();
|
|
44
|
-
if (this.panel.view) {
|
|
45
|
-
const _onDidFocus = this.panel.view.content.onDidFocus;
|
|
46
|
-
const _onDidBlur = this.panel.view.content.onDidBlur;
|
|
47
|
-
const { onDidFocus, onDidBlur } = trackFocus(this._element);
|
|
48
|
-
disposable.addDisposables(onDidFocus(() => this._onDidFocus.fire()), onDidBlur(() => this._onDidBlur.fire()));
|
|
49
|
-
if (_onDidFocus) {
|
|
50
|
-
disposable.addDisposables(_onDidFocus(() => this._onDidFocus.fire()));
|
|
51
|
-
}
|
|
52
|
-
if (_onDidBlur) {
|
|
53
|
-
disposable.addDisposables(_onDidBlur(() => this._onDidBlur.fire()));
|
|
54
|
-
}
|
|
55
|
-
this._element.appendChild(this.panel.view.content.element);
|
|
56
|
-
}
|
|
57
|
-
this.disposable.value = disposable;
|
|
58
|
-
}
|
|
59
|
-
layout(_width, _height) {
|
|
60
|
-
// noop
|
|
61
|
-
}
|
|
62
|
-
closePanel() {
|
|
63
|
-
var _a, _b, _c;
|
|
64
|
-
if ((_c = (_b = (_a = this.panel) === null || _a === void 0 ? void 0 : _a.view) === null || _b === void 0 ? void 0 : _b.content) === null || _c === void 0 ? void 0 : _c.element) {
|
|
65
|
-
this._element.removeChild(this.panel.view.content.element);
|
|
66
|
-
this.panel = undefined;
|
|
67
|
-
}
|
|
68
|
-
}
|
|
69
|
-
dispose() {
|
|
70
|
-
this.disposable.dispose();
|
|
71
|
-
super.dispose();
|
|
72
|
-
}
|
|
73
|
-
}
|
|
1
|
+
import { CompositeDisposable, MutableDisposable, } from '../../lifecycle';
|
|
2
|
+
import { Emitter } from '../../events';
|
|
3
|
+
import { trackFocus } from '../../dom';
|
|
4
|
+
export class ContentContainer extends CompositeDisposable {
|
|
5
|
+
constructor() {
|
|
6
|
+
super();
|
|
7
|
+
this.disposable = new MutableDisposable();
|
|
8
|
+
this._onDidFocus = new Emitter();
|
|
9
|
+
this.onDidFocus = this._onDidFocus.event;
|
|
10
|
+
this._onDidBlur = new Emitter();
|
|
11
|
+
this.onDidBlur = this._onDidBlur.event;
|
|
12
|
+
this._element = document.createElement('div');
|
|
13
|
+
this._element.className = 'content-container';
|
|
14
|
+
this._element.tabIndex = -1;
|
|
15
|
+
this.addDisposables(this._onDidFocus, this._onDidBlur);
|
|
16
|
+
// for hosted containers
|
|
17
|
+
// 1) register a drop target on the host
|
|
18
|
+
// 2) register window dragStart events to disable pointer events
|
|
19
|
+
// 3) register dragEnd events
|
|
20
|
+
// 4) register mouseMove events (if no buttons are present we take this as a dragEnd event)
|
|
21
|
+
}
|
|
22
|
+
get element() {
|
|
23
|
+
return this._element;
|
|
24
|
+
}
|
|
25
|
+
show() {
|
|
26
|
+
this.element.style.display = '';
|
|
27
|
+
}
|
|
28
|
+
hide() {
|
|
29
|
+
this.element.style.display = 'none';
|
|
30
|
+
}
|
|
31
|
+
openPanel(panel) {
|
|
32
|
+
var _a;
|
|
33
|
+
if (this.panel === panel) {
|
|
34
|
+
return;
|
|
35
|
+
}
|
|
36
|
+
if (this.panel) {
|
|
37
|
+
if ((_a = this.panel.view) === null || _a === void 0 ? void 0 : _a.content) {
|
|
38
|
+
this._element.removeChild(this.panel.view.content.element);
|
|
39
|
+
}
|
|
40
|
+
this.panel = undefined;
|
|
41
|
+
}
|
|
42
|
+
this.panel = panel;
|
|
43
|
+
const disposable = new CompositeDisposable();
|
|
44
|
+
if (this.panel.view) {
|
|
45
|
+
const _onDidFocus = this.panel.view.content.onDidFocus;
|
|
46
|
+
const _onDidBlur = this.panel.view.content.onDidBlur;
|
|
47
|
+
const { onDidFocus, onDidBlur } = trackFocus(this._element);
|
|
48
|
+
disposable.addDisposables(onDidFocus(() => this._onDidFocus.fire()), onDidBlur(() => this._onDidBlur.fire()));
|
|
49
|
+
if (_onDidFocus) {
|
|
50
|
+
disposable.addDisposables(_onDidFocus(() => this._onDidFocus.fire()));
|
|
51
|
+
}
|
|
52
|
+
if (_onDidBlur) {
|
|
53
|
+
disposable.addDisposables(_onDidBlur(() => this._onDidBlur.fire()));
|
|
54
|
+
}
|
|
55
|
+
this._element.appendChild(this.panel.view.content.element);
|
|
56
|
+
}
|
|
57
|
+
this.disposable.value = disposable;
|
|
58
|
+
}
|
|
59
|
+
layout(_width, _height) {
|
|
60
|
+
// noop
|
|
61
|
+
}
|
|
62
|
+
closePanel() {
|
|
63
|
+
var _a, _b, _c;
|
|
64
|
+
if ((_c = (_b = (_a = this.panel) === null || _a === void 0 ? void 0 : _a.view) === null || _b === void 0 ? void 0 : _b.content) === null || _c === void 0 ? void 0 : _c.element) {
|
|
65
|
+
this._element.removeChild(this.panel.view.content.element);
|
|
66
|
+
this.panel = undefined;
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
dispose() {
|
|
70
|
+
this.disposable.dispose();
|
|
71
|
+
super.dispose();
|
|
72
|
+
}
|
|
73
|
+
}
|
|
@@ -1,41 +1,41 @@
|
|
|
1
|
-
import { Event } from '../events';
|
|
2
|
-
import { CompositeDisposable } from '../lifecycle';
|
|
3
|
-
import { IDockviewComponent } from '../dockview/dockviewComponent';
|
|
4
|
-
import { ITabRenderer } from './types';
|
|
5
|
-
import { IDockviewPanel } from './groupPanel';
|
|
6
|
-
import { GroupPanel } from './groupviewPanel';
|
|
7
|
-
import { DroptargetEvent } from '../dnd/droptarget';
|
|
8
|
-
export declare enum MouseEventKind {
|
|
9
|
-
CLICK = "CLICK"
|
|
10
|
-
}
|
|
11
|
-
export interface LayoutMouseEvent {
|
|
12
|
-
readonly kind: MouseEventKind;
|
|
13
|
-
readonly event: MouseEvent;
|
|
14
|
-
readonly panel?: IDockviewPanel;
|
|
15
|
-
readonly tab?: boolean;
|
|
16
|
-
}
|
|
17
|
-
export interface ITab {
|
|
18
|
-
readonly panelId: string;
|
|
19
|
-
readonly element: HTMLElement;
|
|
20
|
-
setContent: (element: ITabRenderer) => void;
|
|
21
|
-
onChanged: Event<LayoutMouseEvent>;
|
|
22
|
-
onDrop: Event<DroptargetEvent>;
|
|
23
|
-
setActive(isActive: boolean): void;
|
|
24
|
-
}
|
|
25
|
-
export declare class Tab extends CompositeDisposable implements ITab {
|
|
26
|
-
readonly panelId: string;
|
|
27
|
-
private readonly accessor;
|
|
28
|
-
private readonly group;
|
|
29
|
-
private readonly _element;
|
|
30
|
-
private readonly droptarget;
|
|
31
|
-
private content?;
|
|
32
|
-
private readonly _onChanged;
|
|
33
|
-
readonly onChanged: Event<LayoutMouseEvent>;
|
|
34
|
-
private readonly _onDropped;
|
|
35
|
-
readonly onDrop: Event<DroptargetEvent>;
|
|
36
|
-
get element(): HTMLElement;
|
|
37
|
-
constructor(panelId: string, accessor: IDockviewComponent, group: GroupPanel);
|
|
38
|
-
setActive(isActive: boolean): void;
|
|
39
|
-
setContent(part: ITabRenderer): void;
|
|
40
|
-
dispose(): void;
|
|
41
|
-
}
|
|
1
|
+
import { Event } from '../events';
|
|
2
|
+
import { CompositeDisposable } from '../lifecycle';
|
|
3
|
+
import { IDockviewComponent } from '../dockview/dockviewComponent';
|
|
4
|
+
import { ITabRenderer } from './types';
|
|
5
|
+
import { IDockviewPanel } from './groupPanel';
|
|
6
|
+
import { GroupPanel } from './groupviewPanel';
|
|
7
|
+
import { DroptargetEvent } from '../dnd/droptarget';
|
|
8
|
+
export declare enum MouseEventKind {
|
|
9
|
+
CLICK = "CLICK"
|
|
10
|
+
}
|
|
11
|
+
export interface LayoutMouseEvent {
|
|
12
|
+
readonly kind: MouseEventKind;
|
|
13
|
+
readonly event: MouseEvent;
|
|
14
|
+
readonly panel?: IDockviewPanel;
|
|
15
|
+
readonly tab?: boolean;
|
|
16
|
+
}
|
|
17
|
+
export interface ITab {
|
|
18
|
+
readonly panelId: string;
|
|
19
|
+
readonly element: HTMLElement;
|
|
20
|
+
setContent: (element: ITabRenderer) => void;
|
|
21
|
+
onChanged: Event<LayoutMouseEvent>;
|
|
22
|
+
onDrop: Event<DroptargetEvent>;
|
|
23
|
+
setActive(isActive: boolean): void;
|
|
24
|
+
}
|
|
25
|
+
export declare class Tab extends CompositeDisposable implements ITab {
|
|
26
|
+
readonly panelId: string;
|
|
27
|
+
private readonly accessor;
|
|
28
|
+
private readonly group;
|
|
29
|
+
private readonly _element;
|
|
30
|
+
private readonly droptarget;
|
|
31
|
+
private content?;
|
|
32
|
+
private readonly _onChanged;
|
|
33
|
+
readonly onChanged: Event<LayoutMouseEvent>;
|
|
34
|
+
private readonly _onDropped;
|
|
35
|
+
readonly onDrop: Event<DroptargetEvent>;
|
|
36
|
+
get element(): HTMLElement;
|
|
37
|
+
constructor(panelId: string, accessor: IDockviewComponent, group: GroupPanel);
|
|
38
|
+
setActive(isActive: boolean): void;
|
|
39
|
+
setContent(part: ITabRenderer): void;
|
|
40
|
+
dispose(): void;
|
|
41
|
+
}
|
|
@@ -1,90 +1,90 @@
|
|
|
1
|
-
import { addDisposableListener, Emitter } from '../events';
|
|
2
|
-
import { CompositeDisposable } from '../lifecycle';
|
|
3
|
-
import { getPanelData, LocalSelectionTransfer, PanelTransfer, } from '../dnd/dataTransfer';
|
|
4
|
-
import { toggleClass } from '../dom';
|
|
5
|
-
import { Droptarget } from '../dnd/droptarget';
|
|
6
|
-
import { DockviewDropTargets } from './dnd';
|
|
7
|
-
import { DragHandler } from '../dnd/abstractDragHandler';
|
|
8
|
-
export var MouseEventKind;
|
|
9
|
-
(function (MouseEventKind) {
|
|
10
|
-
MouseEventKind["CLICK"] = "CLICK";
|
|
11
|
-
})(MouseEventKind || (MouseEventKind = {}));
|
|
12
|
-
export class Tab extends CompositeDisposable {
|
|
13
|
-
constructor(panelId, accessor, group) {
|
|
14
|
-
super();
|
|
15
|
-
this.panelId = panelId;
|
|
16
|
-
this.accessor = accessor;
|
|
17
|
-
this.group = group;
|
|
18
|
-
this._onChanged = new Emitter();
|
|
19
|
-
this.onChanged = this._onChanged.event;
|
|
20
|
-
this._onDropped = new Emitter();
|
|
21
|
-
this.onDrop = this._onDropped.event;
|
|
22
|
-
this.addDisposables(this._onChanged, this._onDropped);
|
|
23
|
-
this._element = document.createElement('div');
|
|
24
|
-
this._element.className = 'tab';
|
|
25
|
-
this._element.tabIndex = 0;
|
|
26
|
-
this._element.draggable = true;
|
|
27
|
-
toggleClass(this.element, 'inactive-tab', true);
|
|
28
|
-
this.addDisposables(new (class Handler extends DragHandler {
|
|
29
|
-
constructor() {
|
|
30
|
-
super(...arguments);
|
|
31
|
-
this.panelTransfer = LocalSelectionTransfer.getInstance();
|
|
32
|
-
}
|
|
33
|
-
getData() {
|
|
34
|
-
this.panelTransfer.setData([new PanelTransfer(accessor.id, group.id, panelId)], PanelTransfer.prototype);
|
|
35
|
-
return {
|
|
36
|
-
dispose: () => {
|
|
37
|
-
this.panelTransfer.clearData(PanelTransfer.prototype);
|
|
38
|
-
},
|
|
39
|
-
};
|
|
40
|
-
}
|
|
41
|
-
dispose() {
|
|
42
|
-
//
|
|
43
|
-
}
|
|
44
|
-
})(this._element));
|
|
45
|
-
this.addDisposables(addDisposableListener(this._element, 'mousedown', (event) => {
|
|
46
|
-
if (event.defaultPrevented) {
|
|
47
|
-
return;
|
|
48
|
-
}
|
|
49
|
-
/**
|
|
50
|
-
* TODO: alternative to stopPropagation
|
|
51
|
-
*
|
|
52
|
-
* I need to stop the event propagation here since otherwise it'll be intercepted by event handlers
|
|
53
|
-
* on the tabs-container. I cannot use event.preventDefault() since I need the on DragStart event to occur
|
|
54
|
-
*/
|
|
55
|
-
event.stopPropagation();
|
|
56
|
-
this._onChanged.fire({ kind: MouseEventKind.CLICK, event });
|
|
57
|
-
}));
|
|
58
|
-
this.droptarget = new Droptarget(this._element, {
|
|
59
|
-
validOverlays: 'none',
|
|
60
|
-
canDisplayOverlay: (event) => {
|
|
61
|
-
const data = getPanelData();
|
|
62
|
-
if (data && this.accessor.id === data.viewId) {
|
|
63
|
-
return this.panelId !== data.panelId;
|
|
64
|
-
}
|
|
65
|
-
return this.group.model.canDisplayOverlay(event, DockviewDropTargets.Tab);
|
|
66
|
-
},
|
|
67
|
-
});
|
|
68
|
-
this.addDisposables(this.droptarget.onDrop((event) => {
|
|
69
|
-
this._onDropped.fire(event);
|
|
70
|
-
}));
|
|
71
|
-
}
|
|
72
|
-
get element() {
|
|
73
|
-
return this._element;
|
|
74
|
-
}
|
|
75
|
-
setActive(isActive) {
|
|
76
|
-
toggleClass(this.element, 'active-tab', isActive);
|
|
77
|
-
toggleClass(this.element, 'inactive-tab', !isActive);
|
|
78
|
-
}
|
|
79
|
-
setContent(part) {
|
|
80
|
-
if (this.content) {
|
|
81
|
-
this._element.removeChild(this.content.element);
|
|
82
|
-
}
|
|
83
|
-
this.content = part;
|
|
84
|
-
this._element.appendChild(this.content.element);
|
|
85
|
-
}
|
|
86
|
-
dispose() {
|
|
87
|
-
super.dispose();
|
|
88
|
-
this.droptarget.dispose();
|
|
89
|
-
}
|
|
90
|
-
}
|
|
1
|
+
import { addDisposableListener, Emitter } from '../events';
|
|
2
|
+
import { CompositeDisposable } from '../lifecycle';
|
|
3
|
+
import { getPanelData, LocalSelectionTransfer, PanelTransfer, } from '../dnd/dataTransfer';
|
|
4
|
+
import { toggleClass } from '../dom';
|
|
5
|
+
import { Droptarget } from '../dnd/droptarget';
|
|
6
|
+
import { DockviewDropTargets } from './dnd';
|
|
7
|
+
import { DragHandler } from '../dnd/abstractDragHandler';
|
|
8
|
+
export var MouseEventKind;
|
|
9
|
+
(function (MouseEventKind) {
|
|
10
|
+
MouseEventKind["CLICK"] = "CLICK";
|
|
11
|
+
})(MouseEventKind || (MouseEventKind = {}));
|
|
12
|
+
export class Tab extends CompositeDisposable {
|
|
13
|
+
constructor(panelId, accessor, group) {
|
|
14
|
+
super();
|
|
15
|
+
this.panelId = panelId;
|
|
16
|
+
this.accessor = accessor;
|
|
17
|
+
this.group = group;
|
|
18
|
+
this._onChanged = new Emitter();
|
|
19
|
+
this.onChanged = this._onChanged.event;
|
|
20
|
+
this._onDropped = new Emitter();
|
|
21
|
+
this.onDrop = this._onDropped.event;
|
|
22
|
+
this.addDisposables(this._onChanged, this._onDropped);
|
|
23
|
+
this._element = document.createElement('div');
|
|
24
|
+
this._element.className = 'tab';
|
|
25
|
+
this._element.tabIndex = 0;
|
|
26
|
+
this._element.draggable = true;
|
|
27
|
+
toggleClass(this.element, 'inactive-tab', true);
|
|
28
|
+
this.addDisposables(new (class Handler extends DragHandler {
|
|
29
|
+
constructor() {
|
|
30
|
+
super(...arguments);
|
|
31
|
+
this.panelTransfer = LocalSelectionTransfer.getInstance();
|
|
32
|
+
}
|
|
33
|
+
getData() {
|
|
34
|
+
this.panelTransfer.setData([new PanelTransfer(accessor.id, group.id, panelId)], PanelTransfer.prototype);
|
|
35
|
+
return {
|
|
36
|
+
dispose: () => {
|
|
37
|
+
this.panelTransfer.clearData(PanelTransfer.prototype);
|
|
38
|
+
},
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
dispose() {
|
|
42
|
+
//
|
|
43
|
+
}
|
|
44
|
+
})(this._element));
|
|
45
|
+
this.addDisposables(addDisposableListener(this._element, 'mousedown', (event) => {
|
|
46
|
+
if (event.defaultPrevented) {
|
|
47
|
+
return;
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* TODO: alternative to stopPropagation
|
|
51
|
+
*
|
|
52
|
+
* I need to stop the event propagation here since otherwise it'll be intercepted by event handlers
|
|
53
|
+
* on the tabs-container. I cannot use event.preventDefault() since I need the on DragStart event to occur
|
|
54
|
+
*/
|
|
55
|
+
event.stopPropagation();
|
|
56
|
+
this._onChanged.fire({ kind: MouseEventKind.CLICK, event });
|
|
57
|
+
}));
|
|
58
|
+
this.droptarget = new Droptarget(this._element, {
|
|
59
|
+
validOverlays: 'none',
|
|
60
|
+
canDisplayOverlay: (event) => {
|
|
61
|
+
const data = getPanelData();
|
|
62
|
+
if (data && this.accessor.id === data.viewId) {
|
|
63
|
+
return this.panelId !== data.panelId;
|
|
64
|
+
}
|
|
65
|
+
return this.group.model.canDisplayOverlay(event, DockviewDropTargets.Tab);
|
|
66
|
+
},
|
|
67
|
+
});
|
|
68
|
+
this.addDisposables(this.droptarget.onDrop((event) => {
|
|
69
|
+
this._onDropped.fire(event);
|
|
70
|
+
}));
|
|
71
|
+
}
|
|
72
|
+
get element() {
|
|
73
|
+
return this._element;
|
|
74
|
+
}
|
|
75
|
+
setActive(isActive) {
|
|
76
|
+
toggleClass(this.element, 'active-tab', isActive);
|
|
77
|
+
toggleClass(this.element, 'inactive-tab', !isActive);
|
|
78
|
+
}
|
|
79
|
+
setContent(part) {
|
|
80
|
+
if (this.content) {
|
|
81
|
+
this._element.removeChild(this.content.element);
|
|
82
|
+
}
|
|
83
|
+
this.content = part;
|
|
84
|
+
this._element.appendChild(this.content.element);
|
|
85
|
+
}
|
|
86
|
+
dispose() {
|
|
87
|
+
super.dispose();
|
|
88
|
+
this.droptarget.dispose();
|
|
89
|
+
}
|
|
90
|
+
}
|