@eclipse-glsp/client 2.2.0-next.333 → 2.2.0-next.334
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/css/change-bounds.css +36 -2
- package/css/glsp-sprotty.css +18 -2
- package/css/helper-lines.css +3 -3
- package/lib/base/default.module.d.ts.map +1 -1
- package/lib/base/default.module.js +3 -0
- package/lib/base/default.module.js.map +1 -1
- package/lib/base/feedback/css-feedback.d.ts +7 -2
- package/lib/base/feedback/css-feedback.d.ts.map +1 -1
- package/lib/base/feedback/css-feedback.js +10 -2
- package/lib/base/feedback/css-feedback.js.map +1 -1
- package/lib/base/feedback/feeback-emitter.d.ts +2 -2
- package/lib/base/feedback/feeback-emitter.d.ts.map +1 -1
- package/lib/base/feedback/feeback-emitter.js +5 -2
- package/lib/base/feedback/feeback-emitter.js.map +1 -1
- package/lib/base/index.d.ts +1 -0
- package/lib/base/index.d.ts.map +1 -1
- package/lib/base/index.js +1 -0
- package/lib/base/index.js.map +1 -1
- package/lib/base/mouse-position-tracker.d.ts +22 -0
- package/lib/base/mouse-position-tracker.d.ts.map +1 -0
- package/lib/base/mouse-position-tracker.js +40 -0
- package/lib/base/mouse-position-tracker.js.map +1 -0
- package/lib/features/accessibility/view-key-tools/movement-key-tool.d.ts +2 -0
- package/lib/features/accessibility/view-key-tools/movement-key-tool.d.ts.map +1 -1
- package/lib/features/accessibility/view-key-tools/movement-key-tool.js +15 -7
- package/lib/features/accessibility/view-key-tools/movement-key-tool.js.map +1 -1
- package/lib/features/bounds/bounds-module.d.ts.map +1 -1
- package/lib/features/bounds/bounds-module.js +2 -0
- package/lib/features/bounds/bounds-module.js.map +1 -1
- package/lib/features/bounds/freeform-layout.d.ts +17 -1
- package/lib/features/bounds/freeform-layout.d.ts.map +1 -1
- package/lib/features/bounds/freeform-layout.js +14 -5
- package/lib/features/bounds/freeform-layout.js.map +1 -1
- package/lib/features/bounds/glsp-hidden-bounds-updater.d.ts +5 -4
- package/lib/features/bounds/glsp-hidden-bounds-updater.d.ts.map +1 -1
- package/lib/features/bounds/glsp-hidden-bounds-updater.js +51 -39
- package/lib/features/bounds/glsp-hidden-bounds-updater.js.map +1 -1
- package/lib/features/bounds/hbox-layout.d.ts +18 -2
- package/lib/features/bounds/hbox-layout.d.ts.map +1 -1
- package/lib/features/bounds/hbox-layout.js +14 -5
- package/lib/features/bounds/hbox-layout.js.map +1 -1
- package/lib/features/bounds/index.d.ts +1 -0
- package/lib/features/bounds/index.d.ts.map +1 -1
- package/lib/features/bounds/index.js +1 -0
- package/lib/features/bounds/index.js.map +1 -1
- package/lib/features/bounds/layout-data.d.ts +27 -0
- package/lib/features/bounds/layout-data.d.ts.map +1 -0
- package/lib/features/bounds/layout-data.js +48 -0
- package/lib/features/bounds/layout-data.js.map +1 -0
- package/lib/features/bounds/local-bounds.d.ts +3 -1
- package/lib/features/bounds/local-bounds.d.ts.map +1 -1
- package/lib/features/bounds/local-bounds.js +14 -0
- package/lib/features/bounds/local-bounds.js.map +1 -1
- package/lib/features/bounds/vbox-layout.d.ts +18 -2
- package/lib/features/bounds/vbox-layout.d.ts.map +1 -1
- package/lib/features/bounds/vbox-layout.js +14 -5
- package/lib/features/bounds/vbox-layout.js.map +1 -1
- package/lib/features/change-bounds/index.d.ts +1 -0
- package/lib/features/change-bounds/index.d.ts.map +1 -1
- package/lib/features/change-bounds/index.js +1 -0
- package/lib/features/change-bounds/index.js.map +1 -1
- package/lib/features/change-bounds/model.d.ts +19 -3
- package/lib/features/change-bounds/model.d.ts.map +1 -1
- package/lib/features/change-bounds/model.js +92 -4
- package/lib/features/change-bounds/model.js.map +1 -1
- package/lib/features/change-bounds/movement-restrictor.d.ts +1 -0
- package/lib/features/change-bounds/movement-restrictor.d.ts.map +1 -1
- package/lib/features/change-bounds/movement-restrictor.js +7 -1
- package/lib/features/change-bounds/movement-restrictor.js.map +1 -1
- package/lib/features/change-bounds/point-position-updater.d.ts +3 -0
- package/lib/features/change-bounds/point-position-updater.d.ts.map +1 -1
- package/lib/features/change-bounds/point-position-updater.js +7 -2
- package/lib/features/change-bounds/point-position-updater.js.map +1 -1
- package/lib/features/change-bounds/position-snapper.d.ts +4 -0
- package/lib/features/change-bounds/position-snapper.d.ts.map +1 -1
- package/lib/features/change-bounds/position-snapper.js +4 -0
- package/lib/features/change-bounds/position-snapper.js.map +1 -1
- package/lib/features/change-bounds/snap.d.ts +6 -0
- package/lib/features/change-bounds/snap.d.ts.map +1 -1
- package/lib/features/change-bounds/snap.js +6 -0
- package/lib/features/change-bounds/snap.js.map +1 -1
- package/lib/features/change-bounds/tracker.d.ts +32 -0
- package/lib/features/change-bounds/tracker.d.ts.map +1 -0
- package/lib/features/change-bounds/tracker.js +60 -0
- package/lib/features/change-bounds/tracker.js.map +1 -0
- package/lib/features/debug/debug-bounds-decorator.d.ts +4 -1
- package/lib/features/debug/debug-bounds-decorator.d.ts.map +1 -1
- package/lib/features/debug/debug-bounds-decorator.js +14 -7
- package/lib/features/debug/debug-bounds-decorator.js.map +1 -1
- package/lib/features/element-template/mouse-tracking-element-position-listener.d.ts +9 -22
- package/lib/features/element-template/mouse-tracking-element-position-listener.d.ts.map +1 -1
- package/lib/features/element-template/mouse-tracking-element-position-listener.js +30 -46
- package/lib/features/element-template/mouse-tracking-element-position-listener.js.map +1 -1
- package/lib/features/helper-lines/helper-line-feedback.d.ts +2 -2
- package/lib/features/helper-lines/helper-line-feedback.d.ts.map +1 -1
- package/lib/features/helper-lines/helper-line-feedback.js +1 -1
- package/lib/features/helper-lines/helper-line-feedback.js.map +1 -1
- package/lib/features/helper-lines/helper-line-manager-default.d.ts +2 -1
- package/lib/features/helper-lines/helper-line-manager-default.d.ts.map +1 -1
- package/lib/features/helper-lines/helper-line-manager-default.js +23 -0
- package/lib/features/helper-lines/helper-line-manager-default.js.map +1 -1
- package/lib/features/helper-lines/helper-line-manager.d.ts +10 -2
- package/lib/features/helper-lines/helper-line-manager.d.ts.map +1 -1
- package/lib/features/routing/edge-router.d.ts +4 -0
- package/lib/features/routing/edge-router.d.ts.map +1 -1
- package/lib/features/routing/edge-router.js +37 -0
- package/lib/features/routing/edge-router.js.map +1 -1
- package/lib/features/select/select-mouse-listener.d.ts +3 -0
- package/lib/features/select/select-mouse-listener.d.ts.map +1 -1
- package/lib/features/select/select-mouse-listener.js +30 -2
- package/lib/features/select/select-mouse-listener.js.map +1 -1
- package/lib/features/tools/base-tools.d.ts +24 -15
- package/lib/features/tools/base-tools.d.ts.map +1 -1
- package/lib/features/tools/base-tools.js +0 -18
- package/lib/features/tools/base-tools.js.map +1 -1
- package/lib/features/tools/change-bounds/change-bounds-manager.d.ts +42 -0
- package/lib/features/tools/change-bounds/change-bounds-manager.d.ts.map +1 -0
- package/lib/features/tools/change-bounds/change-bounds-manager.js +136 -0
- package/lib/features/tools/change-bounds/change-bounds-manager.js.map +1 -0
- package/lib/features/tools/change-bounds/change-bounds-tool-feedback.d.ts +6 -0
- package/lib/features/tools/change-bounds/change-bounds-tool-feedback.d.ts.map +1 -1
- package/lib/features/tools/change-bounds/change-bounds-tool-feedback.js +14 -8
- package/lib/features/tools/change-bounds/change-bounds-tool-feedback.js.map +1 -1
- package/lib/features/tools/change-bounds/change-bounds-tool-module.d.ts.map +1 -1
- package/lib/features/tools/change-bounds/change-bounds-tool-module.js +2 -0
- package/lib/features/tools/change-bounds/change-bounds-tool-module.js.map +1 -1
- package/lib/features/tools/change-bounds/change-bounds-tool-move-feedback.d.ts +6 -15
- package/lib/features/tools/change-bounds/change-bounds-tool-move-feedback.d.ts.map +1 -1
- package/lib/features/tools/change-bounds/change-bounds-tool-move-feedback.js +24 -72
- package/lib/features/tools/change-bounds/change-bounds-tool-move-feedback.js.map +1 -1
- package/lib/features/tools/change-bounds/change-bounds-tool.d.ts +14 -25
- package/lib/features/tools/change-bounds/change-bounds-tool.d.ts.map +1 -1
- package/lib/features/tools/change-bounds/change-bounds-tool.js +63 -109
- package/lib/features/tools/change-bounds/change-bounds-tool.js.map +1 -1
- package/lib/features/tools/change-bounds/change-bounds-tracker.d.ts +136 -0
- package/lib/features/tools/change-bounds/change-bounds-tracker.d.ts.map +1 -0
- package/lib/features/tools/change-bounds/change-bounds-tracker.js +301 -0
- package/lib/features/tools/change-bounds/change-bounds-tracker.js.map +1 -0
- package/lib/features/tools/change-bounds/index.d.ts +2 -0
- package/lib/features/tools/change-bounds/index.d.ts.map +1 -1
- package/lib/features/tools/change-bounds/index.js +2 -0
- package/lib/features/tools/change-bounds/index.js.map +1 -1
- package/lib/features/tools/change-bounds/view.d.ts.map +1 -1
- package/lib/features/tools/change-bounds/view.js +1 -16
- package/lib/features/tools/change-bounds/view.js.map +1 -1
- package/lib/features/tools/edge-edit/edge-edit-tool-feedback.d.ts +7 -9
- package/lib/features/tools/edge-edit/edge-edit-tool-feedback.d.ts.map +1 -1
- package/lib/features/tools/edge-edit/edge-edit-tool-feedback.js +27 -47
- package/lib/features/tools/edge-edit/edge-edit-tool-feedback.js.map +1 -1
- package/lib/features/tools/edge-edit/edge-edit-tool.d.ts +2 -2
- package/lib/features/tools/edge-edit/edge-edit-tool.d.ts.map +1 -1
- package/lib/features/tools/edge-edit/edge-edit-tool.js +5 -5
- package/lib/features/tools/edge-edit/edge-edit-tool.js.map +1 -1
- package/lib/features/tools/marquee-selection/marquee-mouse-tool.d.ts +1 -0
- package/lib/features/tools/marquee-selection/marquee-mouse-tool.d.ts.map +1 -1
- package/lib/features/tools/marquee-selection/marquee-mouse-tool.js +3 -0
- package/lib/features/tools/marquee-selection/marquee-mouse-tool.js.map +1 -1
- package/lib/features/tools/node-creation/node-creation-tool.d.ts +2 -4
- package/lib/features/tools/node-creation/node-creation-tool.d.ts.map +1 -1
- package/lib/features/tools/node-creation/node-creation-tool.js +8 -11
- package/lib/features/tools/node-creation/node-creation-tool.js.map +1 -1
- package/lib/utils/gmodel-util.d.ts +20 -1
- package/lib/utils/gmodel-util.d.ts.map +1 -1
- package/lib/utils/gmodel-util.js +38 -16
- package/lib/utils/gmodel-util.js.map +1 -1
- package/lib/utils/layout-utils.d.ts +1 -0
- package/lib/utils/layout-utils.d.ts.map +1 -1
- package/lib/utils/layout-utils.js +5 -1
- package/lib/utils/layout-utils.js.map +1 -1
- package/package.json +3 -3
- package/src/base/default.module.ts +4 -1
- package/src/base/feedback/css-feedback.ts +10 -2
- package/src/base/feedback/feeback-emitter.ts +6 -3
- package/src/base/index.ts +1 -0
- package/src/base/mouse-position-tracker.ts +25 -0
- package/src/features/accessibility/view-key-tools/movement-key-tool.ts +12 -7
- package/src/features/bounds/bounds-module.ts +2 -0
- package/src/features/bounds/freeform-layout.ts +16 -6
- package/src/features/bounds/glsp-hidden-bounds-updater.ts +63 -46
- package/src/features/bounds/hbox-layout.ts +18 -9
- package/src/features/bounds/index.ts +1 -0
- package/src/features/bounds/layout-data.ts +48 -0
- package/src/features/bounds/local-bounds.ts +20 -4
- package/src/features/bounds/vbox-layout.ts +18 -10
- package/src/features/change-bounds/index.ts +1 -0
- package/src/features/change-bounds/model.ts +104 -4
- package/src/features/change-bounds/movement-restrictor.ts +10 -0
- package/src/features/change-bounds/point-position-updater.spec.ts +2 -0
- package/src/features/change-bounds/point-position-updater.ts +6 -0
- package/src/features/change-bounds/position-snapper.ts +4 -0
- package/src/features/change-bounds/snap.ts +6 -0
- package/src/features/change-bounds/tracker.ts +63 -0
- package/src/features/debug/debug-bounds-decorator.tsx +17 -7
- package/src/features/element-template/mouse-tracking-element-position-listener.ts +49 -71
- package/src/features/helper-lines/helper-line-feedback.ts +2 -1
- package/src/features/helper-lines/helper-line-manager-default.ts +37 -2
- package/src/features/helper-lines/helper-line-manager.ts +11 -2
- package/src/features/routing/edge-router.ts +42 -0
- package/src/features/select/select-mouse-listener.ts +15 -1
- package/src/features/tools/base-tools.ts +31 -19
- package/src/features/tools/change-bounds/change-bounds-manager.ts +145 -0
- package/src/features/tools/change-bounds/change-bounds-tool-feedback.ts +17 -6
- package/src/features/tools/change-bounds/change-bounds-tool-module.ts +2 -0
- package/src/features/tools/change-bounds/change-bounds-tool-move-feedback.ts +31 -81
- package/src/features/tools/change-bounds/change-bounds-tool.ts +89 -148
- package/src/features/tools/change-bounds/change-bounds-tracker.ts +455 -0
- package/src/features/tools/change-bounds/index.ts +2 -0
- package/src/features/tools/change-bounds/view.tsx +2 -14
- package/src/features/tools/edge-edit/edge-edit-tool-feedback.ts +34 -52
- package/src/features/tools/edge-edit/edge-edit-tool.ts +4 -3
- package/src/features/tools/marquee-selection/marquee-mouse-tool.ts +4 -0
- package/src/features/tools/node-creation/node-creation-tool.ts +7 -7
- package/src/utils/gmodel-util.ts +41 -5
- package/src/utils/layout-utils.ts +4 -0
|
@@ -22,8 +22,9 @@ exports.FreeFormLayouter = void 0;
|
|
|
22
22
|
*
|
|
23
23
|
* SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
|
|
24
24
|
********************************************************************************/
|
|
25
|
-
const inversify_1 = require("inversify");
|
|
26
25
|
const sprotty_1 = require("@eclipse-glsp/sprotty");
|
|
26
|
+
const inversify_1 = require("inversify");
|
|
27
|
+
const layout_data_1 = require("./layout-data");
|
|
27
28
|
/**
|
|
28
29
|
* Layouts children of a container with explicit X/Y positions
|
|
29
30
|
*/
|
|
@@ -36,9 +37,11 @@ let FreeFormLayouter = class FreeFormLayouter extends sprotty_1.AbstractLayout {
|
|
|
36
37
|
// we only need to compute the bounds required to layout the children.
|
|
37
38
|
const maxWidth = childrenSize.width > 0 ? childrenSize.width + options.paddingLeft + options.paddingRight : 0;
|
|
38
39
|
const maxHeight = childrenSize.height > 0 ? childrenSize.height + options.paddingTop + options.paddingBottom : 0;
|
|
39
|
-
if (
|
|
40
|
+
if (childrenSize.width > 0 && childrenSize.height > 0) {
|
|
40
41
|
const offset = this.layoutChildren(container, layouter, options, maxWidth, maxHeight);
|
|
41
|
-
|
|
42
|
+
const computed = this.getComputedContainerDimensions(options, childrenSize.width, childrenSize.height);
|
|
43
|
+
layout_data_1.LayoutAware.setComputedDimensions(boundsData, computed);
|
|
44
|
+
boundsData.bounds = this.getFinalContainerBounds(container, offset, options, computed.width, computed.height);
|
|
42
45
|
boundsData.boundsChanged = true;
|
|
43
46
|
}
|
|
44
47
|
else {
|
|
@@ -73,12 +76,18 @@ let FreeFormLayouter = class FreeFormLayouter extends sprotty_1.AbstractLayout {
|
|
|
73
76
|
boundsData.boundsChanged = true;
|
|
74
77
|
return currentOffset;
|
|
75
78
|
}
|
|
79
|
+
getComputedContainerDimensions(options, maxWidth, maxHeight) {
|
|
80
|
+
return {
|
|
81
|
+
width: maxWidth + options.paddingLeft + options.paddingRight,
|
|
82
|
+
height: maxHeight + options.paddingTop + options.paddingBottom
|
|
83
|
+
};
|
|
84
|
+
}
|
|
76
85
|
getFinalContainerBounds(container, lastOffset, options, maxWidth, maxHeight) {
|
|
77
86
|
const result = {
|
|
78
87
|
x: container.bounds.x,
|
|
79
88
|
y: container.bounds.y,
|
|
80
|
-
width: Math.max(options.minWidth, maxWidth
|
|
81
|
-
height: Math.max(options.minHeight, maxHeight
|
|
89
|
+
width: Math.max(options.minWidth, maxWidth),
|
|
90
|
+
height: Math.max(options.minHeight, maxHeight)
|
|
82
91
|
};
|
|
83
92
|
return result;
|
|
84
93
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"freeform-layout.js","sourceRoot":"","sources":["../../../src/features/bounds/freeform-layout.ts"],"names":[],"mappings":";;;;;;;;;AAAA;;;;;;;;;;;;;;kFAckF;AAClF,
|
|
1
|
+
{"version":3,"file":"freeform-layout.js","sourceRoot":"","sources":["../../../src/features/bounds/freeform-layout.ts"],"names":[],"mappings":"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"}
|
|
@@ -13,9 +13,12 @@
|
|
|
13
13
|
*
|
|
14
14
|
* SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
|
|
15
15
|
********************************************************************************/
|
|
16
|
-
import { Action, BoundsData,
|
|
16
|
+
import { Action, BoundsData, EdgeRouterRegistry, ElementAndRoutingPoints, GModelElement, HiddenBoundsUpdater, LayoutData, ModelIndexImpl } from '@eclipse-glsp/sprotty';
|
|
17
17
|
import { VNode } from 'snabbdom';
|
|
18
18
|
import { BoundsAwareModelElement } from '../../utils/gmodel-util';
|
|
19
|
+
export declare class BoundsDataExt extends BoundsData {
|
|
20
|
+
layoutData?: LayoutData;
|
|
21
|
+
}
|
|
19
22
|
/**
|
|
20
23
|
* Grabs the bounds from hidden SVG DOM elements, applies layouts, collects routes and fires {@link ComputedBoundsAction}s.
|
|
21
24
|
*
|
|
@@ -24,12 +27,10 @@ import { BoundsAwareModelElement } from '../../utils/gmodel-util';
|
|
|
24
27
|
export declare class GLSPHiddenBoundsUpdater extends HiddenBoundsUpdater {
|
|
25
28
|
protected readonly edgeRouterRegistry?: EdgeRouterRegistry;
|
|
26
29
|
protected element2route: ElementAndRoutingPoints[];
|
|
27
|
-
protected getElement2BoundsData(): Map<BoundsAwareModelElement,
|
|
30
|
+
protected getElement2BoundsData(): Map<BoundsAwareModelElement, BoundsDataExt>;
|
|
28
31
|
decorate(vnode: VNode, element: GModelElement): VNode;
|
|
29
32
|
postUpdate(cause?: Action): void;
|
|
30
33
|
protected focusOnElements(elementIDs: string[]): void;
|
|
31
34
|
protected expandElementId(id: string, index: ModelIndexImpl, elementIDs: string[]): string[];
|
|
32
|
-
protected captureActions(call: () => void): Action[];
|
|
33
|
-
protected enhanceAction(action: ComputedBoundsAction, cause?: Action): ComputedBoundsAction;
|
|
34
35
|
}
|
|
35
36
|
//# sourceMappingURL=glsp-hidden-bounds-updater.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"glsp-hidden-bounds-updater.d.ts","sourceRoot":"","sources":["../../../src/features/bounds/glsp-hidden-bounds-updater.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAElF,OAAO,EACH,MAAM,EACN,UAAU,
|
|
1
|
+
{"version":3,"file":"glsp-hidden-bounds-updater.d.ts","sourceRoot":"","sources":["../../../src/features/bounds/glsp-hidden-bounds-updater.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAElF,OAAO,EACH,MAAM,EACN,UAAU,EAEV,kBAAkB,EAIlB,uBAAuB,EAEvB,aAAa,EACb,mBAAmB,EACnB,UAAU,EACV,cAAc,EAGjB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AACjC,OAAO,EAAE,uBAAuB,EAAqD,MAAM,yBAAyB,CAAC;AAIrH,qBAAa,aAAc,SAAQ,UAAU;IACzC,UAAU,CAAC,EAAE,UAAU,CAAC;CAC3B;AAED;;;;GAIG;AACH,qBACa,uBAAwB,SAAQ,mBAAmB;IACpB,SAAS,CAAC,QAAQ,CAAC,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;IAEnG,SAAS,CAAC,aAAa,EAAE,uBAAuB,EAAE,CAAM;IAExD,SAAS,CAAC,qBAAqB,IAAI,GAAG,CAAC,uBAAuB,EAAE,aAAa,CAAC;IAIrE,QAAQ,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,aAAa,GAAG,KAAK;IAQrD,UAAU,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI;IAyDzC,SAAS,CAAC,eAAe,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,IAAI;IAYrD,SAAS,CAAC,eAAe,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE;CAG/F"}
|
|
@@ -24,11 +24,15 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
|
24
24
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
25
25
|
};
|
|
26
26
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
27
|
-
exports.GLSPHiddenBoundsUpdater = void 0;
|
|
27
|
+
exports.GLSPHiddenBoundsUpdater = exports.BoundsDataExt = void 0;
|
|
28
28
|
const sprotty_1 = require("@eclipse-glsp/sprotty");
|
|
29
29
|
const inversify_1 = require("inversify");
|
|
30
30
|
const gmodel_util_1 = require("../../utils/gmodel-util");
|
|
31
|
+
const layout_data_1 = require("./layout-data");
|
|
31
32
|
const local_bounds_1 = require("./local-bounds");
|
|
33
|
+
class BoundsDataExt extends sprotty_1.BoundsData {
|
|
34
|
+
}
|
|
35
|
+
exports.BoundsDataExt = BoundsDataExt;
|
|
32
36
|
/**
|
|
33
37
|
* Grabs the bounds from hidden SVG DOM elements, applies layouts, collects routes and fires {@link ComputedBoundsAction}s.
|
|
34
38
|
*
|
|
@@ -53,10 +57,52 @@ let GLSPHiddenBoundsUpdater = class GLSPHiddenBoundsUpdater extends sprotty_1.Hi
|
|
|
53
57
|
if (local_bounds_1.LocalRequestBoundsAction.is(cause) && cause.elementIDs) {
|
|
54
58
|
this.focusOnElements(cause.elementIDs);
|
|
55
59
|
}
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
+
// collect bounds and layout data in element2BoundsData
|
|
61
|
+
this.getBoundsFromDOM();
|
|
62
|
+
this.layouter.layout(this.getElement2BoundsData());
|
|
63
|
+
// prepare data for action
|
|
64
|
+
const resizes = [];
|
|
65
|
+
const alignments = [];
|
|
66
|
+
const layoutData = [];
|
|
67
|
+
this.getElement2BoundsData().forEach((boundsData, element) => {
|
|
68
|
+
if (boundsData.boundsChanged && boundsData.bounds !== undefined) {
|
|
69
|
+
const resize = {
|
|
70
|
+
elementId: element.id,
|
|
71
|
+
newSize: {
|
|
72
|
+
width: boundsData.bounds.width,
|
|
73
|
+
height: boundsData.bounds.height
|
|
74
|
+
}
|
|
75
|
+
};
|
|
76
|
+
// don't copy position if the element is layouted by the server
|
|
77
|
+
if (element instanceof sprotty_1.GChildElement && (0, sprotty_1.isLayoutContainer)(element.parent)) {
|
|
78
|
+
resize.newPosition = {
|
|
79
|
+
x: boundsData.bounds.x,
|
|
80
|
+
y: boundsData.bounds.y
|
|
81
|
+
};
|
|
82
|
+
}
|
|
83
|
+
resizes.push(resize);
|
|
84
|
+
}
|
|
85
|
+
if (boundsData.alignmentChanged && boundsData.alignment !== undefined) {
|
|
86
|
+
alignments.push({
|
|
87
|
+
elementId: element.id,
|
|
88
|
+
newAlignment: boundsData.alignment
|
|
89
|
+
});
|
|
90
|
+
}
|
|
91
|
+
if (layout_data_1.LayoutAware.is(boundsData)) {
|
|
92
|
+
layoutData.push({ elementId: element.id, layoutData: boundsData.layoutData });
|
|
93
|
+
}
|
|
94
|
+
});
|
|
95
|
+
const routes = this.element2route.length === 0 ? undefined : this.element2route;
|
|
96
|
+
// prepare and dispatch action
|
|
97
|
+
const responseId = cause.requestId;
|
|
98
|
+
const revision = this.root !== undefined ? this.root.revision : undefined;
|
|
99
|
+
const computedBoundsAction = sprotty_1.ComputedBoundsAction.create(resizes, { revision, alignments, layoutData, routes, responseId });
|
|
100
|
+
if (local_bounds_1.LocalRequestBoundsAction.is(cause)) {
|
|
101
|
+
local_bounds_1.LocalComputedBoundsAction.mark(computedBoundsAction);
|
|
102
|
+
}
|
|
103
|
+
this.actionDispatcher.dispatch(computedBoundsAction);
|
|
104
|
+
// cleanup
|
|
105
|
+
this.getElement2BoundsData().clear();
|
|
60
106
|
this.element2route = [];
|
|
61
107
|
}
|
|
62
108
|
focusOnElements(elementIDs) {
|
|
@@ -72,25 +118,6 @@ let GLSPHiddenBoundsUpdater = class GLSPHiddenBoundsUpdater extends sprotty_1.Hi
|
|
|
72
118
|
expandElementId(id, index, elementIDs) {
|
|
73
119
|
return (0, gmodel_util_1.getDescendantIds)(index.getById(id));
|
|
74
120
|
}
|
|
75
|
-
captureActions(call) {
|
|
76
|
-
const capturingActionDispatcher = new CapturingActionDispatcher();
|
|
77
|
-
const actualActionDispatcher = this.actionDispatcher;
|
|
78
|
-
this.actionDispatcher = capturingActionDispatcher;
|
|
79
|
-
try {
|
|
80
|
-
call();
|
|
81
|
-
return capturingActionDispatcher.actions;
|
|
82
|
-
}
|
|
83
|
-
finally {
|
|
84
|
-
this.actionDispatcher = actualActionDispatcher;
|
|
85
|
-
}
|
|
86
|
-
}
|
|
87
|
-
enhanceAction(action, cause) {
|
|
88
|
-
if (local_bounds_1.LocalRequestBoundsAction.is(cause)) {
|
|
89
|
-
local_bounds_1.LocalComputedBoundsAction.mark(action);
|
|
90
|
-
}
|
|
91
|
-
action.routes = this.element2route.length === 0 ? undefined : this.element2route;
|
|
92
|
-
return action;
|
|
93
|
-
}
|
|
94
121
|
};
|
|
95
122
|
exports.GLSPHiddenBoundsUpdater = GLSPHiddenBoundsUpdater;
|
|
96
123
|
__decorate([
|
|
@@ -101,19 +128,4 @@ __decorate([
|
|
|
101
128
|
exports.GLSPHiddenBoundsUpdater = GLSPHiddenBoundsUpdater = __decorate([
|
|
102
129
|
(0, inversify_1.injectable)()
|
|
103
130
|
], GLSPHiddenBoundsUpdater);
|
|
104
|
-
class CapturingActionDispatcher {
|
|
105
|
-
constructor() {
|
|
106
|
-
this.actions = [];
|
|
107
|
-
}
|
|
108
|
-
async dispatch(action) {
|
|
109
|
-
this.actions.push(action);
|
|
110
|
-
}
|
|
111
|
-
async dispatchAll(actions) {
|
|
112
|
-
this.actions.push(...actions);
|
|
113
|
-
}
|
|
114
|
-
async request(action) {
|
|
115
|
-
// ignore, not needed for our purposes
|
|
116
|
-
return new sprotty_1.Deferred().promise;
|
|
117
|
-
}
|
|
118
|
-
}
|
|
119
131
|
//# sourceMappingURL=glsp-hidden-bounds-updater.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"glsp-hidden-bounds-updater.js","sourceRoot":"","sources":["../../../src/features/bounds/glsp-hidden-bounds-updater.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;kFAckF;;;;;;;;;;;;AAElF,
|
|
1
|
+
{"version":3,"file":"glsp-hidden-bounds-updater.js","sourceRoot":"","sources":["../../../src/features/bounds/glsp-hidden-bounds-updater.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,19 @@
|
|
|
1
|
-
|
|
1
|
+
/********************************************************************************
|
|
2
|
+
* Copyright (c) 2021-2023 EclipseSource and others.
|
|
3
|
+
*
|
|
4
|
+
* This program and the accompanying materials are made available under the
|
|
5
|
+
* terms of the Eclipse Public License v. 2.0 which is available at
|
|
6
|
+
* http://www.eclipse.org/legal/epl-2.0.
|
|
7
|
+
*
|
|
8
|
+
* This Source Code may also be made available under the following Secondary
|
|
9
|
+
* Licenses when the conditions for such availability set forth in the Eclipse
|
|
10
|
+
* Public License v. 2.0 are satisfied: GNU General Public License, version 2
|
|
11
|
+
* with the GNU Classpath Exception which is available at
|
|
12
|
+
* https://www.gnu.org/software/classpath/license.html.
|
|
13
|
+
*
|
|
14
|
+
* SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
|
|
15
|
+
********************************************************************************/
|
|
16
|
+
import { Bounds, BoundsData, Dimension, GChildElement, GModelElement, GParentElement, HBoxLayoutOptions, HBoxLayouter, LayoutContainer, Point, StatefulLayouter } from '@eclipse-glsp/sprotty';
|
|
2
17
|
export interface HBoxLayoutOptionsExt extends HBoxLayoutOptions {
|
|
3
18
|
hGrab: boolean;
|
|
4
19
|
vGrab: boolean;
|
|
@@ -18,7 +33,8 @@ export declare class HBoxLayouterExt extends HBoxLayouter {
|
|
|
18
33
|
protected getChildLayoutOptions(child: GChildElement, containerOptions: HBoxLayoutOptionsExt): HBoxLayoutOptionsExt;
|
|
19
34
|
protected getLayoutOptions(element: GModelElement): HBoxLayoutOptionsExt;
|
|
20
35
|
protected getElementLayoutOptions(element: GModelElement): HBoxLayoutOptionsExt | undefined;
|
|
21
|
-
protected
|
|
36
|
+
protected getComputedContainerDimensions(options: HBoxLayoutOptionsExt, maxWidth: number, maxHeight: number): Dimension;
|
|
37
|
+
protected getFinalContainerBounds(container: GParentElement & LayoutContainer, lastOffset: Point, options: HBoxLayoutOptionsExt, computedWidth: number, computedHeight: number): Bounds;
|
|
22
38
|
protected getDefaultLayoutOptions(): HBoxLayoutOptionsExt;
|
|
23
39
|
protected filterContainerOptions(containerOptions: HBoxLayoutOptionsExt): HBoxLayoutOptionsExt;
|
|
24
40
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hbox-layout.d.ts","sourceRoot":"","sources":["../../../src/features/bounds/hbox-layout.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"hbox-layout.d.ts","sourceRoot":"","sources":["../../../src/features/bounds/hbox-layout.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAClF,OAAO,EACH,MAAM,EACN,UAAU,EACV,SAAS,EACT,aAAa,EACb,aAAa,EACb,cAAc,EACd,iBAAiB,EACjB,YAAY,EACZ,eAAe,EACf,KAAK,EACL,gBAAgB,EAGnB,MAAM,uBAAuB,CAAC;AAI/B,MAAM,WAAW,oBAAqB,SAAQ,iBAAiB;IAC3D,KAAK,EAAE,OAAO,CAAC;IACf,KAAK,EAAE,OAAO,CAAC;IACf,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7B;AAED;;GAEG;AACH,qBACa,eAAgB,SAAQ,YAAY;IAC7C,OAAgB,IAAI,SAAqB;IAEhC,MAAM,CAAC,SAAS,EAAE,cAAc,GAAG,eAAe,EAAE,QAAQ,EAAE,gBAAgB,GAAG,IAAI;cA0C3E,eAAe,CAC9B,SAAS,EAAE,cAAc,GAAG,eAAe,EAC3C,gBAAgB,EAAE,oBAAoB,EACtC,QAAQ,EAAE,gBAAgB,GAC3B,SAAS;cAyBO,cAAc,CAC7B,SAAS,EAAE,cAAc,GAAG,eAAe,EAC3C,QAAQ,EAAE,gBAAgB,EAC1B,gBAAgB,EAAE,oBAAoB,EACtC,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,EACjB,SAAS,CAAC,EAAE,MAAM,EAClB,gBAAgB,CAAC,EAAE,MAAM,GAC1B,KAAK;cA8BW,WAAW,CAC1B,KAAK,EAAE,aAAa,EACpB,UAAU,EAAE,UAAU,EACtB,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,oBAAoB,EAClC,gBAAgB,EAAE,oBAAoB,EACtC,aAAa,EAAE,KAAK,EACpB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,EACjB,SAAS,CAAC,EAAE,MAAM,EAClB,gBAAgB,CAAC,EAAE,MAAM,GAC1B,KAAK;cAgCW,uBAAuB,CACtC,SAAS,EAAE,aAAa,EACxB,aAAa,EAAE,oBAAoB,EACnC,QAAQ,EAAE,gBAAgB,GAC3B,MAAM;cAaU,qBAAqB,CAAC,KAAK,EAAE,aAAa,EAAE,gBAAgB,EAAE,oBAAoB,GAAG,oBAAoB;cAIzG,gBAAgB,CAAC,OAAO,EAAE,aAAa,GAAG,oBAAoB;IAIjF,SAAS,CAAC,uBAAuB,CAAC,OAAO,EAAE,aAAa,GAAG,oBAAoB,GAAG,SAAS;IAI3F,SAAS,CAAC,8BAA8B,CAAC,OAAO,EAAE,oBAAoB,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,SAAS;cAOpG,uBAAuB,CACtC,SAAS,EAAE,cAAc,GAAG,eAAe,EAC3C,UAAU,EAAE,KAAK,EACjB,OAAO,EAAE,oBAAoB,EAC7B,aAAa,EAAE,MAAM,EACrB,cAAc,EAAE,MAAM,GACvB,MAAM;cAcU,uBAAuB,IAAI,oBAAoB;IAqBlE,SAAS,CAAC,sBAAsB,CAAC,gBAAgB,EAAE,oBAAoB,GAAG,oBAAoB;CAOjG"}
|
|
@@ -22,8 +22,9 @@ exports.HBoxLayouterExt = void 0;
|
|
|
22
22
|
*
|
|
23
23
|
* SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
|
|
24
24
|
********************************************************************************/
|
|
25
|
-
const inversify_1 = require("inversify");
|
|
26
25
|
const sprotty_1 = require("@eclipse-glsp/sprotty");
|
|
26
|
+
const inversify_1 = require("inversify");
|
|
27
|
+
const layout_data_1 = require("./layout-data");
|
|
27
28
|
/**
|
|
28
29
|
* Extends HBoxLayouter to support additional layout options
|
|
29
30
|
*/
|
|
@@ -56,7 +57,9 @@ let HBoxLayouterExt = class HBoxLayouterExt extends sprotty_1.HBoxLayouter {
|
|
|
56
57
|
.filter(opt => opt.hGrab).length;
|
|
57
58
|
if (width > 0 && height > 0) {
|
|
58
59
|
const offset = this.layoutChildren(container, layouter, options, width, height, grabWidth, grabbingChildren);
|
|
59
|
-
|
|
60
|
+
const computed = this.getComputedContainerDimensions(options, childrenSize.width, childrenSize.height);
|
|
61
|
+
layout_data_1.LayoutAware.setComputedDimensions(boundsData, computed);
|
|
62
|
+
boundsData.bounds = this.getFinalContainerBounds(container, offset, options, computed.width, computed.height);
|
|
60
63
|
boundsData.boundsChanged = true;
|
|
61
64
|
}
|
|
62
65
|
}
|
|
@@ -151,7 +154,13 @@ let HBoxLayouterExt = class HBoxLayouterExt extends sprotty_1.HBoxLayouter {
|
|
|
151
154
|
getElementLayoutOptions(element) {
|
|
152
155
|
return element.layoutOptions;
|
|
153
156
|
}
|
|
154
|
-
|
|
157
|
+
getComputedContainerDimensions(options, maxWidth, maxHeight) {
|
|
158
|
+
return {
|
|
159
|
+
width: maxWidth + options.paddingLeft + options.paddingRight,
|
|
160
|
+
height: maxHeight + options.paddingTop + options.paddingBottom
|
|
161
|
+
};
|
|
162
|
+
}
|
|
163
|
+
getFinalContainerBounds(container, lastOffset, options, computedWidth, computedHeight) {
|
|
155
164
|
var _a, _b;
|
|
156
165
|
const elementOptions = this.getElementLayoutOptions(container);
|
|
157
166
|
const width = (_a = elementOptions === null || elementOptions === void 0 ? void 0 : elementOptions.prefWidth) !== null && _a !== void 0 ? _a : options.minWidth;
|
|
@@ -159,8 +168,8 @@ let HBoxLayouterExt = class HBoxLayouterExt extends sprotty_1.HBoxLayouter {
|
|
|
159
168
|
const result = {
|
|
160
169
|
x: container.bounds.x,
|
|
161
170
|
y: container.bounds.y,
|
|
162
|
-
width: Math.max(width,
|
|
163
|
-
height: Math.max(height,
|
|
171
|
+
width: Math.max(width, computedWidth),
|
|
172
|
+
height: Math.max(height, computedHeight)
|
|
164
173
|
};
|
|
165
174
|
return result;
|
|
166
175
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hbox-layout.js","sourceRoot":"","sources":["../../../src/features/bounds/hbox-layout.ts"],"names":[],"mappings":";;;;;;;;;AAAA;;;;;;;;;;;;;;kFAckF;AAClF,
|
|
1
|
+
{"version":3,"file":"hbox-layout.js","sourceRoot":"","sources":["../../../src/features/bounds/hbox-layout.ts"],"names":[],"mappings":"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"}
|
|
@@ -17,6 +17,7 @@ export * from './bounds-module';
|
|
|
17
17
|
export * from './freeform-layout';
|
|
18
18
|
export * from './glsp-hidden-bounds-updater';
|
|
19
19
|
export * from './hbox-layout';
|
|
20
|
+
export * from './layout-data';
|
|
20
21
|
export * from './layouter';
|
|
21
22
|
export * from './local-bounds';
|
|
22
23
|
export * from './set-bounds-feedback-command';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/features/bounds/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAClF,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC;AAClC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,eAAe,CAAC;AAC9B,cAAc,YAAY,CAAC;AAC3B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,+BAA+B,CAAC;AAC9C,cAAc,eAAe,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/features/bounds/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAClF,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC;AAClC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,YAAY,CAAC;AAC3B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,+BAA+B,CAAC;AAC9C,cAAc,eAAe,CAAC"}
|
|
@@ -33,6 +33,7 @@ __exportStar(require("./bounds-module"), exports);
|
|
|
33
33
|
__exportStar(require("./freeform-layout"), exports);
|
|
34
34
|
__exportStar(require("./glsp-hidden-bounds-updater"), exports);
|
|
35
35
|
__exportStar(require("./hbox-layout"), exports);
|
|
36
|
+
__exportStar(require("./layout-data"), exports);
|
|
36
37
|
__exportStar(require("./layouter"), exports);
|
|
37
38
|
__exportStar(require("./local-bounds"), exports);
|
|
38
39
|
__exportStar(require("./set-bounds-feedback-command"), exports);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/features/bounds/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA;;;;;;;;;;;;;;kFAckF;AAClF,kDAAgC;AAChC,oDAAkC;AAClC,+DAA6C;AAC7C,gDAA8B;AAC9B,6CAA2B;AAC3B,iDAA+B;AAC/B,gEAA8C;AAC9C,gDAA8B"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/features/bounds/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA;;;;;;;;;;;;;;kFAckF;AAClF,kDAAgC;AAChC,oDAAkC;AAClC,+DAA6C;AAC7C,gDAA8B;AAC9B,gDAA8B;AAC9B,6CAA2B;AAC3B,iDAA+B;AAC/B,gEAA8C;AAC9C,gDAA8B"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
/********************************************************************************
|
|
2
|
+
* Copyright (c) 2024 Axon Ivy AG and others.
|
|
3
|
+
*
|
|
4
|
+
* This program and the accompanying materials are made available under the
|
|
5
|
+
* terms of the Eclipse Public License v. 2.0 which is available at
|
|
6
|
+
* http://www.eclipse.org/legal/epl-2.0.
|
|
7
|
+
*
|
|
8
|
+
* This Source Code may also be made available under the following Secondary
|
|
9
|
+
* Licenses when the conditions for such availability set forth in the Eclipse
|
|
10
|
+
* Public License v. 2.0 are satisfied: GNU General Public License, version 2
|
|
11
|
+
* with the GNU Classpath Exception which is available at
|
|
12
|
+
* https://www.gnu.org/software/classpath/license.html.
|
|
13
|
+
*
|
|
14
|
+
* SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
|
|
15
|
+
********************************************************************************/
|
|
16
|
+
import { Dimension, LayoutData } from '@eclipse-glsp/sprotty';
|
|
17
|
+
export interface LayoutAware {
|
|
18
|
+
layoutData: LayoutData;
|
|
19
|
+
}
|
|
20
|
+
export declare namespace LayoutAware {
|
|
21
|
+
function is<T extends object>(element: T): element is T & LayoutAware;
|
|
22
|
+
function getLayoutData<T extends object>(element: T): LayoutData | undefined;
|
|
23
|
+
function setLayoutData<T extends object>(element: T, data: LayoutData): void;
|
|
24
|
+
function setComputedDimensions<T extends object>(element: T, computedDimensions: Dimension): void;
|
|
25
|
+
function getComputedDimensions<T extends object>(element: T): Dimension | undefined;
|
|
26
|
+
}
|
|
27
|
+
//# sourceMappingURL=layout-data.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"layout-data.d.ts","sourceRoot":"","sources":["../../../src/features/bounds/layout-data.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAElF,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAE9D,MAAM,WAAW,WAAW;IACxB,UAAU,EAAE,UAAU,CAAC;CAC1B;AAED,yBAAiB,WAAW,CAAC;IACzB,SAAgB,EAAE,CAAC,CAAC,SAAS,MAAM,EAAE,OAAO,EAAE,CAAC,GAAG,OAAO,IAAI,CAAC,GAAG,WAAW,CAE3E;IAED,SAAgB,aAAa,CAAC,CAAC,SAAS,MAAM,EAAE,OAAO,EAAE,CAAC,GAAG,UAAU,GAAG,SAAS,CAElF;IAED,SAAgB,aAAa,CAAC,CAAC,SAAS,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,UAAU,GAAG,IAAI,CAElF;IAED,SAAgB,qBAAqB,CAAC,CAAC,SAAS,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE,kBAAkB,EAAE,SAAS,GAAG,IAAI,CAEvG;IAED,SAAgB,qBAAqB,CAAC,CAAC,SAAS,MAAM,EAAE,OAAO,EAAE,CAAC,GAAG,SAAS,GAAG,SAAS,CAEzF;CAMJ"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/********************************************************************************
|
|
3
|
+
* Copyright (c) 2024 Axon Ivy AG and others.
|
|
4
|
+
*
|
|
5
|
+
* This program and the accompanying materials are made available under the
|
|
6
|
+
* terms of the Eclipse Public License v. 2.0 which is available at
|
|
7
|
+
* http://www.eclipse.org/legal/epl-2.0.
|
|
8
|
+
*
|
|
9
|
+
* This Source Code may also be made available under the following Secondary
|
|
10
|
+
* Licenses when the conditions for such availability set forth in the Eclipse
|
|
11
|
+
* Public License v. 2.0 are satisfied: GNU General Public License, version 2
|
|
12
|
+
* with the GNU Classpath Exception which is available at
|
|
13
|
+
* https://www.gnu.org/software/classpath/license.html.
|
|
14
|
+
*
|
|
15
|
+
* SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
|
|
16
|
+
********************************************************************************/
|
|
17
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
+
exports.LayoutAware = void 0;
|
|
19
|
+
var LayoutAware;
|
|
20
|
+
(function (LayoutAware) {
|
|
21
|
+
function is(element) {
|
|
22
|
+
return 'layoutData' in element;
|
|
23
|
+
}
|
|
24
|
+
LayoutAware.is = is;
|
|
25
|
+
function getLayoutData(element) {
|
|
26
|
+
return is(element) ? element.layoutData : undefined;
|
|
27
|
+
}
|
|
28
|
+
LayoutAware.getLayoutData = getLayoutData;
|
|
29
|
+
function setLayoutData(element, data) {
|
|
30
|
+
element.layoutData = data;
|
|
31
|
+
}
|
|
32
|
+
LayoutAware.setLayoutData = setLayoutData;
|
|
33
|
+
function setComputedDimensions(element, computedDimensions) {
|
|
34
|
+
ensureLayoutAware(element).layoutData.computedDimensions = computedDimensions;
|
|
35
|
+
}
|
|
36
|
+
LayoutAware.setComputedDimensions = setComputedDimensions;
|
|
37
|
+
function getComputedDimensions(element) {
|
|
38
|
+
var _a;
|
|
39
|
+
return (_a = getLayoutData(element)) === null || _a === void 0 ? void 0 : _a.computedDimensions;
|
|
40
|
+
}
|
|
41
|
+
LayoutAware.getComputedDimensions = getComputedDimensions;
|
|
42
|
+
function ensureLayoutAware(element) {
|
|
43
|
+
var _a;
|
|
44
|
+
element.layoutData = (_a = element.layoutData) !== null && _a !== void 0 ? _a : {};
|
|
45
|
+
return element;
|
|
46
|
+
}
|
|
47
|
+
})(LayoutAware || (exports.LayoutAware = LayoutAware = {}));
|
|
48
|
+
//# sourceMappingURL=layout-data.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"layout-data.js","sourceRoot":"","sources":["../../../src/features/bounds/layout-data.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;kFAckF;;;AAQlF,IAAiB,WAAW,CAyB3B;AAzBD,WAAiB,WAAW;IACxB,SAAgB,EAAE,CAAmB,OAAU;QAC3C,OAAO,YAAY,IAAI,OAAO,CAAC;IACnC,CAAC;IAFe,cAAE,KAEjB,CAAA;IAED,SAAgB,aAAa,CAAmB,OAAU;QACtD,OAAO,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC;IACxD,CAAC;IAFe,yBAAa,gBAE5B,CAAA;IAED,SAAgB,aAAa,CAAmB,OAAU,EAAE,IAAgB;QACvE,OAAuB,CAAC,UAAU,GAAG,IAAI,CAAC;IAC/C,CAAC;IAFe,yBAAa,gBAE5B,CAAA;IAED,SAAgB,qBAAqB,CAAmB,OAAU,EAAE,kBAA6B;QAC7F,iBAAiB,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,kBAAkB,GAAG,kBAAkB,CAAC;IAClF,CAAC;IAFe,iCAAqB,wBAEpC,CAAA;IAED,SAAgB,qBAAqB,CAAmB,OAAU;;QAC9D,OAAO,MAAA,aAAa,CAAC,OAAO,CAAC,0CAAE,kBAAkB,CAAC;IACtD,CAAC;IAFe,iCAAqB,wBAEpC,CAAA;IAED,SAAS,iBAAiB,CAAmB,OAAU;;QAClD,OAAuB,CAAC,UAAU,GAAG,MAAC,OAAuB,CAAC,UAAU,mCAAI,EAAE,CAAC;QAChF,OAAO,OAA0B,CAAC;IACtC,CAAC;AACL,CAAC,EAzBgB,WAAW,2BAAX,WAAW,QAyB3B"}
|
|
@@ -14,16 +14,18 @@
|
|
|
14
14
|
* SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
|
|
15
15
|
********************************************************************************/
|
|
16
16
|
import { Action, ActionDispatcher, Command, CommandExecutionContext, CommandResult, CommandReturn, ComputedBoundsAction, ComputedBoundsApplicator, GModelRoot, GModelRootSchema, RequestBoundsAction, ViewerOptions } from '@eclipse-glsp/sprotty';
|
|
17
|
+
import { ServerAction } from '../../base/model/glsp-model-source';
|
|
17
18
|
export interface LocalRequestBoundsAction extends RequestBoundsAction {
|
|
18
19
|
elementIDs?: string[];
|
|
19
20
|
}
|
|
20
21
|
export declare namespace LocalRequestBoundsAction {
|
|
21
22
|
function is(object: unknown): object is LocalRequestBoundsAction;
|
|
23
|
+
function create(newRoot: GModelRoot, elementIDs?: string[]): LocalRequestBoundsAction;
|
|
22
24
|
function create(newRoot: GModelRootSchema, elementIDs?: string[]): LocalRequestBoundsAction;
|
|
23
25
|
function fromCommand({ root }: CommandExecutionContext, actionDispatcher: ActionDispatcher, cause?: Action, elementIDs?: string[]): CommandResult;
|
|
24
26
|
}
|
|
25
27
|
export declare namespace LocalComputedBoundsAction {
|
|
26
|
-
function is(object: unknown): object is
|
|
28
|
+
function is(object: unknown): object is ComputedBoundsAction & ServerAction;
|
|
27
29
|
function mark(action: ComputedBoundsAction): ComputedBoundsAction;
|
|
28
30
|
}
|
|
29
31
|
export declare class LocalComputedBoundsCommand extends Command {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"local-bounds.d.ts","sourceRoot":"","sources":["../../../src/features/bounds/local-bounds.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAClF,OAAO,EACH,MAAM,EACN,gBAAgB,EAChB,OAAO,EACP,uBAAuB,EACvB,aAAa,EACb,aAAa,EACb,oBAAoB,EACpB,wBAAwB,EACxB,UAAU,EACV,gBAAgB,EAChB,mBAAmB,EAEnB,aAAa,EAEhB,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"local-bounds.d.ts","sourceRoot":"","sources":["../../../src/features/bounds/local-bounds.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAClF,OAAO,EACH,MAAM,EACN,gBAAgB,EAChB,OAAO,EACP,uBAAuB,EACvB,aAAa,EACb,aAAa,EACb,oBAAoB,EACpB,wBAAwB,EACxB,UAAU,EACV,gBAAgB,EAChB,mBAAmB,EAEnB,aAAa,EAEhB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAGlE,MAAM,WAAW,wBAAyB,SAAQ,mBAAmB;IACjE,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;CACzB;AAED,yBAAiB,wBAAwB,CAAC;IACtC,SAAgB,EAAE,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,IAAI,wBAAwB,CAEtE;IAED,SAAgB,MAAM,CAAC,OAAO,EAAE,UAAU,EAAE,UAAU,CAAC,EAAE,MAAM,EAAE,GAAG,wBAAwB,CAAC;IAC7F,SAAgB,MAAM,CAAC,OAAO,EAAE,gBAAgB,EAAE,UAAU,CAAC,EAAE,MAAM,EAAE,GAAG,wBAAwB,CAAC;IAQnG,SAAgB,WAAW,CACvB,EAAE,IAAI,EAAE,EAAE,uBAAuB,EACjC,gBAAgB,EAAE,gBAAgB,EAClC,KAAK,CAAC,EAAE,MAAM,EACd,UAAU,CAAC,EAAE,MAAM,EAAE,GACtB,aAAa,CAQf;CACJ;AAED,yBAAiB,yBAAyB,CAAC;IACvC,SAAgB,EAAE,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,IAAI,oBAAoB,GAAG,YAAY,CAEjF;IAED,SAAgB,IAAI,CAAC,MAAM,EAAE,oBAAoB,GAAG,oBAAoB,CAIvE;CACJ;AAED,qBACa,0BAA2B,SAAQ,OAAO;IAMjB,QAAQ,CAAC,MAAM,EAAE,oBAAoB;IALvE,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAA6B;IAEvB,SAAS,CAAC,QAAQ,CAAC,wBAAwB,EAAE,wBAAwB,CAAC;IAC3E,SAAS,CAAC,QAAQ,CAAC,aAAa,EAAE,aAAa,CAAC;gBAElC,MAAM,EAAE,oBAAoB;IAI9D,OAAO,CAAC,OAAO,EAAE,uBAAuB,GAAG,UAAU,GAAG,aAAa;IA8BrE,IAAI,CAAC,OAAO,EAAE,uBAAuB,GAAG,aAAa;IAIrD,IAAI,CAAC,OAAO,EAAE,uBAAuB,GAAG,aAAa;CAGjE"}
|
|
@@ -31,6 +31,7 @@ exports.LocalComputedBoundsCommand = exports.LocalComputedBoundsAction = exports
|
|
|
31
31
|
const sprotty_1 = require("@eclipse-glsp/sprotty");
|
|
32
32
|
const inversify_1 = require("inversify");
|
|
33
33
|
const glsp_model_source_1 = require("../../base/model/glsp-model-source");
|
|
34
|
+
const layout_data_1 = require("./layout-data");
|
|
34
35
|
var LocalRequestBoundsAction;
|
|
35
36
|
(function (LocalRequestBoundsAction) {
|
|
36
37
|
function is(object) {
|
|
@@ -71,14 +72,27 @@ let LocalComputedBoundsCommand = class LocalComputedBoundsCommand extends sprott
|
|
|
71
72
|
this.action = action;
|
|
72
73
|
}
|
|
73
74
|
execute(context) {
|
|
75
|
+
var _a, _b;
|
|
74
76
|
if (LocalComputedBoundsAction.is(this.action)) {
|
|
75
77
|
if (!this.viewerOptions.needsClientLayout) {
|
|
76
78
|
return context.root;
|
|
77
79
|
}
|
|
78
80
|
// apply computed bounds from the hidden model and return updated model to render new main model
|
|
79
81
|
this.computedBoundsApplicator.apply(context.root, this.action);
|
|
82
|
+
(_a = this.action.layoutData) === null || _a === void 0 ? void 0 : _a.forEach(({ elementId, layoutData }) => {
|
|
83
|
+
const element = context.root.index.getById(elementId);
|
|
84
|
+
if (element !== undefined) {
|
|
85
|
+
layout_data_1.LayoutAware.setLayoutData(element, layoutData);
|
|
86
|
+
}
|
|
87
|
+
});
|
|
80
88
|
return context.root;
|
|
81
89
|
}
|
|
90
|
+
(_b = this.action.layoutData) === null || _b === void 0 ? void 0 : _b.forEach(({ elementId, layoutData }) => {
|
|
91
|
+
const element = context.root.index.getById(elementId);
|
|
92
|
+
if (element !== undefined) {
|
|
93
|
+
layout_data_1.LayoutAware.setLayoutData(element, layoutData);
|
|
94
|
+
}
|
|
95
|
+
});
|
|
82
96
|
// computed bounds action from server -> we do not care and do not trigger any update of the main model
|
|
83
97
|
return {
|
|
84
98
|
model: context.root,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"local-bounds.js","sourceRoot":"","sources":["../../../src/features/bounds/local-bounds.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA;;;;;;;;;;;;;;kFAckF;AAClF,mDAe+B;AAC/B,yCAA+C;AAC/C,0EAAkE;
|
|
1
|
+
{"version":3,"file":"local-bounds.js","sourceRoot":"","sources":["../../../src/features/bounds/local-bounds.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,19 @@
|
|
|
1
|
-
|
|
1
|
+
/********************************************************************************
|
|
2
|
+
* Copyright (c) 2021-2023 EclipseSource and others.
|
|
3
|
+
*
|
|
4
|
+
* This program and the accompanying materials are made available under the
|
|
5
|
+
* terms of the Eclipse Public License v. 2.0 which is available at
|
|
6
|
+
* http://www.eclipse.org/legal/epl-2.0.
|
|
7
|
+
*
|
|
8
|
+
* This Source Code may also be made available under the following Secondary
|
|
9
|
+
* Licenses when the conditions for such availability set forth in the Eclipse
|
|
10
|
+
* Public License v. 2.0 are satisfied: GNU General Public License, version 2
|
|
11
|
+
* with the GNU Classpath Exception which is available at
|
|
12
|
+
* https://www.gnu.org/software/classpath/license.html.
|
|
13
|
+
*
|
|
14
|
+
* SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
|
|
15
|
+
********************************************************************************/
|
|
16
|
+
import { Bounds, BoundsData, Dimension, GChildElement, GModelElement, GParentElement, LayoutContainer, Point, StatefulLayouter, VBoxLayoutOptions, VBoxLayouter } from '@eclipse-glsp/sprotty';
|
|
2
17
|
export interface VBoxLayoutOptionsExt extends VBoxLayoutOptions {
|
|
3
18
|
hGrab: boolean;
|
|
4
19
|
vGrab: boolean;
|
|
@@ -18,7 +33,8 @@ export declare class VBoxLayouterExt extends VBoxLayouter {
|
|
|
18
33
|
protected getChildLayoutOptions(child: GChildElement, containerOptions: VBoxLayoutOptionsExt): VBoxLayoutOptionsExt;
|
|
19
34
|
protected getLayoutOptions(element: GModelElement): VBoxLayoutOptionsExt;
|
|
20
35
|
protected getElementLayoutOptions(element: GModelElement): VBoxLayoutOptionsExt | undefined;
|
|
21
|
-
protected
|
|
36
|
+
protected getComputedContainerDimensions(options: VBoxLayoutOptionsExt, maxWidth: number, maxHeight: number): Dimension;
|
|
37
|
+
protected getFinalContainerBounds(container: GParentElement & LayoutContainer, lastOffset: Point, options: VBoxLayoutOptionsExt, computedWidth: number, computedHeight: number): Bounds;
|
|
22
38
|
protected getDefaultLayoutOptions(): VBoxLayoutOptionsExt;
|
|
23
39
|
protected filterContainerOptions(containerOptions: VBoxLayoutOptionsExt): VBoxLayoutOptionsExt;
|
|
24
40
|
}
|