dock-spawn-ts 2.513.1 → 2.514.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/lib/es5/dock-spawn-ts.js +1 -1
- package/lib/js/ContainerType.d.ts +6 -6
- package/lib/js/ContainerType.js +7 -7
- package/lib/js/Dialog.d.ts +43 -43
- package/lib/js/Dialog.js +136 -136
- package/lib/js/DockConfig.d.ts +7 -7
- package/lib/js/DockConfig.js +8 -8
- package/lib/js/DockGraphDeserializer.d.ts +18 -18
- package/lib/js/DockGraphDeserializer.js +116 -116
- package/lib/js/DockGraphSerializer.d.ts +13 -13
- package/lib/js/DockGraphSerializer.js +40 -40
- package/lib/js/DockLayoutEngine.d.ts +35 -35
- package/lib/js/DockLayoutEngine.js +319 -319
- package/lib/js/DockManager.d.ts +153 -153
- package/lib/js/DockManager.js +728 -728
- package/lib/js/DockManagerContext.d.ts +9 -9
- package/lib/js/DockManagerContext.js +9 -9
- package/lib/js/DockModel.d.ts +8 -8
- package/lib/js/DockModel.js +5 -5
- package/lib/js/DockNode.d.ts +15 -15
- package/lib/js/DockNode.js +61 -61
- package/lib/js/DockWheel.d.ts +40 -40
- package/lib/js/DockWheel.js +200 -200
- package/lib/js/DockWheelItem.d.ts +15 -15
- package/lib/js/DockWheelItem.js +27 -27
- package/lib/js/DocumentManagerContainer.d.ts +16 -16
- package/lib/js/DocumentManagerContainer.js +28 -28
- package/lib/js/DocumentTabPage.d.ts +14 -14
- package/lib/js/DocumentTabPage.js +26 -26
- package/lib/js/DraggableContainer.d.ts +52 -52
- package/lib/js/DraggableContainer.js +183 -183
- package/lib/js/EventHandler.d.ts +7 -7
- package/lib/js/EventHandler.js +11 -11
- package/lib/js/Exports.d.ts +30 -30
- package/lib/js/Exports.js +30 -30
- package/lib/js/FillDockContainer.d.ts +33 -33
- package/lib/js/FillDockContainer.js +69 -69
- package/lib/js/HorizontalDockContainer.d.ts +6 -6
- package/lib/js/HorizontalDockContainer.js +9 -9
- package/lib/js/PanelContainer.d.ts +101 -101
- package/lib/js/PanelContainer.js +384 -384
- package/lib/js/PanelContainer.js.map +1 -1
- package/lib/js/Point.d.ts +5 -5
- package/lib/js/Point.js +6 -6
- package/lib/js/ResizableContainer.d.ts +55 -55
- package/lib/js/ResizableContainer.js +241 -241
- package/lib/js/ResizeHandle.d.ts +15 -15
- package/lib/js/ResizeHandle.js +48 -48
- package/lib/js/SplitterBar.d.ts +35 -35
- package/lib/js/SplitterBar.js +149 -149
- package/lib/js/SplitterDockContainer.d.ts +35 -35
- package/lib/js/SplitterDockContainer.js +65 -65
- package/lib/js/SplitterPanel.d.ts +26 -26
- package/lib/js/SplitterPanel.js +191 -191
- package/lib/js/TabHandle.d.ts +55 -55
- package/lib/js/TabHandle.js +261 -260
- package/lib/js/TabHandle.js.map +1 -1
- package/lib/js/TabHost.d.ts +46 -46
- package/lib/js/TabHost.js +223 -223
- package/lib/js/TabHost.js.map +1 -1
- package/lib/js/TabPage.d.ts +19 -19
- package/lib/js/TabPage.js +74 -73
- package/lib/js/TabPage.js.map +1 -1
- package/lib/js/UndockInitiator.d.ts +31 -31
- package/lib/js/UndockInitiator.js +140 -140
- package/lib/js/Utils.d.ts +14 -14
- package/lib/js/Utils.js +70 -69
- package/lib/js/Utils.js.map +1 -1
- package/lib/js/VerticalDockContainer.d.ts +6 -6
- package/lib/js/VerticalDockContainer.js +9 -9
- package/lib/js/enums/PanelType.d.ts +4 -4
- package/lib/js/enums/PanelType.js +5 -5
- package/lib/js/enums/TabHostDirection.d.ts +6 -6
- package/lib/js/enums/TabHostDirection.js +7 -7
- package/lib/js/enums/WheelTypes.d.ts +11 -11
- package/lib/js/enums/WheelTypes.js +14 -14
- package/lib/js/interfaces/IDockContainer.d.ts +25 -25
- package/lib/js/interfaces/IDockContainer.js +1 -1
- package/lib/js/interfaces/IDockContainerWithSize.d.ts +5 -5
- package/lib/js/interfaces/IDockContainerWithSize.js +1 -1
- package/lib/js/interfaces/ILayoutEventListener.d.ts +26 -26
- package/lib/js/interfaces/ILayoutEventListener.js +1 -1
- package/lib/js/interfaces/IMouseOrTouchEvent.d.ts +6 -6
- package/lib/js/interfaces/IMouseOrTouchEvent.js +1 -1
- package/lib/js/interfaces/INodeInfo.d.ts +7 -7
- package/lib/js/interfaces/INodeInfo.js +1 -1
- package/lib/js/interfaces/IPanelInfo.d.ts +9 -9
- package/lib/js/interfaces/IPanelInfo.js +1 -1
- package/lib/js/interfaces/IRectangle.d.ts +6 -6
- package/lib/js/interfaces/IRectangle.js +1 -1
- package/lib/js/interfaces/ISize.d.ts +4 -4
- package/lib/js/interfaces/ISize.js +1 -1
- package/lib/js/interfaces/IState.d.ts +10 -10
- package/lib/js/interfaces/IState.js +1 -1
- package/lib/js/interfaces/IThickness.d.ts +6 -6
- package/lib/js/interfaces/IThickness.js +1 -1
- package/lib/js/webcomponent/DockSpawnTsWebcomponent.d.ts +30 -30
- package/lib/js/webcomponent/DockSpawnTsWebcomponent.js +153 -152
- package/lib/js/webcomponent/DockSpawnTsWebcomponent.js.map +1 -1
- package/package.json +6 -6
- package/src/PanelContainer.ts +1 -1
- package/src/TabHost.ts +5 -5
- package/src/TabPage.ts +4 -3
package/lib/js/TabPage.js
CHANGED
|
@@ -1,74 +1,75 @@
|
|
|
1
|
-
import { TabHandle } from "./TabHandle.js";
|
|
2
|
-
import { PanelContainer } from "./PanelContainer.js";
|
|
3
|
-
import { Utils } from "./Utils.js";
|
|
4
|
-
export class TabPage {
|
|
5
|
-
constructor(host, container) {
|
|
6
|
-
if (arguments.length === 0) {
|
|
7
|
-
return;
|
|
8
|
-
}
|
|
9
|
-
this.selected = false;
|
|
10
|
-
this.host = host;
|
|
11
|
-
this.container = container;
|
|
12
|
-
this.handle = new TabHandle(this);
|
|
13
|
-
this.containerElement = container.containerElement;
|
|
14
|
-
if (container instanceof PanelContainer) {
|
|
15
|
-
this.panel = container;
|
|
16
|
-
this.panel.onTitleChanged = this.onTitleChanged.bind(this);
|
|
17
|
-
this.onTitleChanged();
|
|
18
|
-
}
|
|
19
|
-
container.tabPage = this;
|
|
20
|
-
}
|
|
21
|
-
onTitleChanged() {
|
|
22
|
-
this.handle.updateTitle();
|
|
23
|
-
if (this.panel) {
|
|
24
|
-
if (this.panel.hasChanges) {
|
|
25
|
-
this.handle.elementText.classList.add('panel-has-changes');
|
|
26
|
-
}
|
|
27
|
-
else {
|
|
28
|
-
this.handle.elementText.classList.remove('panel-has-changes');
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
destroy() {
|
|
33
|
-
this.handle.destroy();
|
|
34
|
-
if (this.container instanceof PanelContainer) {
|
|
35
|
-
let panel = this.container;
|
|
36
|
-
delete panel.onTitleChanged;
|
|
37
|
-
}
|
|
38
|
-
if (this.host.dockManager.activePanel == this.panel)
|
|
39
|
-
this.host.dockManager.activePanel = null;
|
|
40
|
-
this.container.tabPage = null;
|
|
41
|
-
Utils.removeNode(this.containerElement);
|
|
42
|
-
}
|
|
43
|
-
onSelected() {
|
|
44
|
-
this.host.onTabPageSelected(this);
|
|
45
|
-
if (this.container instanceof PanelContainer) {
|
|
46
|
-
let panel = this.container;
|
|
47
|
-
panel.dockManager.notifyOnTabChange(this);
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
|
-
setSelected(flag) {
|
|
51
|
-
this.selected = flag;
|
|
52
|
-
this.handle.setSelected(flag);
|
|
53
|
-
if (!this._initContent)
|
|
54
|
-
this.host.contentElement.appendChild(this.containerElement);
|
|
55
|
-
this._initContent = true;
|
|
56
|
-
if (this.selected) {
|
|
57
|
-
this.containerElement.style.display = 'block';
|
|
58
|
-
this.panel.setVisible(true);
|
|
59
|
-
// force a resize again
|
|
60
|
-
let width = this.host.contentElement.clientWidth;
|
|
61
|
-
let height = this.host.contentElement.clientHeight;
|
|
62
|
-
this.container.resize(width, height);
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
this.
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
}
|
|
1
|
+
import { TabHandle } from "./TabHandle.js";
|
|
2
|
+
import { PanelContainer } from "./PanelContainer.js";
|
|
3
|
+
import { Utils } from "./Utils.js";
|
|
4
|
+
export class TabPage {
|
|
5
|
+
constructor(host, container) {
|
|
6
|
+
if (arguments.length === 0) {
|
|
7
|
+
return;
|
|
8
|
+
}
|
|
9
|
+
this.selected = false;
|
|
10
|
+
this.host = host;
|
|
11
|
+
this.container = container;
|
|
12
|
+
this.handle = new TabHandle(this);
|
|
13
|
+
this.containerElement = container.containerElement;
|
|
14
|
+
if (container instanceof PanelContainer) {
|
|
15
|
+
this.panel = container;
|
|
16
|
+
this.panel.onTitleChanged = this.onTitleChanged.bind(this);
|
|
17
|
+
this.onTitleChanged();
|
|
18
|
+
}
|
|
19
|
+
container.tabPage = this;
|
|
20
|
+
}
|
|
21
|
+
onTitleChanged() {
|
|
22
|
+
this.handle.updateTitle();
|
|
23
|
+
if (this.panel) {
|
|
24
|
+
if (this.panel.hasChanges) {
|
|
25
|
+
this.handle.elementText.classList.add('panel-has-changes');
|
|
26
|
+
}
|
|
27
|
+
else {
|
|
28
|
+
this.handle.elementText.classList.remove('panel-has-changes');
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
destroy() {
|
|
33
|
+
this.handle.destroy();
|
|
34
|
+
if (this.container instanceof PanelContainer) {
|
|
35
|
+
let panel = this.container;
|
|
36
|
+
delete panel.onTitleChanged;
|
|
37
|
+
}
|
|
38
|
+
if (this.host.dockManager.activePanel == this.panel)
|
|
39
|
+
this.host.dockManager.activePanel = null;
|
|
40
|
+
this.container.tabPage = null;
|
|
41
|
+
Utils.removeNode(this.containerElement);
|
|
42
|
+
}
|
|
43
|
+
onSelected() {
|
|
44
|
+
this.host.onTabPageSelected(this, true);
|
|
45
|
+
if (this.container instanceof PanelContainer) {
|
|
46
|
+
let panel = this.container;
|
|
47
|
+
panel.dockManager.notifyOnTabChange(this);
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
setSelected(flag, isActive) {
|
|
51
|
+
this.selected = flag;
|
|
52
|
+
this.handle.setSelected(flag);
|
|
53
|
+
if (!this._initContent)
|
|
54
|
+
this.host.contentElement.appendChild(this.containerElement);
|
|
55
|
+
this._initContent = true;
|
|
56
|
+
if (this.selected) {
|
|
57
|
+
this.containerElement.style.display = 'block';
|
|
58
|
+
this.panel.setVisible(true);
|
|
59
|
+
// force a resize again
|
|
60
|
+
let width = this.host.contentElement.clientWidth;
|
|
61
|
+
let height = this.host.contentElement.clientHeight;
|
|
62
|
+
this.container.resize(width, height);
|
|
63
|
+
if (isActive)
|
|
64
|
+
this.host.dockManager.activePanel = this.container;
|
|
65
|
+
}
|
|
66
|
+
else {
|
|
67
|
+
this.containerElement.style.display = 'none';
|
|
68
|
+
this.panel.setVisible(false);
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
resize(width, height) {
|
|
72
|
+
this.container.resize(width, height);
|
|
73
|
+
}
|
|
74
|
+
}
|
|
74
75
|
//# sourceMappingURL=TabPage.js.map
|
package/lib/js/TabPage.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TabPage.js","sourceRoot":"","sources":["../../src/TabPage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAGrD,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAEnC,MAAM,OAAO,OAAO;IAShB,YAAY,IAAa,EAAE,SAAyB;QAChD,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE;YACxB,OAAO;SACV;QAED,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;QACtB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAE3B,IAAI,CAAC,MAAM,GAAG,IAAI,SAAS,CAAC,IAAI,CAAC,CAAC;QAClC,IAAI,CAAC,gBAAgB,GAAG,SAAS,CAAC,gBAAgB,CAAC;QAEnD,IAAI,SAAS,YAAY,cAAc,EAAE;YACrC,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC;YACvB,IAAI,CAAC,KAAK,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC3D,IAAI,CAAC,cAAc,EAAE,CAAC;SACzB;QAED,SAAS,CAAC,OAAO,GAAG,IAAI,CAAC;IAC7B,CAAC;IAED,cAAc;QACV,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;QAC1B,IAAI,IAAI,CAAC,KAAK,EAAE;YACZ,IAAI,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE;gBACvB,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,SAAS,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAA;aAC7D;iBAAM;gBACH,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,SAAS,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAA;aAChE;SACJ;IACL,CAAC;IAED,OAAO;QACH,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QAEtB,IAAI,IAAI,CAAC,SAAS,YAAY,cAAc,EAAE;YAC1C,IAAI,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC;YAC3B,OAAO,KAAK,CAAC,cAAc,CAAC;SAC/B;QAED,IAAI,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,WAAW,IAAI,IAAI,CAAC,KAAK;YAC/C,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,WAAW,GAAG,IAAI,CAAC;QAE7C,IAAI,CAAC,SAAS,CAAC,OAAO,GAAG,IAAI,CAAC;QAE9B,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IAC5C,CAAC;IAED,UAAU;QACN,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"TabPage.js","sourceRoot":"","sources":["../../src/TabPage.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,31 +1,31 @@
|
|
|
1
|
-
import { EventHandler } from "./EventHandler.js";
|
|
2
|
-
import { Point } from "./Point.js";
|
|
3
|
-
import { Dialog } from "./Dialog.js";
|
|
4
|
-
import { IMouseOrTouchEvent } from "./interfaces/IMouseOrTouchEvent.js";
|
|
5
|
-
/**
|
|
6
|
-
* Listens for events on the [element] and notifies the [listener]
|
|
7
|
-
* if an undock event has been invoked. An undock event is invoked
|
|
8
|
-
* when the user clicks on the event and drags is beyond the
|
|
9
|
-
* specified [thresholdPixels]
|
|
10
|
-
*/
|
|
11
|
-
export declare class UndockInitiator {
|
|
12
|
-
mouseUpHandler: EventHandler;
|
|
13
|
-
touchUpHandler: EventHandler;
|
|
14
|
-
mouseMoveHandler: EventHandler;
|
|
15
|
-
touchMoveHandler: EventHandler;
|
|
16
|
-
dragStartPosition: Point;
|
|
17
|
-
thresholdPixels: number;
|
|
18
|
-
_enabled: boolean;
|
|
19
|
-
mouseDownHandler: EventHandler;
|
|
20
|
-
touchDownHandler: EventHandler;
|
|
21
|
-
element: HTMLElement;
|
|
22
|
-
_undockededCallback: (e: MouseEvent, dragOffset: Point) => Dialog;
|
|
23
|
-
touchDownUndockedHandler: EventHandler;
|
|
24
|
-
constructor(element: Element, undockededCallback: (e: MouseEvent, dragOffset: Point) => Dialog, thresholdPixels?: number);
|
|
25
|
-
get enabled(): boolean;
|
|
26
|
-
set enabled(value: boolean);
|
|
27
|
-
onMouseDown(e: any): void;
|
|
28
|
-
onMouseUp(): void;
|
|
29
|
-
onMouseMove(e: IMouseOrTouchEvent): void;
|
|
30
|
-
_requestUndock(e: any): void;
|
|
31
|
-
}
|
|
1
|
+
import { EventHandler } from "./EventHandler.js";
|
|
2
|
+
import { Point } from "./Point.js";
|
|
3
|
+
import { Dialog } from "./Dialog.js";
|
|
4
|
+
import { IMouseOrTouchEvent } from "./interfaces/IMouseOrTouchEvent.js";
|
|
5
|
+
/**
|
|
6
|
+
* Listens for events on the [element] and notifies the [listener]
|
|
7
|
+
* if an undock event has been invoked. An undock event is invoked
|
|
8
|
+
* when the user clicks on the event and drags is beyond the
|
|
9
|
+
* specified [thresholdPixels]
|
|
10
|
+
*/
|
|
11
|
+
export declare class UndockInitiator {
|
|
12
|
+
mouseUpHandler: EventHandler;
|
|
13
|
+
touchUpHandler: EventHandler;
|
|
14
|
+
mouseMoveHandler: EventHandler;
|
|
15
|
+
touchMoveHandler: EventHandler;
|
|
16
|
+
dragStartPosition: Point;
|
|
17
|
+
thresholdPixels: number;
|
|
18
|
+
_enabled: boolean;
|
|
19
|
+
mouseDownHandler: EventHandler;
|
|
20
|
+
touchDownHandler: EventHandler;
|
|
21
|
+
element: HTMLElement;
|
|
22
|
+
_undockededCallback: (e: MouseEvent, dragOffset: Point) => Dialog;
|
|
23
|
+
touchDownUndockedHandler: EventHandler;
|
|
24
|
+
constructor(element: Element, undockededCallback: (e: MouseEvent, dragOffset: Point) => Dialog, thresholdPixels?: number);
|
|
25
|
+
get enabled(): boolean;
|
|
26
|
+
set enabled(value: boolean);
|
|
27
|
+
onMouseDown(e: any): void;
|
|
28
|
+
onMouseUp(): void;
|
|
29
|
+
onMouseMove(e: IMouseOrTouchEvent): void;
|
|
30
|
+
_requestUndock(e: any): void;
|
|
31
|
+
}
|
|
@@ -1,141 +1,141 @@
|
|
|
1
|
-
import { EventHandler } from "./EventHandler.js";
|
|
2
|
-
import { Point } from "./Point.js";
|
|
3
|
-
/**
|
|
4
|
-
* Listens for events on the [element] and notifies the [listener]
|
|
5
|
-
* if an undock event has been invoked. An undock event is invoked
|
|
6
|
-
* when the user clicks on the event and drags is beyond the
|
|
7
|
-
* specified [thresholdPixels]
|
|
8
|
-
*/
|
|
9
|
-
export class UndockInitiator {
|
|
10
|
-
constructor(element, undockededCallback, thresholdPixels) {
|
|
11
|
-
if (!thresholdPixels) {
|
|
12
|
-
thresholdPixels = 7;
|
|
13
|
-
}
|
|
14
|
-
this.element = element;
|
|
15
|
-
this._undockededCallback = undockededCallback;
|
|
16
|
-
this.thresholdPixels = thresholdPixels;
|
|
17
|
-
this._enabled = false;
|
|
18
|
-
}
|
|
19
|
-
get enabled() {
|
|
20
|
-
return this._enabled;
|
|
21
|
-
}
|
|
22
|
-
set enabled(value) {
|
|
23
|
-
this._enabled = value;
|
|
24
|
-
if (this._enabled) {
|
|
25
|
-
if (this.mouseDownHandler) {
|
|
26
|
-
this.mouseDownHandler.cancel();
|
|
27
|
-
delete this.mouseDownHandler;
|
|
28
|
-
}
|
|
29
|
-
if (this.touchDownHandler) {
|
|
30
|
-
this.touchDownHandler.cancel();
|
|
31
|
-
delete this.touchDownHandler;
|
|
32
|
-
}
|
|
33
|
-
this.mouseDownHandler = new EventHandler(this.element, 'mousedown', this.onMouseDown.bind(this));
|
|
34
|
-
this.touchDownHandler = new EventHandler(this.element, 'touchstart', this.onMouseDown.bind(this), { passive: false });
|
|
35
|
-
}
|
|
36
|
-
else {
|
|
37
|
-
if (this.mouseDownHandler) {
|
|
38
|
-
this.mouseDownHandler.cancel();
|
|
39
|
-
delete this.mouseDownHandler;
|
|
40
|
-
}
|
|
41
|
-
if (this.touchDownHandler) {
|
|
42
|
-
this.touchDownHandler.cancel();
|
|
43
|
-
delete this.touchDownHandler;
|
|
44
|
-
}
|
|
45
|
-
if (this.mouseUpHandler) {
|
|
46
|
-
this.mouseUpHandler.cancel();
|
|
47
|
-
delete this.mouseUpHandler;
|
|
48
|
-
}
|
|
49
|
-
if (this.touchUpHandler) {
|
|
50
|
-
this.touchUpHandler.cancel();
|
|
51
|
-
delete this.touchUpHandler;
|
|
52
|
-
}
|
|
53
|
-
if (this.mouseMoveHandler) {
|
|
54
|
-
this.mouseMoveHandler.cancel();
|
|
55
|
-
delete this.mouseMoveHandler;
|
|
56
|
-
}
|
|
57
|
-
if (this.touchMoveHandler) {
|
|
58
|
-
this.touchMoveHandler.cancel();
|
|
59
|
-
delete this.touchMoveHandler;
|
|
60
|
-
}
|
|
61
|
-
}
|
|
62
|
-
}
|
|
63
|
-
onMouseDown(e) {
|
|
64
|
-
e.preventDefault();
|
|
65
|
-
// Make sure we dont do this on floating dialogs
|
|
66
|
-
if (this.enabled) {
|
|
67
|
-
if (e.touches) {
|
|
68
|
-
if (e.touches.length > 1)
|
|
69
|
-
return;
|
|
70
|
-
e = e.touches[0];
|
|
71
|
-
}
|
|
72
|
-
if (this.mouseUpHandler) {
|
|
73
|
-
this.mouseUpHandler.cancel();
|
|
74
|
-
delete this.mouseUpHandler;
|
|
75
|
-
}
|
|
76
|
-
if (this.touchUpHandler) {
|
|
77
|
-
this.touchUpHandler.cancel();
|
|
78
|
-
delete this.touchUpHandler;
|
|
79
|
-
}
|
|
80
|
-
if (this.mouseMoveHandler) {
|
|
81
|
-
this.mouseMoveHandler.cancel();
|
|
82
|
-
delete this.mouseMoveHandler;
|
|
83
|
-
}
|
|
84
|
-
if (this.touchMoveHandler) {
|
|
85
|
-
this.touchMoveHandler.cancel();
|
|
86
|
-
delete this.touchMoveHandler;
|
|
87
|
-
}
|
|
88
|
-
this.mouseUpHandler = new EventHandler(window, 'mouseup', this.onMouseUp.bind(this));
|
|
89
|
-
this.touchUpHandler = new EventHandler(window, 'touchend', this.onMouseUp.bind(this));
|
|
90
|
-
this.mouseMoveHandler = new EventHandler(window, 'mousemove', this.onMouseMove.bind(this));
|
|
91
|
-
this.touchMoveHandler = new EventHandler(window, 'touchmove', this.onMouseMove.bind(this));
|
|
92
|
-
this.dragStartPosition = new Point(e.clientX, e.clientY);
|
|
93
|
-
}
|
|
94
|
-
}
|
|
95
|
-
onMouseUp() {
|
|
96
|
-
if (this.mouseUpHandler) {
|
|
97
|
-
this.mouseUpHandler.cancel();
|
|
98
|
-
delete this.mouseUpHandler;
|
|
99
|
-
}
|
|
100
|
-
if (this.touchUpHandler) {
|
|
101
|
-
this.touchUpHandler.cancel();
|
|
102
|
-
delete this.touchUpHandler;
|
|
103
|
-
}
|
|
104
|
-
if (this.mouseMoveHandler) {
|
|
105
|
-
this.mouseMoveHandler.cancel();
|
|
106
|
-
delete this.mouseMoveHandler;
|
|
107
|
-
}
|
|
108
|
-
if (this.touchMoveHandler) {
|
|
109
|
-
this.touchMoveHandler.cancel();
|
|
110
|
-
delete this.touchMoveHandler;
|
|
111
|
-
}
|
|
112
|
-
}
|
|
113
|
-
onMouseMove(e) {
|
|
114
|
-
if (e.touches) {
|
|
115
|
-
if (e.touches.length > 1)
|
|
116
|
-
return;
|
|
117
|
-
e = e.touches[0];
|
|
118
|
-
}
|
|
119
|
-
let position = new Point(e.clientX, e.clientY);
|
|
120
|
-
let dy = position.y - this.dragStartPosition.y;
|
|
121
|
-
if (dy > this.thresholdPixels || dy < -this.thresholdPixels) {
|
|
122
|
-
this.enabled = false;
|
|
123
|
-
this._requestUndock(e);
|
|
124
|
-
}
|
|
125
|
-
}
|
|
126
|
-
_requestUndock(e) {
|
|
127
|
-
let top = 0;
|
|
128
|
-
let left = 0;
|
|
129
|
-
let currentElement = this.element;
|
|
130
|
-
do {
|
|
131
|
-
top += currentElement.offsetTop || 0;
|
|
132
|
-
left += currentElement.offsetLeft || 0;
|
|
133
|
-
currentElement = currentElement.offsetParent;
|
|
134
|
-
} while (currentElement);
|
|
135
|
-
let dragOffsetX = this.dragStartPosition.x - left;
|
|
136
|
-
let dragOffsetY = this.dragStartPosition.y - top;
|
|
137
|
-
let dragOffset = new Point(dragOffsetX, dragOffsetY);
|
|
138
|
-
this._undockededCallback(e, dragOffset);
|
|
139
|
-
}
|
|
140
|
-
}
|
|
1
|
+
import { EventHandler } from "./EventHandler.js";
|
|
2
|
+
import { Point } from "./Point.js";
|
|
3
|
+
/**
|
|
4
|
+
* Listens for events on the [element] and notifies the [listener]
|
|
5
|
+
* if an undock event has been invoked. An undock event is invoked
|
|
6
|
+
* when the user clicks on the event and drags is beyond the
|
|
7
|
+
* specified [thresholdPixels]
|
|
8
|
+
*/
|
|
9
|
+
export class UndockInitiator {
|
|
10
|
+
constructor(element, undockededCallback, thresholdPixels) {
|
|
11
|
+
if (!thresholdPixels) {
|
|
12
|
+
thresholdPixels = 7;
|
|
13
|
+
}
|
|
14
|
+
this.element = element;
|
|
15
|
+
this._undockededCallback = undockededCallback;
|
|
16
|
+
this.thresholdPixels = thresholdPixels;
|
|
17
|
+
this._enabled = false;
|
|
18
|
+
}
|
|
19
|
+
get enabled() {
|
|
20
|
+
return this._enabled;
|
|
21
|
+
}
|
|
22
|
+
set enabled(value) {
|
|
23
|
+
this._enabled = value;
|
|
24
|
+
if (this._enabled) {
|
|
25
|
+
if (this.mouseDownHandler) {
|
|
26
|
+
this.mouseDownHandler.cancel();
|
|
27
|
+
delete this.mouseDownHandler;
|
|
28
|
+
}
|
|
29
|
+
if (this.touchDownHandler) {
|
|
30
|
+
this.touchDownHandler.cancel();
|
|
31
|
+
delete this.touchDownHandler;
|
|
32
|
+
}
|
|
33
|
+
this.mouseDownHandler = new EventHandler(this.element, 'mousedown', this.onMouseDown.bind(this));
|
|
34
|
+
this.touchDownHandler = new EventHandler(this.element, 'touchstart', this.onMouseDown.bind(this), { passive: false });
|
|
35
|
+
}
|
|
36
|
+
else {
|
|
37
|
+
if (this.mouseDownHandler) {
|
|
38
|
+
this.mouseDownHandler.cancel();
|
|
39
|
+
delete this.mouseDownHandler;
|
|
40
|
+
}
|
|
41
|
+
if (this.touchDownHandler) {
|
|
42
|
+
this.touchDownHandler.cancel();
|
|
43
|
+
delete this.touchDownHandler;
|
|
44
|
+
}
|
|
45
|
+
if (this.mouseUpHandler) {
|
|
46
|
+
this.mouseUpHandler.cancel();
|
|
47
|
+
delete this.mouseUpHandler;
|
|
48
|
+
}
|
|
49
|
+
if (this.touchUpHandler) {
|
|
50
|
+
this.touchUpHandler.cancel();
|
|
51
|
+
delete this.touchUpHandler;
|
|
52
|
+
}
|
|
53
|
+
if (this.mouseMoveHandler) {
|
|
54
|
+
this.mouseMoveHandler.cancel();
|
|
55
|
+
delete this.mouseMoveHandler;
|
|
56
|
+
}
|
|
57
|
+
if (this.touchMoveHandler) {
|
|
58
|
+
this.touchMoveHandler.cancel();
|
|
59
|
+
delete this.touchMoveHandler;
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
onMouseDown(e) {
|
|
64
|
+
e.preventDefault();
|
|
65
|
+
// Make sure we dont do this on floating dialogs
|
|
66
|
+
if (this.enabled) {
|
|
67
|
+
if (e.touches) {
|
|
68
|
+
if (e.touches.length > 1)
|
|
69
|
+
return;
|
|
70
|
+
e = e.touches[0];
|
|
71
|
+
}
|
|
72
|
+
if (this.mouseUpHandler) {
|
|
73
|
+
this.mouseUpHandler.cancel();
|
|
74
|
+
delete this.mouseUpHandler;
|
|
75
|
+
}
|
|
76
|
+
if (this.touchUpHandler) {
|
|
77
|
+
this.touchUpHandler.cancel();
|
|
78
|
+
delete this.touchUpHandler;
|
|
79
|
+
}
|
|
80
|
+
if (this.mouseMoveHandler) {
|
|
81
|
+
this.mouseMoveHandler.cancel();
|
|
82
|
+
delete this.mouseMoveHandler;
|
|
83
|
+
}
|
|
84
|
+
if (this.touchMoveHandler) {
|
|
85
|
+
this.touchMoveHandler.cancel();
|
|
86
|
+
delete this.touchMoveHandler;
|
|
87
|
+
}
|
|
88
|
+
this.mouseUpHandler = new EventHandler(window, 'mouseup', this.onMouseUp.bind(this));
|
|
89
|
+
this.touchUpHandler = new EventHandler(window, 'touchend', this.onMouseUp.bind(this));
|
|
90
|
+
this.mouseMoveHandler = new EventHandler(window, 'mousemove', this.onMouseMove.bind(this));
|
|
91
|
+
this.touchMoveHandler = new EventHandler(window, 'touchmove', this.onMouseMove.bind(this));
|
|
92
|
+
this.dragStartPosition = new Point(e.clientX, e.clientY);
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
onMouseUp() {
|
|
96
|
+
if (this.mouseUpHandler) {
|
|
97
|
+
this.mouseUpHandler.cancel();
|
|
98
|
+
delete this.mouseUpHandler;
|
|
99
|
+
}
|
|
100
|
+
if (this.touchUpHandler) {
|
|
101
|
+
this.touchUpHandler.cancel();
|
|
102
|
+
delete this.touchUpHandler;
|
|
103
|
+
}
|
|
104
|
+
if (this.mouseMoveHandler) {
|
|
105
|
+
this.mouseMoveHandler.cancel();
|
|
106
|
+
delete this.mouseMoveHandler;
|
|
107
|
+
}
|
|
108
|
+
if (this.touchMoveHandler) {
|
|
109
|
+
this.touchMoveHandler.cancel();
|
|
110
|
+
delete this.touchMoveHandler;
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
onMouseMove(e) {
|
|
114
|
+
if (e.touches) {
|
|
115
|
+
if (e.touches.length > 1)
|
|
116
|
+
return;
|
|
117
|
+
e = e.touches[0];
|
|
118
|
+
}
|
|
119
|
+
let position = new Point(e.clientX, e.clientY);
|
|
120
|
+
let dy = position.y - this.dragStartPosition.y;
|
|
121
|
+
if (dy > this.thresholdPixels || dy < -this.thresholdPixels) {
|
|
122
|
+
this.enabled = false;
|
|
123
|
+
this._requestUndock(e);
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
_requestUndock(e) {
|
|
127
|
+
let top = 0;
|
|
128
|
+
let left = 0;
|
|
129
|
+
let currentElement = this.element;
|
|
130
|
+
do {
|
|
131
|
+
top += currentElement.offsetTop || 0;
|
|
132
|
+
left += currentElement.offsetLeft || 0;
|
|
133
|
+
currentElement = currentElement.offsetParent;
|
|
134
|
+
} while (currentElement);
|
|
135
|
+
let dragOffsetX = this.dragStartPosition.x - left;
|
|
136
|
+
let dragOffsetY = this.dragStartPosition.y - top;
|
|
137
|
+
let dragOffset = new Point(dragOffsetX, dragOffsetY);
|
|
138
|
+
this._undockededCallback(e, dragOffset);
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
141
|
//# sourceMappingURL=UndockInitiator.js.map
|
package/lib/js/Utils.d.ts
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
import { DockNode } from "./DockNode";
|
|
2
|
-
export declare class Utils {
|
|
3
|
-
private static _counter;
|
|
4
|
-
static getPixels(pixels: string): number;
|
|
5
|
-
static disableGlobalTextSelection(element: HTMLElement): void;
|
|
6
|
-
static enableGlobalTextSelection(element: HTMLElement): void;
|
|
7
|
-
static isPointInsideNode(px: number, py: number, node: DockNode): boolean;
|
|
8
|
-
static getNextId(prefix: string): string;
|
|
9
|
-
static removeNode(node: Node): boolean;
|
|
10
|
-
static orderByIndexes<T>(array: T[], indexes: number[]): any[];
|
|
11
|
-
static arrayRemove<T>(array: T[], value: any): T[] | false;
|
|
12
|
-
static arrayContains<T>(array: T[], value: T): boolean;
|
|
13
|
-
static arrayEqual<T>(a: T[], b: T[]): boolean;
|
|
14
|
-
}
|
|
1
|
+
import { DockNode } from "./DockNode";
|
|
2
|
+
export declare class Utils {
|
|
3
|
+
private static _counter;
|
|
4
|
+
static getPixels(pixels: string): number;
|
|
5
|
+
static disableGlobalTextSelection(element: HTMLElement): void;
|
|
6
|
+
static enableGlobalTextSelection(element: HTMLElement): void;
|
|
7
|
+
static isPointInsideNode(px: number, py: number, node: DockNode): boolean;
|
|
8
|
+
static getNextId(prefix: string): string;
|
|
9
|
+
static removeNode(node: Node): boolean;
|
|
10
|
+
static orderByIndexes<T>(array: T[], indexes: number[]): any[];
|
|
11
|
+
static arrayRemove<T>(array: T[], value: any): T[] | false;
|
|
12
|
+
static arrayContains<T>(array: T[], value: T): boolean;
|
|
13
|
+
static arrayEqual<T>(a: T[], b: T[]): boolean;
|
|
14
|
+
}
|