@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
|
@@ -10,7 +10,7 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
|
10
10
|
};
|
|
11
11
|
var ChangeBoundsTool_1;
|
|
12
12
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
|
-
exports.ChangeBoundsListener = exports.
|
|
13
|
+
exports.ChangeBoundsListener = exports.ChangeBoundsTool = void 0;
|
|
14
14
|
/********************************************************************************
|
|
15
15
|
* Copyright (c) 2019-2023 EclipseSource and others.
|
|
16
16
|
*
|
|
@@ -28,17 +28,14 @@ exports.ChangeBoundsListener = exports.ValidatedElementAndBounds = exports.Chang
|
|
|
28
28
|
********************************************************************************/
|
|
29
29
|
const inversify_1 = require("inversify");
|
|
30
30
|
const sprotty_1 = require("@eclipse-glsp/sprotty");
|
|
31
|
+
const __1 = require("..");
|
|
31
32
|
const drag_aware_mouse_listener_1 = require("../../../base/drag-aware-mouse-listener");
|
|
32
33
|
const css_feedback_1 = require("../../../base/feedback/css-feedback");
|
|
33
34
|
const selection_service_1 = require("../../../base/selection-service");
|
|
34
|
-
const utils_1 = require("../../../utils");
|
|
35
35
|
const gmodel_util_1 = require("../../../utils/gmodel-util");
|
|
36
36
|
const bounds_1 = require("../../bounds");
|
|
37
|
-
const change_bounds_1 = require("../../change-bounds");
|
|
38
37
|
const model_1 = require("../../change-bounds/model");
|
|
39
38
|
const movement_restrictor_1 = require("../../change-bounds/movement-restrictor");
|
|
40
|
-
const position_snapper_1 = require("../../change-bounds/position-snapper");
|
|
41
|
-
const helper_lines_1 = require("../../helper-lines");
|
|
42
39
|
const base_tools_1 = require("../base-tools");
|
|
43
40
|
const change_bounds_tool_feedback_1 = require("./change-bounds-tool-feedback");
|
|
44
41
|
const change_bounds_tool_move_feedback_1 = require("./change-bounds-tool-move-feedback");
|
|
@@ -72,6 +69,9 @@ let ChangeBoundsTool = ChangeBoundsTool_1 = class ChangeBoundsTool extends base_
|
|
|
72
69
|
}
|
|
73
70
|
this.toDisposeOnDisable.push(this.mouseTool.registerListener(feedbackMoveMouseListener), this.mouseTool.registerListener(changeBoundsListener), this.selectionService.onSelectionChanged(change => changeBoundsListener.selectionChanged(change.root, change.selectedElements)));
|
|
74
71
|
}
|
|
72
|
+
createChangeBoundsTracker() {
|
|
73
|
+
return this.changeBoundsManager.createTracker();
|
|
74
|
+
}
|
|
75
75
|
createMoveMouseListener() {
|
|
76
76
|
return new change_bounds_tool_move_feedback_1.FeedbackMoveMouseListener(this);
|
|
77
77
|
}
|
|
@@ -96,25 +96,17 @@ __decorate([
|
|
|
96
96
|
__metadata("design:type", Object)
|
|
97
97
|
], ChangeBoundsTool.prototype, "movementRestrictor", void 0);
|
|
98
98
|
__decorate([
|
|
99
|
-
(0, inversify_1.inject)(
|
|
100
|
-
__metadata("design:type",
|
|
101
|
-
], ChangeBoundsTool.prototype, "
|
|
99
|
+
(0, inversify_1.inject)(sprotty_1.TYPES.IChangeBoundsManager),
|
|
100
|
+
__metadata("design:type", __1.ChangeBoundsManager)
|
|
101
|
+
], ChangeBoundsTool.prototype, "changeBoundsManager", void 0);
|
|
102
102
|
exports.ChangeBoundsTool = ChangeBoundsTool = ChangeBoundsTool_1 = __decorate([
|
|
103
103
|
(0, inversify_1.injectable)()
|
|
104
104
|
], ChangeBoundsTool);
|
|
105
|
-
var ValidatedElementAndBounds;
|
|
106
|
-
(function (ValidatedElementAndBounds) {
|
|
107
|
-
function isValid(move) {
|
|
108
|
-
var _a;
|
|
109
|
-
return (_a = move.valid) !== null && _a !== void 0 ? _a : true;
|
|
110
|
-
}
|
|
111
|
-
ValidatedElementAndBounds.isValid = isValid;
|
|
112
|
-
})(ValidatedElementAndBounds || (exports.ValidatedElementAndBounds = ValidatedElementAndBounds = {}));
|
|
113
105
|
class ChangeBoundsListener extends drag_aware_mouse_listener_1.DragAwareMouseListener {
|
|
114
106
|
constructor(tool) {
|
|
115
107
|
super();
|
|
116
108
|
this.tool = tool;
|
|
117
|
-
this.
|
|
109
|
+
this.tracker = tool.createChangeBoundsTracker();
|
|
118
110
|
this.handleFeedback = tool.createFeedbackEmitter();
|
|
119
111
|
this.resizeFeedback = tool.createFeedbackEmitter();
|
|
120
112
|
}
|
|
@@ -135,20 +127,26 @@ class ChangeBoundsListener extends drag_aware_mouse_listener_1.DragAwareMouseLis
|
|
|
135
127
|
this.activeResizeElement = (_b = (_a = this.activeResizeHandle) === null || _a === void 0 ? void 0 : _a.parent) !== null && _b !== void 0 ? _b : this.findResizeElement(target);
|
|
136
128
|
if (this.activeResizeElement) {
|
|
137
129
|
if (event) {
|
|
138
|
-
this.
|
|
130
|
+
this.tracker.startTracking();
|
|
139
131
|
}
|
|
140
132
|
this.initialBounds = {
|
|
141
133
|
newSize: this.activeResizeElement.bounds,
|
|
142
134
|
newPosition: this.activeResizeElement.bounds,
|
|
143
135
|
elementId: this.activeResizeElement.id
|
|
144
136
|
};
|
|
145
|
-
|
|
137
|
+
// we trigger the local bounds calculation once to get the correct layout information for reszing
|
|
138
|
+
// for any sub-sequent calls the layout information will be updated automatically
|
|
139
|
+
this.tool
|
|
140
|
+
.createFeedbackEmitter()
|
|
141
|
+
.add(bounds_1.LocalRequestBoundsAction.create(target.root, [this.activeResizeElement.id]))
|
|
142
|
+
.submit()
|
|
143
|
+
.dispose();
|
|
144
|
+
this.handleFeedback.add(change_bounds_tool_feedback_1.ShowChangeBoundsToolResizeFeedbackAction.create({ elementId: this.activeResizeElement.id }), change_bounds_tool_feedback_1.HideChangeBoundsToolResizeFeedbackAction.create());
|
|
146
145
|
this.handleFeedback.submit();
|
|
147
146
|
return true;
|
|
148
147
|
}
|
|
149
148
|
else {
|
|
150
|
-
this.
|
|
151
|
-
this.handleFeedback.dispose();
|
|
149
|
+
this.dispose();
|
|
152
150
|
return false;
|
|
153
151
|
}
|
|
154
152
|
}
|
|
@@ -160,59 +158,59 @@ class ChangeBoundsListener extends drag_aware_mouse_listener_1.DragAwareMouseLis
|
|
|
160
158
|
draggingMouseMove(target, event) {
|
|
161
159
|
// rely on the FeedbackMoveMouseListener to update the element bounds of selected elements
|
|
162
160
|
// consider resize handles ourselves
|
|
163
|
-
if (this.activeResizeHandle &&
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
161
|
+
if (this.activeResizeHandle && this.tracker.isTracking()) {
|
|
162
|
+
const resize = this.tracker.resizeElements(this.activeResizeHandle, { snap: event, symmetric: event, restrict: event });
|
|
163
|
+
this.addResizeFeedback(resize, target, event);
|
|
164
|
+
const resizeAction = this.resizeBoundsAction(resize);
|
|
165
|
+
if (resizeAction.bounds.length > 0) {
|
|
166
|
+
this.resizeFeedback.add(resizeAction, () => this.resetBounds());
|
|
167
|
+
this.tracker.updateTrackingPosition(resize.handleMove.moveVector);
|
|
167
168
|
}
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
const resizeActions = this.handleResizeOnClient(positionUpdate).filter(action => action);
|
|
171
|
-
if (resizeActions.length > 0) {
|
|
172
|
-
this.resizeFeedback.add(bounds_1.SetBoundsFeedbackAction.create(resizeActions), () => this.resetBoundsAction());
|
|
173
|
-
this.addResizeFeedback(resizeActions, this.activeResizeHandle, target, event);
|
|
174
|
-
this.resizeFeedback.submit();
|
|
175
|
-
}
|
|
169
|
+
else {
|
|
170
|
+
this.resizeFeedback.add(undefined, () => this.resetBounds());
|
|
176
171
|
}
|
|
172
|
+
this.resizeFeedback.submit();
|
|
177
173
|
}
|
|
178
174
|
return super.draggingMouseMove(target, event);
|
|
179
175
|
}
|
|
180
|
-
|
|
181
|
-
|
|
176
|
+
resizeBoundsAction(resize) {
|
|
177
|
+
// we do not want to resize elements beyond their valid size, not even for feedback, as the next layout cycle usually corrects this
|
|
178
|
+
const elementResizes = resize.elementResizes.filter(elementResize => elementResize.valid.size);
|
|
179
|
+
return bounds_1.SetBoundsFeedbackAction.create(elementResizes.map(elementResize => this.toElementAndBounds(elementResize)));
|
|
182
180
|
}
|
|
183
|
-
|
|
181
|
+
toElementAndBounds(elementResize) {
|
|
182
|
+
return {
|
|
183
|
+
elementId: elementResize.element.id,
|
|
184
|
+
newSize: elementResize.toBounds,
|
|
185
|
+
newPosition: elementResize.toBounds
|
|
186
|
+
};
|
|
187
|
+
}
|
|
188
|
+
addResizeFeedback(resize, target, event) {
|
|
189
|
+
const handle = resize.handleMove.element;
|
|
184
190
|
// handle feedback
|
|
185
191
|
this.resizeFeedback.add((0, css_feedback_1.applyCssClasses)(handle, ChangeBoundsListener.CSS_CLASS_ACTIVE), (0, css_feedback_1.deleteCssClasses)(handle, ChangeBoundsListener.CSS_CLASS_ACTIVE));
|
|
192
|
+
// graph feedback
|
|
193
|
+
this.resizeFeedback.add(css_feedback_1.ModifyCSSFeedbackAction.create({ add: [__1.CSS_RESIZE_MODE] }), css_feedback_1.ModifyCSSFeedbackAction.create({ remove: [__1.CSS_RESIZE_MODE] }));
|
|
186
194
|
// cursor feedback
|
|
187
|
-
const cursorClass =
|
|
188
|
-
? css_feedback_1.CursorCSS.RESIZE_NE
|
|
189
|
-
: handle.isNwResize()
|
|
190
|
-
? css_feedback_1.CursorCSS.RESIZE_NW
|
|
191
|
-
: handle.isSeResize()
|
|
192
|
-
? css_feedback_1.CursorCSS.RESIZE_SE
|
|
193
|
-
: css_feedback_1.CursorCSS.RESIZE_SW;
|
|
195
|
+
const cursorClass = model_1.SResizeHandle.getCursorCss(resize.handleMove.element);
|
|
194
196
|
this.resizeFeedback.add((0, css_feedback_1.cursorFeedbackAction)(cursorClass), (0, css_feedback_1.cursorFeedbackAction)(css_feedback_1.CursorCSS.DEFAULT));
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
if (!elementResize.valid) {
|
|
200
|
-
this.resizeFeedback.add((0, movement_restrictor_1.createMovementRestrictionFeedback)(element, this.tool.movementRestrictor), () => (0, movement_restrictor_1.removeMovementRestrictionFeedback)(element, this.tool.movementRestrictor));
|
|
201
|
-
}
|
|
202
|
-
else {
|
|
203
|
-
this.resizeFeedback.add((0, movement_restrictor_1.removeMovementRestrictionFeedback)(element, this.tool.movementRestrictor));
|
|
204
|
-
}
|
|
197
|
+
const movementRestrictor = this.tool.changeBoundsManager.movementRestrictor;
|
|
198
|
+
resize.elementResizes.forEach(elementResize => {
|
|
199
|
+
if (movementRestrictor) {
|
|
200
|
+
this.resizeFeedback.add((0, movement_restrictor_1.movementRestrictionFeedback)(elementResize.element, movementRestrictor, elementResize.valid.move), (0, movement_restrictor_1.removeMovementRestrictionFeedback)(elementResize.element, movementRestrictor));
|
|
205
201
|
}
|
|
202
|
+
this.resizeFeedback.add((0, css_feedback_1.toggleCssClasses)(elementResize.element, !elementResize.valid.size, 'resize-not-allowed'), (0, css_feedback_1.deleteCssClasses)(elementResize.element, 'resize-not-allowed'));
|
|
206
203
|
});
|
|
204
|
+
this.resizeFeedback.add((0, css_feedback_1.toggleCssClasses)(resize.handleMove.element, !resize.valid.size, 'resize-not-allowed'), (0, css_feedback_1.deleteCssClasses)(resize.handleMove.element, 'resize-not-allowed'));
|
|
207
205
|
}
|
|
208
|
-
|
|
206
|
+
resetBounds() {
|
|
209
207
|
// reset the bounds to the initial bounds and ensure that we do not show helper line feedback anymore (MoveFinishedEventAction)
|
|
210
208
|
return this.initialBounds
|
|
211
209
|
? [bounds_1.SetBoundsFeedbackAction.create([this.initialBounds]), change_bounds_tool_feedback_1.MoveFinishedEventAction.create()]
|
|
212
210
|
: [change_bounds_tool_feedback_1.MoveFinishedEventAction.create()];
|
|
213
211
|
}
|
|
214
|
-
draggingMouseUp(target,
|
|
215
|
-
if (this.
|
|
212
|
+
draggingMouseUp(target, event) {
|
|
213
|
+
if (!this.tracker.isTracking()) {
|
|
216
214
|
return [];
|
|
217
215
|
}
|
|
218
216
|
const actions = [];
|
|
@@ -239,14 +237,12 @@ class ChangeBoundsListener extends drag_aware_mouse_listener_1.DragAwareMouseLis
|
|
|
239
237
|
const selectedElements = (0, gmodel_util_1.getMatchingElements)(target.index, gmodel_util_1.isNonRoutableSelectedMovableBoundsAware);
|
|
240
238
|
const selectionSet = new Set(selectedElements);
|
|
241
239
|
const newBounds = selectedElements
|
|
242
|
-
.filter(element => this.
|
|
240
|
+
.filter(element => this.isValidMove(element, selectionSet))
|
|
243
241
|
.map(gmodel_util_1.toElementAndBounds);
|
|
244
242
|
return newBounds.length > 0 ? [sprotty_1.ChangeBoundsOperation.create(newBounds)] : [];
|
|
245
243
|
}
|
|
246
|
-
|
|
247
|
-
return (this.
|
|
248
|
-
this.isValidSize(element, element.bounds) &&
|
|
249
|
-
!this.isChildOfSelected(selectedElements, element));
|
|
244
|
+
isValidMove(element, selectedElements = new Set()) {
|
|
245
|
+
return this.tool.changeBoundsManager.hasValidPosition(element) && !this.isChildOfSelected(selectedElements, element);
|
|
250
246
|
}
|
|
251
247
|
isChildOfSelected(selectedElements, element) {
|
|
252
248
|
if (selectedElements.size === 0) {
|
|
@@ -279,7 +275,7 @@ class ChangeBoundsListener extends drag_aware_mouse_listener_1.DragAwareMouseLis
|
|
|
279
275
|
return newRoutingPoints.length > 0 ? [sprotty_1.ChangeRoutingPointsOperation.create(newRoutingPoints)] : [];
|
|
280
276
|
}
|
|
281
277
|
handleResizeOnServer(activeResizeHandle) {
|
|
282
|
-
if (this.
|
|
278
|
+
if (this.initialBounds && this.isValidResize(activeResizeHandle.parent)) {
|
|
283
279
|
const elementAndBounds = (0, gmodel_util_1.toElementAndBounds)(activeResizeHandle.parent);
|
|
284
280
|
if (!this.initialBounds.newPosition || !elementAndBounds.newPosition) {
|
|
285
281
|
return [];
|
|
@@ -295,6 +291,9 @@ class ChangeBoundsListener extends drag_aware_mouse_listener_1.DragAwareMouseLis
|
|
|
295
291
|
}
|
|
296
292
|
return [];
|
|
297
293
|
}
|
|
294
|
+
isValidResize(element) {
|
|
295
|
+
return this.tool.changeBoundsManager.isValid(element);
|
|
296
|
+
}
|
|
298
297
|
selectionChanged(root, selectedElements) {
|
|
299
298
|
if (this.activeResizeElement && selectedElements.includes(this.activeResizeElement.id)) {
|
|
300
299
|
// our active element is still selected, nothing to do
|
|
@@ -307,61 +306,16 @@ class ChangeBoundsListener extends drag_aware_mouse_listener_1.DragAwareMouseLis
|
|
|
307
306
|
return;
|
|
308
307
|
}
|
|
309
308
|
}
|
|
310
|
-
this.
|
|
311
|
-
this.disposeAllButHandles();
|
|
309
|
+
this.dispose();
|
|
312
310
|
}
|
|
313
311
|
isActiveResizeElement(element) {
|
|
314
312
|
return element !== undefined && this.activeResizeElement !== undefined && element.id === this.activeResizeElement.id;
|
|
315
313
|
}
|
|
316
|
-
handleResizeOnClient(positionUpdate) {
|
|
317
|
-
if (!this.activeResizeHandle) {
|
|
318
|
-
return [];
|
|
319
|
-
}
|
|
320
|
-
if (this.isActiveResizeElement(this.activeResizeHandle.parent)) {
|
|
321
|
-
switch (this.activeResizeHandle.location) {
|
|
322
|
-
case model_1.ResizeHandleLocation.TopLeft:
|
|
323
|
-
return this.handleTopLeftResize(this.activeResizeHandle.parent, positionUpdate);
|
|
324
|
-
case model_1.ResizeHandleLocation.TopRight:
|
|
325
|
-
return this.handleTopRightResize(this.activeResizeHandle.parent, positionUpdate);
|
|
326
|
-
case model_1.ResizeHandleLocation.BottomLeft:
|
|
327
|
-
return this.handleBottomLeftResize(this.activeResizeHandle.parent, positionUpdate);
|
|
328
|
-
case model_1.ResizeHandleLocation.BottomRight:
|
|
329
|
-
return this.handleBottomRightResize(this.activeResizeHandle.parent, positionUpdate);
|
|
330
|
-
}
|
|
331
|
-
}
|
|
332
|
-
return [];
|
|
333
|
-
}
|
|
334
|
-
handleTopLeftResize(resizeElement, positionUpdate) {
|
|
335
|
-
return this.createSetBoundsAction(resizeElement, { x: resizeElement.bounds.x + positionUpdate.x, y: resizeElement.bounds.y + positionUpdate.y }, { width: resizeElement.bounds.width - positionUpdate.x, height: resizeElement.bounds.height - positionUpdate.y });
|
|
336
|
-
}
|
|
337
|
-
handleTopRightResize(resizeElement, positionUpdate) {
|
|
338
|
-
return this.createSetBoundsAction(resizeElement, { x: resizeElement.bounds.x, y: resizeElement.bounds.y + positionUpdate.y }, { width: resizeElement.bounds.width + positionUpdate.x, height: resizeElement.bounds.height - positionUpdate.y });
|
|
339
|
-
}
|
|
340
|
-
handleBottomLeftResize(resizeElement, positionUpdate) {
|
|
341
|
-
return this.createSetBoundsAction(resizeElement, { x: resizeElement.bounds.x + positionUpdate.x, y: resizeElement.bounds.y }, { width: resizeElement.bounds.width - positionUpdate.x, height: resizeElement.bounds.height + positionUpdate.y });
|
|
342
|
-
}
|
|
343
|
-
handleBottomRightResize(resizeElement, positionUpdate) {
|
|
344
|
-
return this.createSetBoundsAction(resizeElement, { x: resizeElement.bounds.x, y: resizeElement.bounds.y }, { width: resizeElement.bounds.width + positionUpdate.x, height: resizeElement.bounds.height + positionUpdate.y });
|
|
345
|
-
}
|
|
346
|
-
createSetBoundsAction(element, newPosition, newSize) {
|
|
347
|
-
if (!(0, utils_1.isValidSize)(element, newSize)) {
|
|
348
|
-
// we are not allowing any invalid sizes (breaking min size), not even during client feedback
|
|
349
|
-
return [];
|
|
350
|
-
}
|
|
351
|
-
const valid = this.isValidMove(element, newPosition);
|
|
352
|
-
return [{ elementId: element.id, newPosition, newSize, valid }];
|
|
353
|
-
}
|
|
354
|
-
isValidSize(element, size) {
|
|
355
|
-
return (0, utils_1.isValidSize)(element, size);
|
|
356
|
-
}
|
|
357
|
-
isValidMove(element, newPosition) {
|
|
358
|
-
return (0, utils_1.isValidMove)(element, newPosition, this.tool.movementRestrictor);
|
|
359
|
-
}
|
|
360
314
|
disposeAllButHandles() {
|
|
361
315
|
// We do not dispose the handle feedback as we want to keep showing the handles on selected elements
|
|
362
316
|
// this.handleFeedback.dispose();
|
|
363
317
|
this.resizeFeedback.dispose();
|
|
364
|
-
this.
|
|
318
|
+
this.tracker.dispose();
|
|
365
319
|
this.activeResizeElement = undefined;
|
|
366
320
|
this.activeResizeHandle = undefined;
|
|
367
321
|
this.initialBounds = undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"change-bounds-tool.js","sourceRoot":"","sources":["../../../../src/features/tools/change-bounds/change-bounds-tool.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"change-bounds-tool.js","sourceRoot":"","sources":["../../../../src/features/tools/change-bounds/change-bounds-tool.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
/********************************************************************************
|
|
2
|
+
* Copyright (c) 2024 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, Dimension, GModelElement, GRoutingHandle, Locateable, Movement, Point, ResolvedElementMove, TypeGuard, Vector } from '@eclipse-glsp/sprotty';
|
|
17
|
+
import { ChangeBoundsManager } from '..';
|
|
18
|
+
import { BoundsAwareModelElement, MoveableElement, ResizableModelElement } from '../../../utils';
|
|
19
|
+
import { DiagramMovementCalculator, ResizeHandleLocation, SResizeHandle } from '../../change-bounds';
|
|
20
|
+
export interface ElementTrackingOptions {
|
|
21
|
+
/** Snap position. Default: true. */
|
|
22
|
+
snap: boolean | MouseEvent | KeyboardEvent | any;
|
|
23
|
+
/** Restrict position. Default: true */
|
|
24
|
+
restrict: boolean | MouseEvent | KeyboardEvent | any;
|
|
25
|
+
/** Validate operation. Default: true */
|
|
26
|
+
validate: boolean;
|
|
27
|
+
/** Skip operations that do not trigger change. Default: true */
|
|
28
|
+
skipStatic: boolean;
|
|
29
|
+
}
|
|
30
|
+
export interface MoveOptions extends ElementTrackingOptions {
|
|
31
|
+
/** Skip operations are invalid. Default: false */
|
|
32
|
+
skipInvalid: boolean;
|
|
33
|
+
}
|
|
34
|
+
export declare const DEFAULT_MOVE_OPTIONS: MoveOptions;
|
|
35
|
+
export type MoveableElements = MoveableElement[] | {
|
|
36
|
+
ctx: GModelElement;
|
|
37
|
+
elementIDs: string[];
|
|
38
|
+
guard?: TypeGuard<MoveableElement>;
|
|
39
|
+
};
|
|
40
|
+
export interface TrackedElementMove extends ResolvedElementMove {
|
|
41
|
+
moveVector: Vector;
|
|
42
|
+
sourceVector: Vector;
|
|
43
|
+
valid: boolean;
|
|
44
|
+
}
|
|
45
|
+
export type TypedElementMove<T extends MoveableElement> = TrackedElementMove & {
|
|
46
|
+
element: T;
|
|
47
|
+
};
|
|
48
|
+
export interface TrackedMove extends Movement {
|
|
49
|
+
elementMoves: TrackedElementMove[];
|
|
50
|
+
valid: boolean;
|
|
51
|
+
options: MoveOptions;
|
|
52
|
+
}
|
|
53
|
+
export declare namespace TrackedMove {
|
|
54
|
+
function is(obj: any): obj is TrackedMove;
|
|
55
|
+
}
|
|
56
|
+
export interface ResizeOptions extends ElementTrackingOptions {
|
|
57
|
+
/** Skip resizes that do not actually change the dimension of the element. Default: true. */
|
|
58
|
+
skipStatic: boolean;
|
|
59
|
+
/** Perform symmetric resize on the opposite side. Default: false. */
|
|
60
|
+
symmetric: boolean | MouseEvent | KeyboardEvent | any;
|
|
61
|
+
/**
|
|
62
|
+
* Avoids resizes smaller than the minimum size which will result in invalid sizes.
|
|
63
|
+
* Please note that the snapping will be applied before the constraining so an element may still be resized to an unsnapped size.
|
|
64
|
+
*
|
|
65
|
+
* Default: true.
|
|
66
|
+
*/
|
|
67
|
+
constrainResize: boolean;
|
|
68
|
+
/** Skip resizes that produce an invalid size. Default: false. */
|
|
69
|
+
skipInvalidSize: boolean;
|
|
70
|
+
/** Skip resizes that produce an invalid move. Default: false. */
|
|
71
|
+
skipInvalidMove: boolean;
|
|
72
|
+
}
|
|
73
|
+
export declare const DEFAULT_RESIZE_OPTIONS: ResizeOptions;
|
|
74
|
+
export interface TrackedHandleMove extends TypedElementMove<MoveableResizeHandle> {
|
|
75
|
+
}
|
|
76
|
+
export interface TrackedElementResize {
|
|
77
|
+
element: BoundsAwareModelElement;
|
|
78
|
+
fromBounds: Bounds;
|
|
79
|
+
toBounds: Bounds;
|
|
80
|
+
valid: {
|
|
81
|
+
size: boolean;
|
|
82
|
+
move: boolean;
|
|
83
|
+
};
|
|
84
|
+
}
|
|
85
|
+
export interface TrackedResize extends Movement {
|
|
86
|
+
handleMove: TrackedHandleMove;
|
|
87
|
+
elementResizes: TrackedElementResize[];
|
|
88
|
+
valid: {
|
|
89
|
+
size: boolean;
|
|
90
|
+
move: boolean;
|
|
91
|
+
};
|
|
92
|
+
options: ResizeOptions;
|
|
93
|
+
}
|
|
94
|
+
export declare class ChangeBoundsTracker {
|
|
95
|
+
readonly manager: ChangeBoundsManager;
|
|
96
|
+
protected diagramMovement: DiagramMovementCalculator;
|
|
97
|
+
constructor(manager: ChangeBoundsManager);
|
|
98
|
+
startTracking(): this;
|
|
99
|
+
updateTrackingPosition(param: Vector | Movement | TrackedMove): void;
|
|
100
|
+
isTracking(): boolean;
|
|
101
|
+
stopTracking(): this;
|
|
102
|
+
moveElements(elements: MoveableElements, opts?: Partial<MoveOptions>): TrackedMove;
|
|
103
|
+
protected resolveMoveOptions(opts?: Partial<MoveOptions>): MoveOptions;
|
|
104
|
+
protected calculateDiagramMovement(): Movement;
|
|
105
|
+
protected getMoveableElements(elements: MoveableElements, options: MoveOptions): MoveableElement[];
|
|
106
|
+
protected skipElementMove(elementMove: TrackedElementMove, options: MoveOptions): boolean;
|
|
107
|
+
protected calculateElementMove<T extends MoveableElement>(element: T, vector: Vector, options: MoveOptions): TypedElementMove<T>;
|
|
108
|
+
protected snapPosition(elementMove: TrackedElementMove, opts: MoveOptions): Point;
|
|
109
|
+
protected restrictMovement(elementMove: TrackedElementMove, opts: MoveOptions): Point;
|
|
110
|
+
protected validateElementMove(elementMove: TrackedElementMove, opts: MoveOptions): boolean;
|
|
111
|
+
resizeElements(handle: SResizeHandle, opts?: Partial<ResizeOptions>): TrackedResize;
|
|
112
|
+
protected resolveResizeOptions(opts?: Partial<ResizeOptions>): ResizeOptions;
|
|
113
|
+
protected calculateHandleMove(handle: MoveableResizeHandle, diagramMovement: Vector, opts?: Partial<ResizeOptions>): TrackedHandleMove;
|
|
114
|
+
protected getResizeableElements(handle: SResizeHandle, options: ResizeOptions): ResizableModelElement[];
|
|
115
|
+
protected skipElementResize(elementResize: TrackedElementResize, options: ResizeOptions): boolean;
|
|
116
|
+
protected calculateElementResize(element: ResizableModelElement, handleMove: TrackedHandleMove, options: ResizeOptions): TrackedElementResize;
|
|
117
|
+
protected calculateElementBounds(element: ResizableModelElement, handleMove: TrackedHandleMove, options: ResizeOptions): Bounds;
|
|
118
|
+
protected calculateSymmetricHandleMove(handleMove: TrackedHandleMove, options: ResizeOptions): TrackedHandleMove;
|
|
119
|
+
protected calculateBounds(src: Readonly<Bounds>, handleMove?: TrackedHandleMove): Bounds;
|
|
120
|
+
protected doCalculateBounds(src: Readonly<Bounds>, vector: Vector, location: ResizeHandleLocation): Bounds;
|
|
121
|
+
protected constrainResizeVector(src: Readonly<Bounds>, handleMove: TrackedHandleMove, minimum: Dimension): Vector;
|
|
122
|
+
dispose(): void;
|
|
123
|
+
}
|
|
124
|
+
export declare class MoveableResizeHandle extends SResizeHandle implements Locateable {
|
|
125
|
+
protected handle: SResizeHandle;
|
|
126
|
+
location: ResizeHandleLocation;
|
|
127
|
+
readonly position: Point;
|
|
128
|
+
constructor(handle: SResizeHandle, location?: ResizeHandleLocation, position?: Point);
|
|
129
|
+
opposite(): MoveableResizeHandle;
|
|
130
|
+
}
|
|
131
|
+
export declare class MoveableRoutingHandle extends GRoutingHandle implements Locateable {
|
|
132
|
+
protected handle: GRoutingHandle;
|
|
133
|
+
readonly position: Point;
|
|
134
|
+
constructor(handle: GRoutingHandle, position: Point);
|
|
135
|
+
}
|
|
136
|
+
//# sourceMappingURL=change-bounds-tracker.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"change-bounds-tracker.d.ts","sourceRoot":"","sources":["../../../../src/features/tools/change-bounds/change-bounds-tracker.ts"],"names":[],"mappings":"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"}
|