@datagrok-libraries/dock-spawn-dg 0.0.1 → 0.0.3
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 +0 -3
- package/index.d.ts +33 -0
- package/index.d.ts.map +1 -0
- package/index.js +32 -0
- package/package.json +10 -17
- package/src/BrowserDialogHelper.d.ts.map +1 -0
- package/{lib → src}/BrowserDialogHelper.js +18 -12
- package/src/BrowserDialogHelper.ts +48 -47
- package/src/ContainerType.d.ts.map +1 -0
- package/src/ContainerType.ts +1 -1
- package/{lib → src}/Dialog.d.ts +7 -7
- package/src/Dialog.d.ts.map +1 -0
- package/{lib → src}/Dialog.js +46 -58
- package/src/Dialog.ts +253 -250
- package/src/DockConfig.d.ts.map +1 -0
- package/{lib → src}/DockConfig.js +0 -5
- package/src/DockConfig.ts +1 -1
- package/{lib → src}/DockGraphDeserializer.d.ts +6 -6
- package/src/DockGraphDeserializer.d.ts.map +1 -0
- package/src/DockGraphDeserializer.js +133 -0
- package/src/DockGraphDeserializer.ts +113 -108
- package/src/DockGraphSerializer.d.ts +14 -0
- package/src/DockGraphSerializer.d.ts.map +1 -0
- package/{lib → src}/DockGraphSerializer.js +11 -11
- package/src/DockGraphSerializer.ts +48 -47
- package/{lib → src}/DockLayoutEngine.d.ts +12 -12
- package/src/DockLayoutEngine.d.ts.map +1 -0
- package/{lib → src}/DockLayoutEngine.js +49 -53
- package/src/DockLayoutEngine.ts +351 -346
- package/{lib → src}/DockManager.d.ts +34 -34
- package/src/DockManager.d.ts.map +1 -0
- package/{lib → src}/DockManager.js +170 -152
- package/src/DockManager.ts +860 -833
- package/{lib → src}/DockManagerContext.d.ts +3 -3
- package/src/DockManagerContext.d.ts.map +1 -0
- package/{lib → src}/DockManagerContext.js +2 -5
- package/src/DockManagerContext.ts +5 -5
- package/{lib → src}/DockModel.d.ts +2 -2
- package/src/DockModel.d.ts.map +1 -0
- package/{lib → src}/DockModel.js +0 -3
- package/src/DockModel.ts +2 -2
- package/{lib → src}/DockNode.d.ts +1 -1
- package/src/DockNode.d.ts.map +1 -0
- package/{lib → src}/DockNode.js +0 -3
- package/src/DockNode.ts +2 -2
- package/{lib → src}/DockWheel.d.ts +5 -5
- package/src/DockWheel.d.ts.map +1 -0
- package/{lib → src}/DockWheel.js +3 -11
- package/src/DockWheel.ts +6 -6
- package/{lib → src}/DockWheelItem.d.ts +3 -3
- package/src/DockWheelItem.d.ts.map +1 -0
- package/{lib → src}/DockWheelItem.js +1 -8
- package/src/DockWheelItem.ts +4 -4
- package/{lib → src}/DocumentManagerContainer.d.ts +4 -4
- package/src/DocumentManagerContainer.d.ts.map +1 -0
- package/{lib → src}/DocumentManagerContainer.js +3 -3
- package/src/DocumentManagerContainer.ts +9 -9
- package/{lib → src}/DocumentTabPage.d.ts +3 -3
- package/src/DocumentTabPage.d.ts.map +1 -0
- package/{lib → src}/DocumentTabPage.js +2 -2
- package/src/DocumentTabPage.ts +6 -6
- package/{lib → src}/DraggableContainer.d.ts +7 -7
- package/src/DraggableContainer.d.ts.map +1 -0
- package/{lib → src}/DraggableContainer.js +3 -16
- package/src/DraggableContainer.ts +10 -10
- package/src/EventHandler.d.ts.map +1 -0
- package/{lib → src}/EventHandler.js +0 -3
- package/src/EventHandler.ts +1 -1
- package/{lib → src}/FillDockContainer.d.ts +8 -8
- package/src/FillDockContainer.d.ts.map +1 -0
- package/{lib → src}/FillDockContainer.js +4 -14
- package/src/FillDockContainer.ts +10 -10
- package/src/HorizontalDockContainer.d.ts +7 -0
- package/src/HorizontalDockContainer.d.ts.map +1 -0
- package/{lib → src}/HorizontalDockContainer.js +3 -3
- package/src/HorizontalDockContainer.ts +6 -6
- package/{lib → src}/PanelContainer.d.ts +21 -20
- package/src/PanelContainer.d.ts.map +1 -0
- package/{lib → src}/PanelContainer.js +144 -146
- package/src/PanelContainer.ts +590 -574
- package/src/Point.d.ts.map +1 -0
- package/{lib → src}/Point.js +0 -2
- package/{lib → src}/ResizableContainer.d.ts +8 -8
- package/src/ResizableContainer.d.ts.map +1 -0
- package/{lib → src}/ResizableContainer.js +4 -17
- package/src/ResizableContainer.ts +11 -11
- package/{lib → src}/ResizeHandle.d.ts +1 -1
- package/src/ResizeHandle.d.ts.map +1 -0
- package/{lib → src}/ResizeHandle.js +0 -10
- package/src/ResizeHandle.ts +2 -2
- package/{lib → src}/SplitterBar.d.ts +3 -3
- package/src/SplitterBar.d.ts.map +1 -0
- package/{lib → src}/SplitterBar.js +2 -14
- package/src/SplitterBar.ts +5 -5
- package/{lib → src}/SplitterDockContainer.d.ts +7 -7
- package/src/SplitterDockContainer.d.ts.map +1 -0
- package/{lib → src}/SplitterDockContainer.js +1 -11
- package/src/SplitterDockContainer.ts +8 -8
- package/{lib → src}/SplitterPanel.d.ts +2 -2
- package/src/SplitterPanel.d.ts.map +1 -0
- package/{lib → src}/SplitterPanel.js +2 -6
- package/src/SplitterPanel.ts +4 -4
- package/{lib → src}/TabHandle.d.ts +5 -5
- package/src/TabHandle.d.ts.map +1 -0
- package/{lib → src}/TabHandle.js +81 -95
- package/src/TabHandle.ts +314 -311
- package/{lib → src}/TabHost.d.ts +6 -6
- package/src/TabHost.d.ts.map +1 -0
- package/{lib → src}/TabHost.js +4 -19
- package/src/TabHost.ts +9 -9
- package/{lib → src}/TabPage.d.ts +4 -4
- package/src/TabPage.d.ts.map +1 -0
- package/{lib → src}/TabPage.js +3 -10
- package/src/TabPage.ts +6 -6
- package/{lib → src}/UndockInitiator.d.ts +4 -4
- package/src/UndockInitiator.d.ts.map +1 -0
- package/{lib → src}/UndockInitiator.js +2 -14
- package/src/UndockInitiator.ts +7 -7
- package/src/Utils.d.ts.map +1 -0
- package/{lib → src}/Utils.js +1 -1
- package/src/Utils.ts +1 -1
- package/src/VerticalDockContainer.d.ts +7 -0
- package/src/VerticalDockContainer.d.ts.map +1 -0
- package/{lib → src}/VerticalDockContainer.js +3 -3
- package/src/VerticalDockContainer.ts +7 -7
- package/src/enums/PanelType.d.ts.map +1 -0
- package/src/enums/PanelType.ts +1 -1
- package/src/enums/TabHostDirection.d.ts.map +1 -0
- package/src/enums/TabHostDirection.ts +1 -1
- package/src/enums/WheelTypes.d.ts.map +1 -0
- package/src/enums/WheelTypes.ts +1 -1
- package/src/i18n/Defaults.d.ts.map +1 -0
- package/src/i18n/Defaults.ts +2 -2
- package/{lib → src}/i18n/Localizer.d.ts +1 -1
- package/src/i18n/Localizer.d.ts.map +1 -0
- package/{lib → src}/i18n/Localizer.js +3 -3
- package/src/i18n/Localizer.ts +2 -2
- package/src/index.d.ts.map +1 -0
- package/{lib → src}/interfaces/IDockContainer.d.ts +4 -4
- package/src/interfaces/IDockContainer.d.ts.map +1 -0
- package/src/interfaces/IDockContainer.ts +7 -7
- package/src/interfaces/IDockContainerWithSize.d.ts +6 -0
- package/src/interfaces/IDockContainerWithSize.d.ts.map +1 -0
- package/src/interfaces/IDockContainerWithSize.ts +3 -3
- package/{lib → src}/interfaces/ILayoutEventListener.d.ts +6 -6
- package/src/interfaces/ILayoutEventListener.d.ts.map +1 -0
- package/src/interfaces/ILayoutEventListener.ts +7 -7
- package/src/interfaces/IMouseOrTouchEvent.d.ts.map +1 -0
- package/src/interfaces/IMouseOrTouchEvent.ts +1 -1
- package/src/interfaces/INodeInfo.d.ts +8 -0
- package/src/interfaces/INodeInfo.d.ts.map +1 -0
- package/src/interfaces/INodeInfo.ts +2 -2
- package/src/interfaces/IPanelInfo.d.ts +10 -0
- package/src/interfaces/IPanelInfo.d.ts.map +1 -0
- package/src/interfaces/IPanelInfo.ts +3 -3
- package/src/interfaces/IRectangle.d.ts.map +1 -0
- package/src/interfaces/IRectangle.ts +1 -1
- package/src/interfaces/ISize.d.ts.map +1 -0
- package/{lib → src}/interfaces/IState.d.ts +1 -0
- package/src/interfaces/IState.d.ts.map +1 -0
- package/src/interfaces/IState.ts +1 -0
- package/src/interfaces/IThickness.d.ts.map +1 -0
- package/src/interfaces/IThickness.ts +1 -1
- package/{lib → src}/webcomponent/DockSpawnTsWebcomponent.d.ts +4 -4
- package/src/webcomponent/DockSpawnTsWebcomponent.d.ts.map +1 -0
- package/{lib → src}/webcomponent/DockSpawnTsWebcomponent.js +71 -63
- package/src/webcomponent/DockSpawnTsWebcomponent.ts +239 -239
- package/src/webcomponent/styles.d.ts.map +1 -0
- package/{lib → src}/webcomponent/styles.js +2 -1
- package/tsconfig.json +13 -26
- package/.eslintrc.json +0 -47
- package/lib/BrowserDialogHelper.d.ts.map +0 -1
- package/lib/ContainerType.d.ts.map +0 -1
- package/lib/Dialog.d.ts.map +0 -1
- package/lib/DockConfig.d.ts.map +0 -1
- package/lib/DockGraphDeserializer.d.ts.map +0 -1
- package/lib/DockGraphDeserializer.js +0 -114
- package/lib/DockGraphSerializer.d.ts +0 -14
- package/lib/DockGraphSerializer.d.ts.map +0 -1
- package/lib/DockLayoutEngine.d.ts.map +0 -1
- package/lib/DockManager.d.ts.map +0 -1
- package/lib/DockManagerContext.d.ts.map +0 -1
- package/lib/DockModel.d.ts.map +0 -1
- package/lib/DockNode.d.ts.map +0 -1
- package/lib/DockWheel.d.ts.map +0 -1
- package/lib/DockWheelItem.d.ts.map +0 -1
- package/lib/DocumentManagerContainer.d.ts.map +0 -1
- package/lib/DocumentTabPage.d.ts.map +0 -1
- package/lib/DraggableContainer.d.ts.map +0 -1
- package/lib/EventHandler.d.ts.map +0 -1
- package/lib/FillDockContainer.d.ts.map +0 -1
- package/lib/HorizontalDockContainer.d.ts +0 -7
- package/lib/HorizontalDockContainer.d.ts.map +0 -1
- package/lib/PanelContainer.d.ts.map +0 -1
- package/lib/Point.d.ts.map +0 -1
- package/lib/ResizableContainer.d.ts.map +0 -1
- package/lib/ResizeHandle.d.ts.map +0 -1
- package/lib/SplitterBar.d.ts.map +0 -1
- package/lib/SplitterDockContainer.d.ts.map +0 -1
- package/lib/SplitterPanel.d.ts.map +0 -1
- package/lib/TabHandle.d.ts.map +0 -1
- package/lib/TabHost.d.ts.map +0 -1
- package/lib/TabPage.d.ts.map +0 -1
- package/lib/UndockInitiator.d.ts.map +0 -1
- package/lib/Utils.d.ts.map +0 -1
- package/lib/VerticalDockContainer.d.ts +0 -7
- package/lib/VerticalDockContainer.d.ts.map +0 -1
- package/lib/enums/PanelType.d.ts.map +0 -1
- package/lib/enums/TabHostDirection.d.ts.map +0 -1
- package/lib/enums/WheelTypes.d.ts.map +0 -1
- package/lib/i18n/Defaults.d.ts.map +0 -1
- package/lib/i18n/Localizer.d.ts.map +0 -1
- package/lib/index.d.ts.map +0 -1
- package/lib/interfaces/IDockContainer.d.ts.map +0 -1
- package/lib/interfaces/IDockContainerWithSize.d.ts +0 -6
- package/lib/interfaces/IDockContainerWithSize.d.ts.map +0 -1
- package/lib/interfaces/ILayoutEventListener.d.ts.map +0 -1
- package/lib/interfaces/IMouseOrTouchEvent.d.ts.map +0 -1
- package/lib/interfaces/INodeInfo.d.ts +0 -8
- package/lib/interfaces/INodeInfo.d.ts.map +0 -1
- package/lib/interfaces/IPanelInfo.d.ts +0 -10
- package/lib/interfaces/IPanelInfo.d.ts.map +0 -1
- package/lib/interfaces/IRectangle.d.ts.map +0 -1
- package/lib/interfaces/ISize.d.ts.map +0 -1
- package/lib/interfaces/IState.d.ts.map +0 -1
- package/lib/interfaces/IThickness.d.ts.map +0 -1
- package/lib/webcomponent/DockSpawnTsWebcomponent.d.ts.map +0 -1
- package/lib/webcomponent/styles.d.ts.map +0 -1
- package/tsconfig.tsbuildinfo +0 -1
- /package/{lib → src}/BrowserDialogHelper.d.ts +0 -0
- /package/{lib → src}/ContainerType.d.ts +0 -0
- /package/{lib → src}/ContainerType.js +0 -0
- /package/{lib → src}/DockConfig.d.ts +0 -0
- /package/{lib → src}/EventHandler.d.ts +0 -0
- /package/{lib → src}/Point.d.ts +0 -0
- /package/{lib → src}/Utils.d.ts +0 -0
- /package/{lib → src}/enums/PanelType.d.ts +0 -0
- /package/{lib → src}/enums/PanelType.js +0 -0
- /package/{lib → src}/enums/TabHostDirection.d.ts +0 -0
- /package/{lib → src}/enums/TabHostDirection.js +0 -0
- /package/{lib → src}/enums/WheelTypes.d.ts +0 -0
- /package/{lib → src}/enums/WheelTypes.js +0 -0
- /package/{lib → src}/i18n/Defaults.d.ts +0 -0
- /package/{lib → src}/i18n/Defaults.js +0 -0
- /package/{lib → src}/index.d.ts +0 -0
- /package/{lib → src}/index.js +0 -0
- /package/{lib → src}/interfaces/IDockContainer.js +0 -0
- /package/{lib → src}/interfaces/IDockContainerWithSize.js +0 -0
- /package/{lib → src}/interfaces/ILayoutEventListener.js +0 -0
- /package/{lib → src}/interfaces/IMouseOrTouchEvent.d.ts +0 -0
- /package/{lib → src}/interfaces/IMouseOrTouchEvent.js +0 -0
- /package/{lib → src}/interfaces/INodeInfo.js +0 -0
- /package/{lib → src}/interfaces/IPanelInfo.js +0 -0
- /package/{lib → src}/interfaces/IRectangle.d.ts +0 -0
- /package/{lib → src}/interfaces/IRectangle.js +0 -0
- /package/{lib → src}/interfaces/ISize.d.ts +0 -0
- /package/{lib → src}/interfaces/ISize.js +0 -0
- /package/{lib → src}/interfaces/IState.js +0 -0
- /package/{lib → src}/interfaces/IThickness.d.ts +0 -0
- /package/{lib → src}/interfaces/IThickness.js +0 -0
- /package/{lib → src}/webcomponent/styles.d.ts +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Point.d.ts","sourceRoot":"","sources":["Point.ts"],"names":[],"mappings":"AAAA,qBAAa,KAAK;IAEd,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;gBAEE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM;CAInC"}
|
package/{lib → src}/Point.js
RENAMED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { Dialog } from "./Dialog
|
|
2
|
-
import { ResizeHandle } from "./ResizeHandle
|
|
3
|
-
import { DockManager } from "./DockManager
|
|
4
|
-
import { IDockContainer } from "./interfaces/IDockContainer
|
|
5
|
-
import { ContainerType } from "./ContainerType
|
|
6
|
-
import { Point } from "./Point
|
|
7
|
-
import { IThickness } from "./interfaces/IThickness
|
|
8
|
-
import { IState } from "./interfaces/IState
|
|
1
|
+
import { Dialog } from "./Dialog";
|
|
2
|
+
import { ResizeHandle } from "./ResizeHandle";
|
|
3
|
+
import { DockManager } from "./DockManager";
|
|
4
|
+
import { IDockContainer } from "./interfaces/IDockContainer";
|
|
5
|
+
import { ContainerType } from "./ContainerType";
|
|
6
|
+
import { Point } from "./Point";
|
|
7
|
+
import { IThickness } from "./interfaces/IThickness";
|
|
8
|
+
import { IState } from "./interfaces/IState";
|
|
9
9
|
/**
|
|
10
10
|
* Decorates a dock container with resizer handles around its base element
|
|
11
11
|
* This enables the container to be resized from all directions
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ResizableContainer.d.ts","sourceRoot":"","sources":["ResizableContainer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAEhC,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAE7C;;;GAGG;AACH,qBAAa,kBAAmB,YAAW,cAAc;IAErD,eAAe,EAAE,WAAW,CAAC;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,cAAc,CAAC;IACzB,WAAW,EAAE,WAAW,CAAC;IACzB,gBAAgB,EAAE,WAAW,CAAC;IAC9B,aAAa,EAAE,aAAa,CAAC;IAC7B,wBAAwB,EAAE,MAAM,CAAC;IACjC,wBAAwB,EAAE,OAAO,CAAC;IAClC,qBAAqB,EAAE,WAAW,CAAC,EAAE,CAAC,CAAC;IACvC,aAAa,EAAE,YAAY,EAAE,CAAC;IAC9B,qBAAqB,EAAE,KAAK,CAAC;IAC7B,OAAO,CAAC,mBAAmB,CAAiB;IAC5C,OAAO,CAAC,aAAa,CAAU;gBAEnB,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,cAAc,EAAE,eAAe,EAAE,WAAW,EAAE,aAAa,GAAE,OAAe;IAiBlH,cAAc;IAGd,mBAAmB;IAenB,kBAAkB,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO;IA8B/E,SAAS,CAAC,KAAK,EAAE,MAAM;IAIvB,SAAS,CAAC,KAAK,EAAE,MAAM;IAIvB,IAAI,KAAK,IAAI,MAAM,CAElB;IAED,IAAI,MAAM,IAAI,MAAM,CAEnB;IAED,IAAI,IAAI,WAEP;IACD,IAAI,IAAI,CAAC,KAAK,QAAA,EAGb;IAED,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;IAMpC,oBAAoB,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;IAMlD,aAAa,CAAC,QAAQ,KAAA;IAItB,OAAO;IAKP,eAAe;IAGf,kBAAkB,CAAC,MAAM,KAAA,EAAE,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE,iBAAiB;IAKnE,YAAY,CAAC,MAAM,EAAE,YAAY,EAAE,KAAK,EAAE,UAAU,GAAG,UAAU,EAAE,YAAY,CAAC,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE;IA8B1G,WAAW,CAAC,MAAM,KAAA,EAAE,KAAK,EAAE,UAAU,GAAG,UAAU;IAmDlD,SAAS,CAAC,MAAM,KAAA;IAiBhB,YAAY,CAAC,MAAM,KAAA,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM;IAa3C,WAAW,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU;IAI1C,WAAW,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU;IAI1C,YAAY,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU;IAI3C,YAAY,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU;IAI3C,gBAAgB,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU;CAgBpH"}
|
|
@@ -1,25 +1,12 @@
|
|
|
1
|
-
import { ResizeHandle } from "./ResizeHandle
|
|
2
|
-
import { EventHandler } from "./EventHandler
|
|
3
|
-
import { Point } from "./Point
|
|
4
|
-
import { Utils } from "./Utils
|
|
1
|
+
import { ResizeHandle } from "./ResizeHandle";
|
|
2
|
+
import { EventHandler } from "./EventHandler";
|
|
3
|
+
import { Point } from "./Point";
|
|
4
|
+
import { Utils } from "./Utils";
|
|
5
5
|
/**
|
|
6
6
|
* Decorates a dock container with resizer handles around its base element
|
|
7
7
|
* This enables the container to be resized from all directions
|
|
8
8
|
*/
|
|
9
9
|
export class ResizableContainer {
|
|
10
|
-
topLevelElement;
|
|
11
|
-
dialog;
|
|
12
|
-
delegate;
|
|
13
|
-
dockManager;
|
|
14
|
-
containerElement;
|
|
15
|
-
containerType;
|
|
16
|
-
minimumAllowedChildNodes;
|
|
17
|
-
readyToProcessNextResize;
|
|
18
|
-
dockSpawnResizedEvent;
|
|
19
|
-
resizeHandles;
|
|
20
|
-
previousMousePosition;
|
|
21
|
-
iframeEventHandlers;
|
|
22
|
-
disableResize;
|
|
23
10
|
constructor(dialog, delegate, topLevelElement, disableResize = false) {
|
|
24
11
|
this.dialog = dialog;
|
|
25
12
|
this.disableResize = disableResize;
|
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
import { Dialog } from "./Dialog
|
|
2
|
-
import { ResizeHandle } from "./ResizeHandle
|
|
3
|
-
import { EventHandler } from "./EventHandler
|
|
4
|
-
import { DockManager } from "./DockManager
|
|
5
|
-
import { IDockContainer } from "./interfaces/IDockContainer
|
|
6
|
-
import { ContainerType } from "./ContainerType
|
|
7
|
-
import { Point } from "./Point
|
|
8
|
-
import { Utils } from "./Utils
|
|
9
|
-
import { IThickness } from "./interfaces/IThickness
|
|
10
|
-
import { IState } from "./interfaces/IState
|
|
1
|
+
import { Dialog } from "./Dialog";
|
|
2
|
+
import { ResizeHandle } from "./ResizeHandle";
|
|
3
|
+
import { EventHandler } from "./EventHandler";
|
|
4
|
+
import { DockManager } from "./DockManager";
|
|
5
|
+
import { IDockContainer } from "./interfaces/IDockContainer";
|
|
6
|
+
import { ContainerType } from "./ContainerType";
|
|
7
|
+
import { Point } from "./Point";
|
|
8
|
+
import { Utils } from "./Utils";
|
|
9
|
+
import { IThickness } from "./interfaces/IThickness";
|
|
10
|
+
import { IState } from "./interfaces/IState";
|
|
11
11
|
|
|
12
12
|
/**
|
|
13
13
|
* Decorates a dock container with resizer handles around its base element
|
|
@@ -290,4 +290,4 @@ export class ResizableContainer implements IDockContainer {
|
|
|
290
290
|
|
|
291
291
|
this.resize(bounds.width, bounds.height);
|
|
292
292
|
}
|
|
293
|
-
}
|
|
293
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ResizeHandle.d.ts","sourceRoot":"","sources":["ResizeHandle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,qBAAa,YAAY;IAErB,OAAO,EAAE,WAAW,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,OAAO,CAAC;IACd,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,OAAO,CAAC;IACf,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,OAAO,CAAC;IAChB,gBAAgB,EAAE,YAAY,CAAC;IAC/B,gBAAgB,EAAE,YAAY,CAAC;;IAa/B,UAAU,CAAC,WAAW,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM;CAgCvD"}
|
package/src/ResizeHandle.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { IDockContainer } from "./interfaces/IDockContainer
|
|
2
|
-
import { EventHandler } from "./EventHandler
|
|
3
|
-
import { IMouseOrTouchEvent } from "./interfaces/IMouseOrTouchEvent
|
|
1
|
+
import { IDockContainer } from "./interfaces/IDockContainer";
|
|
2
|
+
import { EventHandler } from "./EventHandler";
|
|
3
|
+
import { IMouseOrTouchEvent } from "./interfaces/IMouseOrTouchEvent";
|
|
4
4
|
export declare class SplitterBar {
|
|
5
5
|
previousContainer: IDockContainer;
|
|
6
6
|
nextContainer: IDockContainer;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SplitterBar.d.ts","sourceRoot":"","sources":["SplitterBar.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AAErE,qBAAa,WAAW;IACpB,iBAAiB,EAAE,cAAc,CAAC;IAClC,aAAa,EAAE,cAAc,CAAC;IAC9B,eAAe,EAAE,OAAO,CAAC;IACzB,UAAU,EAAE,cAAc,CAAC;IAC3B,kBAAkB,EAAE,YAAY,CAAC;IACjC,YAAY,EAAE,MAAM,CAAC;IACrB,sBAAsB,EAAE,OAAO,CAAC;IAChC,qBAAqB,EAAE,WAAW,CAAC,EAAE,CAAC,CAAC;IACvC,kBAAkB,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC7C,mBAAmB,EAAE,YAAY,CAAC;IAClC,gBAAgB,EAAE,YAAY,CAAC;IAE/B,OAAO,CAAC,mBAAmB,CAAiB;gBAEhC,iBAAiB,EAAE,cAAc,EAAE,aAAa,EAAE,cAAc,EAAE,eAAe,EAAE,OAAO;IAetG,aAAa,CAAC,CAAC,EAAE,YAAY;IAK7B,WAAW,CAAC,CAAC,EAAE,YAAY;IAK3B,oBAAoB,CAAC,CAAC,EAAE,kBAAkB,EAAE,MAAM,EAAE,iBAAiB;IAQrE,cAAc,CAAC,CAAC,EAAE,kBAAkB;IAOpC,eAAe,CAAC,GAAG,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE;IAiB7C,YAAY,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM;IAwCnC,cAAc,CAAC,CAAC,EAAE,kBAAkB;IAwBpC,aAAa;CAehB"}
|
|
@@ -1,18 +1,6 @@
|
|
|
1
|
-
import { EventHandler } from "./EventHandler
|
|
2
|
-
import { Utils } from "./Utils
|
|
1
|
+
import { EventHandler } from "./EventHandler";
|
|
2
|
+
import { Utils } from "./Utils";
|
|
3
3
|
export class SplitterBar {
|
|
4
|
-
previousContainer;
|
|
5
|
-
nextContainer;
|
|
6
|
-
stackedVertical;
|
|
7
|
-
barElement;
|
|
8
|
-
pointerDownHandler;
|
|
9
|
-
minPanelSize;
|
|
10
|
-
readyToProcessNextDrag;
|
|
11
|
-
dockSpawnResizedEvent;
|
|
12
|
-
previousMouseEvent;
|
|
13
|
-
pointerMovedHandler;
|
|
14
|
-
pointerUpHandler;
|
|
15
|
-
iframeEventHandlers;
|
|
16
4
|
constructor(previousContainer, nextContainer, stackedVertical) {
|
|
17
5
|
// The panel to the left/top side of the bar, depending on the bar orientation
|
|
18
6
|
this.previousContainer = previousContainer;
|
package/src/SplitterBar.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { IDockContainer } from "./interfaces/IDockContainer
|
|
2
|
-
import { EventHandler } from "./EventHandler
|
|
3
|
-
import { Utils } from "./Utils
|
|
4
|
-
import { IMouseOrTouchEvent } from "./interfaces/IMouseOrTouchEvent
|
|
1
|
+
import { IDockContainer } from "./interfaces/IDockContainer";
|
|
2
|
+
import { EventHandler } from "./EventHandler";
|
|
3
|
+
import { Utils } from "./Utils";
|
|
4
|
+
import { IMouseOrTouchEvent } from "./interfaces/IMouseOrTouchEvent";
|
|
5
5
|
|
|
6
6
|
export class SplitterBar {
|
|
7
7
|
previousContainer: IDockContainer;
|
|
@@ -154,4 +154,4 @@ export class SplitterBar {
|
|
|
154
154
|
}
|
|
155
155
|
this.iframeEventHandlers = [];
|
|
156
156
|
}
|
|
157
|
-
}
|
|
157
|
+
}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { DockManager } from "./DockManager
|
|
2
|
-
import { SplitterPanel } from "./SplitterPanel
|
|
3
|
-
import { IDockContainer } from "./interfaces/IDockContainer
|
|
4
|
-
import { ContainerType } from "./ContainerType
|
|
5
|
-
import { ISize } from "./interfaces/ISize
|
|
6
|
-
import { IDockContainerWithSize } from "./interfaces/IDockContainerWithSize
|
|
7
|
-
import { IState } from "./interfaces/IState
|
|
1
|
+
import { DockManager } from "./DockManager";
|
|
2
|
+
import { SplitterPanel } from "./SplitterPanel";
|
|
3
|
+
import { IDockContainer } from "./interfaces/IDockContainer";
|
|
4
|
+
import { ContainerType } from "./ContainerType";
|
|
5
|
+
import { ISize } from "./interfaces/ISize";
|
|
6
|
+
import { IDockContainerWithSize } from "./interfaces/IDockContainerWithSize";
|
|
7
|
+
import { IState } from "./interfaces/IState";
|
|
8
8
|
export declare abstract class SplitterDockContainer implements IDockContainerWithSize {
|
|
9
9
|
name: string;
|
|
10
10
|
dockManager: DockManager;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SplitterDockContainer.d.ts","sourceRoot":"","sources":["SplitterDockContainer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EAAE,sBAAsB,EAAE,MAAM,qCAAqC,CAAC;AAC7E,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAE7C,8BAAsB,qBAAsB,YAAW,sBAAsB;IACzE,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,WAAW,CAAC;IACzB,wBAAwB,EAAE,MAAM,CAAC;IACjC,aAAa,EAAE,aAAa,CAAC;IAC7B,eAAe,EAAE,OAAO,CAAC;IACzB,gBAAgB,EAAE,cAAc,CAAC;IACjC,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,KAAK,EAAE,KAAK,CAAC;IACb,aAAa,EAAE,aAAa,CAAC;gBAEjB,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,eAAe,EAAE,cAAc,EAAE,EAAE,eAAe,EAAE,OAAO;IAc/G,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;IAUpC,aAAa,CAAC,eAAe,EAAE,cAAc,EAAE,EAAE,mBAAmB,GAAE,OAAe;IAIrF,cAAc;IAGd,OAAO;IAIP;;;OAGG;IACH,iBAAiB,CAAC,SAAS,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM;IAK1D,SAAS,IAAI,MAAM,EAAE;IAIrB,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE;IAK1B,SAAS,CAAC,KAAK,EAAE,MAAM;IAKvB,SAAS,CAAC,KAAK,EAAE,MAAM;IAKvB,IAAI,KAAK,IAAI,MAAM,CAIlB;IAED,IAAI,MAAM,IAAI,MAAM,CAInB;CACJ"}
|
|
@@ -1,15 +1,5 @@
|
|
|
1
|
-
import { SplitterPanel } from "./SplitterPanel
|
|
1
|
+
import { SplitterPanel } from "./SplitterPanel";
|
|
2
2
|
export class SplitterDockContainer {
|
|
3
|
-
name;
|
|
4
|
-
dockManager;
|
|
5
|
-
minimumAllowedChildNodes;
|
|
6
|
-
splitterPanel;
|
|
7
|
-
stackedVertical;
|
|
8
|
-
containerElement;
|
|
9
|
-
_cachedWidth;
|
|
10
|
-
_cachedHeight;
|
|
11
|
-
state;
|
|
12
|
-
containerType;
|
|
13
3
|
constructor(name, dockManager, childContainers, stackedVertical) {
|
|
14
4
|
// for prototype inheritance purposes only
|
|
15
5
|
if (arguments.length === 0) {
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { DockManager } from "./DockManager
|
|
2
|
-
import { SplitterPanel } from "./SplitterPanel
|
|
3
|
-
import { IDockContainer } from "./interfaces/IDockContainer
|
|
4
|
-
import { ContainerType } from "./ContainerType
|
|
5
|
-
import { ISize } from "./interfaces/ISize
|
|
6
|
-
import { IDockContainerWithSize } from "./interfaces/IDockContainerWithSize
|
|
7
|
-
import { IState } from "./interfaces/IState
|
|
1
|
+
import { DockManager } from "./DockManager";
|
|
2
|
+
import { SplitterPanel } from "./SplitterPanel";
|
|
3
|
+
import { IDockContainer } from "./interfaces/IDockContainer";
|
|
4
|
+
import { ContainerType } from "./ContainerType";
|
|
5
|
+
import { ISize } from "./interfaces/ISize";
|
|
6
|
+
import { IDockContainerWithSize } from "./interfaces/IDockContainerWithSize";
|
|
7
|
+
import { IState } from "./interfaces/IState";
|
|
8
8
|
|
|
9
9
|
export abstract class SplitterDockContainer implements IDockContainerWithSize {
|
|
10
10
|
name: string;
|
|
@@ -92,4 +92,4 @@ export abstract class SplitterDockContainer implements IDockContainerWithSize {
|
|
|
92
92
|
this._cachedHeight = this.splitterPanel.panelElement.clientHeight;
|
|
93
93
|
return this._cachedHeight;
|
|
94
94
|
}
|
|
95
|
-
}
|
|
95
|
+
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { SplitterBar } from "./SplitterBar
|
|
2
|
-
import { IDockContainer } from "./interfaces/IDockContainer
|
|
1
|
+
import { SplitterBar } from "./SplitterBar";
|
|
2
|
+
import { IDockContainer } from "./interfaces/IDockContainer";
|
|
3
3
|
/**
|
|
4
4
|
* A splitter panel manages the child containers inside it with splitter bars.
|
|
5
5
|
* It can be stacked horizontally or vertically
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SplitterPanel.d.ts","sourceRoot":"","sources":["SplitterPanel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAE7D;;;GAGG;AACH,qBAAa,aAAa;IACtB,YAAY,EAAE,cAAc,CAAC;IAC7B,YAAY,EAAE,WAAW,EAAE,CAAC;IAC5B,eAAe,EAAE,OAAO,CAAC;IACzB,eAAe,EAAE,cAAc,EAAE,CAAC;gBAEtB,eAAe,EAAE,cAAc,EAAE,EAAE,eAAe,EAAE,OAAO;IAQvE,+BAA+B;IAuB/B,aAAa,CAAC,QAAQ,EAAE,cAAc,EAAE,EAAE,mBAAmB,EAAE,OAAO;IAqBtE,aAAa;IAWb,OAAO;IAKP,yBAAyB,CAAC,SAAS,EAAE,cAAc,EAAE,YAAY,EAAE,WAAW;IAsB9E;;;OAGG;IACH,iBAAiB,CAAC,SAAS,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM;IAwB1D,SAAS,IAAI,MAAM,EAAE;IAYrB,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE;IAa1B,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;CAsEvC"}
|
|
@@ -1,14 +1,10 @@
|
|
|
1
|
-
import { SplitterBar } from "./SplitterBar
|
|
2
|
-
import { Utils } from "./Utils
|
|
1
|
+
import { SplitterBar } from "./SplitterBar";
|
|
2
|
+
import { Utils } from "./Utils";
|
|
3
3
|
/**
|
|
4
4
|
* A splitter panel manages the child containers inside it with splitter bars.
|
|
5
5
|
* It can be stacked horizontally or vertically
|
|
6
6
|
*/
|
|
7
7
|
export class SplitterPanel {
|
|
8
|
-
panelElement;
|
|
9
|
-
spiltterBars;
|
|
10
|
-
stackedVertical;
|
|
11
|
-
childContainers;
|
|
12
8
|
constructor(childContainers, stackedVertical) {
|
|
13
9
|
this.childContainers = childContainers;
|
|
14
10
|
this.stackedVertical = stackedVertical;
|
package/src/SplitterPanel.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { SplitterBar } from "./SplitterBar
|
|
2
|
-
import { Utils } from "./Utils
|
|
3
|
-
import { IDockContainer } from "./interfaces/IDockContainer
|
|
1
|
+
import { SplitterBar } from "./SplitterBar";
|
|
2
|
+
import { Utils } from "./Utils";
|
|
3
|
+
import { IDockContainer } from "./interfaces/IDockContainer";
|
|
4
4
|
|
|
5
5
|
/**
|
|
6
6
|
* A splitter panel manages the child containers inside it with splitter bars.
|
|
@@ -225,4 +225,4 @@ export class SplitterPanel {
|
|
|
225
225
|
child.resize(newSize, child.height);
|
|
226
226
|
}
|
|
227
227
|
}
|
|
228
|
-
}
|
|
228
|
+
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { TabPage } from
|
|
2
|
-
import { UndockInitiator } from
|
|
3
|
-
import { EventHandler } from
|
|
4
|
-
import { DockNode } from
|
|
1
|
+
import { TabPage } from "./TabPage";
|
|
2
|
+
import { UndockInitiator } from "./UndockInitiator";
|
|
3
|
+
import { EventHandler } from "./EventHandler";
|
|
4
|
+
import { DockNode } from "./DockNode";
|
|
5
5
|
/**
|
|
6
6
|
* A tab handle represents the tab button on the tab strip
|
|
7
7
|
*/
|
|
@@ -48,7 +48,7 @@ export declare class TabHandle {
|
|
|
48
48
|
hideCloseButton(state: any): void;
|
|
49
49
|
updateTitle(): void;
|
|
50
50
|
destroy(): void;
|
|
51
|
-
_performUndock(e: any, dragOffset: any): import("./Dialog
|
|
51
|
+
_performUndock(e: any, dragOffset: any): import("./Dialog").Dialog;
|
|
52
52
|
onCloseButtonClicked(e: any): void;
|
|
53
53
|
setSelected(isSelected: boolean): void;
|
|
54
54
|
setActive(isActive: boolean): void;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TabHandle.d.ts","sourceRoot":"","sources":["TabHandle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAG9C,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAGtC;;GAEG;AACH,qBAAa,SAAS;IAClB,MAAM,EAAE,OAAO,CAAC;IAChB,WAAW,EAAE,cAAc,CAAC;IAC5B,WAAW,EAAE,cAAc,CAAC;IAC5B,kBAAkB,EAAE,cAAc,CAAC;IACnC,eAAe,EAAE,eAAe,CAAC;IACjC,gBAAgB,EAAE,YAAY,CAAC;IAC/B,gBAAgB,EAAE,YAAY,CAAC;IAC/B,kBAAkB,EAAE,YAAY,CAAC;IACjC,uBAAuB,EAAE,YAAY,CAAC;IACtC,eAAe,EAAE,YAAY,CAAC;IAC9B,kBAAkB,EAAE,YAAY,CAAC;IACjC,gBAAgB,EAAE,YAAY,CAAC;IAC/B,gBAAgB,EAAE,YAAY,CAAC;IAC/B,cAAc,EAAE,YAAY,CAAC;IAC7B,cAAc,EAAE,YAAY,CAAC;IAC7B,iBAAiB,EAAE,GAAG,CAAC;IACvB,OAAO,EAAE,OAAO,CAAC;IACjB,cAAc,EAAE,GAAG,EAAE,CAAC;IACtB,cAAc,EAAE;QAAE,aAAa,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;QAAC,iBAAiB,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;KAAE,CAAC;IAE1F,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,cAAc,CAAC;IACzB,6BAA6B,EAAE,GAAG,CAAC;gBAEvB,MAAM,EAAE,OAAO;IA+C3B,WAAW,CAAC,QAAQ,KAAA;IAIpB,cAAc,CAAC,QAAQ,KAAA;IAIvB,aAAa,CAAC,KAAK,EAAE,OAAO;IAI5B,MAAM,CAAC,gCAAgC,cAAe,SAAS,uBAAuB,QAAQ,EAAE,KAAG,IAAI,EAAE,CA2CxG;IAED,oBAAoB,CAAC,CAAC,EAAE,UAAU;IAyBlC,gBAAgB;IAQhB,uBAAuB,CAAC,CAAC,EAAE,KAAK;IAUhC,WAAW,CAAC,CAAC,KAAA;IA4Bb,SAAS,CAAC,CAAC,KAAA;IAmBX,YAAY,CAAC,IAAI,KAAA,EAAE,KAAK,KAAA;IAQxB,WAAW,CAAC,CAAC,KAAA;IAoBb,eAAe,CAAC,KAAK,KAAA;IAIrB,WAAW;IAQX,OAAO;IAqCP,cAAc,CAAC,CAAC,KAAA,EAAE,UAAU,KAAA;IAU5B,oBAAoB,CAAC,CAAC,KAAA;IAYtB,WAAW,CAAC,UAAU,EAAE,OAAO;IAS/B,SAAS,CAAC,QAAQ,EAAE,OAAO;CAQ9B"}
|
package/{lib → src}/TabHandle.js
RENAMED
|
@@ -1,40 +1,16 @@
|
|
|
1
|
-
import { PanelContainer } from
|
|
2
|
-
import { UndockInitiator } from
|
|
3
|
-
import { EventHandler } from
|
|
4
|
-
import { Utils } from
|
|
5
|
-
import { PanelType } from
|
|
6
|
-
import { Localizer } from
|
|
1
|
+
import { PanelContainer } from "./PanelContainer";
|
|
2
|
+
import { UndockInitiator } from "./UndockInitiator";
|
|
3
|
+
import { EventHandler } from "./EventHandler";
|
|
4
|
+
import { Utils } from "./Utils";
|
|
5
|
+
import { PanelType } from "./enums/PanelType";
|
|
6
|
+
import { Localizer } from "./i18n/Localizer";
|
|
7
7
|
/**
|
|
8
8
|
* A tab handle represents the tab button on the tab strip
|
|
9
9
|
*/
|
|
10
10
|
export class TabHandle {
|
|
11
|
-
parent;
|
|
12
|
-
elementBase;
|
|
13
|
-
elementText;
|
|
14
|
-
elementCloseButton;
|
|
15
|
-
undockInitiator;
|
|
16
|
-
mouseDownHandler;
|
|
17
|
-
touchDownHandler;
|
|
18
|
-
closeButtonHandler;
|
|
19
|
-
closeButtonTouchHandler;
|
|
20
|
-
auxClickHandler;
|
|
21
|
-
contextMenuHandler;
|
|
22
|
-
mouseMoveHandler;
|
|
23
|
-
touchMoveHandler;
|
|
24
|
-
mouseUpHandler;
|
|
25
|
-
touchUpHandler;
|
|
26
|
-
stargDragPosition;
|
|
27
|
-
dragged;
|
|
28
|
-
eventListeners;
|
|
29
|
-
undockListener;
|
|
30
|
-
prev;
|
|
31
|
-
current;
|
|
32
|
-
direction;
|
|
33
|
-
_ctxMenu;
|
|
34
|
-
_windowsContextMenuCloseBound;
|
|
35
11
|
constructor(parent) {
|
|
36
12
|
this.parent = parent;
|
|
37
|
-
|
|
13
|
+
let undockHandler = this._performUndock.bind(this);
|
|
38
14
|
this.elementBase = document.createElement('div');
|
|
39
15
|
this.elementText = document.createElement('div');
|
|
40
16
|
this.elementCloseButton = document.createElement('div');
|
|
@@ -48,11 +24,11 @@ export class TabHandle {
|
|
|
48
24
|
if (this.parent.container._hideCloseButton || this.parent.container._grayOut)
|
|
49
25
|
this.elementCloseButton.style.display = 'none';
|
|
50
26
|
this.parent.host.tabListElement.appendChild(this.elementBase);
|
|
51
|
-
|
|
52
|
-
|
|
27
|
+
let panel = parent.container;
|
|
28
|
+
let title = panel.getRawTitle();
|
|
53
29
|
this.undockListener = {
|
|
54
30
|
onDockEnabled: (e) => { this.undockEnabled(e.state); },
|
|
55
|
-
onHideCloseButton: (e) => { this.hideCloseButton(e.state); }
|
|
31
|
+
onHideCloseButton: (e) => { this.hideCloseButton(e.state); }
|
|
56
32
|
};
|
|
57
33
|
this.eventListeners = [];
|
|
58
34
|
panel.addListener(this.undockListener);
|
|
@@ -66,8 +42,9 @@ export class TabHandle {
|
|
|
66
42
|
this.closeButtonHandler = new EventHandler(this.elementCloseButton, 'click', this.onCloseButtonClicked.bind(this));
|
|
67
43
|
this.closeButtonTouchHandler = new EventHandler(this.elementCloseButton, 'touchstart', this.onCloseButtonClicked.bind(this));
|
|
68
44
|
this.auxClickHandler = new EventHandler(this.elementBase, 'auxclick', this.onCloseButtonClicked.bind(this));
|
|
69
|
-
if (panel.panelType == PanelType.document)
|
|
45
|
+
if (panel.panelType == PanelType.document) {
|
|
70
46
|
this.contextMenuHandler = new EventHandler(this.elementBase, 'contextmenu', this.oncontextMenuClicked.bind(this));
|
|
47
|
+
}
|
|
71
48
|
this.windowsContextMenuClose = this.windowsContextMenuClose.bind(this);
|
|
72
49
|
//this.zIndexCounter = parent.host.dockManager.zIndexTabHandle;
|
|
73
50
|
}
|
|
@@ -80,59 +57,24 @@ export class TabHandle {
|
|
|
80
57
|
undockEnabled(state) {
|
|
81
58
|
this.undockInitiator.enabled = state;
|
|
82
59
|
}
|
|
83
|
-
static createContextMenuContentCallback = (tabHandle, documentMangerNodes) => {
|
|
84
|
-
const result = [];
|
|
85
|
-
const btnCloseAll = document.createElement('div');
|
|
86
|
-
btnCloseAll.innerText = Localizer.getString('CloseAll');
|
|
87
|
-
result.push(btnCloseAll);
|
|
88
|
-
btnCloseAll.onclick = () => {
|
|
89
|
-
const length = documentMangerNodes.length;
|
|
90
|
-
for (let i = length - 1; i >= 0; i--) {
|
|
91
|
-
const panel = documentMangerNodes[i].container;
|
|
92
|
-
if (panel.panelType == PanelType.document)
|
|
93
|
-
panel.close();
|
|
94
|
-
}
|
|
95
|
-
tabHandle.closeContextMenu();
|
|
96
|
-
};
|
|
97
|
-
const btnCloseAllButThis = document.createElement('div');
|
|
98
|
-
btnCloseAllButThis.innerText = Localizer.getString('CloseAllButThis');
|
|
99
|
-
result.push(btnCloseAllButThis);
|
|
100
|
-
btnCloseAllButThis.onclick = () => {
|
|
101
|
-
const length = documentMangerNodes.length;
|
|
102
|
-
for (let i = length - 1; i >= 0; i--) {
|
|
103
|
-
const panel = documentMangerNodes[i].container;
|
|
104
|
-
if (tabHandle.parent.container != panel && panel.panelType == PanelType.document)
|
|
105
|
-
panel.close();
|
|
106
|
-
}
|
|
107
|
-
tabHandle.closeContextMenu();
|
|
108
|
-
};
|
|
109
|
-
if (tabHandle.parent.container.dockManager.config.enableBrowserWindows) {
|
|
110
|
-
const btnNewBrowserWindow = document.createElement('div');
|
|
111
|
-
btnNewBrowserWindow.innerText = Localizer.getString('NewBrowserWindow');
|
|
112
|
-
result.push(btnNewBrowserWindow);
|
|
113
|
-
btnNewBrowserWindow.onclick = () => {
|
|
114
|
-
tabHandle.parent.container.undockToBrowserDialog();
|
|
115
|
-
tabHandle.closeContextMenu();
|
|
116
|
-
};
|
|
117
|
-
}
|
|
118
|
-
return result;
|
|
119
|
-
};
|
|
120
60
|
oncontextMenuClicked(e) {
|
|
121
61
|
e.preventDefault();
|
|
122
62
|
if (!this._ctxMenu && TabHandle.createContextMenuContentCallback) {
|
|
123
63
|
const menuItems = TabHandle.createContextMenuContentCallback(this, this.parent.container.dockManager.context.model.documentManagerNode.children);
|
|
124
|
-
if (menuItems.length == 0)
|
|
64
|
+
if (menuItems.length == 0) {
|
|
125
65
|
return;
|
|
66
|
+
}
|
|
126
67
|
this._ctxMenu = document.createElement('div');
|
|
127
68
|
this._ctxMenu.className = 'dockspab-tab-handle-context-menu';
|
|
128
69
|
this._ctxMenu.append(...menuItems);
|
|
129
|
-
this._ctxMenu.style.left = e.pageX +
|
|
130
|
-
this._ctxMenu.style.top = e.pageY +
|
|
70
|
+
this._ctxMenu.style.left = e.pageX + "px";
|
|
71
|
+
this._ctxMenu.style.top = e.pageY + "px";
|
|
131
72
|
document.body.appendChild(this._ctxMenu);
|
|
132
73
|
window.addEventListener('mouseup', this.windowsContextMenuClose);
|
|
133
74
|
}
|
|
134
|
-
else
|
|
75
|
+
else {
|
|
135
76
|
this.closeContextMenu();
|
|
77
|
+
}
|
|
136
78
|
}
|
|
137
79
|
closeContextMenu() {
|
|
138
80
|
if (this._ctxMenu) {
|
|
@@ -142,9 +84,9 @@ export class TabHandle {
|
|
|
142
84
|
}
|
|
143
85
|
}
|
|
144
86
|
windowsContextMenuClose(e) {
|
|
145
|
-
|
|
146
|
-
for (
|
|
147
|
-
|
|
87
|
+
let cp = e.composedPath();
|
|
88
|
+
for (let i in cp) {
|
|
89
|
+
let el = cp[i];
|
|
148
90
|
if (el == this._ctxMenu)
|
|
149
91
|
return;
|
|
150
92
|
}
|
|
@@ -176,8 +118,9 @@ export class TabHandle {
|
|
|
176
118
|
this.touchUpHandler = new EventHandler(window, 'touchend', this.onMouseUp.bind(this));
|
|
177
119
|
}
|
|
178
120
|
onMouseUp(e) {
|
|
179
|
-
if (this.elementBase)
|
|
121
|
+
if (this.elementBase) {
|
|
180
122
|
this.elementBase.classList.remove('dockspan-tab-handle-dragged');
|
|
123
|
+
}
|
|
181
124
|
this.dragged = false;
|
|
182
125
|
if (this.mouseMoveHandler)
|
|
183
126
|
this.mouseMoveHandler.cancel();
|
|
@@ -194,8 +137,9 @@ export class TabHandle {
|
|
|
194
137
|
}
|
|
195
138
|
moveTabEvent(that, state) {
|
|
196
139
|
that.eventListeners.forEach((listener) => {
|
|
197
|
-
if (listener.onMoveTab)
|
|
140
|
+
if (listener.onMoveTab) {
|
|
198
141
|
listener.onMoveTab({ self: that, state: state });
|
|
142
|
+
}
|
|
199
143
|
});
|
|
200
144
|
}
|
|
201
145
|
onMouseMove(e) {
|
|
@@ -208,10 +152,10 @@ export class TabHandle {
|
|
|
208
152
|
this.prev = this.current;
|
|
209
153
|
this.current = e.clientX;
|
|
210
154
|
this.direction = this.current - this.prev;
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
{ state: 'left', bound: tabRect.left, rect: tabRect }
|
|
214
|
-
{ state: 'right', bound: tabRect.right, rect: tabRect };
|
|
155
|
+
let tabRect = this.elementBase.getBoundingClientRect();
|
|
156
|
+
let event = this.direction < 0
|
|
157
|
+
? { state: 'left', bound: tabRect.left, rect: tabRect }
|
|
158
|
+
: { state: 'right', bound: tabRect.right, rect: tabRect };
|
|
215
159
|
if ((e.clientX < tabRect.left && this.direction < 0) || (e.clientX > tabRect.left + tabRect.width && this.direction > 0))
|
|
216
160
|
this.moveTabEvent(this, event.state);
|
|
217
161
|
}
|
|
@@ -221,29 +165,34 @@ export class TabHandle {
|
|
|
221
165
|
}
|
|
222
166
|
updateTitle() {
|
|
223
167
|
if (this.parent.container instanceof PanelContainer) {
|
|
224
|
-
|
|
225
|
-
|
|
168
|
+
let panel = this.parent.container;
|
|
169
|
+
let title = panel.getRawTitle();
|
|
226
170
|
this.elementText.innerHTML = title;
|
|
227
171
|
}
|
|
228
172
|
}
|
|
229
173
|
destroy() {
|
|
230
|
-
|
|
174
|
+
let panel = this.parent.container;
|
|
231
175
|
panel.removeListener(this.undockListener);
|
|
232
176
|
this.mouseDownHandler.cancel();
|
|
233
177
|
this.touchDownHandler.cancel();
|
|
234
178
|
this.closeButtonHandler.cancel();
|
|
235
179
|
this.closeButtonTouchHandler.cancel();
|
|
236
180
|
this.auxClickHandler.cancel();
|
|
237
|
-
if (this.mouseMoveHandler)
|
|
181
|
+
if (this.mouseMoveHandler) {
|
|
238
182
|
this.mouseMoveHandler.cancel();
|
|
239
|
-
|
|
183
|
+
}
|
|
184
|
+
if (this.touchMoveHandler) {
|
|
240
185
|
this.touchMoveHandler.cancel();
|
|
241
|
-
|
|
186
|
+
}
|
|
187
|
+
if (this.mouseUpHandler) {
|
|
242
188
|
this.mouseUpHandler.cancel();
|
|
243
|
-
|
|
189
|
+
}
|
|
190
|
+
if (this.touchUpHandler) {
|
|
244
191
|
this.touchUpHandler.cancel();
|
|
245
|
-
|
|
192
|
+
}
|
|
193
|
+
if (this.contextMenuHandler) {
|
|
246
194
|
this.contextMenuHandler.cancel();
|
|
195
|
+
}
|
|
247
196
|
if (this.elementBase) {
|
|
248
197
|
Utils.removeNode(this.elementBase);
|
|
249
198
|
delete this.elementBase;
|
|
@@ -256,7 +205,7 @@ export class TabHandle {
|
|
|
256
205
|
_performUndock(e, dragOffset) {
|
|
257
206
|
if (this.parent.container.containerType === 'panel') {
|
|
258
207
|
this.undockInitiator.enabled = false;
|
|
259
|
-
|
|
208
|
+
let panel = this.parent.container;
|
|
260
209
|
return panel.performUndockToDialog(e, dragOffset);
|
|
261
210
|
}
|
|
262
211
|
else
|
|
@@ -267,7 +216,7 @@ export class TabHandle {
|
|
|
267
216
|
if (e.button !== 2) {
|
|
268
217
|
// If the page contains a panel element, undock it and destroy it
|
|
269
218
|
if (this.parent.container.containerType === 'panel') {
|
|
270
|
-
|
|
219
|
+
let panel = this.parent.container;
|
|
271
220
|
panel.close();
|
|
272
221
|
}
|
|
273
222
|
}
|
|
@@ -290,3 +239,40 @@ export class TabHandle {
|
|
|
290
239
|
}
|
|
291
240
|
}
|
|
292
241
|
}
|
|
242
|
+
TabHandle.createContextMenuContentCallback = (tabHandle, documentMangerNodes) => {
|
|
243
|
+
const result = [];
|
|
244
|
+
let btnCloseAll = document.createElement('div');
|
|
245
|
+
btnCloseAll.innerText = Localizer.getString('CloseAll');
|
|
246
|
+
result.push(btnCloseAll);
|
|
247
|
+
btnCloseAll.onclick = () => {
|
|
248
|
+
let length = documentMangerNodes.length;
|
|
249
|
+
for (let i = length - 1; i >= 0; i--) {
|
|
250
|
+
let panel = documentMangerNodes[i].container;
|
|
251
|
+
if (panel.panelType == PanelType.document)
|
|
252
|
+
panel.close();
|
|
253
|
+
}
|
|
254
|
+
tabHandle.closeContextMenu();
|
|
255
|
+
};
|
|
256
|
+
let btnCloseAllButThis = document.createElement('div');
|
|
257
|
+
btnCloseAllButThis.innerText = Localizer.getString('CloseAllButThis');
|
|
258
|
+
result.push(btnCloseAllButThis);
|
|
259
|
+
btnCloseAllButThis.onclick = () => {
|
|
260
|
+
let length = documentMangerNodes.length;
|
|
261
|
+
for (let i = length - 1; i >= 0; i--) {
|
|
262
|
+
let panel = documentMangerNodes[i].container;
|
|
263
|
+
if (tabHandle.parent.container != panel && panel.panelType == PanelType.document)
|
|
264
|
+
panel.close();
|
|
265
|
+
}
|
|
266
|
+
tabHandle.closeContextMenu();
|
|
267
|
+
};
|
|
268
|
+
if (tabHandle.parent.container.dockManager.config.enableBrowserWindows) {
|
|
269
|
+
let btnNewBrowserWindow = document.createElement('div');
|
|
270
|
+
btnNewBrowserWindow.innerText = Localizer.getString('NewBrowserWindow');
|
|
271
|
+
result.push(btnNewBrowserWindow);
|
|
272
|
+
btnNewBrowserWindow.onclick = () => {
|
|
273
|
+
tabHandle.parent.container.undockToBrowserDialog();
|
|
274
|
+
tabHandle.closeContextMenu();
|
|
275
|
+
};
|
|
276
|
+
}
|
|
277
|
+
return result;
|
|
278
|
+
};
|