@eclipse-glsp/client 1.1.0-next.cab84ec.250 → 1.1.0-next.cc57a50.267
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 +1 -1
- package/css/decoration.css +0 -7
- package/css/glsp-sprotty.css +7 -0
- package/css/key-shortcut.css +107 -0
- package/css/status-overlay.css +75 -0
- package/lib/base/action-dispatcher.d.ts +1 -0
- package/lib/base/action-dispatcher.d.ts.map +1 -1
- package/lib/base/action-dispatcher.js +8 -3
- package/lib/base/action-dispatcher.js.map +1 -1
- package/lib/base/auto-complete/auto-complete-actions.js +1 -1
- package/lib/base/auto-complete/auto-complete-actions.js.map +1 -1
- package/lib/base/auto-complete/validation-decorator.js +1 -1
- package/lib/base/auto-complete/validation-decorator.js.map +1 -1
- package/lib/base/command-stack.d.ts +17 -2
- package/lib/base/command-stack.d.ts.map +1 -1
- package/lib/base/command-stack.js +43 -3
- package/lib/base/command-stack.js.map +1 -1
- package/lib/base/{di.config.d.ts → default.module.d.ts} +8 -5
- package/lib/base/default.module.d.ts.map +1 -0
- package/lib/base/{di.config.js → default.module.js} +37 -12
- package/lib/base/default.module.js.map +1 -0
- package/lib/base/drag-aware-mouse-listener.d.ts +2 -2
- package/lib/base/drag-aware-mouse-listener.d.ts.map +1 -1
- package/lib/base/drag-aware-mouse-listener.js.map +1 -1
- package/lib/base/editor-context-service.d.ts +17 -8
- package/lib/base/editor-context-service.d.ts.map +1 -1
- package/lib/base/editor-context-service.js +50 -17
- package/lib/base/editor-context-service.js.map +1 -1
- package/lib/{features/tool-feedback → base/feedback}/css-feedback.d.ts +1 -1
- package/lib/base/feedback/css-feedback.d.ts.map +1 -0
- package/lib/{features/tool-feedback → base/feedback}/css-feedback.js +5 -6
- package/lib/base/feedback/css-feedback.js.map +1 -0
- package/lib/{features/tool-feedback → base/feedback}/feedback-action-dispatcher.d.ts +11 -9
- package/lib/base/feedback/feedback-action-dispatcher.d.ts.map +1 -0
- package/lib/{features/tool-feedback → base/feedback}/feedback-action-dispatcher.js +26 -20
- package/lib/base/feedback/feedback-action-dispatcher.js.map +1 -0
- package/lib/{features/tool-feedback/model.d.ts → base/feedback/feedback-command.d.ts} +1 -1
- package/lib/base/feedback/feedback-command.d.ts.map +1 -0
- package/lib/{features/tool-feedback/model.js → base/feedback/feedback-command.js} +1 -1
- package/lib/base/feedback/feedback-command.js.map +1 -0
- package/lib/base/{model → feedback}/update-model-command.d.ts +3 -15
- package/lib/base/feedback/update-model-command.d.ts.map +1 -0
- package/lib/base/{model → feedback}/update-model-command.js +3 -27
- package/lib/base/feedback/update-model-command.js.map +1 -0
- package/lib/base/{actions/focus-change-action.d.ts → focus/focus-state-change-action.d.ts} +1 -1
- package/lib/base/focus/focus-state-change-action.d.ts.map +1 -0
- package/lib/base/{actions/focus-change-action.js → focus/focus-state-change-action.js} +2 -2
- package/lib/base/focus/focus-state-change-action.js.map +1 -0
- package/lib/base/{focus-tracker.d.ts → focus/focus-tracker.d.ts} +1 -1
- package/lib/base/focus/focus-tracker.d.ts.map +1 -0
- package/lib/base/{focus-tracker.js → focus/focus-tracker.js} +5 -6
- package/lib/base/focus/focus-tracker.js.map +1 -0
- package/lib/base/model/glsp-model-source.d.ts +58 -0
- package/lib/base/model/glsp-model-source.d.ts.map +1 -0
- package/lib/base/model/glsp-model-source.js +137 -0
- package/lib/base/model/glsp-model-source.js.map +1 -0
- package/lib/base/model/model-registry.js +2 -3
- package/lib/base/model/model-registry.js.map +1 -1
- package/lib/base/model-initialization-constraint.js +4 -6
- package/lib/base/model-initialization-constraint.js.map +1 -1
- package/lib/base/ranked.d.ts +34 -0
- package/lib/base/ranked.d.ts.map +1 -0
- package/lib/base/{source-uri-aware.js → ranked.js} +22 -8
- package/lib/base/ranked.js.map +1 -0
- package/lib/base/selection-clearing-mouse-listener.js +2 -3
- package/lib/base/selection-clearing-mouse-listener.js.map +1 -1
- package/lib/{features/select → base}/selection-service.d.ts +34 -13
- package/lib/base/selection-service.d.ts.map +1 -0
- package/lib/{features/select → base}/selection-service.js +77 -31
- package/lib/base/selection-service.js.map +1 -0
- package/lib/base/selection-service.spec.d.ts +2 -0
- package/lib/base/selection-service.spec.d.ts.map +1 -0
- package/lib/base/selection-service.spec.js +281 -0
- package/lib/base/selection-service.spec.js.map +1 -0
- package/lib/base/tool-manager/glsp-tool-manager.d.ts +3 -3
- package/lib/base/tool-manager/glsp-tool-manager.d.ts.map +1 -1
- package/lib/base/tool-manager/glsp-tool-manager.js +5 -6
- package/lib/base/tool-manager/glsp-tool-manager.js.map +1 -1
- package/lib/base/view/key-tool.d.ts +5 -0
- package/lib/base/view/key-tool.d.ts.map +1 -0
- package/lib/base/view/key-tool.js +36 -0
- package/lib/base/view/key-tool.js.map +1 -0
- package/lib/base/view/mouse-tool.d.ts +19 -0
- package/lib/base/view/mouse-tool.d.ts.map +1 -0
- package/lib/{features/mouse-tool → base/view}/mouse-tool.js +14 -11
- package/lib/base/view/mouse-tool.js.map +1 -0
- package/lib/base/view/view-registry.js +2 -3
- package/lib/base/view/view-registry.js.map +1 -1
- package/lib/{base/container-modules.d.ts → default-modules.d.ts} +7 -6
- package/lib/default-modules.d.ts.map +1 -0
- package/lib/default-modules.js +152 -0
- package/lib/default-modules.js.map +1 -0
- package/lib/features/accessibility/{di.config.d.ts → accessibility-module.d.ts} +3 -3
- package/lib/features/accessibility/accessibility-module.d.ts.map +1 -0
- package/lib/features/accessibility/{di.config.js → accessibility-module.js} +14 -12
- package/lib/features/accessibility/accessibility-module.js.map +1 -0
- package/lib/features/accessibility/key-shortcut/accessible-key-shortcut-tool.d.ts +31 -0
- package/lib/features/accessibility/key-shortcut/accessible-key-shortcut-tool.d.ts.map +1 -0
- package/lib/features/accessibility/key-shortcut/accessible-key-shortcut-tool.js +72 -0
- package/lib/features/accessibility/key-shortcut/accessible-key-shortcut-tool.js.map +1 -0
- package/lib/features/accessibility/key-shortcut/accessible-key-shortcut.d.ts +53 -0
- package/lib/features/accessibility/key-shortcut/accessible-key-shortcut.d.ts.map +1 -0
- package/lib/features/accessibility/key-shortcut/accessible-key-shortcut.js +149 -0
- package/lib/features/accessibility/key-shortcut/accessible-key-shortcut.js.map +1 -0
- package/lib/features/accessibility/key-shortcut/di.config.d.ts +24 -0
- package/lib/features/accessibility/key-shortcut/di.config.d.ts.map +1 -0
- package/lib/features/accessibility/key-shortcut/di.config.js +37 -0
- package/lib/features/accessibility/key-shortcut/di.config.js.map +1 -0
- package/lib/features/accessibility/move-zoom/move-handler.js +6 -8
- package/lib/features/accessibility/move-zoom/move-handler.js.map +1 -1
- package/lib/features/accessibility/move-zoom/{di.config.d.ts → move-zoom-module.d.ts} +3 -4
- package/lib/features/accessibility/move-zoom/move-zoom-module.d.ts.map +1 -0
- package/lib/features/accessibility/move-zoom/{di.config.js → move-zoom-module.js} +3 -4
- package/lib/features/accessibility/move-zoom/move-zoom-module.js.map +1 -0
- package/lib/features/accessibility/move-zoom/zoom-handler.js +6 -8
- package/lib/features/accessibility/move-zoom/zoom-handler.js.map +1 -1
- package/lib/features/accessibility/resize-key-tool/resize-key-handler.js +4 -5
- package/lib/features/accessibility/resize-key-tool/resize-key-handler.js.map +1 -1
- package/lib/features/accessibility/resize-key-tool/{di.config.d.ts → resize-key-module.d.ts} +3 -4
- package/lib/features/accessibility/resize-key-tool/resize-key-module.d.ts.map +1 -0
- package/lib/features/accessibility/resize-key-tool/{di.config.js → resize-key-module.js} +3 -4
- package/lib/features/accessibility/resize-key-tool/resize-key-module.js.map +1 -0
- package/lib/features/accessibility/resize-key-tool/resize-key-tool.d.ts +7 -2
- package/lib/features/accessibility/resize-key-tool/resize-key-tool.d.ts.map +1 -1
- package/lib/features/accessibility/resize-key-tool/resize-key-tool.js +30 -9
- package/lib/features/accessibility/resize-key-tool/resize-key-tool.js.map +1 -1
- package/lib/features/accessibility/search/{di.config.d.ts → search-palette-module.d.ts} +3 -4
- package/lib/features/accessibility/search/search-palette-module.d.ts.map +1 -0
- package/lib/features/accessibility/search/{di.config.js → search-palette-module.js} +3 -4
- package/lib/features/accessibility/search/search-palette-module.js.map +1 -0
- package/lib/features/accessibility/search/search-palette.js +3 -4
- package/lib/features/accessibility/search/search-palette.js.map +1 -1
- package/lib/features/accessibility/search/search-tool.d.ts +8 -1
- package/lib/features/accessibility/search/search-tool.d.ts.map +1 -1
- package/lib/features/accessibility/search/search-tool.js +25 -4
- package/lib/features/accessibility/search/search-tool.js.map +1 -1
- package/lib/features/accessibility/view-key-tools/deselect-key-tool.js +2 -3
- package/lib/features/accessibility/view-key-tools/deselect-key-tool.js.map +1 -1
- package/lib/features/accessibility/view-key-tools/movement-key-tool.d.ts +7 -2
- 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 +23 -6
- package/lib/features/accessibility/view-key-tools/movement-key-tool.js.map +1 -1
- package/lib/features/accessibility/view-key-tools/{di.config.d.ts → view-key-tools-module.d.ts} +3 -4
- package/lib/features/accessibility/view-key-tools/view-key-tools-module.d.ts.map +1 -0
- package/lib/features/accessibility/view-key-tools/{di.config.js → view-key-tools-module.js} +4 -5
- package/lib/features/accessibility/view-key-tools/view-key-tools-module.js.map +1 -0
- package/lib/features/accessibility/view-key-tools/zoom-key-tool.d.ts +5 -1
- package/lib/features/accessibility/view-key-tools/zoom-key-tool.d.ts.map +1 -1
- package/lib/features/accessibility/view-key-tools/zoom-key-tool.js +28 -6
- package/lib/features/accessibility/view-key-tools/zoom-key-tool.js.map +1 -1
- package/lib/features/autocomplete-palette/base-autocomplete-palette.js +1 -1
- package/lib/features/autocomplete-palette/base-autocomplete-palette.js.map +1 -1
- package/lib/features/bounds/{di.config.d.ts → bounds-module.d.ts} +3 -4
- package/lib/features/bounds/bounds-module.d.ts.map +1 -0
- package/lib/features/bounds/{di.config.js → bounds-module.js} +3 -4
- package/lib/features/bounds/bounds-module.js.map +1 -0
- package/lib/features/bounds/freeform-layout.js +2 -3
- package/lib/features/bounds/freeform-layout.js.map +1 -1
- package/lib/features/bounds/freeform-layout.spec.d.ts +3 -0
- package/lib/features/bounds/freeform-layout.spec.d.ts.map +1 -0
- package/lib/features/bounds/freeform-layout.spec.js +201 -0
- package/lib/features/bounds/freeform-layout.spec.js.map +1 -0
- package/lib/features/bounds/glsp-hidden-bounds-updater.js +2 -3
- package/lib/features/bounds/glsp-hidden-bounds-updater.js.map +1 -1
- package/lib/features/bounds/hbox-layout.js +2 -3
- package/lib/features/bounds/hbox-layout.js.map +1 -1
- package/lib/features/bounds/hbox-layout.spec.d.ts +3 -0
- package/lib/features/bounds/hbox-layout.spec.d.ts.map +1 -0
- package/lib/features/bounds/hbox-layout.spec.js +160 -0
- package/lib/features/bounds/hbox-layout.spec.js.map +1 -0
- package/lib/features/bounds/layouter-test-util.spec.d.ts +32 -0
- package/lib/features/bounds/layouter-test-util.spec.d.ts.map +1 -0
- package/lib/features/bounds/layouter-test-util.spec.js +96 -0
- package/lib/features/bounds/layouter-test-util.spec.js.map +1 -0
- package/lib/features/bounds/layouter.js +2 -3
- package/lib/features/bounds/layouter.js.map +1 -1
- package/lib/features/bounds/vbox-layout.js +2 -3
- package/lib/features/bounds/vbox-layout.js.map +1 -1
- package/lib/features/bounds/vbox-layout.spec.d.ts +3 -0
- package/lib/features/bounds/vbox-layout.spec.d.ts.map +1 -0
- package/lib/features/bounds/vbox-layout.spec.js +160 -0
- package/lib/features/bounds/vbox-layout.spec.js.map +1 -0
- package/lib/features/change-bounds/model.js +2 -2
- package/lib/features/change-bounds/model.js.map +1 -1
- package/lib/features/change-bounds/movement-restrictor.d.ts +1 -1
- package/lib/features/change-bounds/movement-restrictor.d.ts.map +1 -1
- package/lib/features/change-bounds/movement-restrictor.js +3 -4
- package/lib/features/change-bounds/movement-restrictor.js.map +1 -1
- package/lib/features/change-bounds/snap.js +2 -3
- package/lib/features/change-bounds/snap.js.map +1 -1
- package/lib/features/change-bounds/snap.spec.d.ts +17 -0
- package/lib/features/change-bounds/snap.spec.d.ts.map +1 -0
- package/lib/features/change-bounds/snap.spec.js +82 -0
- package/lib/features/change-bounds/snap.spec.js.map +1 -0
- package/lib/features/command-palette/{di.config.d.ts → command-palette-module.d.ts} +3 -4
- package/lib/features/command-palette/command-palette-module.d.ts.map +1 -0
- package/lib/features/command-palette/{di.config.js → command-palette-module.js} +3 -4
- package/lib/features/command-palette/command-palette-module.js.map +1 -0
- package/lib/features/command-palette/command-palette-tool.js +2 -3
- package/lib/features/command-palette/command-palette-tool.js.map +1 -1
- package/lib/features/command-palette/server-command-palette-provider.js +3 -4
- package/lib/features/command-palette/server-command-palette-provider.js.map +1 -1
- package/lib/features/{select/di.config.d.ts → context-menu/context-menu-module.d.ts} +3 -4
- package/lib/features/context-menu/context-menu-module.d.ts.map +1 -0
- package/lib/features/context-menu/{di.config.js → context-menu-module.js} +4 -5
- package/lib/features/context-menu/context-menu-module.js.map +1 -0
- package/lib/features/context-menu/delete-element-context-menu.js +2 -3
- package/lib/features/context-menu/delete-element-context-menu.js.map +1 -1
- package/lib/features/context-menu/selection-service-aware-context-menu-mouse-listener.d.ts +1 -3
- package/lib/features/context-menu/selection-service-aware-context-menu-mouse-listener.d.ts.map +1 -1
- package/lib/features/context-menu/selection-service-aware-context-menu-mouse-listener.js +8 -14
- package/lib/features/context-menu/selection-service-aware-context-menu-mouse-listener.js.map +1 -1
- package/lib/features/context-menu/server-context-menu-provider.js +3 -4
- package/lib/features/context-menu/server-context-menu-provider.js.map +1 -1
- package/lib/features/copy-paste/copy-paste-context-menu.js +6 -8
- package/lib/features/copy-paste/copy-paste-context-menu.js.map +1 -1
- package/lib/features/copy-paste/copy-paste-handler.js +4 -6
- package/lib/features/copy-paste/copy-paste-handler.js.map +1 -1
- package/lib/features/copy-paste/{di.config.d.ts → copy-paste-modules.d.ts} +7 -7
- package/lib/features/copy-paste/copy-paste-modules.d.ts.map +1 -0
- package/lib/features/copy-paste/{di.config.js → copy-paste-modules.js} +8 -9
- package/lib/features/copy-paste/copy-paste-modules.js.map +1 -0
- package/lib/features/decoration/{di.config.d.ts → decoration-module.d.ts} +3 -4
- package/lib/features/decoration/decoration-module.d.ts.map +1 -0
- package/lib/features/decoration/{di.config.js → decoration-module.js} +3 -4
- package/lib/features/decoration/decoration-module.js.map +1 -0
- package/lib/features/decoration/decoration-placer.js +2 -3
- package/lib/features/decoration/decoration-placer.js.map +1 -1
- package/lib/features/export/export-modules.d.ts +24 -0
- package/lib/features/export/export-modules.d.ts.map +1 -0
- package/lib/features/export/{di.config.js → export-modules.js} +15 -5
- package/lib/features/export/export-modules.js.map +1 -0
- package/lib/features/export/export-svg-action-handler.d.ts +11 -0
- package/lib/features/export/export-svg-action-handler.d.ts.map +1 -0
- package/lib/features/export/export-svg-action-handler.js +42 -0
- package/lib/features/export/export-svg-action-handler.js.map +1 -0
- package/lib/features/export/glsp-svg-exporter.js +2 -3
- package/lib/features/export/glsp-svg-exporter.js.map +1 -1
- package/lib/features/{layout/di.config.d.ts → hints/type-hints-module.d.ts} +3 -4
- package/lib/features/hints/type-hints-module.d.ts.map +1 -0
- package/lib/features/hints/{di.config.js → type-hints-module.js} +3 -4
- package/lib/features/hints/type-hints-module.js.map +1 -0
- package/lib/features/hints/type-hints.d.ts +2 -2
- package/lib/features/hints/type-hints.d.ts.map +1 -1
- package/lib/features/hints/type-hints.js +9 -11
- package/lib/features/hints/type-hints.js.map +1 -1
- package/lib/features/hover/{di.config.d.ts → hover-module.d.ts} +3 -4
- package/lib/features/hover/hover-module.d.ts.map +1 -0
- package/lib/features/hover/{di.config.js → hover-module.js} +6 -7
- package/lib/features/hover/hover-module.js.map +1 -0
- package/lib/features/hover/hover.d.ts.map +1 -1
- package/lib/features/hover/hover.js +5 -6
- package/lib/features/hover/hover.js.map +1 -1
- package/lib/features/{edit-label → label-edit}/edit-label-tool.d.ts +0 -3
- package/lib/features/label-edit/edit-label-tool.d.ts.map +1 -0
- package/lib/features/{edit-label → label-edit}/edit-label-tool.js +3 -11
- package/lib/features/label-edit/edit-label-tool.js.map +1 -0
- package/lib/features/{edit-label → label-edit}/edit-label-validator.d.ts.map +1 -1
- package/lib/features/{edit-label → label-edit}/edit-label-validator.js +5 -7
- package/lib/features/label-edit/edit-label-validator.js.map +1 -0
- package/lib/features/{hints/di.config.d.ts → label-edit/label-edit-module.d.ts} +3 -4
- package/lib/features/label-edit/label-edit-module.d.ts.map +1 -0
- package/lib/features/{edit-label/di.config.js → label-edit/label-edit-module.js} +3 -4
- package/lib/features/label-edit/label-edit-module.js.map +1 -0
- package/lib/features/layout/layout-elements-action.d.ts +1 -1
- package/lib/features/layout/layout-elements-action.d.ts.map +1 -1
- package/lib/features/layout/layout-elements-action.js +14 -17
- package/lib/features/layout/layout-elements-action.js.map +1 -1
- package/lib/features/layout/layout-elements-action.spec.d.ts +3 -0
- package/lib/features/layout/layout-elements-action.spec.d.ts.map +1 -0
- package/lib/features/layout/layout-elements-action.spec.js +322 -0
- package/lib/features/layout/layout-elements-action.spec.js.map +1 -0
- package/lib/features/{tool-feedback/di.config.d.ts → layout/layout-module.d.ts} +3 -4
- package/lib/features/layout/layout-module.d.ts.map +1 -0
- package/lib/features/layout/{di.config.js → layout-module.js} +3 -4
- package/lib/features/layout/layout-module.js.map +1 -0
- package/lib/features/navigation/navigation-action-handler.js +5 -6
- package/lib/features/navigation/navigation-action-handler.js.map +1 -1
- package/lib/features/navigation/{di.config.d.ts → navigation-module.d.ts} +3 -4
- package/lib/features/navigation/navigation-module.d.ts.map +1 -0
- package/lib/features/navigation/{di.config.js → navigation-module.js} +3 -4
- package/lib/features/navigation/navigation-module.js.map +1 -0
- package/lib/features/navigation/navigation-target-resolver.js +2 -3
- package/lib/features/navigation/navigation-target-resolver.js.map +1 -1
- package/lib/features/navigation/navigation-target-resolver.spec.d.ts +3 -0
- package/lib/features/navigation/navigation-target-resolver.spec.d.ts.map +1 -0
- package/lib/features/navigation/navigation-target-resolver.spec.js +53 -0
- package/lib/features/navigation/navigation-target-resolver.spec.js.map +1 -0
- package/lib/features/routing/glsp-manhattan-edge-router.d.ts.map +1 -0
- package/lib/features/routing/glsp-manhattan-edge-router.js.map +1 -0
- package/lib/features/routing/routing-module.d.ts +18 -0
- package/lib/features/routing/routing-module.d.ts.map +1 -0
- package/lib/features/routing/routing-module.js +39 -0
- package/lib/features/routing/routing-module.js.map +1 -0
- package/lib/features/save/{di.config.d.ts → save-module.d.ts} +6 -6
- package/lib/features/save/save-module.d.ts.map +1 -0
- package/lib/features/save/{di.config.js → save-module.js} +6 -6
- package/lib/features/save/save-module.js.map +1 -0
- package/lib/features/select/select-feedback-command.d.ts +12 -0
- package/lib/features/select/select-feedback-command.d.ts.map +1 -0
- package/lib/features/select/{select-feedback-action.js → select-feedback-command.js} +6 -18
- package/lib/features/select/select-feedback-command.js.map +1 -0
- package/lib/features/select/select-module.d.ts +24 -0
- package/lib/features/select/select-module.d.ts.map +1 -0
- package/lib/features/select/{di.config.js → select-module.js} +14 -9
- package/lib/features/select/select-module.js.map +1 -0
- package/lib/features/select/select-mouse-listener.d.ts +5 -3
- package/lib/features/select/select-mouse-listener.d.ts.map +1 -1
- package/lib/features/select/select-mouse-listener.js +18 -59
- package/lib/features/select/select-mouse-listener.js.map +1 -1
- package/lib/features/source-model-watcher/source-model-changed-action-handler.js +5 -7
- package/lib/features/source-model-watcher/source-model-changed-action-handler.js.map +1 -1
- package/lib/features/{context-menu/di.config.d.ts → source-model-watcher/source-model-wacher-module.d.ts} +3 -4
- package/lib/features/source-model-watcher/source-model-wacher-module.d.ts.map +1 -0
- package/lib/features/source-model-watcher/{di.config.js → source-model-wacher-module.js} +3 -4
- package/lib/features/source-model-watcher/source-model-wacher-module.js.map +1 -0
- package/lib/features/status/status-module.d.ts +19 -0
- package/lib/features/status/status-module.d.ts.map +1 -0
- package/lib/features/status/status-module.js +27 -0
- package/lib/features/status/status-module.js.map +1 -0
- package/lib/features/status/status-overlay.d.ts +19 -0
- package/lib/features/status/status-overlay.d.ts.map +1 -0
- package/lib/features/status/status-overlay.js +108 -0
- package/lib/features/status/status-overlay.js.map +1 -0
- package/lib/features/svg-metadata/metadata-placer.js +2 -3
- package/lib/features/svg-metadata/metadata-placer.js.map +1 -1
- package/lib/features/svg-metadata/{di.config.d.ts → svg-metadata-module.d.ts} +3 -4
- package/lib/features/svg-metadata/svg-metadata-module.d.ts.map +1 -0
- package/lib/features/svg-metadata/{di.config.js → svg-metadata-module.js} +3 -4
- package/lib/features/svg-metadata/svg-metadata-module.js.map +1 -0
- package/lib/features/tool-palette/{di.config.d.ts → tool-palette-module.d.ts} +3 -4
- package/lib/features/tool-palette/tool-palette-module.d.ts.map +1 -0
- package/lib/features/tool-palette/{di.config.js → tool-palette-module.js} +3 -4
- package/lib/features/tool-palette/tool-palette-module.js.map +1 -0
- package/lib/features/tool-palette/tool-palette.d.ts +6 -4
- package/lib/features/tool-palette/tool-palette.d.ts.map +1 -1
- package/lib/features/tool-palette/tool-palette.js +22 -15
- package/lib/features/tool-palette/tool-palette.js.map +1 -1
- package/lib/features/tools/base-glsp-creation-tool.d.ts +10 -0
- package/lib/features/tools/base-glsp-creation-tool.d.ts.map +1 -0
- package/lib/features/tools/base-glsp-creation-tool.js +45 -0
- package/lib/features/tools/base-glsp-creation-tool.js.map +1 -0
- package/lib/features/tools/base-glsp-tool.d.ts +26 -8
- package/lib/features/tools/base-glsp-tool.d.ts.map +1 -1
- package/lib/features/tools/base-glsp-tool.js +34 -11
- package/lib/features/tools/base-glsp-tool.js.map +1 -1
- package/lib/features/{export/di.config.d.ts → tools/change-bounds/change-boounds-tool-module.d.ts} +3 -4
- package/lib/features/tools/change-bounds/change-boounds-tool-module.d.ts.map +1 -0
- package/lib/features/tools/change-bounds/change-boounds-tool-module.js +31 -0
- package/lib/features/tools/change-bounds/change-boounds-tool-module.js.map +1 -0
- package/lib/features/{tool-feedback → tools/change-bounds}/change-bounds-tool-feedback.d.ts +12 -5
- package/lib/features/tools/change-bounds/change-bounds-tool-feedback.d.ts.map +1 -0
- package/lib/features/{tool-feedback → tools/change-bounds}/change-bounds-tool-feedback.js +45 -27
- package/lib/features/tools/change-bounds/change-bounds-tool-feedback.js.map +1 -0
- package/lib/features/tools/{change-bounds-tool.d.ts → change-bounds/change-bounds-tool.d.ts} +13 -14
- package/lib/features/tools/change-bounds/change-bounds-tool.d.ts.map +1 -0
- package/lib/features/tools/{change-bounds-tool.js → change-bounds/change-bounds-tool.js} +50 -35
- package/lib/features/tools/change-bounds/change-bounds-tool.js.map +1 -0
- package/lib/features/tools/change-bounds/view.d.ts +9 -0
- package/lib/features/tools/change-bounds/view.d.ts.map +1 -0
- package/lib/features/{tool-feedback → tools/change-bounds}/view.js +5 -21
- package/lib/features/tools/change-bounds/view.js.map +1 -0
- package/lib/features/tools/{delete-tool.d.ts → deletion/delete-tool.d.ts} +4 -9
- package/lib/features/tools/deletion/delete-tool.d.ts.map +1 -0
- package/lib/features/tools/{delete-tool.js → deletion/delete-tool.js} +13 -29
- package/lib/features/tools/deletion/delete-tool.js.map +1 -0
- package/lib/features/tools/deletion/deletion-tool-module.d.ts +18 -0
- package/lib/features/tools/deletion/deletion-tool-module.d.ts.map +1 -0
- package/lib/features/{mouse-tool/di.config.js → tools/deletion/deletion-tool-module.js} +8 -9
- package/lib/features/tools/deletion/deletion-tool-module.js.map +1 -0
- package/lib/features/{tool-feedback/creation-tool-feedback.d.ts → tools/edge-creation/dangling-edge-feedback.d.ts} +5 -10
- package/lib/features/tools/edge-creation/dangling-edge-feedback.d.ts.map +1 -0
- package/lib/features/{tool-feedback/creation-tool-feedback.js → tools/edge-creation/dangling-edge-feedback.js} +25 -87
- package/lib/features/tools/edge-creation/dangling-edge-feedback.js.map +1 -0
- package/lib/features/{edit-label/di.config.d.ts → tools/edge-creation/edege-creation-module.d.ts} +3 -4
- package/lib/features/tools/edge-creation/edege-creation-module.d.ts.map +1 -0
- package/lib/features/tools/edge-creation/edege-creation-module.js +28 -0
- package/lib/features/tools/edge-creation/edege-creation-module.js.map +1 -0
- package/lib/features/tools/edge-creation/edge-creation-tool-feedback.d.ts +26 -0
- package/lib/features/tools/edge-creation/edge-creation-tool-feedback.d.ts.map +1 -0
- package/lib/features/tools/edge-creation/edge-creation-tool-feedback.js +74 -0
- package/lib/features/tools/edge-creation/edge-creation-tool-feedback.js.map +1 -0
- package/lib/features/tools/{edge-creation-tool.d.ts → edge-creation/edge-creation-tool.d.ts} +6 -11
- package/lib/features/tools/edge-creation/edge-creation-tool.d.ts.map +1 -0
- package/lib/features/tools/{edge-creation-tool.js → edge-creation/edge-creation-tool.js} +29 -40
- package/lib/features/tools/edge-creation/edge-creation-tool.js.map +1 -0
- package/lib/features/tools/edge-creation/view.d.ts +10 -0
- package/lib/features/tools/edge-creation/view.d.ts.map +1 -0
- package/lib/features/tools/edge-creation/view.js +43 -0
- package/lib/features/tools/edge-creation/view.js.map +1 -0
- package/lib/features/tools/edge-edit/edge-edit-module.d.ts +18 -0
- package/lib/features/tools/edge-edit/edge-edit-module.d.ts.map +1 -0
- package/lib/features/tools/edge-edit/edge-edit-module.js +34 -0
- package/lib/features/tools/edge-edit/edge-edit-module.js.map +1 -0
- package/lib/features/{tool-feedback → tools/edge-edit}/edge-edit-tool-feedback.d.ts +14 -8
- package/lib/features/tools/edge-edit/edge-edit-tool-feedback.d.ts.map +1 -0
- package/lib/features/{tool-feedback → tools/edge-edit}/edge-edit-tool-feedback.js +42 -37
- package/lib/features/tools/edge-edit/edge-edit-tool-feedback.js.map +1 -0
- package/lib/features/tools/{edge-edit-tool.d.ts → edge-edit/edge-edit-tool.d.ts} +7 -9
- package/lib/features/tools/edge-edit/edge-edit-tool.d.ts.map +1 -0
- package/lib/features/tools/{edge-edit-tool.js → edge-edit/edge-edit-tool.js} +28 -33
- package/lib/features/tools/edge-edit/edge-edit-tool.js.map +1 -0
- package/lib/features/tools/{marquee-behavior.d.ts → marquee-selection/marquee-behavior.d.ts} +10 -10
- package/lib/features/tools/marquee-selection/marquee-behavior.d.ts.map +1 -0
- package/lib/features/tools/{marquee-behavior.js → marquee-selection/marquee-behavior.js} +2 -2
- package/lib/features/tools/marquee-selection/marquee-behavior.js.map +1 -0
- package/lib/features/tools/marquee-selection/marquee-behavior.spec.d.ts +17 -0
- package/lib/features/tools/marquee-selection/marquee-behavior.spec.d.ts.map +1 -0
- package/lib/features/tools/marquee-selection/marquee-behavior.spec.js +165 -0
- package/lib/features/tools/marquee-selection/marquee-behavior.spec.js.map +1 -0
- package/lib/features/tools/{marquee-mouse-tool.d.ts → marquee-selection/marquee-mouse-tool.d.ts} +4 -6
- package/lib/features/tools/marquee-selection/marquee-mouse-tool.d.ts.map +1 -0
- package/lib/features/tools/{marquee-mouse-tool.js → marquee-selection/marquee-mouse-tool.js} +13 -27
- package/lib/features/tools/marquee-selection/marquee-mouse-tool.js.map +1 -0
- package/lib/features/tools/marquee-selection/marquee-selection-module.d.ts +18 -0
- package/lib/features/tools/marquee-selection/marquee-selection-module.d.ts.map +1 -0
- package/lib/features/tools/marquee-selection/marquee-selection-module.js +33 -0
- package/lib/features/tools/marquee-selection/marquee-selection-module.js.map +1 -0
- package/lib/features/{tool-feedback → tools/marquee-selection}/marquee-tool-feedback.d.ts +2 -2
- package/lib/features/tools/marquee-selection/marquee-tool-feedback.d.ts.map +1 -0
- package/lib/features/{tool-feedback → tools/marquee-selection}/marquee-tool-feedback.js +8 -10
- package/lib/features/tools/marquee-selection/marquee-tool-feedback.js.map +1 -0
- package/lib/features/tools/marquee-selection/marquee-tool.d.ts +12 -0
- package/lib/features/tools/marquee-selection/marquee-tool.d.ts.map +1 -0
- package/lib/features/tools/{marquee-tool.js → marquee-selection/marquee-tool.js} +8 -20
- package/lib/features/tools/marquee-selection/marquee-tool.js.map +1 -0
- package/lib/features/tools/{model.d.ts → marquee-selection/model.d.ts} +1 -1
- package/lib/features/tools/marquee-selection/model.d.ts.map +1 -0
- package/lib/features/tools/{model.js → marquee-selection/model.js} +2 -2
- package/lib/features/tools/marquee-selection/model.js.map +1 -0
- package/lib/features/tools/{view.d.ts → marquee-selection/view.d.ts} +1 -1
- package/lib/features/tools/marquee-selection/view.d.ts.map +1 -0
- package/lib/features/tools/{view.js → marquee-selection/view.js} +3 -4
- package/lib/features/tools/marquee-selection/view.js.map +1 -0
- package/lib/features/tools/node-creation/node-creation-module.d.ts +18 -0
- package/lib/features/tools/node-creation/node-creation-module.d.ts.map +1 -0
- package/lib/features/tools/node-creation/node-creation-module.js +26 -0
- package/lib/features/tools/node-creation/node-creation-module.js.map +1 -0
- package/lib/features/tools/{node-creation-tool.d.ts → node-creation/node-creation-tool.d.ts} +7 -10
- package/lib/features/tools/node-creation/node-creation-tool.d.ts.map +1 -0
- package/lib/features/tools/{node-creation-tool.js → node-creation/node-creation-tool.js} +17 -30
- package/lib/features/tools/node-creation/node-creation-tool.js.map +1 -0
- package/lib/features/tools/tool-focus-loss-module.d.ts +13 -0
- package/lib/features/tools/tool-focus-loss-module.d.ts.map +1 -0
- package/lib/features/tools/{enable-default-tools-on-focus-loss.js → tool-focus-loss-module.js} +12 -8
- package/lib/features/tools/tool-focus-loss-module.js.map +1 -0
- package/lib/features/undo-redo/undo-redo-key-listener.d.ts +23 -0
- package/lib/features/undo-redo/undo-redo-key-listener.d.ts.map +1 -0
- package/lib/features/undo-redo/undo-redo-key-listener.js +35 -0
- package/lib/features/undo-redo/undo-redo-key-listener.js.map +1 -0
- package/lib/features/undo-redo/undo-redo-module.d.ts +23 -0
- package/lib/features/undo-redo/undo-redo-module.d.ts.map +1 -0
- package/lib/features/undo-redo/undo-redo-module.js +30 -0
- package/lib/features/undo-redo/undo-redo-module.js.map +1 -0
- package/lib/features/validation/marker-navigator.d.ts +4 -3
- package/lib/features/validation/marker-navigator.d.ts.map +1 -1
- package/lib/features/validation/marker-navigator.js +16 -20
- package/lib/features/validation/marker-navigator.js.map +1 -1
- package/lib/features/validation/marker-navigator.spec.d.ts +3 -0
- package/lib/features/validation/marker-navigator.spec.d.ts.map +1 -0
- package/lib/features/validation/marker-navigator.spec.js +184 -0
- package/lib/features/validation/marker-navigator.spec.js.map +1 -0
- package/lib/features/validation/validate.d.ts +2 -2
- package/lib/features/validation/validate.d.ts.map +1 -1
- package/lib/features/validation/validate.js +12 -17
- package/lib/features/validation/validate.js.map +1 -1
- package/lib/features/validation/{di.config.d.ts → validation-modules.d.ts} +8 -8
- package/lib/features/validation/validation-modules.d.ts.map +1 -0
- package/lib/features/validation/{di.config.js → validation-modules.js} +9 -10
- package/lib/features/validation/validation-modules.js.map +1 -0
- package/lib/features/viewport/glsp-scroll-mouse-listener.js +3 -4
- package/lib/features/viewport/glsp-scroll-mouse-listener.js.map +1 -1
- package/lib/features/viewport/{di.config.d.ts → viewport-modules.d.ts} +9 -4
- package/lib/features/viewport/viewport-modules.d.ts.map +1 -0
- package/lib/features/viewport/{di.config.js → viewport-modules.js} +12 -5
- package/lib/features/viewport/viewport-modules.js.map +1 -0
- package/lib/glsp-sprotty/index.d.ts +3 -4
- package/lib/glsp-sprotty/index.d.ts.map +1 -1
- package/lib/glsp-sprotty/index.js +66 -60
- package/lib/glsp-sprotty/index.js.map +1 -1
- package/lib/glsp-sprotty/types.d.ts +4 -8
- package/lib/glsp-sprotty/types.d.ts.map +1 -1
- package/lib/glsp-sprotty/types.js +1 -1
- package/lib/glsp-sprotty/types.js.map +1 -1
- package/lib/index.d.ts +69 -58
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +87 -106
- package/lib/index.js.map +1 -1
- package/lib/lib/model.d.ts +1 -2
- package/lib/lib/model.d.ts.map +1 -1
- package/lib/lib/model.js +1 -2
- package/lib/lib/model.js.map +1 -1
- package/lib/standalone-modules.d.ts +38 -0
- package/lib/standalone-modules.d.ts.map +1 -0
- package/lib/standalone-modules.js +84 -0
- package/lib/standalone-modules.js.map +1 -0
- package/lib/utils/argument-utils.js +3 -3
- package/lib/utils/argument-utils.js.map +1 -1
- package/lib/utils/marker.js +1 -1
- package/lib/utils/marker.js.map +1 -1
- package/lib/utils/smodel-util.d.ts +5 -2
- package/lib/utils/smodel-util.d.ts.map +1 -1
- package/lib/utils/smodel-util.js +21 -4
- package/lib/utils/smodel-util.js.map +1 -1
- package/lib/utils/smodel-util.spec.d.ts +2 -0
- package/lib/utils/smodel-util.spec.d.ts.map +1 -0
- package/lib/utils/smodel-util.spec.js +185 -0
- package/lib/utils/smodel-util.spec.js.map +1 -0
- package/lib/utils/viewpoint-util.d.ts +20 -1
- package/lib/utils/viewpoint-util.d.ts.map +1 -1
- package/lib/utils/viewpoint-util.js +30 -1
- package/lib/utils/viewpoint-util.js.map +1 -1
- package/lib/views/base-view-module.d.ts +2 -4
- package/lib/views/base-view-module.d.ts.map +1 -1
- package/lib/views/base-view-module.js +2 -4
- package/lib/views/base-view-module.js.map +1 -1
- package/lib/views/compartments.js +2 -3
- package/lib/views/compartments.js.map +1 -1
- package/lib/views/glsp-edge-view.js +2 -3
- package/lib/views/glsp-edge-view.js.map +1 -1
- package/lib/views/glsp-projection-view.js +2 -3
- package/lib/views/glsp-projection-view.js.map +1 -1
- package/lib/views/issue-marker-view.js +2 -3
- package/lib/views/issue-marker-view.js.map +1 -1
- package/lib/views/rounded-corner-view.js +2 -3
- package/lib/views/rounded-corner-view.js.map +1 -1
- package/package.json +4 -3
- package/src/base/action-dispatcher.ts +7 -1
- package/src/base/command-stack.ts +55 -3
- package/src/base/{di.config.ts → default.module.ts} +51 -15
- package/src/base/drag-aware-mouse-listener.ts +2 -2
- package/src/base/editor-context-service.ts +55 -20
- package/src/{features/tool-feedback → base/feedback}/css-feedback.ts +1 -1
- package/src/{features/tool-feedback → base/feedback}/feedback-action-dispatcher.ts +31 -23
- package/src/base/{model → feedback}/update-model-command.ts +3 -29
- package/src/base/{focus-tracker.ts → focus/focus-tracker.ts} +1 -1
- package/src/base/model/glsp-model-source.ts +149 -0
- package/src/base/ranked.ts +42 -0
- package/src/{features/select → base}/selection-service.spec.ts +44 -123
- package/src/{features/select → base}/selection-service.ts +86 -33
- package/src/base/tool-manager/glsp-tool-manager.ts +4 -4
- package/src/{features/rank/model.ts → base/view/key-tool.ts} +9 -13
- package/src/{features/mouse-tool → base/view}/mouse-tool.ts +14 -15
- package/src/{base/container-modules.ts → default-modules.ts} +65 -48
- package/src/features/accessibility/README.md +7 -7
- package/src/features/accessibility/{di.config.ts → accessibility-module.ts} +8 -6
- package/src/features/accessibility/key-shortcut/accessible-key-shortcut-tool.ts +55 -0
- package/src/features/accessibility/key-shortcut/accessible-key-shortcut.ts +182 -0
- package/src/features/accessibility/key-shortcut/di.config.ts +35 -0
- package/src/features/accessibility/move-zoom/{di.config.ts → move-zoom-module.ts} +2 -3
- package/src/features/accessibility/resize-key-tool/{di.config.ts → resize-key-module.ts} +2 -3
- package/src/features/accessibility/resize-key-tool/resize-key-tool.ts +24 -3
- package/src/features/accessibility/search/{di.config.ts → search-palette-module.ts} +2 -3
- package/src/features/accessibility/search/search-palette.ts +1 -1
- package/src/features/accessibility/search/search-tool.ts +24 -5
- package/src/features/accessibility/view-key-tools/movement-key-tool.ts +20 -4
- package/src/features/accessibility/view-key-tools/{di.config.ts → view-key-tools-module.ts} +3 -4
- package/src/features/accessibility/view-key-tools/zoom-key-tool.ts +23 -2
- package/src/features/bounds/{di.config.ts → bounds-module.ts} +2 -4
- package/src/features/bounds/layouter-test-util.spec.ts +1 -1
- package/src/features/change-bounds/movement-restrictor.ts +1 -1
- package/src/features/command-palette/{di.config.ts → command-palette-module.ts} +2 -5
- package/src/features/context-menu/{di.config.ts → context-menu-module.ts} +4 -7
- package/src/features/context-menu/selection-service-aware-context-menu-mouse-listener.ts +2 -6
- package/src/features/copy-paste/copy-paste-context-menu.ts +1 -1
- package/src/features/copy-paste/{di.config.ts → copy-paste-modules.ts} +13 -11
- package/src/features/decoration/{di.config.ts → decoration-module.ts} +2 -5
- package/src/features/export/{di.config.ts → export-modules.ts} +27 -5
- package/src/features/export/export-svg-action-handler.ts +32 -0
- package/src/features/hints/{di.config.ts → type-hints-module.ts} +2 -5
- package/src/features/hints/type-hints.ts +2 -2
- package/src/features/hover/{di.config.ts → hover-module.ts} +3 -5
- package/src/features/hover/hover.ts +3 -2
- package/src/features/{edit-label → label-edit}/edit-label-tool.ts +4 -12
- package/src/features/{edit-label/di.config.ts → label-edit/label-edit-module.ts} +2 -5
- package/src/features/layout/layout-elements-action.spec.ts +3 -5
- package/src/features/layout/layout-elements-action.ts +2 -2
- package/src/features/layout/{di.config.ts → layout-module.ts} +2 -5
- package/src/features/navigation/navigation-action-handler.ts +1 -1
- package/src/features/navigation/{di.config.ts → navigation-module.ts} +2 -5
- package/src/features/routing/routing-module.ts +59 -0
- package/src/features/save/{di.config.ts → save-module.ts} +5 -7
- package/src/features/select/{select-feedback-action.ts → select-feedback-command.ts} +2 -25
- package/src/features/select/{di.config.ts → select-module.ts} +15 -8
- package/src/features/select/select-mouse-listener.ts +28 -80
- package/src/features/source-model-watcher/source-model-changed-action-handler.ts +1 -1
- package/src/features/source-model-watcher/{di.config.ts → source-model-wacher-module.ts} +2 -5
- package/src/features/status/status-module.ts +25 -0
- package/src/features/status/status-overlay.ts +108 -0
- package/src/features/svg-metadata/{di.config.ts → svg-metadata-module.ts} +2 -5
- package/src/features/tool-palette/{di.config.ts → tool-palette-module.ts} +2 -5
- package/src/features/tool-palette/tool-palette.ts +19 -14
- package/src/features/tools/base-glsp-creation-tool.ts +40 -0
- package/src/features/tools/base-glsp-tool.ts +32 -10
- package/src/features/tools/change-bounds/change-boounds-tool-module.ts +28 -0
- package/src/features/{tool-feedback → tools/change-bounds}/change-bounds-tool-feedback.ts +52 -21
- package/src/features/tools/{change-bounds-tool.ts → change-bounds/change-bounds-tool.ts} +64 -35
- package/src/features/{tool-feedback → tools/change-bounds}/view.tsx +2 -14
- package/src/features/tools/{delete-tool.ts → deletion/delete-tool.ts} +8 -18
- package/src/features/{save/model.ts → tools/deletion/deletion-tool-module.ts} +7 -10
- package/src/features/{tool-feedback/creation-tool-feedback.ts → tools/edge-creation/dangling-edge-feedback.ts} +18 -88
- package/src/features/tools/edge-creation/edege-creation-module.ts +25 -0
- package/src/features/tools/edge-creation/edge-creation-tool-feedback.ts +89 -0
- package/src/features/tools/{edge-creation-tool.ts → edge-creation/edge-creation-tool.ts} +26 -43
- package/src/features/tools/edge-creation/view.tsx +33 -0
- package/src/features/tools/edge-edit/edge-edit-module.ts +38 -0
- package/src/features/{tool-feedback → tools/edge-edit}/edge-edit-tool-feedback.ts +27 -15
- package/src/features/tools/{edge-edit-tool.ts → edge-edit/edge-edit-tool.ts} +29 -27
- package/src/features/tools/{marquee-behavior.ts → marquee-selection/marquee-behavior.ts} +9 -9
- package/src/features/tools/{marquee-mouse-tool.ts → marquee-selection/marquee-mouse-tool.ts} +12 -22
- package/src/features/tools/marquee-selection/marquee-selection-module.ts +32 -0
- package/src/features/{tool-feedback → tools/marquee-selection}/marquee-tool-feedback.ts +1 -1
- package/src/features/tools/{marquee-tool.ts → marquee-selection/marquee-tool.ts} +5 -11
- package/src/features/{mouse-tool/di.config.ts → tools/node-creation/node-creation-module.ts} +6 -9
- package/src/features/tools/{node-creation-tool.ts → node-creation/node-creation-tool.ts} +14 -31
- package/src/features/tools/{enable-default-tools-on-focus-loss.ts → tool-focus-loss-module.ts} +9 -3
- package/src/features/undo-redo/undo-redo-key-listener.ts +32 -0
- package/src/features/undo-redo/undo-redo-module.ts +28 -0
- package/src/features/validation/marker-navigator.spec.ts +4 -4
- package/src/features/validation/marker-navigator.ts +5 -5
- package/src/features/validation/validate.ts +2 -2
- package/src/features/validation/{di.config.ts → validation-modules.ts} +13 -11
- package/src/features/viewport/glsp-scroll-mouse-listener.ts +1 -1
- package/src/features/viewport/{di.config.ts → viewport-modules.ts} +14 -4
- package/src/glsp-sprotty/index.ts +30 -27
- package/src/glsp-sprotty/types.ts +2 -4
- package/src/index.ts +72 -90
- package/src/lib/model.ts +2 -3
- package/src/standalone-modules.ts +87 -0
- package/src/utils/smodel-util.spec.ts +222 -0
- package/src/utils/smodel-util.ts +27 -7
- package/src/utils/viewpoint-util.ts +32 -0
- package/src/views/base-view-module.ts +2 -4
- package/lib/base/actions/focus-change-action.d.ts.map +0 -1
- package/lib/base/actions/focus-change-action.js.map +0 -1
- package/lib/base/container-modules.d.ts.map +0 -1
- package/lib/base/container-modules.js +0 -135
- package/lib/base/container-modules.js.map +0 -1
- package/lib/base/di.config.d.ts.map +0 -1
- package/lib/base/di.config.js.map +0 -1
- package/lib/base/focus-tracker.d.ts.map +0 -1
- package/lib/base/focus-tracker.js.map +0 -1
- package/lib/base/model/update-model-command.d.ts.map +0 -1
- package/lib/base/model/update-model-command.js.map +0 -1
- package/lib/base/source-uri-aware.d.ts +0 -5
- package/lib/base/source-uri-aware.d.ts.map +0 -1
- package/lib/base/source-uri-aware.js.map +0 -1
- package/lib/features/accessibility/di.config.d.ts.map +0 -1
- package/lib/features/accessibility/di.config.js.map +0 -1
- package/lib/features/accessibility/move-zoom/di.config.d.ts.map +0 -1
- package/lib/features/accessibility/move-zoom/di.config.js.map +0 -1
- package/lib/features/accessibility/resize-key-tool/di.config.d.ts.map +0 -1
- package/lib/features/accessibility/resize-key-tool/di.config.js.map +0 -1
- package/lib/features/accessibility/search/di.config.d.ts.map +0 -1
- package/lib/features/accessibility/search/di.config.js.map +0 -1
- package/lib/features/accessibility/view-key-tools/di.config.d.ts.map +0 -1
- package/lib/features/accessibility/view-key-tools/di.config.js.map +0 -1
- package/lib/features/bounds/di.config.d.ts.map +0 -1
- package/lib/features/bounds/di.config.js.map +0 -1
- package/lib/features/command-palette/di.config.d.ts.map +0 -1
- package/lib/features/command-palette/di.config.js.map +0 -1
- package/lib/features/context-menu/di.config.d.ts.map +0 -1
- package/lib/features/context-menu/di.config.js.map +0 -1
- package/lib/features/copy-paste/di.config.d.ts.map +0 -1
- package/lib/features/copy-paste/di.config.js.map +0 -1
- package/lib/features/decoration/di.config.d.ts.map +0 -1
- package/lib/features/decoration/di.config.js.map +0 -1
- package/lib/features/edit-label/di.config.d.ts.map +0 -1
- package/lib/features/edit-label/di.config.js.map +0 -1
- package/lib/features/edit-label/edit-label-tool.d.ts.map +0 -1
- package/lib/features/edit-label/edit-label-tool.js.map +0 -1
- package/lib/features/edit-label/edit-label-validator.js.map +0 -1
- package/lib/features/export/di.config.d.ts.map +0 -1
- package/lib/features/export/di.config.js.map +0 -1
- package/lib/features/hints/di.config.d.ts.map +0 -1
- package/lib/features/hints/di.config.js.map +0 -1
- package/lib/features/hover/di.config.d.ts.map +0 -1
- package/lib/features/hover/di.config.js.map +0 -1
- package/lib/features/layout/di.config.d.ts.map +0 -1
- package/lib/features/layout/di.config.js.map +0 -1
- package/lib/features/mouse-tool/di.config.d.ts +0 -19
- package/lib/features/mouse-tool/di.config.d.ts.map +0 -1
- package/lib/features/mouse-tool/di.config.js.map +0 -1
- package/lib/features/mouse-tool/mouse-tool.d.ts +0 -22
- package/lib/features/mouse-tool/mouse-tool.d.ts.map +0 -1
- package/lib/features/mouse-tool/mouse-tool.js.map +0 -1
- package/lib/features/navigation/di.config.d.ts.map +0 -1
- package/lib/features/navigation/di.config.js.map +0 -1
- package/lib/features/rank/model.d.ts +0 -22
- package/lib/features/rank/model.d.ts.map +0 -1
- package/lib/features/rank/model.js +0 -28
- package/lib/features/rank/model.js.map +0 -1
- package/lib/features/save/di.config.d.ts.map +0 -1
- package/lib/features/save/di.config.js.map +0 -1
- package/lib/features/save/model.d.ts +0 -22
- package/lib/features/save/model.d.ts.map +0 -1
- package/lib/features/save/model.js +0 -9
- package/lib/features/save/model.js.map +0 -1
- package/lib/features/select/di.config.d.ts.map +0 -1
- package/lib/features/select/di.config.js.map +0 -1
- package/lib/features/select/select-feedback-action.d.ts +0 -22
- package/lib/features/select/select-feedback-action.d.ts.map +0 -1
- package/lib/features/select/select-feedback-action.js.map +0 -1
- package/lib/features/select/selection-service.d.ts.map +0 -1
- package/lib/features/select/selection-service.js.map +0 -1
- package/lib/features/source-model-watcher/di.config.d.ts +0 -19
- package/lib/features/source-model-watcher/di.config.d.ts.map +0 -1
- package/lib/features/source-model-watcher/di.config.js.map +0 -1
- package/lib/features/svg-metadata/di.config.d.ts.map +0 -1
- package/lib/features/svg-metadata/di.config.js.map +0 -1
- package/lib/features/tool-feedback/change-bounds-tool-feedback.d.ts.map +0 -1
- package/lib/features/tool-feedback/change-bounds-tool-feedback.js.map +0 -1
- package/lib/features/tool-feedback/creation-tool-feedback.d.ts.map +0 -1
- package/lib/features/tool-feedback/creation-tool-feedback.js.map +0 -1
- package/lib/features/tool-feedback/css-feedback.d.ts.map +0 -1
- package/lib/features/tool-feedback/css-feedback.js.map +0 -1
- package/lib/features/tool-feedback/di.config.d.ts.map +0 -1
- package/lib/features/tool-feedback/di.config.js +0 -53
- package/lib/features/tool-feedback/di.config.js.map +0 -1
- package/lib/features/tool-feedback/edge-edit-tool-feedback.d.ts.map +0 -1
- package/lib/features/tool-feedback/edge-edit-tool-feedback.js.map +0 -1
- package/lib/features/tool-feedback/feedback-action-dispatcher.d.ts.map +0 -1
- package/lib/features/tool-feedback/feedback-action-dispatcher.js.map +0 -1
- package/lib/features/tool-feedback/marquee-tool-feedback.d.ts.map +0 -1
- package/lib/features/tool-feedback/marquee-tool-feedback.js.map +0 -1
- package/lib/features/tool-feedback/model.d.ts.map +0 -1
- package/lib/features/tool-feedback/model.js.map +0 -1
- package/lib/features/tool-feedback/view.d.ts +0 -16
- package/lib/features/tool-feedback/view.d.ts.map +0 -1
- package/lib/features/tool-feedback/view.js.map +0 -1
- package/lib/features/tool-palette/di.config.d.ts.map +0 -1
- package/lib/features/tool-palette/di.config.js.map +0 -1
- package/lib/features/tools/change-bounds-tool.d.ts.map +0 -1
- package/lib/features/tools/change-bounds-tool.js.map +0 -1
- package/lib/features/tools/delete-tool.d.ts.map +0 -1
- package/lib/features/tools/delete-tool.js.map +0 -1
- package/lib/features/tools/di.config.d.ts +0 -28
- package/lib/features/tools/di.config.d.ts.map +0 -1
- package/lib/features/tools/di.config.js +0 -66
- package/lib/features/tools/di.config.js.map +0 -1
- package/lib/features/tools/edge-creation-tool.d.ts.map +0 -1
- package/lib/features/tools/edge-creation-tool.js.map +0 -1
- package/lib/features/tools/edge-edit-tool.d.ts.map +0 -1
- package/lib/features/tools/edge-edit-tool.js.map +0 -1
- package/lib/features/tools/enable-default-tools-on-focus-loss.d.ts +0 -10
- package/lib/features/tools/enable-default-tools-on-focus-loss.d.ts.map +0 -1
- package/lib/features/tools/enable-default-tools-on-focus-loss.js.map +0 -1
- package/lib/features/tools/glsp-manhattan-edge-router.d.ts.map +0 -1
- package/lib/features/tools/glsp-manhattan-edge-router.js.map +0 -1
- package/lib/features/tools/marquee-behavior.d.ts.map +0 -1
- package/lib/features/tools/marquee-behavior.js.map +0 -1
- package/lib/features/tools/marquee-mouse-tool.d.ts.map +0 -1
- package/lib/features/tools/marquee-mouse-tool.js.map +0 -1
- package/lib/features/tools/marquee-tool.d.ts +0 -14
- package/lib/features/tools/marquee-tool.d.ts.map +0 -1
- package/lib/features/tools/marquee-tool.js.map +0 -1
- package/lib/features/tools/model.d.ts.map +0 -1
- package/lib/features/tools/model.js.map +0 -1
- package/lib/features/tools/node-creation-tool.d.ts.map +0 -1
- package/lib/features/tools/node-creation-tool.js.map +0 -1
- package/lib/features/tools/view.d.ts.map +0 -1
- package/lib/features/tools/view.js.map +0 -1
- package/lib/features/validation/di.config.d.ts.map +0 -1
- package/lib/features/validation/di.config.js.map +0 -1
- package/lib/features/viewport/di.config.d.ts.map +0 -1
- package/lib/features/viewport/di.config.js.map +0 -1
- package/lib/model-source/glsp-diagram-server.d.ts +0 -20
- package/lib/model-source/glsp-diagram-server.d.ts.map +0 -1
- package/lib/model-source/glsp-diagram-server.js +0 -102
- package/lib/model-source/glsp-diagram-server.js.map +0 -1
- package/src/base/source-uri-aware.ts +0 -23
- package/src/features/tool-feedback/di.config.ts +0 -65
- package/src/features/tools/di.config.ts +0 -77
- package/src/model-source/glsp-diagram-server.ts +0 -115
- /package/lib/features/{edit-label → label-edit}/edit-label-validator.d.ts +0 -0
- /package/lib/features/{tools → routing}/glsp-manhattan-edge-router.d.ts +0 -0
- /package/lib/features/{tools → routing}/glsp-manhattan-edge-router.js +0 -0
- /package/src/{features/tool-feedback/model.ts → base/feedback/feedback-command.ts} +0 -0
- /package/src/base/{actions/focus-change-action.ts → focus/focus-state-change-action.ts} +0 -0
- /package/src/features/{edit-label → label-edit}/edit-label-validator.ts +0 -0
- /package/src/features/{tools → routing}/glsp-manhattan-edge-router.ts +0 -0
- /package/src/features/tools/{marquee-behavior.spec.ts → marquee-selection/marquee-behavior.spec.ts} +0 -0
- /package/src/features/tools/{model.ts → marquee-selection/model.ts} +0 -0
- /package/src/features/tools/{view.tsx → marquee-selection/view.tsx} +0 -0
|
@@ -34,9 +34,10 @@ import {
|
|
|
34
34
|
matchesKeystroke
|
|
35
35
|
} from '~glsp-sprotty';
|
|
36
36
|
import { GLSPActionDispatcher } from '../../base/action-dispatcher';
|
|
37
|
-
import {
|
|
38
|
-
import {
|
|
39
|
-
import {
|
|
37
|
+
import { EditorContextService, IEditModeListener } from '../../base/editor-context-service';
|
|
38
|
+
import { FocusTracker } from '../../base/focus/focus-tracker';
|
|
39
|
+
import { MouseDeleteTool } from '../tools/deletion/delete-tool';
|
|
40
|
+
import { MarqueeMouseTool } from '../tools/marquee-selection/marquee-mouse-tool';
|
|
40
41
|
|
|
41
42
|
const CLICKED_CSS_CLASS = 'clicked';
|
|
42
43
|
const SEARCH_ICON_ID = 'search';
|
|
@@ -60,17 +61,18 @@ export namespace EnableToolPaletteAction {
|
|
|
60
61
|
}
|
|
61
62
|
}
|
|
62
63
|
@injectable()
|
|
63
|
-
export class ToolPalette extends AbstractUIExtension implements IActionHandler,
|
|
64
|
+
export class ToolPalette extends AbstractUIExtension implements IActionHandler, IEditModeListener {
|
|
64
65
|
static readonly ID = 'tool-palette';
|
|
65
66
|
|
|
66
67
|
@inject(TYPES.IActionDispatcher) protected readonly actionDispatcher: GLSPActionDispatcher;
|
|
67
68
|
@inject(TYPES.IToolManager) protected readonly toolManager: IToolManager;
|
|
68
69
|
@inject(EditorContextService) protected readonly editorContext: EditorContextService;
|
|
70
|
+
@inject(FocusTracker) protected readonly focusTracker: FocusTracker;
|
|
69
71
|
|
|
70
72
|
protected paletteItems: PaletteItem[];
|
|
71
73
|
protected paletteItemsCopy: PaletteItem[] = [];
|
|
72
74
|
protected bodyDiv?: HTMLElement;
|
|
73
|
-
protected
|
|
75
|
+
protected lastActiveButton?: HTMLElement;
|
|
74
76
|
protected defaultToolsButton: HTMLElement;
|
|
75
77
|
protected searchField: HTMLInputElement;
|
|
76
78
|
modelRootId: string;
|
|
@@ -84,7 +86,7 @@ export class ToolPalette extends AbstractUIExtension implements IActionHandler,
|
|
|
84
86
|
|
|
85
87
|
@postConstruct()
|
|
86
88
|
postConstruct(): void {
|
|
87
|
-
this.editorContext.
|
|
89
|
+
this.editorContext.onEditModeChanged(change => this.editModeChanged(change.newValue, change.oldValue));
|
|
88
90
|
}
|
|
89
91
|
|
|
90
92
|
override initialize(): boolean {
|
|
@@ -97,7 +99,7 @@ export class ToolPalette extends AbstractUIExtension implements IActionHandler,
|
|
|
97
99
|
protected initializeContents(_containerElement: HTMLElement): void {
|
|
98
100
|
this.createHeader();
|
|
99
101
|
this.createBody();
|
|
100
|
-
this.
|
|
102
|
+
this.lastActiveButton = this.defaultToolsButton;
|
|
101
103
|
}
|
|
102
104
|
|
|
103
105
|
protected override onBeforeShow(_containerElement: HTMLElement, root: Readonly<SModelRoot>): void {
|
|
@@ -305,15 +307,15 @@ export class ToolPalette extends AbstractUIExtension implements IActionHandler,
|
|
|
305
307
|
}
|
|
306
308
|
|
|
307
309
|
changeActiveButton(button?: HTMLElement): void {
|
|
308
|
-
if (this.
|
|
309
|
-
this.
|
|
310
|
+
if (this.lastActiveButton) {
|
|
311
|
+
this.lastActiveButton.classList.remove(CLICKED_CSS_CLASS);
|
|
310
312
|
}
|
|
311
313
|
if (button) {
|
|
312
314
|
button.classList.add(CLICKED_CSS_CLASS);
|
|
313
|
-
this.
|
|
314
|
-
} else {
|
|
315
|
+
this.lastActiveButton = button;
|
|
316
|
+
} else if (this.defaultToolsButton) {
|
|
315
317
|
this.defaultToolsButton.classList.add(CLICKED_CSS_CLASS);
|
|
316
|
-
this.
|
|
318
|
+
this.lastActiveButton = this.defaultToolsButton;
|
|
317
319
|
}
|
|
318
320
|
}
|
|
319
321
|
|
|
@@ -335,11 +337,14 @@ export class ToolPalette extends AbstractUIExtension implements IActionHandler,
|
|
|
335
337
|
});
|
|
336
338
|
} else if (action.kind === EnableDefaultToolsAction.KIND) {
|
|
337
339
|
this.changeActiveButton();
|
|
338
|
-
this.
|
|
340
|
+
if (this.focusTracker.hasFocus) {
|
|
341
|
+
// if focus was deliberately taken do not restore focus to the palette
|
|
342
|
+
this.restoreFocus();
|
|
343
|
+
}
|
|
339
344
|
}
|
|
340
345
|
}
|
|
341
346
|
|
|
342
|
-
editModeChanged(
|
|
347
|
+
editModeChanged(_newValue: string, _oldValue: string): void {
|
|
343
348
|
this.actionDispatcher.dispatch(
|
|
344
349
|
SetUIExtensionVisibilityAction.create({ extensionId: ToolPalette.ID, visible: !this.editorContext.isReadonly })
|
|
345
350
|
);
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
/********************************************************************************
|
|
2
|
+
* Copyright (c) 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 { injectable } from 'inversify';
|
|
17
|
+
import { Action, EnableToolsAction, IActionHandler } from '~glsp-sprotty';
|
|
18
|
+
import { BaseGLSPTool } from './base-glsp-tool';
|
|
19
|
+
|
|
20
|
+
@injectable()
|
|
21
|
+
export abstract class BaseGLSPCreationTool<T extends Action> extends BaseGLSPTool implements IActionHandler {
|
|
22
|
+
protected abstract isTriggerAction: (obj: any) => obj is T;
|
|
23
|
+
protected triggerAction: T;
|
|
24
|
+
|
|
25
|
+
handle(action: Action): Action | void {
|
|
26
|
+
if (this.isTriggerAction(action)) {
|
|
27
|
+
this.triggerAction = action;
|
|
28
|
+
return EnableToolsAction.create([this.id]);
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
override enable(): void {
|
|
33
|
+
if (this.triggerAction === undefined) {
|
|
34
|
+
throw new TypeError(`Could not enable tool ${this.id}. The triggerAction cannot be undefined.`);
|
|
35
|
+
}
|
|
36
|
+
this.doEnable();
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
protected abstract doEnable(): void;
|
|
40
|
+
}
|
|
@@ -14,22 +14,28 @@
|
|
|
14
14
|
* SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
|
|
15
15
|
********************************************************************************/
|
|
16
16
|
import { inject, injectable } from 'inversify';
|
|
17
|
-
import { Action,
|
|
17
|
+
import { Action, Disposable, DisposableCollection, IActionDispatcher, TYPES } from '~glsp-sprotty';
|
|
18
18
|
import { EditorContextService } from '../../base/editor-context-service';
|
|
19
|
+
import { IFeedbackActionDispatcher, IFeedbackEmitter } from '../../base/feedback/feedback-action-dispatcher';
|
|
19
20
|
import { GLSPTool } from '../../base/tool-manager/glsp-tool-manager';
|
|
20
|
-
import {
|
|
21
|
-
import {
|
|
21
|
+
import { GLSPKeyTool } from '../../base/view/key-tool';
|
|
22
|
+
import { GLSPMouseTool } from '../../base/view/mouse-tool';
|
|
22
23
|
|
|
23
24
|
@injectable()
|
|
24
25
|
export abstract class BaseGLSPTool implements GLSPTool {
|
|
25
26
|
@inject(TYPES.IFeedbackActionDispatcher) protected feedbackDispatcher: IFeedbackActionDispatcher;
|
|
26
27
|
@inject(TYPES.IActionDispatcher) protected actionDispatcher: IActionDispatcher;
|
|
27
|
-
@inject(
|
|
28
|
-
@inject(
|
|
28
|
+
@inject(GLSPMouseTool) protected mouseTool: GLSPMouseTool;
|
|
29
|
+
@inject(GLSPKeyTool) protected keyTool: GLSPKeyTool;
|
|
29
30
|
@inject(EditorContextService) protected readonly editorContext: EditorContextService;
|
|
30
31
|
|
|
32
|
+
protected readonly toDisposeOnDisable = new DisposableCollection();
|
|
33
|
+
|
|
31
34
|
abstract enable(): void;
|
|
32
|
-
|
|
35
|
+
|
|
36
|
+
disable(): void {
|
|
37
|
+
this.toDisposeOnDisable.dispose();
|
|
38
|
+
}
|
|
33
39
|
|
|
34
40
|
abstract id: string;
|
|
35
41
|
|
|
@@ -41,11 +47,27 @@ export abstract class BaseGLSPTool implements GLSPTool {
|
|
|
41
47
|
this.actionDispatcher.dispatchAll(actions);
|
|
42
48
|
}
|
|
43
49
|
|
|
44
|
-
|
|
45
|
-
|
|
50
|
+
/**
|
|
51
|
+
* Registers `actions` to be sent out as feedback, i.e., changes that are re-established whenever the `SModelRoot`
|
|
52
|
+
* has been set or updated.
|
|
53
|
+
*
|
|
54
|
+
* @param feedbackActions the actions to be sent out.
|
|
55
|
+
* @param feedbackEmitter the emitter sending out feedback actions (this tool by default).
|
|
56
|
+
* @param cleanupActions the actions to be sent out when the feedback is de-registered through the returned Disposable.
|
|
57
|
+
* @returns A 'Disposable' that de-registers the feedback and cleans up any pending feedback with the given `cleanupActions`.
|
|
58
|
+
*/
|
|
59
|
+
registerFeedback(feedbackActions: Action[], feedbackEmitter?: IFeedbackEmitter, cleanupActions?: Action[]): Disposable {
|
|
60
|
+
return this.feedbackDispatcher.registerFeedback(feedbackEmitter ?? this, feedbackActions, cleanupActions);
|
|
46
61
|
}
|
|
47
62
|
|
|
48
|
-
|
|
49
|
-
|
|
63
|
+
/**
|
|
64
|
+
* De-registers all feedback from the given `feedbackEmitter` (this tool by default) and cleans up any pending feedback with the
|
|
65
|
+
* given `cleanupActions`.
|
|
66
|
+
*
|
|
67
|
+
* @param feedbackEmitter the emitter to be deregistered (this tool by default).
|
|
68
|
+
* @param cleanupActions the actions to be dispatched right after the deregistration to clean up any pending feedback.
|
|
69
|
+
*/
|
|
70
|
+
deregisterFeedback(feedbackEmitter?: IFeedbackEmitter, cleanupActions?: Action[]): void {
|
|
71
|
+
this.feedbackDispatcher.deregisterFeedback(feedbackEmitter ?? this, cleanupActions);
|
|
50
72
|
}
|
|
51
73
|
}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/********************************************************************************
|
|
2
|
+
* Copyright (c) 2019-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 { FeatureModule, TYPES, bindAsService, configureCommand, configureView } from '~glsp-sprotty';
|
|
17
|
+
import { SResizeHandle } from '../../change-bounds/model';
|
|
18
|
+
import { ChangeBoundsTool } from './change-bounds-tool';
|
|
19
|
+
import { HideChangeBoundsToolResizeFeedbackCommand, ShowChangeBoundsToolResizeFeedbackCommand } from './change-bounds-tool-feedback';
|
|
20
|
+
import { SResizeHandleView } from './view';
|
|
21
|
+
|
|
22
|
+
export const changeBoundsToolModule = new FeatureModule((bind, unbind, isBound, rebind) => {
|
|
23
|
+
const context = { bind, unbind, isBound, rebind };
|
|
24
|
+
bindAsService(context, TYPES.IDefaultTool, ChangeBoundsTool);
|
|
25
|
+
configureCommand(context, ShowChangeBoundsToolResizeFeedbackCommand);
|
|
26
|
+
configureCommand(context, HideChangeBoundsToolResizeFeedbackCommand);
|
|
27
|
+
configureView(context, SResizeHandle.TYPE, SResizeHandleView);
|
|
28
|
+
});
|
|
@@ -19,6 +19,7 @@ import {
|
|
|
19
19
|
Action,
|
|
20
20
|
CommandExecutionContext,
|
|
21
21
|
CommandReturn,
|
|
22
|
+
Disposable,
|
|
22
23
|
ElementMove,
|
|
23
24
|
MouseListener,
|
|
24
25
|
MoveAction,
|
|
@@ -33,12 +34,12 @@ import {
|
|
|
33
34
|
isSelectable,
|
|
34
35
|
isViewport
|
|
35
36
|
} from '~glsp-sprotty';
|
|
36
|
-
import {
|
|
37
|
-
import {
|
|
38
|
-
import {
|
|
39
|
-
import {
|
|
40
|
-
import {
|
|
41
|
-
import {
|
|
37
|
+
import { CursorCSS, cursorFeedbackAction } from '../../../base/feedback/css-feedback';
|
|
38
|
+
import { FeedbackCommand } from '../../../base/feedback/feedback-command';
|
|
39
|
+
import { forEachElement } from '../../../utils/smodel-util';
|
|
40
|
+
import { SResizeHandle, addResizeHandles, isResizable, removeResizeHandles } from '../../change-bounds/model';
|
|
41
|
+
import { createMovementRestrictionFeedback, removeMovementRestrictionFeedback } from '../../change-bounds/movement-restrictor';
|
|
42
|
+
import { ChangeBoundsTool } from './change-bounds-tool';
|
|
42
43
|
|
|
43
44
|
export interface ShowChangeBoundsToolResizeFeedbackAction extends Action {
|
|
44
45
|
kind: typeof ShowChangeBoundsToolResizeFeedbackAction.KIND;
|
|
@@ -118,9 +119,10 @@ export class HideChangeBoundsToolResizeFeedbackCommand extends FeedbackCommand {
|
|
|
118
119
|
* the visual feedback but also the basis for sending the change to the server
|
|
119
120
|
* (see also `tools/MoveTool`).
|
|
120
121
|
*/
|
|
121
|
-
export class FeedbackMoveMouseListener extends MouseListener {
|
|
122
|
+
export class FeedbackMoveMouseListener extends MouseListener implements Disposable {
|
|
122
123
|
protected hasDragged = false;
|
|
123
|
-
protected
|
|
124
|
+
protected rootElement?: SModelRoot;
|
|
125
|
+
protected startDragPosition?: Point;
|
|
124
126
|
protected elementId2startPos = new Map<string, Point>();
|
|
125
127
|
|
|
126
128
|
constructor(protected tool: ChangeBoundsTool) {
|
|
@@ -155,10 +157,12 @@ export class FeedbackMoveMouseListener extends MouseListener {
|
|
|
155
157
|
result.push(cursorFeedbackAction(CursorCSS.MOVE));
|
|
156
158
|
}
|
|
157
159
|
}
|
|
158
|
-
|
|
160
|
+
this.tool.registerFeedback(result, this);
|
|
161
|
+
return [];
|
|
159
162
|
}
|
|
160
163
|
|
|
161
164
|
protected collectStartPositions(root: SModelRoot): void {
|
|
165
|
+
this.rootElement = root;
|
|
162
166
|
const selectedElements = root.index.all().filter(element => isSelectable(element) && element.selected);
|
|
163
167
|
const elementsSet = new Set(selectedElements);
|
|
164
168
|
selectedElements
|
|
@@ -184,13 +188,29 @@ export class FeedbackMoveMouseListener extends MouseListener {
|
|
|
184
188
|
if (!this.startDragPosition) {
|
|
185
189
|
return undefined;
|
|
186
190
|
}
|
|
187
|
-
|
|
191
|
+
|
|
188
192
|
const viewport = findParentByFeature(target, isViewport);
|
|
189
193
|
const zoom = viewport ? viewport.zoom : 1;
|
|
190
194
|
const delta = {
|
|
191
195
|
x: (event.pageX - this.startDragPosition.x) / zoom,
|
|
192
196
|
y: (event.pageY - this.startDragPosition.y) / zoom
|
|
193
197
|
};
|
|
198
|
+
|
|
199
|
+
const elementMoves: ElementMove[] = this.getElementMovesForDelta(target, delta, !event.shiftKey, finished);
|
|
200
|
+
if (elementMoves.length > 0) {
|
|
201
|
+
return MoveAction.create(elementMoves, { animate: false, finished });
|
|
202
|
+
} else {
|
|
203
|
+
return undefined;
|
|
204
|
+
}
|
|
205
|
+
}
|
|
206
|
+
|
|
207
|
+
protected getElementMovesForDelta(
|
|
208
|
+
target: SModelElement,
|
|
209
|
+
delta: { x: number; y: number },
|
|
210
|
+
isSnap: boolean,
|
|
211
|
+
finished: boolean
|
|
212
|
+
): ElementMove[] {
|
|
213
|
+
const elementMoves: ElementMove[] = [];
|
|
194
214
|
this.elementId2startPos.forEach((startPosition, elementId) => {
|
|
195
215
|
const element = target.root.index.getById(elementId);
|
|
196
216
|
if (element) {
|
|
@@ -200,7 +220,7 @@ export class FeedbackMoveMouseListener extends MouseListener {
|
|
|
200
220
|
y: startPosition.y + delta.y
|
|
201
221
|
},
|
|
202
222
|
element,
|
|
203
|
-
|
|
223
|
+
isSnap
|
|
204
224
|
);
|
|
205
225
|
|
|
206
226
|
if (isMoveable(element)) {
|
|
@@ -216,11 +236,7 @@ export class FeedbackMoveMouseListener extends MouseListener {
|
|
|
216
236
|
}
|
|
217
237
|
}
|
|
218
238
|
});
|
|
219
|
-
|
|
220
|
-
return MoveAction.create(elementMoves, { animate: false, finished });
|
|
221
|
-
} else {
|
|
222
|
-
return undefined;
|
|
223
|
-
}
|
|
239
|
+
return elementMoves;
|
|
224
240
|
}
|
|
225
241
|
|
|
226
242
|
protected validateMove(startPosition: Point, toPosition: Point, element: SModelElement, isFinished: boolean): Point {
|
|
@@ -237,8 +253,7 @@ export class FeedbackMoveMouseListener extends MouseListener {
|
|
|
237
253
|
} else {
|
|
238
254
|
action = removeMovementRestrictionFeedback(element, this.tool.movementRestrictor);
|
|
239
255
|
}
|
|
240
|
-
|
|
241
|
-
this.tool.dispatchFeedback([action], this);
|
|
256
|
+
this.tool.registerFeedback([action], this);
|
|
242
257
|
}
|
|
243
258
|
return newPosition;
|
|
244
259
|
}
|
|
@@ -265,18 +280,34 @@ export class FeedbackMoveMouseListener extends MouseListener {
|
|
|
265
280
|
if (moveAction) {
|
|
266
281
|
result.push(moveAction);
|
|
267
282
|
}
|
|
283
|
+
const resetFeedback: Action[] = [];
|
|
268
284
|
if (this.tool.movementRestrictor) {
|
|
269
|
-
|
|
285
|
+
resetFeedback.push(removeMovementRestrictionFeedback(target, this.tool.movementRestrictor));
|
|
270
286
|
}
|
|
271
|
-
|
|
287
|
+
resetFeedback.push(cursorFeedbackAction(CursorCSS.DEFAULT));
|
|
288
|
+
this.tool.deregisterFeedback(this, resetFeedback);
|
|
289
|
+
}
|
|
290
|
+
this.reset();
|
|
291
|
+
return result;
|
|
292
|
+
}
|
|
293
|
+
|
|
294
|
+
protected reset(resetFeedback = false): void {
|
|
295
|
+
if (this.rootElement && resetFeedback) {
|
|
296
|
+
const elementMoves: ElementMove[] = this.getElementMovesForDelta(this.rootElement, { x: 0, y: 0 }, true, true);
|
|
297
|
+
const moveAction = MoveAction.create(elementMoves, { animate: false, finished: true });
|
|
298
|
+
this.tool.deregisterFeedback(this, [moveAction]);
|
|
272
299
|
}
|
|
273
300
|
this.hasDragged = false;
|
|
274
301
|
this.startDragPosition = undefined;
|
|
302
|
+
this.rootElement = undefined;
|
|
275
303
|
this.elementId2startPos.clear();
|
|
276
|
-
return result;
|
|
277
304
|
}
|
|
278
305
|
|
|
279
306
|
override decorate(vnode: VNode, _element: SModelElement): VNode {
|
|
280
307
|
return vnode;
|
|
281
308
|
}
|
|
309
|
+
|
|
310
|
+
dispose(): void {
|
|
311
|
+
this.reset(true);
|
|
312
|
+
}
|
|
282
313
|
}
|
|
@@ -14,6 +14,7 @@
|
|
|
14
14
|
* SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
|
|
15
15
|
********************************************************************************/
|
|
16
16
|
import { inject, injectable, optional } from 'inversify';
|
|
17
|
+
|
|
17
18
|
import {
|
|
18
19
|
Action,
|
|
19
20
|
Bounds,
|
|
@@ -22,6 +23,7 @@ import {
|
|
|
22
23
|
ChangeRoutingPointsOperation,
|
|
23
24
|
CompoundOperation,
|
|
24
25
|
Dimension,
|
|
26
|
+
Disposable,
|
|
25
27
|
EdgeRouterRegistry,
|
|
26
28
|
ElementAndBounds,
|
|
27
29
|
ElementAndRoutingPoints,
|
|
@@ -39,29 +41,29 @@ import {
|
|
|
39
41
|
findParentByFeature,
|
|
40
42
|
isSelected
|
|
41
43
|
} from '~glsp-sprotty';
|
|
42
|
-
import { DragAwareMouseListener } from '
|
|
43
|
-
import {
|
|
44
|
+
import { DragAwareMouseListener } from '../../../base/drag-aware-mouse-listener';
|
|
45
|
+
import { CursorCSS, applyCssClasses, cursorFeedbackAction, deleteCssClasses } from '../../../base/feedback/css-feedback';
|
|
46
|
+
import { ISelectionListener, SelectionService } from '../../../base/selection-service';
|
|
47
|
+
import { PointPositionUpdater } from '../../../features/change-bounds/snap';
|
|
48
|
+
import { isValidMove, isValidSize } from '../../../utils/layout-utils';
|
|
44
49
|
import {
|
|
45
50
|
calcElementAndRoutingPoints,
|
|
46
51
|
forEachElement,
|
|
47
52
|
isNonRoutableSelectedMovableBoundsAware,
|
|
48
53
|
toElementAndBounds
|
|
49
|
-
} from '
|
|
50
|
-
import { Resizable, ResizeHandleLocation, SResizeHandle, isBoundsAwareMoveable, isResizable } from '
|
|
54
|
+
} from '../../../utils/smodel-util';
|
|
55
|
+
import { Resizable, ResizeHandleLocation, SResizeHandle, isBoundsAwareMoveable, isResizable } from '../../change-bounds/model';
|
|
51
56
|
import {
|
|
52
57
|
IMovementRestrictor,
|
|
53
58
|
createMovementRestrictionFeedback,
|
|
54
59
|
removeMovementRestrictionFeedback
|
|
55
|
-
} from '
|
|
56
|
-
import {
|
|
57
|
-
import { SelectionListener, SelectionService } from '../select/selection-service';
|
|
60
|
+
} from '../../change-bounds/movement-restrictor';
|
|
61
|
+
import { BaseGLSPTool } from '../base-glsp-tool';
|
|
58
62
|
import {
|
|
59
63
|
FeedbackMoveMouseListener,
|
|
60
64
|
HideChangeBoundsToolResizeFeedbackAction,
|
|
61
65
|
ShowChangeBoundsToolResizeFeedbackAction
|
|
62
|
-
} from '
|
|
63
|
-
import { CursorCSS, applyCssClasses, cursorFeedbackAction, deleteCssClasses } from '../tool-feedback/css-feedback';
|
|
64
|
-
import { BaseGLSPTool } from './base-glsp-tool';
|
|
66
|
+
} from './change-bounds-tool-feedback';
|
|
65
67
|
|
|
66
68
|
/**
|
|
67
69
|
* The change bounds tool has the license to move multiple elements or resize a single element by implementing the ChangeBounds operation.
|
|
@@ -80,12 +82,10 @@ import { BaseGLSPTool } from './base-glsp-tool';
|
|
|
80
82
|
export class ChangeBoundsTool extends BaseGLSPTool {
|
|
81
83
|
static ID = 'glsp.change-bounds-tool';
|
|
82
84
|
|
|
83
|
-
@inject(
|
|
85
|
+
@inject(SelectionService) protected selectionService: SelectionService;
|
|
84
86
|
@inject(EdgeRouterRegistry) @optional() readonly edgeRouterRegistry?: EdgeRouterRegistry;
|
|
85
87
|
@inject(TYPES.ISnapper) @optional() readonly snapper?: ISnapper;
|
|
86
88
|
@inject(TYPES.IMovementRestrictor) @optional() readonly movementRestrictor?: IMovementRestrictor;
|
|
87
|
-
protected feedbackMoveMouseListener: MouseListener;
|
|
88
|
-
protected changeBoundsListener: MouseListener & SelectionListener;
|
|
89
89
|
|
|
90
90
|
get id(): string {
|
|
91
91
|
return ChangeBoundsTool.ID;
|
|
@@ -93,33 +93,36 @@ export class ChangeBoundsTool extends BaseGLSPTool {
|
|
|
93
93
|
|
|
94
94
|
enable(): void {
|
|
95
95
|
// install feedback move mouse listener for client-side move updates
|
|
96
|
-
|
|
97
|
-
|
|
96
|
+
const feedbackMoveMouseListener = this.createMoveMouseListener();
|
|
97
|
+
if (Disposable.is(feedbackMoveMouseListener)) {
|
|
98
|
+
this.toDisposeOnDisable.push(feedbackMoveMouseListener);
|
|
99
|
+
}
|
|
98
100
|
|
|
99
101
|
// install change bounds listener for client-side resize updates and server-side updates
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
102
|
+
const changeBoundsListener = this.createChangeBoundsListener();
|
|
103
|
+
if (Disposable.is(changeBoundsListener)) {
|
|
104
|
+
this.toDisposeOnDisable.push(changeBoundsListener);
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
this.toDisposeOnDisable.push(
|
|
108
|
+
this.mouseTool.registerListener(feedbackMoveMouseListener),
|
|
109
|
+
this.mouseTool.registerListener(changeBoundsListener),
|
|
110
|
+
Disposable.create(() => this.deregisterFeedback(feedbackMoveMouseListener)),
|
|
111
|
+
Disposable.create(() => this.deregisterFeedback(changeBoundsListener, [HideChangeBoundsToolResizeFeedbackAction.create()])),
|
|
112
|
+
this.selectionService.onSelectionChanged(change => changeBoundsListener.selectionChanged(change.root, change.selectedElements))
|
|
113
|
+
);
|
|
103
114
|
}
|
|
104
115
|
|
|
105
116
|
protected createMoveMouseListener(): MouseListener {
|
|
106
117
|
return new FeedbackMoveMouseListener(this);
|
|
107
118
|
}
|
|
108
119
|
|
|
109
|
-
protected createChangeBoundsListener(): MouseListener &
|
|
120
|
+
protected createChangeBoundsListener(): MouseListener & ISelectionListener {
|
|
110
121
|
return new ChangeBoundsListener(this);
|
|
111
122
|
}
|
|
112
|
-
|
|
113
|
-
disable(): void {
|
|
114
|
-
this.mouseTool.deregister(this.changeBoundsListener);
|
|
115
|
-
this.selectionService.deregister(this.changeBoundsListener);
|
|
116
|
-
this.mouseTool.deregister(this.feedbackMoveMouseListener);
|
|
117
|
-
this.deregisterFeedback([], this.feedbackMoveMouseListener);
|
|
118
|
-
this.deregisterFeedback([HideChangeBoundsToolResizeFeedbackAction.create()], this.changeBoundsListener);
|
|
119
|
-
}
|
|
120
123
|
}
|
|
121
124
|
|
|
122
|
-
export class ChangeBoundsListener extends DragAwareMouseListener implements
|
|
125
|
+
export class ChangeBoundsListener extends DragAwareMouseListener implements ISelectionListener, Disposable {
|
|
123
126
|
static readonly CSS_CLASS_ACTIVE = 'active';
|
|
124
127
|
|
|
125
128
|
// members for calculating the correct position change
|
|
@@ -170,12 +173,12 @@ export class ChangeBoundsListener extends DragAwareMouseListener implements Sele
|
|
|
170
173
|
const resizeActions = this.handleResizeOnClient(positionUpdate);
|
|
171
174
|
actions.push(...resizeActions);
|
|
172
175
|
}
|
|
173
|
-
|
|
176
|
+
this.tool.registerFeedback(actions, this);
|
|
174
177
|
}
|
|
175
178
|
return [];
|
|
176
179
|
}
|
|
177
180
|
|
|
178
|
-
override draggingMouseUp(target: SModelElement,
|
|
181
|
+
override draggingMouseUp(target: SModelElement, _event: MouseEvent): Action[] {
|
|
179
182
|
if (this.pointPositionUpdater.isLastDragPositionUndefined()) {
|
|
180
183
|
this.resetPosition();
|
|
181
184
|
return [];
|
|
@@ -190,6 +193,7 @@ export class ChangeBoundsListener extends DragAwareMouseListener implements Sele
|
|
|
190
193
|
actions.push(...this.handleMoveOnServer(target));
|
|
191
194
|
}
|
|
192
195
|
this.resetPosition();
|
|
196
|
+
this.tool.deregisterFeedback(this, [cursorFeedbackAction(CursorCSS.DEFAULT)]);
|
|
193
197
|
return actions;
|
|
194
198
|
}
|
|
195
199
|
|
|
@@ -289,7 +293,10 @@ export class ChangeBoundsListener extends DragAwareMouseListener implements Sele
|
|
|
289
293
|
// only allow one element to have the element resize handles
|
|
290
294
|
this.activeResizeElement = moveableElement;
|
|
291
295
|
if (isResizable(this.activeResizeElement)) {
|
|
292
|
-
this.tool.
|
|
296
|
+
this.tool.registerFeedback(
|
|
297
|
+
[ShowChangeBoundsToolResizeFeedbackAction.create(this.activeResizeElement.id)],
|
|
298
|
+
this.activeResizeElement
|
|
299
|
+
);
|
|
293
300
|
}
|
|
294
301
|
return true;
|
|
295
302
|
}
|
|
@@ -313,12 +320,34 @@ export class ChangeBoundsListener extends DragAwareMouseListener implements Sele
|
|
|
313
320
|
}
|
|
314
321
|
}
|
|
315
322
|
|
|
316
|
-
|
|
323
|
+
dispose(): void {
|
|
324
|
+
this.reset(true);
|
|
325
|
+
}
|
|
326
|
+
|
|
327
|
+
protected reset(resetBounds = false): void {
|
|
328
|
+
this.resetFeedback(resetBounds);
|
|
329
|
+
this.resetPosition();
|
|
330
|
+
}
|
|
331
|
+
|
|
332
|
+
protected resetFeedback(resetBounds = false): void {
|
|
333
|
+
const resetFeedback: Action[] = [];
|
|
317
334
|
if (this.activeResizeElement && isResizable(this.activeResizeElement)) {
|
|
318
|
-
this.
|
|
335
|
+
if (this.initialBounds && this.activeResizeHandle && resetBounds) {
|
|
336
|
+
// we only reset the bounds if an active resize operation was cancelled due to the tool being disabled
|
|
337
|
+
resetFeedback.push(
|
|
338
|
+
SetBoundsAction.create([
|
|
339
|
+
{
|
|
340
|
+
elementId: this.activeResizeElement.id,
|
|
341
|
+
newPosition: this.initialBounds,
|
|
342
|
+
newSize: this.initialBounds
|
|
343
|
+
}
|
|
344
|
+
])
|
|
345
|
+
);
|
|
346
|
+
}
|
|
347
|
+
this.tool.deregisterFeedback(this.activeResizeElement, [HideChangeBoundsToolResizeFeedbackAction.create()]);
|
|
319
348
|
}
|
|
320
|
-
|
|
321
|
-
this.
|
|
349
|
+
resetFeedback.push(cursorFeedbackAction(CursorCSS.DEFAULT));
|
|
350
|
+
this.tool.deregisterFeedback(this, resetFeedback);
|
|
322
351
|
}
|
|
323
352
|
|
|
324
353
|
protected resetPosition(): void {
|
|
@@ -15,24 +15,12 @@
|
|
|
15
15
|
********************************************************************************/
|
|
16
16
|
import { injectable } from 'inversify';
|
|
17
17
|
import { VNode } from 'snabbdom';
|
|
18
|
-
import { IView, Point, RenderingContext, setAttr,
|
|
19
|
-
import {
|
|
18
|
+
import { IView, Point, RenderingContext, setAttr, svg } from '~glsp-sprotty';
|
|
19
|
+
import { ResizeHandleLocation, SResizeHandle, isResizable } from '../../change-bounds/model';
|
|
20
20
|
|
|
21
21
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
22
22
|
const JSX = { createElement: svg };
|
|
23
23
|
|
|
24
|
-
/**
|
|
25
|
-
* This view is used for the invisible end of the feedback edge.
|
|
26
|
-
* A feedback edge is shown as a visual feedback when creating edges.
|
|
27
|
-
*/
|
|
28
|
-
@injectable()
|
|
29
|
-
export class FeedbackEdgeEndView implements IView {
|
|
30
|
-
render(model: Readonly<SModelElement>, context: RenderingContext): VNode {
|
|
31
|
-
const position: Point = (model as any).position ?? Point.ORIGIN;
|
|
32
|
-
return <g x={position.x} y={position.y} />;
|
|
33
|
-
}
|
|
34
|
-
}
|
|
35
|
-
|
|
36
24
|
@injectable()
|
|
37
25
|
export class SResizeHandleView implements IView {
|
|
38
26
|
render(handle: SResizeHandle, context: RenderingContext): VNode {
|
|
@@ -22,17 +22,15 @@ import {
|
|
|
22
22
|
KeyTool,
|
|
23
23
|
MouseListener,
|
|
24
24
|
SModelElement,
|
|
25
|
-
TYPES,
|
|
26
25
|
findParentByFeature,
|
|
27
26
|
isCtrlOrCmd,
|
|
28
27
|
isDeletable,
|
|
29
28
|
isSelectable,
|
|
30
29
|
matchesKeystroke
|
|
31
30
|
} from '~glsp-sprotty';
|
|
32
|
-
import {
|
|
33
|
-
import {
|
|
34
|
-
import {
|
|
35
|
-
import { IFeedbackActionDispatcher } from '../tool-feedback/feedback-action-dispatcher';
|
|
31
|
+
import { CursorCSS, cursorFeedbackAction } from '../../../base/feedback/css-feedback';
|
|
32
|
+
import { GLSPTool } from '../../../base/tool-manager/glsp-tool-manager';
|
|
33
|
+
import { BaseGLSPTool } from '../base-glsp-tool';
|
|
36
34
|
|
|
37
35
|
/**
|
|
38
36
|
* Deletes selected elements when hitting the `Del` key.
|
|
@@ -82,28 +80,20 @@ export class DeleteKeyListener extends KeyListener {
|
|
|
82
80
|
* Deletes selected elements when clicking on them.
|
|
83
81
|
*/
|
|
84
82
|
@injectable()
|
|
85
|
-
export class MouseDeleteTool
|
|
83
|
+
export class MouseDeleteTool extends BaseGLSPTool {
|
|
86
84
|
static ID = 'glsp.delete-mouse';
|
|
87
85
|
|
|
88
|
-
isEditTool = true;
|
|
89
|
-
|
|
90
86
|
protected deleteToolMouseListener: DeleteToolMouseListener = new DeleteToolMouseListener();
|
|
91
87
|
|
|
92
|
-
@inject(TYPES.MouseTool) protected mouseTool: IMouseTool;
|
|
93
|
-
@inject(TYPES.IFeedbackActionDispatcher) protected readonly feedbackDispatcher: IFeedbackActionDispatcher;
|
|
94
|
-
|
|
95
88
|
get id(): string {
|
|
96
89
|
return MouseDeleteTool.ID;
|
|
97
90
|
}
|
|
98
91
|
|
|
99
92
|
enable(): void {
|
|
100
|
-
this.
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
disable(): void {
|
|
105
|
-
this.mouseTool.deregister(this.deleteToolMouseListener);
|
|
106
|
-
this.feedbackDispatcher.registerFeedback(this, [cursorFeedbackAction()]);
|
|
93
|
+
this.toDisposeOnDisable.push(
|
|
94
|
+
this.mouseTool.registerListener(this.deleteToolMouseListener),
|
|
95
|
+
this.registerFeedback([cursorFeedbackAction(CursorCSS.ELEMENT_DELETION)], this, [cursorFeedbackAction()])
|
|
96
|
+
);
|
|
107
97
|
}
|
|
108
98
|
}
|
|
109
99
|
|