dockview 1.3.1 → 1.4.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 +3 -3
- package/dist/cjs/api/component.api.d.ts +22 -26
- package/dist/cjs/api/component.api.js +24 -21
- package/dist/cjs/api/component.api.js.map +1 -1
- package/dist/cjs/api/groupPanelApi.d.ts +7 -7
- package/dist/cjs/api/groupPanelApi.js +1 -1
- package/dist/cjs/api/groupPanelApi.js.map +1 -1
- package/dist/cjs/dnd/droptarget.d.ts +3 -1
- package/dist/cjs/dnd/droptarget.js +11 -11
- package/dist/cjs/dnd/droptarget.js.map +1 -1
- package/dist/cjs/dockview/components/tab/defaultTab.d.ts +3 -3
- package/dist/cjs/dockview/components/tab/defaultTab.js.map +1 -1
- package/dist/cjs/dockview/components/watermark/watermark.d.ts +2 -2
- package/dist/cjs/dockview/components/watermark/watermark.js.map +1 -1
- package/dist/cjs/dockview/defaultGroupPanelView.d.ts +3 -3
- package/dist/cjs/dockview/defaultGroupPanelView.js.map +1 -1
- package/dist/cjs/dockview/deserializer.d.ts +9 -6
- package/dist/cjs/dockview/deserializer.js +17 -10
- package/dist/cjs/dockview/deserializer.js.map +1 -1
- package/dist/cjs/dockview/dockviewComponent.d.ts +31 -31
- package/dist/cjs/dockview/dockviewComponent.js +31 -28
- package/dist/cjs/dockview/dockviewComponent.js.map +1 -1
- package/dist/cjs/dockview/dockviewGroupPanel.d.ts +6 -6
- package/dist/cjs/dockview/dockviewGroupPanel.js +5 -4
- package/dist/cjs/dockview/dockviewGroupPanel.js.map +1 -1
- package/dist/cjs/dockview/options.d.ts +5 -6
- package/dist/cjs/gridview/baseComponentGridview.d.ts +0 -5
- package/dist/cjs/gridview/baseComponentGridview.js +0 -10
- package/dist/cjs/gridview/baseComponentGridview.js.map +1 -1
- package/dist/cjs/gridview/gridview.d.ts +2 -2
- package/dist/cjs/gridview/gridview.js +1 -1
- package/dist/cjs/gridview/gridview.js.map +1 -1
- package/dist/cjs/gridview/gridviewComponent.d.ts +3 -3
- package/dist/cjs/gridview/gridviewComponent.js +4 -3
- package/dist/cjs/gridview/gridviewComponent.js.map +1 -1
- package/dist/cjs/groupview/groupPanel.d.ts +4 -4
- package/dist/cjs/groupview/groupview.d.ts +52 -39
- package/dist/cjs/groupview/groupview.js +48 -17
- package/dist/cjs/groupview/groupview.js.map +1 -1
- package/dist/cjs/groupview/groupviewPanel.d.ts +16 -2
- package/dist/cjs/groupview/groupviewPanel.js +63 -18
- package/dist/cjs/groupview/groupviewPanel.js.map +1 -1
- package/dist/cjs/groupview/panel/content.d.ts +3 -3
- package/dist/cjs/groupview/panel/content.js.map +1 -1
- package/dist/cjs/groupview/tab.d.ts +4 -4
- package/dist/cjs/groupview/tab.js.map +1 -1
- package/dist/cjs/groupview/titlebar/tabsContainer.d.ts +13 -9
- package/dist/cjs/groupview/titlebar/tabsContainer.js +17 -3
- package/dist/cjs/groupview/titlebar/tabsContainer.js.map +1 -1
- package/dist/cjs/groupview/types.d.ts +4 -4
- package/dist/cjs/index.d.ts +1 -1
- package/dist/cjs/index.js +6 -2
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/paneview/draggablePaneviewPanel.js +2 -2
- package/dist/cjs/paneview/draggablePaneviewPanel.js.map +1 -1
- package/dist/cjs/paneview/paneviewComponent.d.ts +2 -7
- package/dist/cjs/paneview/paneviewComponent.js +11 -17
- package/dist/cjs/paneview/paneviewComponent.js.map +1 -1
- package/dist/cjs/react/deserializer.d.ts +3 -2
- package/dist/cjs/react/deserializer.js +2 -2
- package/dist/cjs/react/deserializer.js.map +1 -1
- package/dist/cjs/react/dockview/dockview.d.ts +2 -3
- package/dist/cjs/react/dockview/dockview.js +0 -1
- package/dist/cjs/react/dockview/dockview.js.map +1 -1
- package/dist/cjs/react/dockview/reactContentPart.d.ts +2 -2
- package/dist/cjs/react/dockview/reactContentPart.js.map +1 -1
- package/dist/cjs/react/dockview/reactHeaderPart.d.ts +2 -2
- package/dist/cjs/react/dockview/reactHeaderPart.js.map +1 -1
- package/dist/cjs/react/dockview/reactWatermarkPart.d.ts +2 -2
- package/dist/cjs/react/dockview/reactWatermarkPart.js.map +1 -1
- package/dist/cjs/react/dockview/v2/reactContentRenderer.d.ts +2 -2
- package/dist/cjs/react/dockview/v2/reactContentRenderer.js.map +1 -1
- package/dist/cjs/react/dockview/v2/webviewContentRenderer.d.ts +2 -2
- package/dist/cjs/react/dockview/v2/webviewContentRenderer.js.map +1 -1
- package/dist/cjs/react/gridview/gridview.d.ts +2 -2
- package/dist/cjs/react/gridview/gridview.js +2 -1
- package/dist/cjs/react/gridview/gridview.js.map +1 -1
- package/dist/cjs/react/paneview/paneview.d.ts +2 -2
- package/dist/cjs/react/splitview/splitview.d.ts +2 -2
- package/dist/cjs/react/splitview/splitview.js +2 -1
- package/dist/cjs/react/splitview/splitview.js.map +1 -1
- package/dist/cjs/splitview/splitviewComponent.d.ts +6 -11
- package/dist/cjs/splitview/splitviewComponent.js +32 -37
- package/dist/cjs/splitview/splitviewComponent.js.map +1 -1
- package/dist/dockview.amd.js +2234 -2208
- package/dist/dockview.amd.min.js +2 -2
- package/dist/dockview.amd.min.noStyle.js +2 -2
- package/dist/dockview.amd.noStyle.js +2234 -2208
- package/dist/dockview.cjs.js +2234 -2208
- package/dist/dockview.esm.js +2234 -2208
- package/dist/dockview.esm.min.js +2 -2
- package/dist/dockview.js +2234 -2208
- package/dist/dockview.min.js +2 -2
- package/dist/dockview.min.noStyle.js +2 -2
- package/dist/dockview.noStyle.js +2234 -2208
- package/dist/esm/api/component.api.d.ts +22 -26
- package/dist/esm/api/component.api.js +12 -21
- package/dist/esm/api/groupPanelApi.d.ts +7 -7
- package/dist/esm/api/groupPanelApi.js +1 -1
- package/dist/esm/dnd/droptarget.d.ts +3 -1
- package/dist/esm/dnd/droptarget.js +11 -11
- package/dist/esm/dockview/components/tab/defaultTab.d.ts +3 -3
- package/dist/esm/dockview/components/watermark/watermark.d.ts +2 -2
- package/dist/esm/dockview/defaultGroupPanelView.d.ts +3 -3
- package/dist/esm/dockview/deserializer.d.ts +9 -6
- package/dist/esm/dockview/deserializer.js +17 -10
- package/dist/esm/dockview/dockviewComponent.d.ts +31 -31
- package/dist/esm/dockview/dockviewComponent.js +31 -28
- package/dist/esm/dockview/dockviewGroupPanel.d.ts +6 -6
- package/dist/esm/dockview/dockviewGroupPanel.js +5 -4
- package/dist/esm/dockview/options.d.ts +5 -6
- package/dist/esm/gridview/baseComponentGridview.d.ts +0 -5
- package/dist/esm/gridview/baseComponentGridview.js +0 -10
- package/dist/esm/gridview/gridview.d.ts +2 -2
- package/dist/esm/gridview/gridviewComponent.d.ts +3 -3
- package/dist/esm/gridview/gridviewComponent.js +4 -3
- package/dist/esm/groupview/groupPanel.d.ts +4 -4
- package/dist/esm/groupview/groupview.d.ts +52 -39
- package/dist/esm/groupview/groupview.js +40 -17
- package/dist/esm/groupview/groupviewPanel.d.ts +16 -2
- package/dist/esm/groupview/groupviewPanel.js +24 -4
- package/dist/esm/groupview/panel/content.d.ts +3 -3
- package/dist/esm/groupview/tab.d.ts +4 -4
- package/dist/esm/groupview/titlebar/tabsContainer.d.ts +13 -9
- package/dist/esm/groupview/titlebar/tabsContainer.js +13 -3
- package/dist/esm/groupview/types.d.ts +4 -4
- package/dist/esm/index.d.ts +1 -1
- package/dist/esm/index.js +1 -1
- package/dist/esm/paneview/draggablePaneviewPanel.js +2 -2
- package/dist/esm/paneview/paneviewComponent.d.ts +2 -7
- package/dist/esm/paneview/paneviewComponent.js +5 -15
- package/dist/esm/react/deserializer.d.ts +3 -2
- package/dist/esm/react/deserializer.js +2 -2
- package/dist/esm/react/dockview/dockview.d.ts +2 -3
- package/dist/esm/react/dockview/dockview.js +0 -1
- package/dist/esm/react/dockview/reactContentPart.d.ts +2 -2
- package/dist/esm/react/dockview/reactHeaderPart.d.ts +2 -2
- package/dist/esm/react/dockview/reactWatermarkPart.d.ts +2 -2
- package/dist/esm/react/dockview/v2/reactContentRenderer.d.ts +2 -2
- package/dist/esm/react/dockview/v2/webviewContentRenderer.d.ts +2 -2
- package/dist/esm/react/gridview/gridview.d.ts +2 -2
- package/dist/esm/react/gridview/gridview.js +2 -1
- package/dist/esm/react/paneview/paneview.d.ts +2 -2
- package/dist/esm/react/splitview/splitview.d.ts +2 -2
- package/dist/esm/react/splitview/splitview.js +2 -1
- package/dist/esm/splitview/splitviewComponent.d.ts +6 -11
- package/dist/esm/splitview/splitviewComponent.js +22 -31
- package/package.json +11 -10
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
import { IDockviewComponent, SerializedDockview } from '../dockview/dockviewComponent';
|
|
1
|
+
import { DockviewDropEvent, IDockviewComponent, SerializedDockview } from '../dockview/dockviewComponent';
|
|
2
2
|
import { AddGroupOptions, AddPanelOptions, MovementOptions } from '../dockview/options';
|
|
3
3
|
import { Direction } from '../gridview/baseComponentGridview';
|
|
4
4
|
import { AddComponentOptions, IGridviewComponent, SerializedGridview } from '../gridview/gridviewComponent';
|
|
5
5
|
import { IGridviewPanel } from '../gridview/gridviewPanel';
|
|
6
|
-
import {
|
|
6
|
+
import { IDockviewPanel } from '../groupview/groupPanel';
|
|
7
7
|
import { AddPaneviewComponentOptions, SerializedPaneview, IPaneviewComponent } from '../paneview/paneviewComponent';
|
|
8
8
|
import { IPaneviewPanel } from '../paneview/paneviewPanel';
|
|
9
9
|
import { AddSplitviewComponentOptions, ISplitviewComponent, SerializedSplitview, SplitviewComponentUpdateOptions } from '../splitview/splitviewComponent';
|
|
10
10
|
import { IView, Orientation, Sizing } from '../splitview/core/splitview';
|
|
11
11
|
import { ISplitviewPanel } from '../splitview/splitviewPanel';
|
|
12
|
-
import { IGroupviewPanel } from '../groupview/groupviewPanel';
|
|
12
|
+
import { GroupPanel, IGroupviewPanel } from '../groupview/groupviewPanel';
|
|
13
13
|
import { Event } from '../events';
|
|
14
14
|
import { PaneviewDropEvent } from '../react';
|
|
15
15
|
export interface CommonApi<T = any> {
|
|
@@ -19,7 +19,6 @@ export interface CommonApi<T = any> {
|
|
|
19
19
|
readonly onDidLayoutFromJSON: Event<void>;
|
|
20
20
|
focus(): void;
|
|
21
21
|
layout(width: number, height: number): void;
|
|
22
|
-
resizeToFit(): void;
|
|
23
22
|
fromJSON(data: T): void;
|
|
24
23
|
toJSON(): T;
|
|
25
24
|
}
|
|
@@ -31,6 +30,7 @@ export declare class SplitviewApi implements CommonApi<SerializedSplitview> {
|
|
|
31
30
|
get width(): number;
|
|
32
31
|
get length(): number;
|
|
33
32
|
get orientation(): Orientation;
|
|
33
|
+
get panels(): ISplitviewPanel[];
|
|
34
34
|
get onDidLayoutFromJSON(): Event<void>;
|
|
35
35
|
get onDidLayoutChange(): Event<void>;
|
|
36
36
|
get onDidAddView(): Event<IView>;
|
|
@@ -39,13 +39,11 @@ export declare class SplitviewApi implements CommonApi<SerializedSplitview> {
|
|
|
39
39
|
updateOptions(options: SplitviewComponentUpdateOptions): void;
|
|
40
40
|
removePanel(panel: ISplitviewPanel, sizing?: Sizing): void;
|
|
41
41
|
setVisible(panel: ISplitviewPanel, isVisible: boolean): void;
|
|
42
|
-
getPanels(): ISplitviewPanel[];
|
|
43
42
|
focus(): void;
|
|
44
43
|
getPanel(id: string): ISplitviewPanel | undefined;
|
|
45
44
|
setActive(panel: ISplitviewPanel): void;
|
|
46
45
|
layout(width: number, height: number): void;
|
|
47
|
-
addPanel(options: AddSplitviewComponentOptions):
|
|
48
|
-
resizeToFit(): void;
|
|
46
|
+
addPanel(options: AddSplitviewComponentOptions): ISplitviewPanel;
|
|
49
47
|
movePanel(from: number, to: number): void;
|
|
50
48
|
fromJSON(data: SerializedSplitview): void;
|
|
51
49
|
toJSON(): SerializedSplitview;
|
|
@@ -56,20 +54,19 @@ export declare class PaneviewApi implements CommonApi<SerializedPaneview> {
|
|
|
56
54
|
get maximumSize(): number;
|
|
57
55
|
get height(): number;
|
|
58
56
|
get width(): number;
|
|
57
|
+
get panels(): IPaneviewPanel[];
|
|
59
58
|
get onDidLayoutChange(): Event<void>;
|
|
60
59
|
get onDidLayoutFromJSON(): Event<void>;
|
|
61
60
|
get onDidAddView(): Event<IPaneviewPanel>;
|
|
62
61
|
get onDidRemoveView(): Event<IPaneviewPanel>;
|
|
63
62
|
get onDidDrop(): Event<PaneviewDropEvent>;
|
|
64
63
|
constructor(component: IPaneviewComponent);
|
|
65
|
-
getPanels(): IPaneviewPanel[];
|
|
66
64
|
removePanel(panel: IPaneviewPanel): void;
|
|
67
65
|
getPanel(id: string): IPaneviewPanel | undefined;
|
|
68
66
|
movePanel(from: number, to: number): void;
|
|
69
67
|
focus(): void;
|
|
70
68
|
layout(width: number, height: number): void;
|
|
71
|
-
addPanel(options: AddPaneviewComponentOptions):
|
|
72
|
-
resizeToFit(): void;
|
|
69
|
+
addPanel(options: AddPaneviewComponentOptions): IPaneviewPanel;
|
|
73
70
|
fromJSON(data: SerializedPaneview): void;
|
|
74
71
|
toJSON(): SerializedPaneview;
|
|
75
72
|
}
|
|
@@ -92,14 +89,13 @@ export declare class GridviewApi implements CommonApi<SerializedGridview> {
|
|
|
92
89
|
constructor(component: IGridviewComponent);
|
|
93
90
|
focus(): void;
|
|
94
91
|
layout(width: number, height: number, force?: boolean): void;
|
|
95
|
-
addPanel(options: AddComponentOptions):
|
|
92
|
+
addPanel(options: AddComponentOptions): IGridviewPanel;
|
|
96
93
|
removePanel(panel: IGridviewPanel, sizing?: Sizing): void;
|
|
97
94
|
movePanel(panel: IGridviewPanel, options: {
|
|
98
95
|
direction: Direction;
|
|
99
96
|
reference: string;
|
|
100
97
|
size?: number;
|
|
101
98
|
}): void;
|
|
102
|
-
resizeToFit(): void;
|
|
103
99
|
getPanel(id: string): IGridviewPanel | undefined;
|
|
104
100
|
toggleVisibility(panel: IGridviewPanel): void;
|
|
105
101
|
setVisible(panel: IGridviewPanel, visible: boolean): void;
|
|
@@ -117,32 +113,32 @@ export declare class DockviewApi implements CommonApi<SerializedDockview> {
|
|
|
117
113
|
get maximumWidth(): number;
|
|
118
114
|
get size(): number;
|
|
119
115
|
get totalPanels(): number;
|
|
120
|
-
get onDidActiveGroupChange(): Event<
|
|
121
|
-
get onDidAddGroup(): Event<
|
|
122
|
-
get onDidRemoveGroup(): Event<
|
|
123
|
-
get onDidActivePanelChange(): Event<
|
|
124
|
-
get onDidAddPanel(): Event<
|
|
125
|
-
get onDidRemovePanel(): Event<
|
|
116
|
+
get onDidActiveGroupChange(): Event<GroupPanel | undefined>;
|
|
117
|
+
get onDidAddGroup(): Event<GroupPanel>;
|
|
118
|
+
get onDidRemoveGroup(): Event<GroupPanel>;
|
|
119
|
+
get onDidActivePanelChange(): Event<IDockviewPanel | undefined>;
|
|
120
|
+
get onDidAddPanel(): Event<IDockviewPanel>;
|
|
121
|
+
get onDidRemovePanel(): Event<IDockviewPanel>;
|
|
126
122
|
get onDidLayoutFromJSON(): Event<void>;
|
|
127
123
|
get onDidLayoutChange(): Event<void>;
|
|
128
|
-
get
|
|
129
|
-
get
|
|
130
|
-
get
|
|
131
|
-
get
|
|
124
|
+
get onDidDrop(): Event<DockviewDropEvent>;
|
|
125
|
+
get panels(): IDockviewPanel[];
|
|
126
|
+
get groups(): GroupPanel[];
|
|
127
|
+
get activePanel(): IDockviewPanel | undefined;
|
|
128
|
+
get activeGroup(): GroupPanel | undefined;
|
|
132
129
|
constructor(component: IDockviewComponent);
|
|
133
130
|
getTabHeight(): number | undefined;
|
|
134
131
|
setTabHeight(height: number | undefined): void;
|
|
135
132
|
focus(): void;
|
|
136
|
-
getPanel(id: string):
|
|
133
|
+
getPanel(id: string): IDockviewPanel | undefined;
|
|
137
134
|
layout(width: number, height: number, force?: boolean): void;
|
|
138
|
-
addPanel(options: AddPanelOptions):
|
|
135
|
+
addPanel(options: AddPanelOptions): IDockviewPanel;
|
|
139
136
|
addEmptyGroup(options?: AddGroupOptions): void;
|
|
140
137
|
moveToNext(options?: MovementOptions): void;
|
|
141
138
|
moveToPrevious(options?: MovementOptions): void;
|
|
142
139
|
closeAllGroups(): void;
|
|
143
140
|
removeGroup(group: IGroupviewPanel): void;
|
|
144
|
-
|
|
145
|
-
getGroup(id: string): IGroupviewPanel | undefined;
|
|
141
|
+
getGroup(id: string): GroupPanel | undefined;
|
|
146
142
|
fromJSON(data: SerializedDockview): void;
|
|
147
143
|
toJSON(): SerializedDockview;
|
|
148
144
|
}
|
|
@@ -21,6 +21,9 @@ export class SplitviewApi {
|
|
|
21
21
|
get orientation() {
|
|
22
22
|
return this.component.orientation;
|
|
23
23
|
}
|
|
24
|
+
get panels() {
|
|
25
|
+
return this.component.panels;
|
|
26
|
+
}
|
|
24
27
|
get onDidLayoutFromJSON() {
|
|
25
28
|
return this.component.onDidLayoutFromJSON;
|
|
26
29
|
}
|
|
@@ -42,9 +45,6 @@ export class SplitviewApi {
|
|
|
42
45
|
setVisible(panel, isVisible) {
|
|
43
46
|
this.component.setVisible(panel, isVisible);
|
|
44
47
|
}
|
|
45
|
-
getPanels() {
|
|
46
|
-
return this.component.getPanels();
|
|
47
|
-
}
|
|
48
48
|
focus() {
|
|
49
49
|
this.component.focus();
|
|
50
50
|
}
|
|
@@ -58,10 +58,7 @@ export class SplitviewApi {
|
|
|
58
58
|
return this.component.layout(width, height);
|
|
59
59
|
}
|
|
60
60
|
addPanel(options) {
|
|
61
|
-
this.component.addPanel(options);
|
|
62
|
-
}
|
|
63
|
-
resizeToFit() {
|
|
64
|
-
this.component.resizeToFit();
|
|
61
|
+
return this.component.addPanel(options);
|
|
65
62
|
}
|
|
66
63
|
movePanel(from, to) {
|
|
67
64
|
this.component.movePanel(from, to);
|
|
@@ -89,6 +86,9 @@ export class PaneviewApi {
|
|
|
89
86
|
get width() {
|
|
90
87
|
return this.component.width;
|
|
91
88
|
}
|
|
89
|
+
get panels() {
|
|
90
|
+
return this.component.panels;
|
|
91
|
+
}
|
|
92
92
|
get onDidLayoutChange() {
|
|
93
93
|
return this.component.onDidLayoutChange;
|
|
94
94
|
}
|
|
@@ -112,9 +112,6 @@ export class PaneviewApi {
|
|
|
112
112
|
};
|
|
113
113
|
return emitter.event;
|
|
114
114
|
}
|
|
115
|
-
getPanels() {
|
|
116
|
-
return this.component.getPanels();
|
|
117
|
-
}
|
|
118
115
|
removePanel(panel) {
|
|
119
116
|
this.component.removePanel(panel);
|
|
120
117
|
}
|
|
@@ -131,10 +128,7 @@ export class PaneviewApi {
|
|
|
131
128
|
this.component.layout(width, height);
|
|
132
129
|
}
|
|
133
130
|
addPanel(options) {
|
|
134
|
-
this.component.addPanel(options);
|
|
135
|
-
}
|
|
136
|
-
resizeToFit() {
|
|
137
|
-
this.component.resizeToFit();
|
|
131
|
+
return this.component.addPanel(options);
|
|
138
132
|
}
|
|
139
133
|
fromJSON(data) {
|
|
140
134
|
this.component.fromJSON(data);
|
|
@@ -196,7 +190,7 @@ export class GridviewApi {
|
|
|
196
190
|
this.component.layout(width, height, force);
|
|
197
191
|
}
|
|
198
192
|
addPanel(options) {
|
|
199
|
-
this.component.addPanel(options);
|
|
193
|
+
return this.component.addPanel(options);
|
|
200
194
|
}
|
|
201
195
|
removePanel(panel, sizing) {
|
|
202
196
|
this.component.removePanel(panel, sizing);
|
|
@@ -204,9 +198,6 @@ export class GridviewApi {
|
|
|
204
198
|
movePanel(panel, options) {
|
|
205
199
|
this.component.movePanel(panel, options);
|
|
206
200
|
}
|
|
207
|
-
resizeToFit() {
|
|
208
|
-
this.component.resizeToFit();
|
|
209
|
-
}
|
|
210
201
|
getPanel(id) {
|
|
211
202
|
return this.component.getPanel(id);
|
|
212
203
|
}
|
|
@@ -278,6 +269,9 @@ export class DockviewApi {
|
|
|
278
269
|
get onDidLayoutChange() {
|
|
279
270
|
return this.component.onDidLayoutChange;
|
|
280
271
|
}
|
|
272
|
+
get onDidDrop() {
|
|
273
|
+
return this.component.onDidDrop;
|
|
274
|
+
}
|
|
281
275
|
get panels() {
|
|
282
276
|
return this.component.panels;
|
|
283
277
|
}
|
|
@@ -323,9 +317,6 @@ export class DockviewApi {
|
|
|
323
317
|
removeGroup(group) {
|
|
324
318
|
this.component.removeGroup(group);
|
|
325
319
|
}
|
|
326
|
-
resizeToFit() {
|
|
327
|
-
return this.component.resizeToFit();
|
|
328
|
-
}
|
|
329
320
|
getGroup(id) {
|
|
330
321
|
return this.component.getPanel(id);
|
|
331
322
|
}
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import { Emitter } from '../events';
|
|
2
2
|
import { GridviewPanelApiImpl, GridviewPanelApi } from './gridviewPanelApi';
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
3
|
+
import { IDockviewPanel } from '../groupview/groupPanel';
|
|
4
|
+
import { GroupPanel } from '../groupview/groupviewPanel';
|
|
5
5
|
export interface TitleEvent {
|
|
6
6
|
readonly title: string;
|
|
7
7
|
}
|
|
8
8
|
export interface SuppressClosableEvent {
|
|
9
9
|
readonly suppressClosable: boolean;
|
|
10
10
|
}
|
|
11
|
-
export interface DockviewPanelApi extends Omit<GridviewPanelApi, 'setVisible'
|
|
12
|
-
readonly group:
|
|
11
|
+
export interface DockviewPanelApi extends Omit<GridviewPanelApi, 'setVisible'> {
|
|
12
|
+
readonly group: GroupPanel;
|
|
13
13
|
readonly isGroupActive: boolean;
|
|
14
14
|
readonly title: string;
|
|
15
15
|
readonly suppressClosable: boolean;
|
|
@@ -33,9 +33,9 @@ export declare class DockviewPanelApiImpl extends GridviewPanelApiImpl implement
|
|
|
33
33
|
get title(): string;
|
|
34
34
|
get suppressClosable(): boolean;
|
|
35
35
|
get isGroupActive(): boolean;
|
|
36
|
-
set group(value:
|
|
37
|
-
get group():
|
|
38
|
-
constructor(panel:
|
|
36
|
+
set group(value: GroupPanel);
|
|
37
|
+
get group(): GroupPanel;
|
|
38
|
+
constructor(panel: IDockviewPanel, group: GroupPanel);
|
|
39
39
|
setTitle(title: string): void;
|
|
40
40
|
close(): void;
|
|
41
41
|
}
|
|
@@ -16,7 +16,7 @@ export class DockviewPanelApiImpl extends GridviewPanelApiImpl {
|
|
|
16
16
|
this._onDidGroupChange = new Emitter();
|
|
17
17
|
this.onDidGroupChange = this._onDidGroupChange.event;
|
|
18
18
|
this.disposable = new MutableDisposable();
|
|
19
|
-
this.
|
|
19
|
+
this._group = group;
|
|
20
20
|
this.addDisposables(this.disposable, this._onDidTitleChange, this._titleChanged, this._suppressClosableChanged, this._onDidGroupChange, this._onDidActiveGroupChange);
|
|
21
21
|
}
|
|
22
22
|
get title() {
|
|
@@ -7,12 +7,13 @@ export declare enum Position {
|
|
|
7
7
|
Right = "Right",
|
|
8
8
|
Center = "Center"
|
|
9
9
|
}
|
|
10
|
+
declare type Quadrant = 'top' | 'bottom' | 'left' | 'right';
|
|
10
11
|
export interface DroptargetEvent {
|
|
11
12
|
position: Position;
|
|
12
13
|
nativeEvent: DragEvent;
|
|
13
14
|
}
|
|
14
15
|
export declare type DropTargetDirections = 'vertical' | 'horizontal' | 'all' | 'none';
|
|
15
|
-
export declare type CanDisplayOverlay = boolean | ((dragEvent: DragEvent) => boolean);
|
|
16
|
+
export declare type CanDisplayOverlay = boolean | ((dragEvent: DragEvent, state: Quadrant | null) => boolean);
|
|
16
17
|
export declare class Droptarget extends CompositeDisposable {
|
|
17
18
|
private readonly element;
|
|
18
19
|
private readonly options;
|
|
@@ -34,3 +35,4 @@ export declare class Droptarget extends CompositeDisposable {
|
|
|
34
35
|
private calculateQuadrant;
|
|
35
36
|
private removeDropTarget;
|
|
36
37
|
}
|
|
38
|
+
export {};
|
|
@@ -23,12 +23,22 @@ export class Droptarget extends CompositeDisposable {
|
|
|
23
23
|
this.addDisposables(this._onDrop, new DragAndDropObserver(this.element, {
|
|
24
24
|
onDragEnter: () => undefined,
|
|
25
25
|
onDragOver: (e) => {
|
|
26
|
+
const width = this.element.clientWidth;
|
|
27
|
+
const height = this.element.clientHeight;
|
|
28
|
+
if (width === 0 || height === 0) {
|
|
29
|
+
return; // avoid div!0
|
|
30
|
+
}
|
|
31
|
+
const x = e.offsetX;
|
|
32
|
+
const y = e.offsetY;
|
|
33
|
+
const xp = (100 * x) / width;
|
|
34
|
+
const yp = (100 * y) / height;
|
|
35
|
+
const quadrant = this.calculateQuadrant(this.options.validOverlays, xp, yp);
|
|
26
36
|
if (isBooleanValue(this.options.canDisplayOverlay)) {
|
|
27
37
|
if (!this.options.canDisplayOverlay) {
|
|
28
38
|
return;
|
|
29
39
|
}
|
|
30
40
|
}
|
|
31
|
-
else if (!this.options.canDisplayOverlay(e)) {
|
|
41
|
+
else if (!this.options.canDisplayOverlay(e, quadrant)) {
|
|
32
42
|
return;
|
|
33
43
|
}
|
|
34
44
|
if (!this.target) {
|
|
@@ -47,16 +57,6 @@ export class Droptarget extends CompositeDisposable {
|
|
|
47
57
|
if (!this.target || !this.overlay) {
|
|
48
58
|
return;
|
|
49
59
|
}
|
|
50
|
-
const width = this.target.clientWidth;
|
|
51
|
-
const height = this.target.clientHeight;
|
|
52
|
-
if (width === 0 || height === 0) {
|
|
53
|
-
return; // avoid div!0
|
|
54
|
-
}
|
|
55
|
-
const x = e.offsetX;
|
|
56
|
-
const y = e.offsetY;
|
|
57
|
-
const xp = (100 * x) / width;
|
|
58
|
-
const yp = (100 * y) / height;
|
|
59
|
-
const quadrant = this.calculateQuadrant(this.options.validOverlays, xp, yp);
|
|
60
60
|
const isSmallX = width < 100;
|
|
61
61
|
const isSmallY = height < 100;
|
|
62
62
|
this.toggleClasses(quadrant, isSmallX, isSmallY);
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { CompositeDisposable } from '../../../lifecycle';
|
|
2
2
|
import { ITabRenderer, GroupPanelPartInitParameters } from '../../../groupview/types';
|
|
3
3
|
import { PanelUpdateEvent } from '../../../panel/types';
|
|
4
|
-
import {
|
|
4
|
+
import { GroupPanel } from '../../../groupview/groupviewPanel';
|
|
5
5
|
export declare class WrappedTab implements ITabRenderer {
|
|
6
6
|
private readonly renderer;
|
|
7
7
|
private readonly _element;
|
|
@@ -16,7 +16,7 @@ export declare class WrappedTab implements ITabRenderer {
|
|
|
16
16
|
toJSON(): object;
|
|
17
17
|
focus(): void;
|
|
18
18
|
init(parameters: GroupPanelPartInitParameters): void;
|
|
19
|
-
updateParentGroup(group:
|
|
19
|
+
updateParentGroup(group: GroupPanel, isPanelVisible: boolean): void;
|
|
20
20
|
dispose(): void;
|
|
21
21
|
}
|
|
22
22
|
export declare class DefaultTab extends CompositeDisposable implements ITabRenderer {
|
|
@@ -37,7 +37,7 @@ export declare class DefaultTab extends CompositeDisposable implements ITabRende
|
|
|
37
37
|
};
|
|
38
38
|
focus(): void;
|
|
39
39
|
init(params: GroupPanelPartInitParameters): void;
|
|
40
|
-
updateParentGroup(group:
|
|
40
|
+
updateParentGroup(group: GroupPanel, isPanelVisible: boolean): void;
|
|
41
41
|
layout(_width: number, _height: number): void;
|
|
42
42
|
private render;
|
|
43
43
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { GroupPanelPartInitParameters, IWatermarkRenderer } from '../../../groupview/types';
|
|
2
2
|
import { CompositeDisposable } from '../../../lifecycle';
|
|
3
|
-
import {
|
|
3
|
+
import { GroupPanel } from '../../../groupview/groupviewPanel';
|
|
4
4
|
import { PanelUpdateEvent } from '../../../panel/types';
|
|
5
5
|
export declare class Watermark extends CompositeDisposable implements IWatermarkRenderer {
|
|
6
6
|
private _element;
|
|
@@ -13,7 +13,7 @@ export declare class Watermark extends CompositeDisposable implements IWatermark
|
|
|
13
13
|
toJSON(): {};
|
|
14
14
|
layout(_width: number, _height: number): void;
|
|
15
15
|
init(params: GroupPanelPartInitParameters): void;
|
|
16
|
-
updateParentGroup(group:
|
|
16
|
+
updateParentGroup(group: GroupPanel, _visible: boolean): void;
|
|
17
17
|
get element(): HTMLElement;
|
|
18
18
|
private render;
|
|
19
19
|
dispose(): void;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { WrappedTab } from './components/tab/defaultTab';
|
|
2
2
|
import { GroupPanelPartInitParameters, IActionsRenderer, IContentRenderer, ITabRenderer } from '../groupview/types';
|
|
3
|
-
import {
|
|
3
|
+
import { GroupPanel } from '../groupview/groupviewPanel';
|
|
4
4
|
import { IDisposable } from '../lifecycle';
|
|
5
5
|
import { GroupPanelUpdateEvent } from '../groupview/groupPanel';
|
|
6
6
|
export interface IGroupPanelView extends IDisposable {
|
|
@@ -10,7 +10,7 @@ export interface IGroupPanelView extends IDisposable {
|
|
|
10
10
|
update(event: GroupPanelUpdateEvent): void;
|
|
11
11
|
layout(width: number, height: number): void;
|
|
12
12
|
init(params: GroupPanelPartInitParameters): void;
|
|
13
|
-
updateParentGroup(group:
|
|
13
|
+
updateParentGroup(group: GroupPanel, isPanelVisible: boolean): void;
|
|
14
14
|
toJSON(): {};
|
|
15
15
|
}
|
|
16
16
|
export declare class DefaultGroupPanelView implements IGroupPanelView {
|
|
@@ -26,7 +26,7 @@ export declare class DefaultGroupPanelView implements IGroupPanelView {
|
|
|
26
26
|
actions?: IActionsRenderer;
|
|
27
27
|
});
|
|
28
28
|
init(params: GroupPanelPartInitParameters): void;
|
|
29
|
-
updateParentGroup(group:
|
|
29
|
+
updateParentGroup(group: GroupPanel, isPanelVisible: boolean): void;
|
|
30
30
|
layout(width: number, height: number): void;
|
|
31
31
|
update(event: GroupPanelUpdateEvent): void;
|
|
32
32
|
toJSON(): {};
|
|
@@ -1,14 +1,17 @@
|
|
|
1
1
|
import { IGridView, ISerializedLeafNode, IViewDeserializer } from '../gridview/gridview';
|
|
2
|
-
import { GroupviewPanelState,
|
|
2
|
+
import { GroupviewPanelState, IDockviewPanel } from '../groupview/groupPanel';
|
|
3
|
+
import { GroupPanelViewState } from '../groupview/groupview';
|
|
4
|
+
import { GroupPanel } from '../groupview/groupviewPanel';
|
|
3
5
|
import { DockviewComponent } from './dockviewComponent';
|
|
4
6
|
export interface IPanelDeserializer {
|
|
5
|
-
fromJSON(panelData: GroupviewPanelState):
|
|
7
|
+
fromJSON(panelData: GroupviewPanelState, group: GroupPanel): IDockviewPanel;
|
|
8
|
+
}
|
|
9
|
+
export interface PanelDeserializerOptions {
|
|
10
|
+
createPanel: (id: string, group: GroupPanel) => IDockviewPanel;
|
|
6
11
|
}
|
|
7
12
|
export declare class DefaultDeserializer implements IViewDeserializer {
|
|
8
13
|
private readonly layout;
|
|
9
14
|
private panelDeserializer;
|
|
10
|
-
constructor(layout: DockviewComponent, panelDeserializer:
|
|
11
|
-
|
|
12
|
-
});
|
|
13
|
-
fromJSON(node: ISerializedLeafNode): IGridView;
|
|
15
|
+
constructor(layout: DockviewComponent, panelDeserializer: PanelDeserializerOptions);
|
|
16
|
+
fromJSON(node: ISerializedLeafNode<GroupPanelViewState>): IGridView;
|
|
14
17
|
}
|
|
@@ -4,17 +4,24 @@ export class DefaultDeserializer {
|
|
|
4
4
|
this.panelDeserializer = panelDeserializer;
|
|
5
5
|
}
|
|
6
6
|
fromJSON(node) {
|
|
7
|
-
const
|
|
8
|
-
const
|
|
9
|
-
const
|
|
7
|
+
const data = node.data;
|
|
8
|
+
const children = data.views;
|
|
9
|
+
const active = data.activeView;
|
|
10
|
+
const group = this.layout.createGroup({
|
|
11
|
+
id: data.id,
|
|
12
|
+
locked: !!data.locked,
|
|
13
|
+
hideHeader: !!data.hideHeader,
|
|
14
|
+
});
|
|
10
15
|
for (const child of children) {
|
|
11
|
-
const panel = this.panelDeserializer.createPanel(child);
|
|
12
|
-
|
|
16
|
+
const panel = this.panelDeserializer.createPanel(child, group);
|
|
17
|
+
const isActive = typeof active === 'string' && active === panel.id;
|
|
18
|
+
group.model.openPanel(panel, {
|
|
19
|
+
skipSetActive: !isActive,
|
|
20
|
+
});
|
|
13
21
|
}
|
|
14
|
-
|
|
15
|
-
panels
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
});
|
|
22
|
+
if (!group.activePanel && group.panels.length > 0) {
|
|
23
|
+
group.model.openPanel(group.panels[group.panels.length - 1]);
|
|
24
|
+
}
|
|
25
|
+
return group;
|
|
19
26
|
}
|
|
20
27
|
}
|
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
import { SerializedGridObject } from '../gridview/gridview';
|
|
2
2
|
import { Position } from '../dnd/droptarget';
|
|
3
|
-
import { GroupviewPanelState,
|
|
3
|
+
import { GroupviewPanelState, IDockviewPanel } from '../groupview/groupPanel';
|
|
4
4
|
import { Event } from '../events';
|
|
5
5
|
import { IWatermarkRenderer } from '../groupview/types';
|
|
6
6
|
import { IPanelDeserializer } from './deserializer';
|
|
7
|
-
import { AddGroupOptions, AddPanelOptions,
|
|
7
|
+
import { AddGroupOptions, AddPanelOptions, DockviewComponentOptions, MovementOptions, TabContextMenuEvent } from './options';
|
|
8
8
|
import { BaseGrid, IBaseGrid } from '../gridview/baseComponentGridview';
|
|
9
9
|
import { DockviewApi } from '../api/component.api';
|
|
10
10
|
import { LayoutMouseEvent } from '../groupview/tab';
|
|
11
11
|
import { Orientation } from '../splitview/core/splitview';
|
|
12
12
|
import { GroupOptions, GroupPanelViewState, GroupviewDropEvent } from '../groupview/groupview';
|
|
13
|
-
import {
|
|
13
|
+
import { GroupPanel } from '../groupview/groupviewPanel';
|
|
14
14
|
export interface PanelReference {
|
|
15
15
|
update: (event: {
|
|
16
16
|
params: {
|
|
@@ -38,21 +38,21 @@ export declare type DockviewComponentUpdateOptions = Pick<DockviewComponentOptio
|
|
|
38
38
|
export interface DockviewDropEvent extends GroupviewDropEvent {
|
|
39
39
|
api: DockviewApi;
|
|
40
40
|
}
|
|
41
|
-
export interface IDockviewComponent extends IBaseGrid<
|
|
42
|
-
readonly activePanel:
|
|
41
|
+
export interface IDockviewComponent extends IBaseGrid<GroupPanel> {
|
|
42
|
+
readonly activePanel: IDockviewPanel | undefined;
|
|
43
43
|
readonly totalPanels: number;
|
|
44
|
-
readonly panels:
|
|
44
|
+
readonly panels: IDockviewPanel[];
|
|
45
45
|
readonly onDidDrop: Event<DockviewDropEvent>;
|
|
46
46
|
tabHeight: number | undefined;
|
|
47
47
|
deserializer: IPanelDeserializer | undefined;
|
|
48
48
|
updateOptions(options: DockviewComponentUpdateOptions): void;
|
|
49
|
-
moveGroupOrPanel(referenceGroup:
|
|
50
|
-
doSetGroupActive: (group:
|
|
51
|
-
removeGroup: (group:
|
|
49
|
+
moveGroupOrPanel(referenceGroup: GroupPanel, groupId: string, itemId: string, target: Position, index?: number): void;
|
|
50
|
+
doSetGroupActive: (group: GroupPanel, skipFocus?: boolean) => void;
|
|
51
|
+
removeGroup: (group: GroupPanel) => void;
|
|
52
52
|
options: DockviewComponentOptions;
|
|
53
|
-
addPanel(options: AddPanelOptions):
|
|
54
|
-
removePanel(panel:
|
|
55
|
-
getGroupPanel: (id: string) =>
|
|
53
|
+
addPanel(options: AddPanelOptions): IDockviewPanel;
|
|
54
|
+
removePanel(panel: IDockviewPanel): void;
|
|
55
|
+
getGroupPanel: (id: string) => IDockviewPanel | undefined;
|
|
56
56
|
fireMouseEvent(event: LayoutMouseEvent): void;
|
|
57
57
|
createWatermarkComponent(): IWatermarkRenderer;
|
|
58
58
|
addEmptyGroup(options?: AddGroupOptions): void;
|
|
@@ -61,16 +61,16 @@ export interface IDockviewComponent extends IBaseGrid<GroupviewPanel> {
|
|
|
61
61
|
onTabContextMenu: Event<TabContextMenuEvent>;
|
|
62
62
|
moveToNext(options?: MovementOptions): void;
|
|
63
63
|
moveToPrevious(options?: MovementOptions): void;
|
|
64
|
-
setActivePanel(panel:
|
|
64
|
+
setActivePanel(panel: IDockviewPanel): void;
|
|
65
65
|
focus(): void;
|
|
66
66
|
toJSON(): SerializedDockview;
|
|
67
67
|
fromJSON(data: SerializedDockview): void;
|
|
68
|
-
readonly onDidRemovePanel: Event<
|
|
69
|
-
readonly onDidAddPanel: Event<
|
|
68
|
+
readonly onDidRemovePanel: Event<IDockviewPanel>;
|
|
69
|
+
readonly onDidAddPanel: Event<IDockviewPanel>;
|
|
70
70
|
readonly onDidLayoutfromJSON: Event<void>;
|
|
71
|
-
readonly onDidActivePanelChange: Event<
|
|
71
|
+
readonly onDidActivePanelChange: Event<IDockviewPanel | undefined>;
|
|
72
72
|
}
|
|
73
|
-
export declare class DockviewComponent extends BaseGrid<
|
|
73
|
+
export declare class DockviewComponent extends BaseGrid<GroupPanel> implements IDockviewComponent {
|
|
74
74
|
private _deserializer;
|
|
75
75
|
private _api;
|
|
76
76
|
private _options;
|
|
@@ -81,26 +81,26 @@ export declare class DockviewComponent extends BaseGrid<GroupviewPanel> implemen
|
|
|
81
81
|
private readonly _onDidDrop;
|
|
82
82
|
readonly onDidDrop: Event<DockviewDropEvent>;
|
|
83
83
|
private readonly _onDidRemovePanel;
|
|
84
|
-
readonly onDidRemovePanel: Event<
|
|
84
|
+
readonly onDidRemovePanel: Event<IDockviewPanel>;
|
|
85
85
|
private readonly _onDidAddPanel;
|
|
86
|
-
readonly onDidAddPanel: Event<
|
|
86
|
+
readonly onDidAddPanel: Event<IDockviewPanel>;
|
|
87
87
|
private readonly _onDidLayoutfromJSON;
|
|
88
88
|
readonly onDidLayoutfromJSON: Event<void>;
|
|
89
89
|
private readonly _onDidActivePanelChange;
|
|
90
|
-
readonly onDidActivePanelChange: Event<
|
|
90
|
+
readonly onDidActivePanelChange: Event<IDockviewPanel | undefined>;
|
|
91
91
|
get totalPanels(): number;
|
|
92
|
-
get panels():
|
|
92
|
+
get panels(): IDockviewPanel[];
|
|
93
93
|
get deserializer(): IPanelDeserializer | undefined;
|
|
94
94
|
set deserializer(value: IPanelDeserializer | undefined);
|
|
95
95
|
get options(): DockviewComponentOptions;
|
|
96
|
-
get activePanel():
|
|
96
|
+
get activePanel(): IDockviewPanel | undefined;
|
|
97
97
|
set tabHeight(height: number | undefined);
|
|
98
98
|
get tabHeight(): number | undefined;
|
|
99
99
|
constructor(element: HTMLElement, options: DockviewComponentOptions);
|
|
100
100
|
updateOptions(options: DockviewComponentUpdateOptions): void;
|
|
101
101
|
focus(): void;
|
|
102
|
-
getGroupPanel(id: string):
|
|
103
|
-
setActivePanel(panel:
|
|
102
|
+
getGroupPanel(id: string): IDockviewPanel | undefined;
|
|
103
|
+
setActivePanel(panel: IDockviewPanel): void;
|
|
104
104
|
moveToNext(options?: MovementOptions): void;
|
|
105
105
|
moveToPrevious(options?: MovementOptions): void;
|
|
106
106
|
/**
|
|
@@ -112,21 +112,21 @@ export declare class DockviewComponent extends BaseGrid<GroupviewPanel> implemen
|
|
|
112
112
|
fromJSON(data: SerializedDockview): void;
|
|
113
113
|
closeAllGroups(): void;
|
|
114
114
|
fireMouseEvent(event: LayoutMouseEvent): void;
|
|
115
|
-
addPanel(options: AddPanelOptions):
|
|
116
|
-
removePanel(panel:
|
|
115
|
+
addPanel(options: AddPanelOptions): IDockviewPanel;
|
|
116
|
+
removePanel(panel: IDockviewPanel, options?: {
|
|
117
117
|
removeEmptyGroup: boolean;
|
|
118
118
|
skipDispose: boolean;
|
|
119
119
|
}): void;
|
|
120
120
|
createWatermarkComponent(): IWatermarkRenderer;
|
|
121
121
|
addEmptyGroup(options: AddGroupOptions): void;
|
|
122
|
-
removeGroup(group:
|
|
123
|
-
moveGroupOrPanel(referenceGroup:
|
|
124
|
-
doSetGroupActive(group:
|
|
125
|
-
createGroup(options?: GroupOptions):
|
|
122
|
+
removeGroup(group: GroupPanel, skipActive?: boolean): void;
|
|
123
|
+
moveGroupOrPanel(referenceGroup: GroupPanel, groupId: string, itemId: string, target: Position, index?: number): void;
|
|
124
|
+
doSetGroupActive(group: GroupPanel | undefined, skipFocus?: boolean): void;
|
|
125
|
+
createGroup(options?: GroupOptions): GroupPanel;
|
|
126
126
|
private createPanel;
|
|
127
127
|
private createContentComponent;
|
|
128
128
|
private createTabComponent;
|
|
129
|
-
private
|
|
129
|
+
private createGroupAtLocation;
|
|
130
130
|
private findGroup;
|
|
131
131
|
dispose(): void;
|
|
132
132
|
}
|