dockview 1.0.3 → 1.1.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/README.md +243 -186
- package/dist/cjs/api/component.api.d.ts +28 -19
- package/dist/cjs/api/component.api.js +104 -33
- package/dist/cjs/api/component.api.js.map +1 -1
- package/dist/cjs/api/gridviewPanelApi.js +1 -0
- package/dist/cjs/api/gridviewPanelApi.js.map +1 -1
- package/dist/cjs/api/groupPanelApi.d.ts +11 -14
- package/dist/cjs/api/groupPanelApi.js +19 -17
- package/dist/cjs/api/groupPanelApi.js.map +1 -1
- package/dist/cjs/api/panelApi.d.ts +0 -25
- package/dist/cjs/api/panelApi.js +1 -20
- package/dist/cjs/api/panelApi.js.map +1 -1
- package/dist/cjs/api/paneviewPanelApi.js +1 -0
- package/dist/cjs/api/paneviewPanelApi.js.map +1 -1
- package/dist/cjs/api/splitviewPanelApi.d.ts +0 -1
- package/dist/cjs/api/splitviewPanelApi.js +1 -5
- package/dist/cjs/api/splitviewPanelApi.js.map +1 -1
- package/dist/cjs/dnd/abstractDragHandler.d.ts +3 -3
- package/dist/cjs/dnd/abstractDragHandler.js +15 -14
- package/dist/cjs/dnd/abstractDragHandler.js.map +1 -1
- package/dist/cjs/dnd/dataTransfer.d.ts +0 -25
- package/dist/cjs/dnd/dataTransfer.js +1 -45
- package/dist/cjs/dnd/dataTransfer.js.map +1 -1
- package/dist/cjs/dnd/dnd.d.ts +1 -14
- package/dist/cjs/dnd/dnd.js +1 -79
- package/dist/cjs/dnd/dnd.js.map +1 -1
- package/dist/cjs/dnd/droptarget.d.ts +3 -0
- package/dist/cjs/dnd/droptarget.js +69 -45
- package/dist/cjs/dnd/droptarget.js.map +1 -1
- package/dist/cjs/dockview/components/tab/defaultTab.d.ts +0 -1
- package/dist/cjs/dockview/components/tab/defaultTab.js +0 -8
- package/dist/cjs/dockview/components/tab/defaultTab.js.map +1 -1
- package/dist/cjs/dockview/dockviewComponent.d.ts +27 -19
- package/dist/cjs/dockview/dockviewComponent.js +67 -178
- package/dist/cjs/dockview/dockviewComponent.js.map +1 -1
- package/dist/cjs/dockview/dockviewGroupPanel.d.ts +2 -5
- package/dist/cjs/dockview/dockviewGroupPanel.js +2 -31
- package/dist/cjs/dockview/dockviewGroupPanel.js.map +1 -1
- package/dist/cjs/dockview/options.d.ts +2 -1
- package/dist/cjs/events.js +25 -4
- package/dist/cjs/events.js.map +1 -1
- package/dist/cjs/gridview/baseComponentGridview.d.ts +9 -0
- package/dist/cjs/gridview/baseComponentGridview.js +14 -2
- package/dist/cjs/gridview/baseComponentGridview.js.map +1 -1
- package/dist/cjs/gridview/basePanelView.d.ts +5 -8
- package/dist/cjs/gridview/basePanelView.js +14 -8
- package/dist/cjs/gridview/basePanelView.js.map +1 -1
- package/dist/cjs/gridview/branchNode.js +1 -1
- package/dist/cjs/gridview/branchNode.js.map +1 -1
- package/dist/cjs/gridview/gridview.js +19 -17
- package/dist/cjs/gridview/gridview.js.map +1 -1
- package/dist/cjs/gridview/gridviewComponent.d.ts +4 -0
- package/dist/cjs/gridview/gridviewComponent.js +5 -0
- package/dist/cjs/gridview/gridviewComponent.js.map +1 -1
- package/dist/cjs/gridview/gridviewPanel.d.ts +0 -1
- package/dist/cjs/gridview/gridviewPanel.js +3 -6
- package/dist/cjs/gridview/gridviewPanel.js.map +1 -1
- package/dist/cjs/gridview/leafNode.js +1 -0
- package/dist/cjs/gridview/leafNode.js.map +1 -1
- package/dist/cjs/groupview/groupPanel.d.ts +0 -7
- package/dist/cjs/groupview/groupview.d.ts +15 -8
- package/dist/cjs/groupview/groupview.js +36 -123
- package/dist/cjs/groupview/groupview.js.map +1 -1
- package/dist/cjs/groupview/groupviewPanel.d.ts +5 -2
- package/dist/cjs/groupview/groupviewPanel.js.map +1 -1
- package/dist/cjs/groupview/panel/content.js +1 -0
- package/dist/cjs/groupview/panel/content.js.map +1 -1
- package/dist/cjs/groupview/tab.d.ts +10 -13
- package/dist/cjs/groupview/tab.js +22 -80
- package/dist/cjs/groupview/tab.js.map +1 -1
- package/dist/cjs/groupview/titlebar/tabsContainer.js +4 -6
- package/dist/cjs/groupview/titlebar/tabsContainer.js.map +1 -1
- package/dist/cjs/index.d.ts +1 -1
- package/dist/cjs/lifecycle.js +2 -1
- package/dist/cjs/lifecycle.js.map +1 -1
- package/dist/cjs/panel/types.d.ts +0 -2
- package/dist/cjs/paneview/draggablePaneviewPanel.d.ts +2 -2
- package/dist/cjs/paneview/draggablePaneviewPanel.js +31 -28
- package/dist/cjs/paneview/draggablePaneviewPanel.js.map +1 -1
- package/dist/cjs/paneview/paneview.js +1 -1
- package/dist/cjs/paneview/paneview.js.map +1 -1
- package/dist/cjs/paneview/paneviewComponent.d.ts +0 -3
- package/dist/cjs/paneview/paneviewComponent.js +1 -0
- package/dist/cjs/paneview/paneviewComponent.js.map +1 -1
- package/dist/cjs/paneview/paneviewPanel.js +1 -1
- package/dist/cjs/paneview/paneviewPanel.js.map +1 -1
- package/dist/cjs/react/deserializer.js +1 -3
- package/dist/cjs/react/deserializer.js.map +1 -1
- package/dist/cjs/react/dockview/dockview.d.ts +9 -9
- package/dist/cjs/react/dockview/dockview.js +14 -1
- package/dist/cjs/react/dockview/dockview.js.map +1 -1
- package/dist/cjs/react/dockview/reactContentPart.js +4 -4
- package/dist/cjs/react/dockview/reactContentPart.js.map +1 -1
- package/dist/cjs/react/dockview/reactHeaderPart.js +1 -0
- package/dist/cjs/react/dockview/reactHeaderPart.js.map +1 -1
- package/dist/cjs/react/dockview/reactWatermarkPart.d.ts +1 -2
- package/dist/cjs/react/dockview/reactWatermarkPart.js +1 -2
- package/dist/cjs/react/dockview/reactWatermarkPart.js.map +1 -1
- package/dist/cjs/react/gridview/view.js +2 -2
- package/dist/cjs/react/gridview/view.js.map +1 -1
- package/dist/cjs/react/index.d.ts +1 -0
- package/dist/cjs/react/index.js.map +1 -1
- package/dist/cjs/react/react.js +1 -2
- package/dist/cjs/react/react.js.map +1 -1
- package/dist/cjs/react/splitview/view.js +2 -2
- package/dist/cjs/react/splitview/view.js.map +1 -1
- package/dist/cjs/splitview/splitviewComponent.d.ts +0 -3
- package/dist/cjs/splitview/splitviewComponent.js +1 -1
- package/dist/cjs/splitview/splitviewComponent.js.map +1 -1
- package/dist/cjs/splitview/splitviewPanel.d.ts +1 -6
- package/dist/cjs/splitview/splitviewPanel.js +5 -3
- package/dist/cjs/splitview/splitviewPanel.js.map +1 -1
- package/dist/dockview.amd.js +394 -532
- package/dist/dockview.amd.min.js +2 -16
- package/dist/dockview.amd.min.noStyle.js +2 -16
- package/dist/dockview.amd.noStyle.js +393 -531
- package/dist/dockview.cjs.js +394 -532
- package/dist/dockview.esm.js +395 -528
- package/dist/dockview.esm.min.js +2 -16
- package/dist/dockview.js +394 -532
- package/dist/dockview.min.js +2 -16
- package/dist/dockview.min.noStyle.js +2 -16
- package/dist/dockview.noStyle.js +393 -531
- package/dist/esm/api/component.api.d.ts +28 -19
- package/dist/esm/api/component.api.js +48 -21
- package/dist/esm/api/gridviewPanelApi.js +1 -0
- package/dist/esm/api/groupPanelApi.d.ts +11 -14
- package/dist/esm/api/groupPanelApi.js +18 -13
- package/dist/esm/api/panelApi.d.ts +0 -25
- package/dist/esm/api/panelApi.js +1 -20
- package/dist/esm/api/paneviewPanelApi.js +1 -0
- package/dist/esm/api/splitviewPanelApi.d.ts +0 -1
- package/dist/esm/api/splitviewPanelApi.js +1 -5
- package/dist/esm/dnd/abstractDragHandler.d.ts +3 -3
- package/dist/esm/dnd/abstractDragHandler.js +9 -8
- package/dist/esm/dnd/dataTransfer.d.ts +0 -25
- package/dist/esm/dnd/dataTransfer.js +0 -40
- package/dist/esm/dnd/dnd.d.ts +1 -14
- package/dist/esm/dnd/dnd.js +1 -69
- package/dist/esm/dnd/droptarget.d.ts +3 -0
- package/dist/esm/dnd/droptarget.js +69 -45
- package/dist/esm/dockview/components/tab/defaultTab.d.ts +0 -1
- package/dist/esm/dockview/components/tab/defaultTab.js +1 -9
- package/dist/esm/dockview/dockviewComponent.d.ts +27 -19
- package/dist/esm/dockview/dockviewComponent.js +54 -118
- package/dist/esm/dockview/dockviewGroupPanel.d.ts +2 -5
- package/dist/esm/dockview/dockviewGroupPanel.js +2 -30
- package/dist/esm/dockview/options.d.ts +2 -1
- package/dist/esm/events.js +2 -3
- package/dist/esm/gridview/baseComponentGridview.d.ts +9 -0
- package/dist/esm/gridview/baseComponentGridview.js +14 -2
- package/dist/esm/gridview/basePanelView.d.ts +5 -8
- package/dist/esm/gridview/basePanelView.js +10 -8
- package/dist/esm/gridview/branchNode.js +1 -1
- package/dist/esm/gridview/gridview.js +16 -15
- package/dist/esm/gridview/gridviewComponent.d.ts +4 -0
- package/dist/esm/gridview/gridviewComponent.js +5 -0
- package/dist/esm/gridview/gridviewPanel.d.ts +0 -1
- package/dist/esm/gridview/gridviewPanel.js +3 -6
- package/dist/esm/gridview/leafNode.js +1 -0
- package/dist/esm/groupview/groupPanel.d.ts +0 -7
- package/dist/esm/groupview/groupview.d.ts +15 -8
- package/dist/esm/groupview/groupview.js +22 -56
- package/dist/esm/groupview/groupviewPanel.d.ts +5 -2
- package/dist/esm/groupview/panel/content.js +1 -0
- package/dist/esm/groupview/tab.d.ts +10 -13
- package/dist/esm/groupview/tab.js +17 -24
- package/dist/esm/groupview/titlebar/tabsContainer.js +4 -6
- package/dist/esm/index.d.ts +1 -1
- package/dist/esm/lifecycle.js +2 -1
- package/dist/esm/panel/types.d.ts +0 -2
- package/dist/esm/paneview/draggablePaneviewPanel.d.ts +2 -2
- package/dist/esm/paneview/draggablePaneviewPanel.js +31 -28
- package/dist/esm/paneview/paneview.js +1 -1
- package/dist/esm/paneview/paneviewComponent.d.ts +0 -3
- package/dist/esm/paneview/paneviewComponent.js +1 -0
- package/dist/esm/paneview/paneviewPanel.js +1 -1
- package/dist/esm/react/deserializer.js +1 -3
- package/dist/esm/react/dockview/dockview.d.ts +9 -9
- package/dist/esm/react/dockview/dockview.js +15 -2
- package/dist/esm/react/dockview/reactContentPart.js +4 -4
- package/dist/esm/react/dockview/reactHeaderPart.js +1 -0
- package/dist/esm/react/dockview/reactWatermarkPart.d.ts +1 -2
- package/dist/esm/react/dockview/reactWatermarkPart.js +1 -2
- package/dist/esm/react/gridview/view.js +2 -2
- package/dist/esm/react/index.d.ts +1 -0
- package/dist/esm/react/react.js +1 -2
- package/dist/esm/react/splitview/view.js +2 -2
- package/dist/esm/splitview/splitviewComponent.d.ts +0 -3
- package/dist/esm/splitview/splitviewComponent.js +1 -1
- package/dist/esm/splitview/splitviewPanel.d.ts +1 -6
- package/dist/esm/splitview/splitviewPanel.js +5 -3
- package/dist/styles/dockview.css +5 -9
- package/package.json +2 -2
- package/dist/cjs/functions.d.ts +0 -1
- package/dist/cjs/functions.js +0 -42
- package/dist/cjs/functions.js.map +0 -1
- package/dist/cjs/groupview/panel/hostedPanel.d.ts +0 -22
- package/dist/cjs/groupview/panel/hostedPanel.js +0 -57
- package/dist/cjs/groupview/panel/hostedPanel.js.map +0 -1
- package/dist/cjs/json.d.ts +0 -1
- package/dist/cjs/json.js +0 -14
- package/dist/cjs/json.js.map +0 -1
- package/dist/esm/functions.d.ts +0 -1
- package/dist/esm/functions.js +0 -8
- package/dist/esm/groupview/panel/hostedPanel.d.ts +0 -22
- package/dist/esm/groupview/panel/hostedPanel.js +0 -43
- package/dist/esm/json.d.ts +0 -1
- package/dist/esm/json.js +0 -9
|
@@ -9,6 +9,15 @@ import { LeafNode } from './leafNode';
|
|
|
9
9
|
import { BranchNode } from './branchNode';
|
|
10
10
|
import { Emitter } from '../events';
|
|
11
11
|
import { MutableDisposable } from '../lifecycle';
|
|
12
|
+
function findLeaf(candiateNode, last) {
|
|
13
|
+
if (candiateNode instanceof LeafNode) {
|
|
14
|
+
return candiateNode;
|
|
15
|
+
}
|
|
16
|
+
if (candiateNode instanceof BranchNode) {
|
|
17
|
+
return findLeaf(candiateNode.children[last ? candiateNode.children.length - 1 : 0], last);
|
|
18
|
+
}
|
|
19
|
+
throw new Error('invalid node');
|
|
20
|
+
}
|
|
12
21
|
function flipNode(node, size, orthogonalSize) {
|
|
13
22
|
if (node instanceof BranchNode) {
|
|
14
23
|
const result = new BranchNode(orthogonal(node.orientation), node.proportionalLayout, node.styles, size, orthogonalSize);
|
|
@@ -147,13 +156,13 @@ export class Gridview {
|
|
|
147
156
|
}
|
|
148
157
|
deserialize(json, deserializer) {
|
|
149
158
|
const orientation = json.orientation;
|
|
150
|
-
const height = json.height;
|
|
159
|
+
const height = orientation === Orientation.VERTICAL ? json.height : json.width;
|
|
151
160
|
this._deserialize(json.root, orientation, deserializer, height);
|
|
152
161
|
}
|
|
153
162
|
_deserialize(root, orientation, deserializer, orthogonalSize) {
|
|
154
|
-
this.root = this._deserializeNode(root, orientation, deserializer, orthogonalSize);
|
|
163
|
+
this.root = this._deserializeNode(root, orientation, deserializer, orthogonalSize, true);
|
|
155
164
|
}
|
|
156
|
-
_deserializeNode(node, orientation, deserializer, orthogonalSize) {
|
|
165
|
+
_deserializeNode(node, orientation, deserializer, orthogonalSize, isRoot = false) {
|
|
157
166
|
let result;
|
|
158
167
|
if (node.type === 'branch') {
|
|
159
168
|
const serializedChildren = node.data;
|
|
@@ -163,7 +172,9 @@ export class Gridview {
|
|
|
163
172
|
visible: serializedChild.visible,
|
|
164
173
|
};
|
|
165
174
|
});
|
|
166
|
-
|
|
175
|
+
// HORIZONTAL => height=orthogonalsize width=size
|
|
176
|
+
// VERTICAL => height=size width=orthogonalsize
|
|
177
|
+
result = new BranchNode(orientation, this.proportionalLayout, this.styles, isRoot ? orthogonalSize : node.size, isRoot ? node.size : orthogonalSize, children);
|
|
167
178
|
}
|
|
168
179
|
else {
|
|
169
180
|
result = new LeafNode(deserializer.fromJSON(node), orientation, orthogonalSize, node.size);
|
|
@@ -224,15 +235,6 @@ export class Gridview {
|
|
|
224
235
|
if (!(node instanceof LeafNode)) {
|
|
225
236
|
throw new Error('invalid location');
|
|
226
237
|
}
|
|
227
|
-
const findLeaf = (candiateNode, last) => {
|
|
228
|
-
if (candiateNode instanceof LeafNode) {
|
|
229
|
-
return candiateNode;
|
|
230
|
-
}
|
|
231
|
-
if (candiateNode instanceof BranchNode) {
|
|
232
|
-
return findLeaf(candiateNode.children[last ? candiateNode.children.length - 1 : 0], last);
|
|
233
|
-
}
|
|
234
|
-
throw new Error('invalid node');
|
|
235
|
-
};
|
|
236
238
|
for (let i = path.length - 1; i > -1; i--) {
|
|
237
239
|
const n = path[i];
|
|
238
240
|
const l = location[i] || 0;
|
|
@@ -334,9 +336,9 @@ export class Gridview {
|
|
|
334
336
|
if (parent.children.length > 1) {
|
|
335
337
|
return node.view;
|
|
336
338
|
}
|
|
339
|
+
const sibling = parent.children[0];
|
|
337
340
|
if (pathToParent.length === 0) {
|
|
338
341
|
// parent is root
|
|
339
|
-
const sibling = parent.children[0];
|
|
340
342
|
if (sibling instanceof LeafNode) {
|
|
341
343
|
return node.view;
|
|
342
344
|
}
|
|
@@ -347,7 +349,6 @@ export class Gridview {
|
|
|
347
349
|
}
|
|
348
350
|
const [grandParent, ..._] = [...pathToParent].reverse();
|
|
349
351
|
const [parentIndex, ...__] = [...rest].reverse();
|
|
350
|
-
const sibling = parent.children[0];
|
|
351
352
|
const isSiblingVisible = parent.isChildVisible(0);
|
|
352
353
|
parent.removeChild(0, sizing);
|
|
353
354
|
const sizes = grandParent.children.map((size, i) => grandParent.getChildSize(i));
|
|
@@ -7,6 +7,7 @@ import { GridviewPanel, GridviewInitParameters, GridPanelViewState, IGridviewPan
|
|
|
7
7
|
import { BaseComponentOptions } from '../panel/types';
|
|
8
8
|
import { GridviewPanelApiImpl } from '../api/gridviewPanelApi';
|
|
9
9
|
import { Orientation, Sizing } from '../splitview/core/splitview';
|
|
10
|
+
import { Event } from '../events';
|
|
10
11
|
interface PanelReference {
|
|
11
12
|
api: GridviewPanelApiImpl;
|
|
12
13
|
}
|
|
@@ -37,6 +38,7 @@ export interface IGridPanelComponentView extends IGridPanelView {
|
|
|
37
38
|
export declare type GridviewComponentUpdateOptions = Pick<GridviewComponentOptions, 'orientation' | 'components' | 'frameworkComponents'>;
|
|
38
39
|
export interface IGridviewComponent extends IBaseGrid<GridviewPanel> {
|
|
39
40
|
readonly orientation: Orientation;
|
|
41
|
+
readonly onDidLayoutFromJSON: Event<void>;
|
|
40
42
|
updateOptions(options: Partial<GridviewComponentUpdateOptions>): void;
|
|
41
43
|
addPanel(options: AddComponentOptions): void;
|
|
42
44
|
removePanel(panel: IGridviewPanel, sizing?: Sizing): void;
|
|
@@ -55,6 +57,8 @@ export interface IGridviewComponent extends IBaseGrid<GridviewPanel> {
|
|
|
55
57
|
export declare class GridviewComponent extends BaseGrid<GridviewPanel> implements IGridviewComponent {
|
|
56
58
|
private _options;
|
|
57
59
|
private _deserializer;
|
|
60
|
+
private readonly _onDidLayoutfromJSON;
|
|
61
|
+
readonly onDidLayoutFromJSON: Event<void>;
|
|
58
62
|
get orientation(): Orientation;
|
|
59
63
|
set orientation(value: Orientation);
|
|
60
64
|
get options(): GridviewComponentOptions;
|
|
@@ -5,6 +5,7 @@ import { CompositeDisposable } from '../lifecycle';
|
|
|
5
5
|
import { BaseGrid, GroupChangeKind, toTarget, } from './baseComponentGridview';
|
|
6
6
|
import { GridviewApi } from '../api/component.api';
|
|
7
7
|
import { createComponent } from '../panel/componentFactory';
|
|
8
|
+
import { Emitter } from '../events';
|
|
8
9
|
export class GridviewComponent extends BaseGrid {
|
|
9
10
|
constructor(element, options) {
|
|
10
11
|
super(element, {
|
|
@@ -12,6 +13,8 @@ export class GridviewComponent extends BaseGrid {
|
|
|
12
13
|
orientation: options.orientation,
|
|
13
14
|
styles: options.styles,
|
|
14
15
|
});
|
|
16
|
+
this._onDidLayoutfromJSON = new Emitter();
|
|
17
|
+
this.onDidLayoutFromJSON = this._onDidLayoutfromJSON.event;
|
|
15
18
|
this._options = options;
|
|
16
19
|
if (!this.options.components) {
|
|
17
20
|
this.options.components = {};
|
|
@@ -120,6 +123,7 @@ export class GridviewComponent extends BaseGrid {
|
|
|
120
123
|
}
|
|
121
124
|
}
|
|
122
125
|
this._onGridEvent.fire({ kind: GroupChangeKind.LAYOUT_FROM_JSON });
|
|
126
|
+
this._onDidLayoutfromJSON.fire();
|
|
123
127
|
}
|
|
124
128
|
movePanel(panel, options) {
|
|
125
129
|
var _a;
|
|
@@ -234,5 +238,6 @@ export class GridviewComponent extends BaseGrid {
|
|
|
234
238
|
}
|
|
235
239
|
dispose() {
|
|
236
240
|
super.dispose();
|
|
241
|
+
this._onDidLayoutfromJSON.dispose();
|
|
237
242
|
}
|
|
238
243
|
}
|
|
@@ -50,7 +50,6 @@ export declare abstract class GridviewPanel extends BasePanelView<GridviewPanelA
|
|
|
50
50
|
init(parameters: GridviewInitParameters): void;
|
|
51
51
|
private updateConstraints;
|
|
52
52
|
toJSON(): GridPanelViewState;
|
|
53
|
-
dispose(): void;
|
|
54
53
|
}
|
|
55
54
|
export interface GridPanelViewState extends BasePanelViewState {
|
|
56
55
|
minimumHeight?: number;
|
|
@@ -15,12 +15,12 @@ export class GridviewPanel extends BasePanelView {
|
|
|
15
15
|
this._snap = false;
|
|
16
16
|
this._onDidChange = new Emitter();
|
|
17
17
|
this.onDidChange = this._onDidChange.event;
|
|
18
|
-
this.addDisposables(this.api.onVisibilityChange((event) => {
|
|
18
|
+
this.addDisposables(this._onDidChange, this.api.onVisibilityChange((event) => {
|
|
19
19
|
const { isVisible } = event;
|
|
20
|
-
const { containerApi } = this.
|
|
20
|
+
const { containerApi } = this._params;
|
|
21
21
|
containerApi.setVisible(this, isVisible);
|
|
22
22
|
}), this.api.onActiveChange(() => {
|
|
23
|
-
const { containerApi } = this.
|
|
23
|
+
const { containerApi } = this._params;
|
|
24
24
|
containerApi.setActive(this);
|
|
25
25
|
}), this.api.onDidConstraintsChangeInternal((event) => {
|
|
26
26
|
if (typeof event.minimumWidth === 'number' ||
|
|
@@ -135,7 +135,4 @@ export class GridviewPanel extends BasePanelView {
|
|
|
135
135
|
const minimum = (value) => (value <= 0 ? undefined : value);
|
|
136
136
|
return Object.assign(Object.assign({}, state), { minimumHeight: minimum(this.minimumHeight), maximumHeight: maximum(this.maximumHeight), minimumWidth: minimum(this.minimumWidth), maximumWidth: maximum(this.maximumWidth), snap: this.snap, priority: this.priority });
|
|
137
137
|
}
|
|
138
|
-
dispose() {
|
|
139
|
-
super.dispose();
|
|
140
|
-
}
|
|
141
138
|
}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { DockviewPanelApi } from '../api/groupPanelApi';
|
|
2
|
-
import { Event } from '../events';
|
|
3
2
|
import { IDisposable } from '../lifecycle';
|
|
4
3
|
import { HeaderPartInitParameters } from './types';
|
|
5
4
|
import { IPanel, PanelInitParameters, PanelUpdateEvent, Parameters } from '../panel/types';
|
|
@@ -20,10 +19,7 @@ export interface IGroupPanel extends IDisposable, IPanel {
|
|
|
20
19
|
readonly title: string;
|
|
21
20
|
readonly suppressClosable: boolean;
|
|
22
21
|
updateParentGroup(group: GroupviewPanel, isGroupActive: boolean): void;
|
|
23
|
-
setDirty(isDirty: boolean): void;
|
|
24
|
-
close?(): Promise<boolean>;
|
|
25
22
|
init(params: IGroupPanelInitParameters): void;
|
|
26
|
-
onDidStateChange: Event<void>;
|
|
27
23
|
toJSON(): GroupviewPanelState;
|
|
28
24
|
update(event: GroupPanelUpdateEvent): void;
|
|
29
25
|
}
|
|
@@ -35,7 +31,4 @@ export interface GroupviewPanelState {
|
|
|
35
31
|
[key: string]: any;
|
|
36
32
|
};
|
|
37
33
|
suppressClosable?: boolean;
|
|
38
|
-
state?: {
|
|
39
|
-
[key: string]: any;
|
|
40
|
-
};
|
|
41
34
|
}
|
|
@@ -11,8 +11,7 @@ import { DockviewDropTargets } from './dnd';
|
|
|
11
11
|
export declare enum GroupChangeKind2 {
|
|
12
12
|
ADD_PANEL = "ADD_PANEL",
|
|
13
13
|
REMOVE_PANEL = "REMOVE_PANEL",
|
|
14
|
-
PANEL_ACTIVE = "PANEL_ACTIVE"
|
|
15
|
-
GROUP_ACTIVE = "GROUP_ACTIVE"
|
|
14
|
+
PANEL_ACTIVE = "PANEL_ACTIVE"
|
|
16
15
|
}
|
|
17
16
|
export interface DndService {
|
|
18
17
|
canDisplayOverlay(group: IGroupview, event: DragEvent, target: DockviewDropTargets): boolean;
|
|
@@ -48,20 +47,26 @@ export interface GroupPanelViewState {
|
|
|
48
47
|
activeView?: string;
|
|
49
48
|
id: string;
|
|
50
49
|
}
|
|
50
|
+
export interface GroupviewDropEvent {
|
|
51
|
+
nativeEvent: DragEvent;
|
|
52
|
+
position: Position;
|
|
53
|
+
index?: number;
|
|
54
|
+
}
|
|
51
55
|
export interface IGroupview extends IDisposable, IGridPanelView {
|
|
52
56
|
readonly isActive: boolean;
|
|
53
57
|
readonly size: number;
|
|
54
58
|
readonly panels: IGroupPanel[];
|
|
55
59
|
readonly tabHeight: number | undefined;
|
|
60
|
+
readonly activePanel: IGroupPanel | undefined;
|
|
61
|
+
readonly onDidDrop: Event<GroupviewDropEvent>;
|
|
56
62
|
isPanelActive: (panel: IGroupPanel) => boolean;
|
|
57
|
-
activePanel: IGroupPanel | undefined;
|
|
58
63
|
indexOf(panel: IGroupPanel): number;
|
|
59
64
|
openPanel(panel: IGroupPanel, options?: {
|
|
60
65
|
index?: number;
|
|
61
66
|
skipFocus?: boolean;
|
|
62
67
|
}): void;
|
|
63
|
-
closePanel(panel: IGroupPanel):
|
|
64
|
-
closeAllPanels():
|
|
68
|
+
closePanel(panel: IGroupPanel): void;
|
|
69
|
+
closeAllPanels(): void;
|
|
65
70
|
containsPanel(panel: IGroupPanel): boolean;
|
|
66
71
|
removePanel: (panelOrId: IGroupPanel | string) => IGroupPanel;
|
|
67
72
|
onDidGroupChange: Event<GroupviewChangeEvent>;
|
|
@@ -100,6 +105,8 @@ export declare class Groupview extends CompositeDisposable implements IGroupview
|
|
|
100
105
|
readonly onMove: Event<GroupMoveEvent>;
|
|
101
106
|
private readonly _onDidGroupChange;
|
|
102
107
|
readonly onDidGroupChange: Event<GroupviewChangeEvent>;
|
|
108
|
+
private readonly _onDidDrop;
|
|
109
|
+
readonly onDidDrop: Event<GroupviewDropEvent>;
|
|
103
110
|
get element(): HTMLElement;
|
|
104
111
|
get activePanel(): IGroupPanel | undefined;
|
|
105
112
|
get tabHeight(): number | undefined;
|
|
@@ -134,8 +141,8 @@ export declare class Groupview extends CompositeDisposable implements IGroupview
|
|
|
134
141
|
skipFocus?: boolean;
|
|
135
142
|
}): void;
|
|
136
143
|
removePanel(groupItemOrId: IGroupPanel | string): IGroupPanel;
|
|
137
|
-
closeAllPanels():
|
|
138
|
-
closePanel
|
|
144
|
+
closeAllPanels(): void;
|
|
145
|
+
closePanel(panel: IGroupPanel): void;
|
|
139
146
|
private doClose;
|
|
140
147
|
isPanelActive(panel: IGroupPanel): boolean;
|
|
141
148
|
updateActions(): void;
|
|
@@ -147,7 +154,7 @@ export declare class Groupview extends CompositeDisposable implements IGroupview
|
|
|
147
154
|
private doSetActivePanel;
|
|
148
155
|
private updateMru;
|
|
149
156
|
private updateContainer;
|
|
150
|
-
canDisplayOverlay(
|
|
157
|
+
canDisplayOverlay(event: DragEvent, target: DockviewDropTargets): boolean;
|
|
151
158
|
private handleDropEvent;
|
|
152
159
|
dispose(): void;
|
|
153
160
|
}
|
|
@@ -1,12 +1,3 @@
|
|
|
1
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
4
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
5
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
6
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
7
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
|
-
});
|
|
9
|
-
};
|
|
10
1
|
import { DockviewApi } from '../api/component.api';
|
|
11
2
|
import { getPanelData } from '../dnd/dataTransfer';
|
|
12
3
|
import { Droptarget, Position } from '../dnd/droptarget';
|
|
@@ -21,7 +12,6 @@ export var GroupChangeKind2;
|
|
|
21
12
|
GroupChangeKind2["ADD_PANEL"] = "ADD_PANEL";
|
|
22
13
|
GroupChangeKind2["REMOVE_PANEL"] = "REMOVE_PANEL";
|
|
23
14
|
GroupChangeKind2["PANEL_ACTIVE"] = "PANEL_ACTIVE";
|
|
24
|
-
GroupChangeKind2["GROUP_ACTIVE"] = "GROUP_ACTIVE";
|
|
25
15
|
})(GroupChangeKind2 || (GroupChangeKind2 = {}));
|
|
26
16
|
export class Groupview extends CompositeDisposable {
|
|
27
17
|
constructor(container, accessor, id, options, parent) {
|
|
@@ -42,15 +32,10 @@ export class Groupview extends CompositeDisposable {
|
|
|
42
32
|
this.onMove = this._onMove.event;
|
|
43
33
|
this._onDidGroupChange = new Emitter();
|
|
44
34
|
this.onDidGroupChange = this._onDidGroupChange.event;
|
|
45
|
-
this.
|
|
46
|
-
|
|
47
|
-
return false;
|
|
48
|
-
}
|
|
49
|
-
this.doClose(panel);
|
|
50
|
-
return true;
|
|
51
|
-
});
|
|
35
|
+
this._onDidDrop = new Emitter();
|
|
36
|
+
this.onDidDrop = this._onDidDrop.event;
|
|
52
37
|
this.container.classList.add('groupview');
|
|
53
|
-
this.addDisposables(this._onMove, this._onDidGroupChange);
|
|
38
|
+
this.addDisposables(this._onMove, this._onDidGroupChange, this._onDidChange, this._onDidDrop);
|
|
54
39
|
this.tabsContainer = new TabsContainer(this.accessor, this.parent, {
|
|
55
40
|
tabHeight: options.tabHeight,
|
|
56
41
|
});
|
|
@@ -207,6 +192,8 @@ export class Groupview extends CompositeDisposable {
|
|
|
207
192
|
options.index > this.panels.length) {
|
|
208
193
|
options.index = this.panels.length;
|
|
209
194
|
}
|
|
195
|
+
// ensure the group is updated before we fire any events
|
|
196
|
+
panel.updateParentGroup(this.parent, true);
|
|
210
197
|
if (this._activePanel === panel) {
|
|
211
198
|
this.accessor.doSetGroupActive(this.parent);
|
|
212
199
|
return;
|
|
@@ -227,43 +214,19 @@ export class Groupview extends CompositeDisposable {
|
|
|
227
214
|
return this._removePanel(panelToRemove);
|
|
228
215
|
}
|
|
229
216
|
closeAllPanels() {
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
const
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
if (this._activePanel && index > -1) {
|
|
236
|
-
if (this.panels.indexOf(this._activePanel) < 0) {
|
|
237
|
-
console.warn('active panel not tracked');
|
|
238
|
-
}
|
|
239
|
-
const canClose = !((_a = this._activePanel) === null || _a === void 0 ? void 0 : _a.close) || (yield this._activePanel.close());
|
|
240
|
-
if (!canClose) {
|
|
241
|
-
return false;
|
|
242
|
-
}
|
|
243
|
-
}
|
|
244
|
-
for (let i = 0; i < this.panels.length; i++) {
|
|
245
|
-
if (i === index) {
|
|
246
|
-
continue;
|
|
247
|
-
}
|
|
248
|
-
const panel = this.panels[i];
|
|
249
|
-
this.openPanel(panel);
|
|
250
|
-
if (panel.close) {
|
|
251
|
-
const canClose = yield panel.close();
|
|
252
|
-
if (!canClose) {
|
|
253
|
-
return false;
|
|
254
|
-
}
|
|
255
|
-
}
|
|
217
|
+
if (this.panels.length > 0) {
|
|
218
|
+
// take a copy since we will be edting the array as we iterate through
|
|
219
|
+
const arrPanelCpy = [...this.panels];
|
|
220
|
+
for (const panel of arrPanelCpy) {
|
|
221
|
+
this.doClose(panel);
|
|
256
222
|
}
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
}
|
|
265
|
-
return true;
|
|
266
|
-
});
|
|
223
|
+
}
|
|
224
|
+
else {
|
|
225
|
+
this.accessor.removeGroup(this.parent);
|
|
226
|
+
}
|
|
227
|
+
}
|
|
228
|
+
closePanel(panel) {
|
|
229
|
+
this.doClose(panel);
|
|
267
230
|
}
|
|
268
231
|
doClose(panel) {
|
|
269
232
|
this.accessor.removePanel(panel);
|
|
@@ -406,8 +369,11 @@ export class Groupview extends CompositeDisposable {
|
|
|
406
369
|
this.tabsContainer.show();
|
|
407
370
|
}
|
|
408
371
|
}
|
|
409
|
-
canDisplayOverlay(
|
|
372
|
+
canDisplayOverlay(event, target) {
|
|
410
373
|
// custom overlay handler
|
|
374
|
+
if (this.accessor.options.showDndOverlay) {
|
|
375
|
+
return this.accessor.options.showDndOverlay(event, target);
|
|
376
|
+
}
|
|
411
377
|
return false;
|
|
412
378
|
}
|
|
413
379
|
handleDropEvent(event, position, index) {
|
|
@@ -433,7 +399,7 @@ export class Groupview extends CompositeDisposable {
|
|
|
433
399
|
});
|
|
434
400
|
}
|
|
435
401
|
else {
|
|
436
|
-
|
|
402
|
+
this._onDidDrop.fire({ nativeEvent: event, position, index });
|
|
437
403
|
}
|
|
438
404
|
}
|
|
439
405
|
dispose() {
|
|
@@ -1,8 +1,11 @@
|
|
|
1
1
|
import { IFrameworkPart } from '../panel/types';
|
|
2
2
|
import { IDockviewComponent } from '../dockview/dockviewComponent';
|
|
3
3
|
import { Groupview, GroupOptions } from './groupview';
|
|
4
|
-
import { GridviewPanel } from '../gridview/gridviewPanel';
|
|
5
|
-
export
|
|
4
|
+
import { GridviewPanel, IGridviewPanel } from '../gridview/gridviewPanel';
|
|
5
|
+
export interface IGroupviewPanel extends IGridviewPanel {
|
|
6
|
+
model: Groupview;
|
|
7
|
+
}
|
|
8
|
+
export declare class GroupviewPanel extends GridviewPanel implements IGroupviewPanel {
|
|
6
9
|
private readonly _model;
|
|
7
10
|
get model(): Groupview;
|
|
8
11
|
get minimumHeight(): number;
|
|
@@ -12,6 +12,7 @@ export class ContentContainer extends CompositeDisposable {
|
|
|
12
12
|
this._element = document.createElement('div');
|
|
13
13
|
this._element.className = 'content-container';
|
|
14
14
|
this._element.tabIndex = -1;
|
|
15
|
+
this.addDisposables(this._onDidFocus, this._onDidBlur);
|
|
15
16
|
// for hosted containers
|
|
16
17
|
// 1) register a drop target on the host
|
|
17
18
|
// 2) register window dragStart events to disable pointer events
|
|
@@ -10,33 +10,30 @@ export declare enum MouseEventKind {
|
|
|
10
10
|
CONTEXT_MENU = "CONTEXT_MENU"
|
|
11
11
|
}
|
|
12
12
|
export interface LayoutMouseEvent {
|
|
13
|
-
kind: MouseEventKind;
|
|
14
|
-
event: MouseEvent;
|
|
15
|
-
panel?: IGroupPanel;
|
|
16
|
-
tab?: boolean;
|
|
13
|
+
readonly kind: MouseEventKind;
|
|
14
|
+
readonly event: MouseEvent;
|
|
15
|
+
readonly panel?: IGroupPanel;
|
|
16
|
+
readonly tab?: boolean;
|
|
17
17
|
}
|
|
18
18
|
export interface ITab {
|
|
19
|
-
panelId: string;
|
|
20
|
-
element: HTMLElement;
|
|
19
|
+
readonly panelId: string;
|
|
20
|
+
readonly element: HTMLElement;
|
|
21
21
|
setContent: (element: ITabRenderer) => void;
|
|
22
22
|
onChanged: Event<LayoutMouseEvent>;
|
|
23
23
|
onDrop: Event<DroptargetEvent>;
|
|
24
24
|
setActive(isActive: boolean): void;
|
|
25
25
|
}
|
|
26
26
|
export declare class Tab extends CompositeDisposable implements ITab {
|
|
27
|
-
panelId: string;
|
|
28
|
-
private readonly
|
|
29
|
-
private
|
|
30
|
-
private
|
|
31
|
-
private droptarget;
|
|
27
|
+
readonly panelId: string;
|
|
28
|
+
private readonly group;
|
|
29
|
+
private readonly _element;
|
|
30
|
+
private readonly droptarget;
|
|
32
31
|
private content?;
|
|
33
32
|
private readonly _onChanged;
|
|
34
33
|
readonly onChanged: Event<LayoutMouseEvent>;
|
|
35
34
|
private readonly _onDropped;
|
|
36
35
|
readonly onDrop: Event<DroptargetEvent>;
|
|
37
|
-
private readonly panelTransfer;
|
|
38
36
|
get element(): HTMLElement;
|
|
39
|
-
private iframes;
|
|
40
37
|
constructor(panelId: string, accessor: IDockviewComponent, group: GroupviewPanel);
|
|
41
38
|
setActive(isActive: boolean): void;
|
|
42
39
|
setContent(part: ITabRenderer): void;
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import { addDisposableListener, Emitter } from '../events';
|
|
2
2
|
import { CompositeDisposable } from '../lifecycle';
|
|
3
3
|
import { getPanelData, LocalSelectionTransfer, PanelTransfer, } from '../dnd/dataTransfer';
|
|
4
|
-
import {
|
|
4
|
+
import { toggleClass } from '../dom';
|
|
5
5
|
import { Droptarget } from '../dnd/droptarget';
|
|
6
6
|
import { DockviewDropTargets } from './dnd';
|
|
7
|
+
import { DragHandler } from '../dnd/abstractDragHandler';
|
|
7
8
|
export var MouseEventKind;
|
|
8
9
|
(function (MouseEventKind) {
|
|
9
10
|
MouseEventKind["CLICK"] = "CLICK";
|
|
@@ -13,42 +14,34 @@ export class Tab extends CompositeDisposable {
|
|
|
13
14
|
constructor(panelId, accessor, group) {
|
|
14
15
|
super();
|
|
15
16
|
this.panelId = panelId;
|
|
16
|
-
this.accessor = accessor;
|
|
17
17
|
this.group = group;
|
|
18
18
|
this._onChanged = new Emitter();
|
|
19
19
|
this.onChanged = this._onChanged.event;
|
|
20
20
|
this._onDropped = new Emitter();
|
|
21
21
|
this.onDrop = this._onDropped.event;
|
|
22
|
-
this.panelTransfer = LocalSelectionTransfer.getInstance();
|
|
23
|
-
this.iframes = [];
|
|
24
22
|
this.addDisposables(this._onChanged, this._onDropped);
|
|
25
23
|
this._element = document.createElement('div');
|
|
26
24
|
this._element.className = 'tab';
|
|
27
25
|
this._element.tabIndex = 0;
|
|
28
26
|
this._element.draggable = true;
|
|
29
|
-
this.addDisposables(
|
|
30
|
-
|
|
31
|
-
...
|
|
32
|
-
|
|
33
|
-
];
|
|
34
|
-
for (const iframe of this.iframes) {
|
|
35
|
-
iframe.style.pointerEvents = 'none';
|
|
27
|
+
this.addDisposables(new (class Handler extends DragHandler {
|
|
28
|
+
constructor() {
|
|
29
|
+
super(...arguments);
|
|
30
|
+
this.panelTransfer = LocalSelectionTransfer.getInstance();
|
|
36
31
|
}
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
32
|
+
getData() {
|
|
33
|
+
this.panelTransfer.setData([new PanelTransfer(accessor.id, group.id, panelId)], PanelTransfer.prototype);
|
|
34
|
+
return {
|
|
35
|
+
dispose: () => {
|
|
36
|
+
this.panelTransfer.clearData(PanelTransfer.prototype);
|
|
37
|
+
},
|
|
38
|
+
};
|
|
44
39
|
}
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
iframe.style.pointerEvents = 'auto';
|
|
40
|
+
dispose() {
|
|
41
|
+
//
|
|
48
42
|
}
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
}), addDisposableListener(this._element, 'mousedown', (event) => {
|
|
43
|
+
})(this._element));
|
|
44
|
+
this.addDisposables(addDisposableListener(this._element, 'mousedown', (event) => {
|
|
52
45
|
if (event.defaultPrevented) {
|
|
53
46
|
return;
|
|
54
47
|
}
|
|
@@ -155,12 +155,10 @@ export class TabsContainer extends CompositeDisposable {
|
|
|
155
155
|
if (!isLeftClick || event.event.defaultPrevented) {
|
|
156
156
|
return;
|
|
157
157
|
}
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
});
|
|
163
|
-
break;
|
|
158
|
+
if (event.kind === MouseEventKind.CLICK) {
|
|
159
|
+
this.group.model.openPanel(panel, {
|
|
160
|
+
skipFocus: alreadyFocused,
|
|
161
|
+
});
|
|
164
162
|
}
|
|
165
163
|
}), tabToAdd.onDrop((event) => {
|
|
166
164
|
this._onDrop.fire({
|
package/dist/esm/index.d.ts
CHANGED
|
@@ -21,7 +21,7 @@ export * from './paneview/paneviewPanel';
|
|
|
21
21
|
export * from './groupview/groupPanel';
|
|
22
22
|
export * from './react';
|
|
23
23
|
export { Position } from './dnd/droptarget';
|
|
24
|
-
export {
|
|
24
|
+
export { FocusEvent, PanelDimensionChangeEvent, VisibilityEvent, ActiveEvent, PanelApi, } from './api/panelApi';
|
|
25
25
|
export { SizeEvent, GridviewPanelApi, GridConstraintChangeEvent, } from './api/gridviewPanelApi';
|
|
26
26
|
export { TitleEvent, SuppressClosableEvent, DockviewPanelApi, } from './api/groupPanelApi';
|
|
27
27
|
export { PanelSizeEvent, PanelConstraintChangeEvent, SplitviewPanelApi, } from './api/splitviewPanelApi';
|
package/dist/esm/lifecycle.js
CHANGED
|
@@ -14,7 +14,7 @@ export class CompositeDisposable {
|
|
|
14
14
|
return new CompositeDisposable(...args);
|
|
15
15
|
}
|
|
16
16
|
addDisposables(...args) {
|
|
17
|
-
args
|
|
17
|
+
args.forEach((arg) => this.disposables.push(arg));
|
|
18
18
|
}
|
|
19
19
|
dispose() {
|
|
20
20
|
this.disposables.forEach((arg) => arg.dispose());
|
|
@@ -33,6 +33,7 @@ export class MutableDisposable {
|
|
|
33
33
|
dispose() {
|
|
34
34
|
if (this._disposable) {
|
|
35
35
|
this._disposable.dispose();
|
|
36
|
+
this._disposable = Disposable.NONE;
|
|
36
37
|
}
|
|
37
38
|
}
|
|
38
39
|
}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { State } from '../api/panelApi';
|
|
2
1
|
import { IDisposable } from '../lifecycle';
|
|
3
2
|
import { LayoutPriority } from '../splitview/core/splitview';
|
|
4
3
|
/**
|
|
@@ -9,7 +8,6 @@ export interface Parameters {
|
|
|
9
8
|
}
|
|
10
9
|
export interface PanelInitParameters {
|
|
11
10
|
params: Parameters;
|
|
12
|
-
state?: State;
|
|
13
11
|
}
|
|
14
12
|
export interface PanelUpdateEvent<T extends Parameters = Parameters> {
|
|
15
13
|
params: Partial<T>;
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { PaneTransfer } from '../dnd/dataTransfer';
|
|
2
2
|
import { DroptargetEvent } from '../dnd/droptarget';
|
|
3
|
-
import { Event } from '../events';
|
|
4
3
|
import { Orientation } from '../splitview/core/splitview';
|
|
5
4
|
import { IPaneviewPanel, PaneviewPanel } from './paneviewPanel';
|
|
6
5
|
export interface PaneviewDropEvent2 extends DroptargetEvent {
|
|
@@ -11,7 +10,8 @@ export declare abstract class DraggablePaneviewPanel extends PaneviewPanel {
|
|
|
11
10
|
private handler;
|
|
12
11
|
private target;
|
|
13
12
|
private readonly _onDidDrop;
|
|
14
|
-
readonly onDidDrop: Event<PaneviewDropEvent2>;
|
|
13
|
+
readonly onDidDrop: import("../events").Event<PaneviewDropEvent2>;
|
|
15
14
|
constructor(id: string, component: string, headerComponent: string | undefined, orientation: Orientation, isExpanded: boolean, disableDnd: boolean);
|
|
16
15
|
private initDragFeatures;
|
|
16
|
+
private onDrop;
|
|
17
17
|
}
|