@node-projects/web-component-designer 0.0.94 → 0.0.97
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/assets/images/layout/ColorPickerTool.svg +21 -0
- package/assets/images/layout/DrawEllipTool.svg +13 -0
- package/assets/images/layout/DrawLineTool.svg +13 -0
- package/assets/images/layout/DrawPathTool.svg +32 -0
- package/assets/images/layout/DrawRectTool.svg +28 -0
- package/assets/images/layout/MagicWandTool.svg +14 -0
- package/assets/images/layout/PointerTool.svg +10 -0
- package/assets/images/layout/SelectRectTool.svg +9 -0
- package/assets/images/layout/TextBoxTool.svg +8 -0
- package/assets/images/layout/TextTool.svg +7 -0
- package/assets/images/layout/ZoomTool.svg +16 -0
- package/dist/Constants.d.ts +1 -1
- package/dist/Constants.js +3 -1
- package/dist/elements/services/DefaultServiceBootstrap.js +10 -0
- package/dist/elements/services/GlobalContext.d.ts +4 -1
- package/dist/elements/services/GlobalContext.js +8 -3
- package/dist/elements/services/ServiceContainer.d.ts +2 -0
- package/dist/elements/services/ServiceContainer.js +1 -0
- package/dist/elements/widgets/designerView/Snaplines.js +1 -1
- package/dist/elements/widgets/designerView/designerCanvas.js +3 -1
- package/dist/elements/widgets/designerView/designerView.d.ts +2 -0
- package/dist/elements/widgets/designerView/designerView.js +19 -2
- package/dist/elements/widgets/designerView/extensions/contextMenu/SelectAllChildrenContextMenu.d.ts +8 -0
- package/dist/elements/widgets/designerView/extensions/contextMenu/SelectAllChildrenContextMenu.js +12 -0
- package/dist/elements/widgets/designerView/toolBar/DrawElementTool.d.ts +19 -0
- package/dist/elements/widgets/designerView/toolBar/DrawElementTool.js +79 -0
- package/dist/elements/widgets/designerView/toolBar/DrawEllipsisTool.d.ts +16 -0
- package/dist/elements/widgets/designerView/toolBar/DrawEllipsisTool.js +94 -0
- package/dist/elements/widgets/designerView/toolBar/DrawLineTool.d.ts +14 -0
- package/dist/elements/widgets/designerView/toolBar/DrawLineTool.js +79 -0
- package/dist/elements/widgets/designerView/toolBar/DrawPathTool.d.ts +20 -0
- package/dist/elements/widgets/designerView/toolBar/DrawPathTool.js +128 -0
- package/dist/elements/widgets/designerView/toolBar/DrawRectTool.d.ts +19 -0
- package/dist/elements/widgets/designerView/toolBar/DrawRectTool.js +109 -0
- package/dist/elements/widgets/designerView/toolBar/ITool.d.ts +9 -0
- package/dist/elements/widgets/designerView/toolBar/ITool.js +1 -0
- package/dist/elements/widgets/designerView/toolBar/MagicWandSelectorTool.d.ts +12 -0
- package/dist/elements/widgets/designerView/toolBar/MagicWandSelectorTool.js +64 -0
- package/dist/elements/widgets/designerView/toolBar/NamedTools.d.ts +15 -0
- package/dist/elements/widgets/designerView/toolBar/NamedTools.js +16 -0
- package/dist/elements/widgets/designerView/toolBar/PanTool.d.ts +10 -0
- package/dist/elements/widgets/designerView/toolBar/PanTool.js +26 -0
- package/dist/elements/widgets/designerView/toolBar/PickColorTool.d.ts +10 -0
- package/dist/elements/widgets/designerView/toolBar/PickColorTool.js +20 -0
- package/dist/elements/widgets/designerView/toolBar/PointerTool.d.ts +24 -0
- package/dist/elements/widgets/designerView/toolBar/PointerTool.js +283 -0
- package/dist/elements/widgets/designerView/toolBar/RectangleSelectorTool.d.ts +12 -0
- package/dist/elements/widgets/designerView/toolBar/RectangleSelectorTool.js +84 -0
- package/dist/elements/widgets/designerView/toolBar/TextTool.d.ts +11 -0
- package/dist/elements/widgets/designerView/toolBar/TextTool.js +33 -0
- package/dist/elements/widgets/designerView/toolBar/ZoomTool.d.ts +17 -0
- package/dist/elements/widgets/designerView/toolBar/ZoomTool.js +79 -0
- package/dist/elements/widgets/designerView/toolBar/designerToolbarGenerics/designerToolRenderer.d.ts +5 -0
- package/dist/elements/widgets/designerView/toolBar/designerToolbarGenerics/designerToolRenderer.js +19 -0
- package/dist/elements/widgets/designerView/toolBar/designerToolbarGenerics/designerToolbarPopup.d.ts +8 -0
- package/dist/elements/widgets/designerView/toolBar/designerToolbarGenerics/designerToolbarPopup.js +41 -0
- package/dist/elements/widgets/designerView/toolBar/designerToolbarGenerics/designerToolbarPopupToolSelect.d.ts +9 -0
- package/dist/elements/widgets/designerView/toolBar/designerToolbarGenerics/designerToolbarPopupToolSelect.js +42 -0
- package/dist/elements/widgets/designerView/toolBar/designerToolbarGenerics/designerToolsButtons.d.ts +36 -0
- package/dist/elements/widgets/designerView/toolBar/designerToolbarGenerics/designerToolsButtons.js +96 -0
- package/dist/elements/widgets/designerView/toolBar/designerToolbarPopups/DrawToolPopup.d.ts +5 -0
- package/dist/elements/widgets/designerView/toolBar/designerToolbarPopups/DrawToolPopup.js +21 -0
- package/dist/elements/widgets/designerView/toolBar/designerToolbarPopups/SelectorToolsPopup.d.ts +8 -0
- package/dist/elements/widgets/designerView/toolBar/designerToolbarPopups/SelectorToolsPopup.js +23 -0
- package/dist/elements/widgets/designerView/toolBar/designerToolsDock.d.ts +24 -0
- package/dist/elements/widgets/designerView/toolBar/designerToolsDock.js +115 -0
- package/dist/elements/widgets/designerView/tools/NamedTools.d.ts +2 -1
- package/dist/elements/widgets/designerView/tools/NamedTools.js +1 -0
- package/dist/elements/widgets/designerView/tools/designerToolbarGenerics/designerToolRenderer.d.ts +5 -0
- package/dist/elements/widgets/designerView/tools/designerToolbarGenerics/designerToolRenderer.js +19 -0
- package/dist/elements/widgets/designerView/tools/designerToolbarGenerics/designerToolbarPopup.d.ts +8 -0
- package/dist/elements/widgets/designerView/tools/designerToolbarGenerics/designerToolbarPopup.js +41 -0
- package/dist/elements/widgets/designerView/tools/designerToolbarGenerics/designerToolbarPopupToolSelect.d.ts +9 -0
- package/dist/elements/widgets/designerView/tools/designerToolbarGenerics/designerToolbarPopupToolSelect.js +42 -0
- package/dist/elements/widgets/designerView/tools/designerToolbarGenerics/designerToolsButtons.d.ts +36 -0
- package/dist/elements/widgets/designerView/tools/designerToolbarGenerics/designerToolsButtons.js +87 -0
- package/dist/elements/widgets/designerView/tools/designerToolbarPopups/DrawToolPopup copy.d.ts +8 -0
- package/dist/elements/widgets/designerView/tools/designerToolbarPopups/DrawToolPopup copy.js +25 -0
- package/dist/elements/widgets/designerView/tools/designerToolbarPopups/DrawToolPopup.d.ts +5 -0
- package/dist/elements/widgets/designerView/tools/designerToolbarPopups/DrawToolPopup.js +21 -0
- package/dist/elements/widgets/designerView/tools/designerToolbarPopups/SelectorToolsPopup.d.ts +8 -0
- package/dist/elements/widgets/designerView/tools/designerToolbarPopups/SelectorToolsPopup.js +23 -0
- package/dist/elements/widgets/designerView/tools/designerToolsDock.d.ts +24 -0
- package/dist/elements/widgets/designerView/tools/designerToolsDock.js +115 -0
- package/dist/elements/widgets/designerView/tools/toolBar/AbstractDesignerToolbarButton.d.ts +5 -0
- package/dist/elements/widgets/designerView/tools/toolBar/AbstractDesignerToolbarButton.js +5 -0
- package/dist/elements/widgets/designerView/tools/toolBar/DesignerToolbar.d.ts +16 -0
- package/dist/elements/widgets/designerView/tools/toolBar/DesignerToolbar.js +68 -0
- package/dist/elements/widgets/designerView/tools/toolBar/DesignerToolbarButton.d.ts +19 -0
- package/dist/elements/widgets/designerView/tools/toolBar/DesignerToolbarButton.js +62 -0
- package/dist/elements/widgets/designerView/tools/toolBar/IDesignViewConfigButtonsProvider.d.ts +5 -0
- package/dist/elements/widgets/designerView/tools/toolBar/IDesignViewConfigButtonsProvider.js +1 -0
- package/dist/elements/widgets/designerView/tools/toolBar/IDesignViewToolbarButtonProvider.d.ts +4 -0
- package/dist/elements/widgets/designerView/tools/toolBar/IDesignViewToolbarButtonProvider.js +1 -0
- package/dist/elements/widgets/designerView/tools/toolBar/buttons/DrawToolButtonProvider.d.ts +5 -0
- package/dist/elements/widgets/designerView/tools/toolBar/buttons/DrawToolButtonProvider.js +16 -0
- package/dist/elements/widgets/designerView/tools/toolBar/buttons/PointerToolButtonProvider copy.d.ts +5 -0
- package/dist/elements/widgets/designerView/tools/toolBar/buttons/PointerToolButtonProvider copy.js +7 -0
- package/dist/elements/widgets/designerView/tools/toolBar/buttons/PointerToolButtonProvider.d.ts +5 -0
- package/dist/elements/widgets/designerView/tools/toolBar/buttons/PointerToolButtonProvider.js +7 -0
- package/dist/elements/widgets/designerView/tools/toolBar/buttons/SelectorToolButtonProvider copy.d.ts +5 -0
- package/dist/elements/widgets/designerView/tools/toolBar/buttons/SelectorToolButtonProvider copy.js +10 -0
- package/dist/elements/widgets/designerView/tools/toolBar/buttons/SelectorToolButtonProvider.d.ts +5 -0
- package/dist/elements/widgets/designerView/tools/toolBar/buttons/SelectorToolButtonProvider.js +10 -0
- package/dist/elements/widgets/designerView/tools/toolBar/buttons/SeperatorToolProvider.d.ts +7 -0
- package/dist/elements/widgets/designerView/tools/toolBar/buttons/SeperatorToolProvider.js +11 -0
- package/dist/elements/widgets/designerView/tools/toolBar/buttons/TextToolButtonProvider.d.ts +5 -0
- package/dist/elements/widgets/designerView/tools/toolBar/buttons/TextToolButtonProvider.js +7 -0
- package/dist/elements/widgets/designerView/tools/toolBar/buttons/ZoomToolButtonProvider.d.ts +5 -0
- package/dist/elements/widgets/designerView/tools/toolBar/buttons/ZoomToolButtonProvider.js +7 -0
- package/dist/elements/widgets/designerView/tools/toolBar/designerToolsDock.d.ts +24 -0
- package/dist/elements/widgets/designerView/tools/toolBar/designerToolsDock.js +115 -0
- package/dist/elements/widgets/designerView/tools/toolBar/popups/DrawToolPopup.d.ts +6 -0
- package/dist/elements/widgets/designerView/tools/toolBar/popups/DrawToolPopup.js +50 -0
- package/dist/elements/widgets/designerView/tools/toolBar/popups/SelectorToolsPopup.d.ts +7 -0
- package/dist/elements/widgets/designerView/tools/toolBar/popups/SelectorToolsPopup.js +23 -0
- package/dist/elements/widgets/designerView/tools/toolBar/popups/designerToolbarPopup.d.ts +8 -0
- package/dist/elements/widgets/designerView/tools/toolBar/popups/designerToolbarPopup.js +41 -0
- package/dist/elements/widgets/treeView/treeViewExtended.js +6 -4
- package/dist/index.d.ts +2 -0
- package/dist/index.js +2 -0
- package/package.json +42 -42
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
|
2
|
+
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
|
3
|
+
<svg width="100%" height="100%" viewBox="0 0 100 100" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" xmlns:serif="http://www.serif.com/" style="fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2;">
|
|
4
|
+
<g transform="matrix(0.922934,0.922934,-0.922934,0.922934,51.9626,-38.7184)">
|
|
5
|
+
<g transform="matrix(0.785714,0,0,1.39286,10.0714,-33.4286)">
|
|
6
|
+
<path d="M61,31.897C61,27.539 54.727,24 47,24C39.273,24 33,27.539 33,31.897L33,44.103C33,48.461 39.273,52 47,52C54.727,52 61,48.461 61,44.103L61,31.897Z"/>
|
|
7
|
+
</g>
|
|
8
|
+
<g transform="matrix(0.928571,0,0,0.587978,2.42857,-3.92236)">
|
|
9
|
+
<path d="M69,58.75C69,56.128 67.652,54 65.992,54L30.008,54C28.348,54 27,56.128 27,58.75L27,68.25C27,70.872 28.348,73 30.008,73L65.992,73C67.652,73 69,70.872 69,68.25L69,58.75Z"/>
|
|
10
|
+
</g>
|
|
11
|
+
<g transform="matrix(1,0,0,1,-1,-24)">
|
|
12
|
+
<rect x="37" y="68" width="22" height="20"/>
|
|
13
|
+
</g>
|
|
14
|
+
<g transform="matrix(-1.04762,-1.63286e-16,8.74748e-17,-0.909091,99.9048,145.818)">
|
|
15
|
+
<path d="M61,90L40,90L45.25,68L55.75,68L61,90Z"/>
|
|
16
|
+
</g>
|
|
17
|
+
<g transform="matrix(-0.52381,-8.16431e-17,6.99798e-17,-0.727273,73.4524,149.455)">
|
|
18
|
+
<path d="M61,90L40,90L45.25,68L55.75,68L61,90Z"/>
|
|
19
|
+
</g>
|
|
20
|
+
</g>
|
|
21
|
+
</svg>
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
|
2
|
+
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
|
3
|
+
<svg width="100%" height="100%" viewBox="0 0 100 100" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" xmlns:serif="http://www.serif.com/" style="fill-rule:evenodd;clip-rule:evenodd;stroke-linecap:square;stroke-miterlimit:2;">
|
|
4
|
+
<path d="M24.465,11.742C31.772,6.852 40.556,4 50,4C75.388,4 96,24.612 96,50C96,59.444 93.148,68.228 88.258,75.535C89.949,77.171 91,79.464 91,82C91,86.967 86.967,91 82,91C79.464,91 77.171,89.949 75.535,88.258C68.228,93.148 59.444,96 50,96C24.612,96 4,75.388 4,50C4,40.556 6.852,31.772 11.742,24.465C10.051,22.829 9,20.536 9,18C9,13.033 13.033,9 18,9C20.536,9 22.829,10.051 24.465,11.742Z" style="fill:none;stroke:black;stroke-width:8px;"/>
|
|
5
|
+
<g>
|
|
6
|
+
<g transform="matrix(0.9,0,0,0.9,-27.9,-30.6)">
|
|
7
|
+
<circle cx="51" cy="54" r="10" style="fill:none;stroke:black;stroke-width:8.89px;"/>
|
|
8
|
+
</g>
|
|
9
|
+
<g transform="matrix(0.9,0,0,0.9,36.1,33.4)">
|
|
10
|
+
<circle cx="51" cy="54" r="10" style="fill:none;stroke:black;stroke-width:8.89px;"/>
|
|
11
|
+
</g>
|
|
12
|
+
</g>
|
|
13
|
+
</svg>
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
|
2
|
+
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
|
3
|
+
<svg width="100%" height="100%" viewBox="0 0 100 100" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" xmlns:serif="http://www.serif.com/" style="fill-rule:evenodd;clip-rule:evenodd;stroke-linecap:square;stroke-miterlimit:1;">
|
|
4
|
+
<g transform="matrix(0.983878,-0.0163912,-0.0163912,0.983336,1.61749,1.64445)">
|
|
5
|
+
<path d="M20,19L80,80" style="fill:none;stroke:black;stroke-width:8.27px;"/>
|
|
6
|
+
</g>
|
|
7
|
+
<g transform="matrix(0.9,0,0,0.9,-32.9,-35.6)">
|
|
8
|
+
<circle cx="51" cy="54" r="10" style="fill:none;stroke:black;stroke-width:8.89px;stroke-miterlimit:2;"/>
|
|
9
|
+
</g>
|
|
10
|
+
<g transform="matrix(0.9,0,0,0.9,41.1,38.4)">
|
|
11
|
+
<circle cx="51" cy="54" r="10" style="fill:none;stroke:black;stroke-width:8.89px;stroke-miterlimit:2;"/>
|
|
12
|
+
</g>
|
|
13
|
+
</svg>
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
|
2
|
+
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
|
3
|
+
<svg width="100%" height="100%" viewBox="0 0 100 100" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" xmlns:serif="http://www.serif.com/" style="fill-rule:evenodd;clip-rule:evenodd;stroke-linecap:square;stroke-miterlimit:2;">
|
|
4
|
+
<g transform="matrix(0.9,0,0,0.9,-32.9,-35.6)">
|
|
5
|
+
<circle cx="51" cy="54" r="10" style="fill:none;stroke:black;stroke-width:8.89px;"/>
|
|
6
|
+
</g>
|
|
7
|
+
<g transform="matrix(0.9,0,0,0.9,3.6,1.4)">
|
|
8
|
+
<circle cx="51" cy="54" r="10" style="fill:none;stroke:black;stroke-width:8.89px;"/>
|
|
9
|
+
</g>
|
|
10
|
+
<g transform="matrix(0.9,0,0,0.9,41.1,-35.6)">
|
|
11
|
+
<circle cx="51" cy="54" r="10" style="fill:none;stroke:black;stroke-width:8.89px;"/>
|
|
12
|
+
</g>
|
|
13
|
+
<g transform="matrix(0.9,0,0,0.9,-32.9,38.4)">
|
|
14
|
+
<circle cx="51" cy="54" r="10" style="fill:none;stroke:black;stroke-width:8.89px;"/>
|
|
15
|
+
</g>
|
|
16
|
+
<g transform="matrix(0.9,0,0,0.9,41.1,38.4)">
|
|
17
|
+
<circle cx="51" cy="54" r="10" style="fill:none;stroke:black;stroke-width:8.89px;"/>
|
|
18
|
+
</g>
|
|
19
|
+
<g transform="matrix(1,0,0,0.933333,1.5,3.33333)">
|
|
20
|
+
<path d="M11.5,20L11.5,80" style="fill:none;stroke:black;stroke-width:8.27px;"/>
|
|
21
|
+
</g>
|
|
22
|
+
<g transform="matrix(0.916667,0,0,1,3.66667,1.5)">
|
|
23
|
+
<path d="M20,11.5L80,11.5" style="fill:none;stroke:black;stroke-width:8.34px;"/>
|
|
24
|
+
</g>
|
|
25
|
+
<path d="M80,20L58.5,41.5" style="fill:none;stroke:black;stroke-width:8px;"/>
|
|
26
|
+
<g transform="matrix(1,0,0,-1,0,100)">
|
|
27
|
+
<path d="M80,20L58.5,41.5" style="fill:none;stroke:black;stroke-width:8px;"/>
|
|
28
|
+
</g>
|
|
29
|
+
<g transform="matrix(0.9,0,0,1,4.5,-1.5)">
|
|
30
|
+
<path d="M80,88.5L20,88.5" style="fill:none;stroke:black;stroke-width:8.41px;"/>
|
|
31
|
+
</g>
|
|
32
|
+
</svg>
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
|
2
|
+
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
|
3
|
+
<svg width="100%" height="100%" viewBox="0 0 100 100" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" xmlns:serif="http://www.serif.com/" style="fill-rule:evenodd;clip-rule:evenodd;stroke-linecap:square;stroke-miterlimit:2;">
|
|
4
|
+
<g transform="matrix(0.9,0,0,0.9,-32.9,-35.6)">
|
|
5
|
+
<circle cx="51" cy="54" r="10" style="fill:none;stroke:black;stroke-width:8.89px;"/>
|
|
6
|
+
</g>
|
|
7
|
+
<g transform="matrix(0.9,0,0,0.9,41.1,-35.6)">
|
|
8
|
+
<circle cx="51" cy="54" r="10" style="fill:none;stroke:black;stroke-width:8.89px;"/>
|
|
9
|
+
</g>
|
|
10
|
+
<g transform="matrix(0.9,0,0,0.9,-32.9,38.4)">
|
|
11
|
+
<circle cx="51" cy="54" r="10" style="fill:none;stroke:black;stroke-width:8.89px;"/>
|
|
12
|
+
</g>
|
|
13
|
+
<g transform="matrix(0.9,0,0,0.9,41.1,38.4)">
|
|
14
|
+
<circle cx="51" cy="54" r="10" style="fill:none;stroke:black;stroke-width:8.89px;"/>
|
|
15
|
+
</g>
|
|
16
|
+
<g transform="matrix(1,0,0,0.933333,1.5,3.33333)">
|
|
17
|
+
<path d="M11.5,20L11.5,80" style="fill:none;stroke:black;stroke-width:8.27px;"/>
|
|
18
|
+
</g>
|
|
19
|
+
<g transform="matrix(0.933333,0,0,1,3.33333,1)">
|
|
20
|
+
<path d="M20,11.5L80,11.5" style="fill:none;stroke:black;stroke-width:8.27px;"/>
|
|
21
|
+
</g>
|
|
22
|
+
<g transform="matrix(1,0,0,0.9,-1.5,4)">
|
|
23
|
+
<path d="M88.5,20L88.5,80" style="fill:none;stroke:black;stroke-width:8.41px;"/>
|
|
24
|
+
</g>
|
|
25
|
+
<g transform="matrix(0.9,0,0,1,5,-1.5)">
|
|
26
|
+
<path d="M80,88.5L20,88.5" style="fill:none;stroke:black;stroke-width:8.41px;"/>
|
|
27
|
+
</g>
|
|
28
|
+
</svg>
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
|
2
|
+
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
|
3
|
+
<svg width="100%" height="100%" viewBox="0 0 100 100" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" xmlns:serif="http://www.serif.com/" style="fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2;">
|
|
4
|
+
<path d="M98.316,17.954C100.561,15.709 100.561,12.064 98.316,9.819L90.181,1.684C87.936,-0.561 84.291,-0.561 82.046,1.684L1.684,82.046C-0.561,84.291 -0.561,87.936 1.684,90.181L9.819,98.316C12.064,100.561 15.709,100.561 17.954,98.316L98.316,17.954ZM85.529,6.961L68.285,24.205L75.795,31.715L93.039,14.471L85.529,6.961Z"/>
|
|
5
|
+
<g transform="matrix(1,0,0,1,-10,7.61803)">
|
|
6
|
+
<path d="M30,9L33.811,15.755L41.413,17.292L36.166,23.004L37.053,30.708L30,27.484L22.947,30.708L23.834,23.004L18.587,17.292L26.189,15.755L30,9Z"/>
|
|
7
|
+
</g>
|
|
8
|
+
<g transform="matrix(0.725528,0,0,0.725528,25.9405,-3.51006)">
|
|
9
|
+
<path d="M30,9L33.811,15.755L41.413,17.292L36.166,23.004L37.053,30.708L30,27.484L22.947,30.708L23.834,23.004L18.587,17.292L26.189,15.755L30,9Z"/>
|
|
10
|
+
</g>
|
|
11
|
+
<g transform="matrix(1.16667,0,0,1.16667,36.8254,49.5)">
|
|
12
|
+
<path d="M30,9L33.811,15.755L41.413,17.292L36.166,23.004L37.053,30.708L30,27.484L22.947,30.708L23.834,23.004L18.587,17.292L26.189,15.755L30,9Z"/>
|
|
13
|
+
</g>
|
|
14
|
+
</svg>
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
|
2
|
+
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
|
3
|
+
<svg width="100%" height="100%" viewBox="0 0 100 100" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" xmlns:serif="http://www.serif.com/" style="fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2;">
|
|
4
|
+
<g transform="matrix(-1,0,0,1,100.188,0)">
|
|
5
|
+
<g transform="matrix(1.45711,1.45711,-1.42796,1.42796,66.0203,-102.988)">
|
|
6
|
+
<rect x="44" y="66" width="6" height="25"/>
|
|
7
|
+
</g>
|
|
8
|
+
<path d="M0.188,45.899L100,-0L54.101,99.812L0.188,45.899L54.101,99.812L40.259,59.741L0.188,45.899Z"/>
|
|
9
|
+
</g>
|
|
10
|
+
</svg>
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
<svg width="500px" height="500px" viewBox="0 0 500 500" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" xmlns:serif="http://www.serif.com/" style="fill-rule:evenodd;clip-rule:evenodd;stroke-linecap:square;stroke-miterlimit:2;">
|
|
2
|
+
|
|
3
|
+
<g>
|
|
4
|
+
<title>Layer 1</title>
|
|
5
|
+
<rect x="60.796" y="59.225" width="380" height="380" stroke-dasharray="80" style="stroke-linecap: round; stroke-miterlimit: 6; stroke-linejoin: round; fill: none; stroke: rgb(0, 0, 0); stroke-width: 50px;"></rect>
|
|
6
|
+
<ellipse style="stroke: rgb(0, 0, 0); fill: rgb(255, 255, 255); stroke-width: 50px;" cx="61.059" cy="58.963" rx="45" ry="45"></ellipse>
|
|
7
|
+
<ellipse style="stroke: rgb(0, 0, 0); fill: rgb(255, 255, 255); stroke-width: 50px;" cx="441.823" cy="440.776" rx="45" ry="45"></ellipse>
|
|
8
|
+
</g>
|
|
9
|
+
</svg>
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
|
2
|
+
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
|
3
|
+
<svg width="100%" height="100%" viewBox="0 0 100 100" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" xmlns:serif="http://www.serif.com/" style="fill-rule:evenodd;clip-rule:evenodd;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:1.5;">
|
|
4
|
+
<g transform="matrix(1.30609,0,0,1.16182,-13.4108,-11.5193)">
|
|
5
|
+
<text x="15px" y="89px" style="font-family:'TimesNewRomanPSMT', 'Times New Roman', serif;font-size:108.892px;">T</text>
|
|
6
|
+
</g>
|
|
7
|
+
<rect x="0" y="0" width="100" height="100" style="fill:none;stroke:black;stroke-width:8px;"/>
|
|
8
|
+
</svg>
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
|
2
|
+
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
|
3
|
+
<svg width="100%" height="100%" viewBox="0 0 100 100" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" xmlns:serif="http://www.serif.com/" style="fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2;">
|
|
4
|
+
<g transform="matrix(1.30609,0,0,1.356,-20.7025,-20.6838)">
|
|
5
|
+
<text x="15px" y="89px" style="font-family:'TimesNewRomanPSMT', 'Times New Roman', serif;font-size:108.892px;">A</text>
|
|
6
|
+
</g>
|
|
7
|
+
</svg>
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
|
2
|
+
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
|
3
|
+
<svg width="100%" height="100%" viewBox="0 0 100 100" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" xmlns:serif="http://www.serif.com/" style="fill-rule:evenodd;clip-rule:evenodd;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:1.5;">
|
|
4
|
+
<g transform="matrix(2.625,0,0,2.625,-38,-90.5)">
|
|
5
|
+
<circle cx="28" cy="48" r="12" style="fill:none;stroke:black;stroke-width:3.05px;"/>
|
|
6
|
+
</g>
|
|
7
|
+
<g transform="matrix(0.69,-0.31,-0.31,0.69,58,58)">
|
|
8
|
+
<path d="M100,100L0,0" style="fill:none;stroke:black;stroke-width:21.05px;"/>
|
|
9
|
+
</g>
|
|
10
|
+
<g transform="matrix(1,0,0,0.763158,0,7.26316)">
|
|
11
|
+
<path d="M35.5,18L35.5,56" style="fill:none;stroke:black;stroke-width:8.99px;"/>
|
|
12
|
+
</g>
|
|
13
|
+
<g transform="matrix(6.12323e-17,1,-0.763158,4.67299e-17,63.7368,4.4474e-16)">
|
|
14
|
+
<path d="M35.5,18L35.5,56" style="fill:none;stroke:black;stroke-width:8.99px;"/>
|
|
15
|
+
</g>
|
|
16
|
+
</svg>
|
package/dist/Constants.d.ts
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
export declare const dragDropFormatNameElementDefinition = "text/json/elementdefintion";
|
|
2
2
|
export declare const dragDropFormatNameBindingObject = "text/json/bindingobject";
|
|
3
|
-
export declare
|
|
3
|
+
export declare var assetsPath: string;
|
package/dist/Constants.js
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
1
|
export const dragDropFormatNameElementDefinition = 'text/json/elementdefintion';
|
|
2
2
|
export const dragDropFormatNameBindingObject = 'text/json/bindingobject';
|
|
3
|
-
export const assetsPath = './node_modules/@node-projects/web-component-designer/assets/';
|
|
3
|
+
//export const assetsPath = './node_modules/@node-projects/web-component-designer/assets/';
|
|
4
|
+
let imporUrl = new URL((import.meta.url));
|
|
5
|
+
export var assetsPath = imporUrl.origin + imporUrl.pathname.split('/').slice(0, -1).join('/') + '/../assets/';
|
|
@@ -56,6 +56,13 @@ import { PathContextMenu } from '../widgets/designerView/extensions/contextMenu/
|
|
|
56
56
|
import { SeperatorContextMenu } from '../widgets/designerView/extensions/contextMenu/SeperatorContextMenu.js';
|
|
57
57
|
import { ZoomToElementContextMenu } from '../widgets/designerView/extensions/contextMenu/ZoomToElementContextMenu.js';
|
|
58
58
|
import { RotateLeftAndRight } from '../widgets/designerView/extensions/contextMenu/RotateLeftAndRightContextMenu.js';
|
|
59
|
+
import { SelectAllChildrenContextMenu } from '../widgets/designerView/extensions/contextMenu/SelectAllChildrenContextMenu';
|
|
60
|
+
import { PointerToolButtonProvider } from '../widgets/designerView/tools/toolBar/buttons/PointerToolButtonProvider.js';
|
|
61
|
+
import { SeperatorToolProvider } from '../widgets/designerView/tools/toolBar/buttons/SeperatorToolProvider.js';
|
|
62
|
+
import { ZoomToolButtonProvider } from '../widgets/designerView/tools/toolBar/buttons/ZoomToolButtonProvider.js';
|
|
63
|
+
import { DrawToolButtonProvider } from '../widgets/designerView/tools/toolBar/buttons/DrawToolButtonProvider.js';
|
|
64
|
+
import { TextToolButtonProvider } from '../widgets/designerView/tools/toolBar/buttons/TextToolButtonProvider.js';
|
|
65
|
+
import { SelectorToolButtonProvider } from '../widgets/designerView/tools/toolBar/buttons/SelectorToolButtonProvider.js';
|
|
59
66
|
export function createDefaultServiceContainer() {
|
|
60
67
|
let serviceContainer = new ServiceContainer();
|
|
61
68
|
serviceContainer.register("propertyService", new PolymerPropertiesService());
|
|
@@ -125,6 +132,7 @@ export function createDefaultServiceContainer() {
|
|
|
125
132
|
//new CursorLinePointerExtensionProvider()
|
|
126
133
|
);
|
|
127
134
|
serviceContainer.designViewConfigButtons.push(new ButtonSeperatorProvider(20), new GridExtensionDesignViewConfigButtons());
|
|
135
|
+
serviceContainer.designViewToolbarButtons.push(new PointerToolButtonProvider(), new SeperatorToolProvider(22), new SelectorToolButtonProvider(), new SeperatorToolProvider(22), new ZoomToolButtonProvider(), new SeperatorToolProvider(22), new DrawToolButtonProvider(), new SeperatorToolProvider(5), new TextToolButtonProvider());
|
|
128
136
|
serviceContainer.designerContextMenuExtensions = [
|
|
129
137
|
new CopyPasteContextMenu(),
|
|
130
138
|
new SeperatorContextMenu(),
|
|
@@ -137,6 +145,8 @@ export function createDefaultServiceContainer() {
|
|
|
137
145
|
new PathContextMenu(),
|
|
138
146
|
new RectContextMenu(),
|
|
139
147
|
new SeperatorContextMenu(),
|
|
148
|
+
new SelectAllChildrenContextMenu(),
|
|
149
|
+
new SeperatorContextMenu(),
|
|
140
150
|
new ItemsBelowContextMenu(),
|
|
141
151
|
];
|
|
142
152
|
return serviceContainer;
|
|
@@ -10,7 +10,10 @@ export declare class GlobalContext {
|
|
|
10
10
|
constructor(serviceContainer: ServiceContainer);
|
|
11
11
|
set tool(tool: ITool);
|
|
12
12
|
get tool(): ITool;
|
|
13
|
-
readonly onToolChanged: TypedEvent<PropertyChangedArgs<
|
|
13
|
+
readonly onToolChanged: TypedEvent<PropertyChangedArgs<{
|
|
14
|
+
name: string;
|
|
15
|
+
tool: ITool;
|
|
16
|
+
}>>;
|
|
14
17
|
finishedWithTool: (tool: ITool) => void;
|
|
15
18
|
set strokeColor(strokeColor: string);
|
|
16
19
|
get strokeColor(): string;
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
//TODO: global conext not yet used.
|
|
2
1
|
//Service container should not be something with changeing information, so global context is for tool and color (and maybe more)
|
|
3
2
|
import { PropertyChangedArgs, TypedEvent } from "@node-projects/base-custom-webcomponent";
|
|
4
3
|
export class GlobalContext {
|
|
@@ -13,10 +12,16 @@ export class GlobalContext {
|
|
|
13
12
|
set tool(tool) {
|
|
14
13
|
if (this._tool !== tool) {
|
|
15
14
|
const oldTool = this._tool;
|
|
16
|
-
if (oldTool)
|
|
15
|
+
if (oldTool) {
|
|
17
16
|
oldTool.dispose();
|
|
17
|
+
}
|
|
18
18
|
this._tool = tool;
|
|
19
|
-
|
|
19
|
+
let toolName = null;
|
|
20
|
+
for (let t of this._serviceContainer.designerTools) {
|
|
21
|
+
if (t[1] == tool)
|
|
22
|
+
toolName = t[0];
|
|
23
|
+
}
|
|
24
|
+
this.onToolChanged.emit(new PropertyChangedArgs({ name: toolName, tool: tool }, { name: null, tool: oldTool }));
|
|
20
25
|
if (this._tool)
|
|
21
26
|
this._tool.activated(this._serviceContainer);
|
|
22
27
|
}
|
|
@@ -26,6 +26,7 @@ import { IDesignViewConfigButtonsProvider } from "../widgets/designerView/IDesig
|
|
|
26
26
|
import { IDemoProviderService } from "./demoProviderService/IDemoProviderService.js";
|
|
27
27
|
import { IBindableObjectsService } from "./bindableObjectsService/IBindableObjectsService.js";
|
|
28
28
|
import { IBindableObjectDragDropService } from "./bindableObjectsService/IBindableObjectDragDropService.js";
|
|
29
|
+
import { IDesignViewToolbarButtonProvider } from "../widgets/designerView/tools/toolBar/IDesignViewToolbarButtonProvider.js";
|
|
29
30
|
interface ServiceNameMap {
|
|
30
31
|
"propertyService": IPropertiesService;
|
|
31
32
|
"containerService": IPlacementService;
|
|
@@ -53,6 +54,7 @@ export declare class ServiceContainer extends BaseServiceContainer<ServiceNameMa
|
|
|
53
54
|
readonly designerExtensions: Map<(ExtensionType | string), IDesignerExtensionProvider[]>;
|
|
54
55
|
removeDesignerExtensionOfType(container: (ExtensionType | string), lambda: new (...args: any[]) => IDesignerExtensionProvider): void;
|
|
55
56
|
readonly designViewConfigButtons: IDesignViewConfigButtonsProvider[];
|
|
57
|
+
readonly designViewToolbarButtons: IDesignViewToolbarButtonProvider[];
|
|
56
58
|
readonly designerPointerExtensions: IDesignerPointerExtensionProvider[];
|
|
57
59
|
designerContextMenuExtensions: IContextMenuExtension[];
|
|
58
60
|
readonly globalContext: GlobalContext;
|
|
@@ -345,7 +345,7 @@ export class DesignerCanvas extends BaseCustomWebComponentLazyAppend {
|
|
|
345
345
|
this.extensionManager = new ExtensionManager(this);
|
|
346
346
|
this.overlayLayer = new OverlayLayerView(serviceContainer);
|
|
347
347
|
this.overlayLayer.style.pointerEvents = 'none';
|
|
348
|
-
this.
|
|
348
|
+
this.clickOverlay.appendChild(this.overlayLayer);
|
|
349
349
|
this.snapLines = new Snaplines(this.overlayLayer);
|
|
350
350
|
this.snapLines.initialize(this.rootDesignItem);
|
|
351
351
|
if (this.serviceContainer.designerPointerExtensions)
|
|
@@ -393,6 +393,8 @@ export class DesignerCanvas extends BaseCustomWebComponentLazyAppend {
|
|
|
393
393
|
this._scaleFactor = this._zoomFactor;
|
|
394
394
|
this._canvasContainer.style.transform = 'scale(' + this._zoomFactor + ') translate(' + (isNaN(this._canvasOffset.x) ? '0' : this._canvasOffset.x) + 'px, ' + (isNaN(this._canvasOffset.y) ? '0' : this._canvasOffset.y) + 'px)';
|
|
395
395
|
this._canvasContainer.style.transformOrigin = '0 0';
|
|
396
|
+
this.overlayLayer.style.transform = this._canvasContainer.style.transform;
|
|
397
|
+
this.overlayLayer.style.transformOrigin = '0 0';
|
|
396
398
|
this.snapLines.clearSnaplines();
|
|
397
399
|
}
|
|
398
400
|
setDesignItems(designItems) {
|
|
@@ -17,9 +17,11 @@ export declare class DesignerView extends BaseCustomWebComponentConstructorAppen
|
|
|
17
17
|
get designerCanvas(): DesignerCanvas;
|
|
18
18
|
private _zoomInput;
|
|
19
19
|
private _lowertoolbar;
|
|
20
|
+
private _toolbar;
|
|
20
21
|
static readonly style: CSSStyleSheet;
|
|
21
22
|
static readonly template: HTMLTemplateElement;
|
|
22
23
|
constructor();
|
|
24
|
+
ready(): Promise<void>;
|
|
23
25
|
zoomReset(): void;
|
|
24
26
|
zoomToFit(): void;
|
|
25
27
|
private _onScrollbar;
|
|
@@ -25,6 +25,7 @@ export class DesignerView extends BaseCustomWebComponentConstructorAppend {
|
|
|
25
25
|
}
|
|
26
26
|
_zoomInput;
|
|
27
27
|
_lowertoolbar;
|
|
28
|
+
_toolbar;
|
|
28
29
|
static style = css `
|
|
29
30
|
:host {
|
|
30
31
|
display: block;
|
|
@@ -77,8 +78,16 @@ export class DesignerView extends BaseCustomWebComponentConstructorAppend {
|
|
|
77
78
|
height: 100%;
|
|
78
79
|
}
|
|
79
80
|
#canvas {
|
|
80
|
-
|
|
81
|
+
left: 24px;
|
|
82
|
+
width: calc(100% - 24px - 16px);
|
|
83
|
+
height: calc(100% - 32px);
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
#tool-bar{
|
|
87
|
+
width: 24px;
|
|
81
88
|
height: calc(100% - 32px);
|
|
89
|
+
position: absolute;
|
|
90
|
+
background-color: lightgray;
|
|
82
91
|
}
|
|
83
92
|
|
|
84
93
|
.zoom-in {
|
|
@@ -120,7 +129,9 @@ export class DesignerView extends BaseCustomWebComponentConstructorAppend {
|
|
|
120
129
|
static template = html `
|
|
121
130
|
<div id="outer">
|
|
122
131
|
<node-projects-plain-scrollbar id="s-hor" value="0.5" class="bottom-scroll"></node-projects-plain-scrollbar>
|
|
123
|
-
<node-projects-plain-scrollbar id="s-vert" value="0.5" orientation="vertical" class="right-scroll"
|
|
132
|
+
<node-projects-plain-scrollbar id="s-vert" value="0.5" orientation="vertical" class="right-scroll">
|
|
133
|
+
</node-projects-plain-scrollbar>
|
|
134
|
+
<node-projects-designer-toolbar id="tool-bar" class="tool-bar"></node-projects-designer-toolbar>
|
|
124
135
|
<div class="bottom-right"></div>
|
|
125
136
|
<div id="lowertoolbar">
|
|
126
137
|
<input id="zoomInput" type="text" value="100%">
|
|
@@ -199,6 +210,10 @@ export class DesignerView extends BaseCustomWebComponentConstructorAppend {
|
|
|
199
210
|
this._sVert.addEventListener('scrollbar-input', (e) => this._onScrollbar(e));
|
|
200
211
|
this._sHor.addEventListener('scrollbar-input', (e) => this._onScrollbar(e));
|
|
201
212
|
}
|
|
213
|
+
async ready() {
|
|
214
|
+
this._toolbar = await this._getDomElement('tool-bar');
|
|
215
|
+
this._toolbar.initialize(this.serviceContainer, this);
|
|
216
|
+
}
|
|
202
217
|
zoomReset() {
|
|
203
218
|
this._designerCanvas.canvasOffset = { x: 0, y: 0 };
|
|
204
219
|
this._designerCanvas.zoomFactor = 1;
|
|
@@ -265,6 +280,8 @@ export class DesignerView extends BaseCustomWebComponentConstructorAppend {
|
|
|
265
280
|
else {
|
|
266
281
|
this._sVert.value += event.deltaY / 10000;
|
|
267
282
|
this._onScrollbar(null);
|
|
283
|
+
this._sHor.value += event.deltaX / 10000;
|
|
284
|
+
this._onScrollbar(null);
|
|
268
285
|
}
|
|
269
286
|
}
|
|
270
287
|
get designerWidth() {
|
package/dist/elements/widgets/designerView/extensions/contextMenu/SelectAllChildrenContextMenu.d.ts
ADDED
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { IContextMenuItem } from "../../../../helper/contextMenu/IContextmenuItem";
|
|
2
|
+
import { IDesignItem } from "../../../../item/IDesignItem";
|
|
3
|
+
import { IDesignerCanvas } from "../../IDesignerCanvas";
|
|
4
|
+
import { ContextmenuInitiator, IContextMenuExtension } from "./IContextMenuExtension";
|
|
5
|
+
export declare class SelectAllChildrenContextMenu implements IContextMenuExtension {
|
|
6
|
+
shouldProvideContextmenu(event: MouseEvent, designerView: IDesignerCanvas, designItem: IDesignItem, initiator: ContextmenuInitiator): boolean;
|
|
7
|
+
provideContextMenuItems(event: MouseEvent, designerCanvas: IDesignerCanvas, designItem: IDesignItem): IContextMenuItem[];
|
|
8
|
+
}
|
package/dist/elements/widgets/designerView/extensions/contextMenu/SelectAllChildrenContextMenu.js
ADDED
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export class SelectAllChildrenContextMenu {
|
|
2
|
+
shouldProvideContextmenu(event, designerView, designItem, initiator) {
|
|
3
|
+
return designItem.hasChildren;
|
|
4
|
+
}
|
|
5
|
+
provideContextMenuItems(event, designerCanvas, designItem) {
|
|
6
|
+
return [{
|
|
7
|
+
title: 'Select all Children', action: () => {
|
|
8
|
+
designerCanvas.instanceServiceContainer.selectionService.setSelectedElements(Array.from(designItem.children()));
|
|
9
|
+
}
|
|
10
|
+
}];
|
|
11
|
+
}
|
|
12
|
+
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { IElementDefinition } from '../../../services/elementsService/IElementDefinition';
|
|
2
|
+
import { ServiceContainer } from '../../../services/ServiceContainer.js';
|
|
3
|
+
import { IDesignerCanvas } from '../IDesignerCanvas';
|
|
4
|
+
import { ITool } from './ITool';
|
|
5
|
+
export declare class DrawElementTool implements ITool {
|
|
6
|
+
private _elementDefinition;
|
|
7
|
+
private _createdItem;
|
|
8
|
+
private _startPosition;
|
|
9
|
+
readonly cursor = "crosshair";
|
|
10
|
+
private _rect;
|
|
11
|
+
constructor(elementDefinition: IElementDefinition);
|
|
12
|
+
activated(serviceContainer: ServiceContainer): void;
|
|
13
|
+
dispose(): void;
|
|
14
|
+
pointerEventHandler(designerView: IDesignerCanvas, event: PointerEvent, currentElement: Element): void;
|
|
15
|
+
keyboardEventHandler(designerCanvas: IDesignerCanvas, event: KeyboardEvent, currentElement: Element): void;
|
|
16
|
+
private _onPointerDown;
|
|
17
|
+
private _onPointerMove;
|
|
18
|
+
private _onPointerUp;
|
|
19
|
+
}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
import { EventNames } from '../../../../enums/EventNames';
|
|
2
|
+
import { InsertAction } from '../../../services/undoService/transactionItems/InsertAction';
|
|
3
|
+
import { OverlayLayer } from '../extensions/OverlayLayer.js';
|
|
4
|
+
export class DrawElementTool {
|
|
5
|
+
_elementDefinition;
|
|
6
|
+
_createdItem;
|
|
7
|
+
_startPosition;
|
|
8
|
+
cursor = 'crosshair';
|
|
9
|
+
_rect;
|
|
10
|
+
constructor(elementDefinition) {
|
|
11
|
+
this._elementDefinition = elementDefinition;
|
|
12
|
+
}
|
|
13
|
+
activated(serviceContainer) {
|
|
14
|
+
}
|
|
15
|
+
dispose() {
|
|
16
|
+
if (this._createdItem)
|
|
17
|
+
this._createdItem.element.parentElement.removeChild(this._createdItem.element);
|
|
18
|
+
}
|
|
19
|
+
pointerEventHandler(designerView, event, currentElement) {
|
|
20
|
+
switch (event.type) {
|
|
21
|
+
case EventNames.PointerDown:
|
|
22
|
+
this._onPointerDown(designerView, event);
|
|
23
|
+
break;
|
|
24
|
+
case EventNames.PointerMove:
|
|
25
|
+
this._onPointerMove(designerView, event);
|
|
26
|
+
break;
|
|
27
|
+
case EventNames.PointerUp:
|
|
28
|
+
this._onPointerUp(designerView, event);
|
|
29
|
+
break;
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
keyboardEventHandler(designerCanvas, event, currentElement) { }
|
|
33
|
+
async _onPointerDown(designerView, event) {
|
|
34
|
+
event.preventDefault();
|
|
35
|
+
this._startPosition = { x: event.x, y: event.y };
|
|
36
|
+
this._createdItem = await designerView.serviceContainer.forSomeServicesTillResult("instanceService", (service) => service.getElement(this._elementDefinition, designerView.serviceContainer, designerView.instanceServiceContainer));
|
|
37
|
+
const targetRect = event.target.getBoundingClientRect();
|
|
38
|
+
this._createdItem.setStyle('position', 'absolute');
|
|
39
|
+
this._createdItem.setStyle('left', event.offsetX + targetRect.left - designerView.containerBoundingRect.x + 'px');
|
|
40
|
+
this._createdItem.setStyle('top', event.offsetY + targetRect.top - designerView.containerBoundingRect.y + 'px');
|
|
41
|
+
this._createdItem.setStyle('width', '0');
|
|
42
|
+
this._createdItem.setStyle('height', '0');
|
|
43
|
+
this._createdItem.element.style.overflow = 'hidden';
|
|
44
|
+
//TODO: add items as last, with all properties set
|
|
45
|
+
//draw via containerService??? how to draw into a grid, a stackpanel???
|
|
46
|
+
designerView.instanceServiceContainer.undoService.execute(new InsertAction(designerView.rootDesignItem, designerView.rootDesignItem.childCount, this._createdItem));
|
|
47
|
+
designerView.instanceServiceContainer.selectionService.clearSelectedElements();
|
|
48
|
+
}
|
|
49
|
+
async _onPointerMove(designerCanvas, event) {
|
|
50
|
+
if (this._createdItem) {
|
|
51
|
+
if (!this._rect) {
|
|
52
|
+
designerCanvas.rootDesignItem.element.appendChild(this._createdItem.element);
|
|
53
|
+
this._rect = document.createElementNS("http://www.w3.org/2000/svg", "rect");
|
|
54
|
+
designerCanvas.overlayLayer.addOverlay(this._rect, OverlayLayer.Foregorund);
|
|
55
|
+
this._rect.setAttribute('class', 'svg-draw-new-element');
|
|
56
|
+
this._rect.setAttribute('x', (this._startPosition.x - designerCanvas.containerBoundingRect.x));
|
|
57
|
+
this._rect.setAttribute('y', (this._startPosition.y - designerCanvas.containerBoundingRect.y));
|
|
58
|
+
}
|
|
59
|
+
const w = event.x - this._startPosition.x;
|
|
60
|
+
const h = event.y - this._startPosition.y;
|
|
61
|
+
if (w >= 0) {
|
|
62
|
+
this._rect.setAttribute('width', w);
|
|
63
|
+
this._createdItem.setStyle('width', w + 'px');
|
|
64
|
+
}
|
|
65
|
+
if (h >= 0) {
|
|
66
|
+
this._rect.setAttribute('height', h);
|
|
67
|
+
this._createdItem.setStyle('height', h + 'px');
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
async _onPointerUp(designerView, event) {
|
|
72
|
+
designerView.overlayLayer.removeOverlay(this._rect);
|
|
73
|
+
designerView.instanceServiceContainer.selectionService.setSelectedElements([this._createdItem]);
|
|
74
|
+
this._startPosition = null;
|
|
75
|
+
this._rect = null;
|
|
76
|
+
this._createdItem = null;
|
|
77
|
+
designerView.serviceContainer.globalContext.finishedWithTool(this);
|
|
78
|
+
}
|
|
79
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { IDesignerCanvas } from '../IDesignerCanvas';
|
|
2
|
+
import { ITool } from './ITool';
|
|
3
|
+
import { ServiceContainer } from '../../../services/ServiceContainer.js';
|
|
4
|
+
export declare class DrawEllipsisTool implements ITool {
|
|
5
|
+
readonly cursor = "crosshair";
|
|
6
|
+
private _path;
|
|
7
|
+
private _startPoint;
|
|
8
|
+
private _radius;
|
|
9
|
+
private _cx;
|
|
10
|
+
private _cy;
|
|
11
|
+
constructor();
|
|
12
|
+
activated(serviceContainer: ServiceContainer): void;
|
|
13
|
+
dispose(): void;
|
|
14
|
+
pointerEventHandler(designerCanvas: IDesignerCanvas, event: PointerEvent, currentElement: Element): void;
|
|
15
|
+
keyboardEventHandler(designerCanvas: IDesignerCanvas, event: KeyboardEvent, currentElement: Element): void;
|
|
16
|
+
}
|