summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRMZeroFour <ritobroto04@gmail.com>2024-03-26 21:41:59 +0530
committerHeiko Tietze <heiko.tietze@documentfoundation.org>2024-04-08 09:54:55 +0200
commitafb18ac0628c54fdffc1ee5b55db6110c20872cd (patch)
treee7a54d2f03e2c7a088cf6f4f92f1a1034b6f388f
parentf1697d2b1e6b3ac63946070cc720234dc68efbe9 (diff)
tdf#50998 tdf#87892 Add sinusoid shape
In response to #50998 (as well as #87892 indirectly), regarding adding sinusoidal and coil-like shapes to the shape gallery in LibreOffice, this commit adds a sinusoid shape to the gallery. The shape is still incomplete for release, at least lacking icons for the sidebar. Further details posted on the Bugzilla thread for issue #50998. PS-2: Removed the previously added flag shape. PS-4: Moved sinusoid to the end in a new subgroup. Change-Id: Ie0f6e3948b6dce98dc2b4f87289cfd37f2d16911 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165353 Tested-by: Jenkins Reviewed-by: Regina Henschel <rb.henschel@t-online.de> Reviewed-by: Heiko Tietze <heiko.tietze@documentfoundation.org>
-rw-r--r--chart2/uiconfig/toolbar/basicshapes.xml2
-rw-r--r--icon-themes/colibre/cmd/32/basicshapes.sinusoid.pngbin0 -> 1253 bytes
-rw-r--r--icon-themes/colibre/cmd/lc_basicshapes.sinusoid.pngbin0 -> 910 bytes
-rw-r--r--icon-themes/colibre/cmd/sc_basicshapes.sinusoid.pngbin0 -> 571 bytes
-rw-r--r--icon-themes/colibre_dark/cmd/32/basicshapes.sinusoid.pngbin0 -> 778 bytes
-rw-r--r--icon-themes/colibre_dark/cmd/lc_basicshapes.sinusoid.pngbin0 -> 553 bytes
-rw-r--r--icon-themes/colibre_dark/cmd/sc_basicshapes.sinusoid.pngbin0 -> 367 bytes
-rw-r--r--icon-themes/colibre_dark_svg/cmd/32/basicshapes.sinusoid.svg3
-rw-r--r--icon-themes/colibre_svg/cmd/32/basicshapes.sinusoid.svg3
-rw-r--r--include/svx/msdffdef.hxx1
-rw-r--r--officecfg/registry/data/org/openoffice/Office/UI/GenericCommands.xcu8
-rw-r--r--oox/source/export/shapes.cxx5
-rw-r--r--reportdesign/uiconfig/dbreport/toolbar/basicshapes.xml2
-rw-r--r--sc/uiconfig/scalc/toolbar/basicshapes.xml2
-rw-r--r--sd/uiconfig/sdraw/toolbar/basicshapes.xml2
-rw-r--r--sd/uiconfig/simpress/toolbar/basicshapes.xml2
-rw-r--r--svx/source/customshapes/EnhancedCustomShapeGeometry.cxx57
-rw-r--r--svx/source/customshapes/EnhancedCustomShapeTypeNames.cxx6
-rw-r--r--svx/source/sidebar/shapes/ShapesUtil.cxx3
-rw-r--r--sw/uiconfig/sglobal/toolbar/basicshapes.xml2
-rw-r--r--sw/uiconfig/sweb/toolbar/basicshapes.xml2
-rw-r--r--sw/uiconfig/swform/toolbar/basicshapes.xml2
-rw-r--r--sw/uiconfig/swreport/toolbar/basicshapes.xml2
-rw-r--r--sw/uiconfig/swriter/toolbar/basicshapes.xml2
-rw-r--r--sw/uiconfig/swxform/toolbar/basicshapes.xml2
25 files changed, 103 insertions, 5 deletions
diff --git a/chart2/uiconfig/toolbar/basicshapes.xml b/chart2/uiconfig/toolbar/basicshapes.xml
index 148245f66672..a0debaab8fd5 100644
--- a/chart2/uiconfig/toolbar/basicshapes.xml
+++ b/chart2/uiconfig/toolbar/basicshapes.xml
@@ -45,4 +45,6 @@
<toolbar:toolbaritem xlink:href=".uno:BasicShapes.cross"/>
<toolbar:toolbaritem xlink:href=".uno:BasicShapes.frame"/>
<toolbar:toolbaritem xlink:href=".uno:BasicShapes.ring"/>
+ <toolbar:toolbarbreak/>
+ <toolbar:toolbaritem xlink:href=".uno:BasicShapes.sinusoid"/>
</toolbar:toolbar>
diff --git a/icon-themes/colibre/cmd/32/basicshapes.sinusoid.png b/icon-themes/colibre/cmd/32/basicshapes.sinusoid.png
new file mode 100644
index 000000000000..9e418857c3b5
--- /dev/null
+++ b/icon-themes/colibre/cmd/32/basicshapes.sinusoid.png
Binary files differ
diff --git a/icon-themes/colibre/cmd/lc_basicshapes.sinusoid.png b/icon-themes/colibre/cmd/lc_basicshapes.sinusoid.png
new file mode 100644
index 000000000000..7cf307a3d500
--- /dev/null
+++ b/icon-themes/colibre/cmd/lc_basicshapes.sinusoid.png
Binary files differ
diff --git a/icon-themes/colibre/cmd/sc_basicshapes.sinusoid.png b/icon-themes/colibre/cmd/sc_basicshapes.sinusoid.png
new file mode 100644
index 000000000000..c919cc3beb42
--- /dev/null
+++ b/icon-themes/colibre/cmd/sc_basicshapes.sinusoid.png
Binary files differ
diff --git a/icon-themes/colibre_dark/cmd/32/basicshapes.sinusoid.png b/icon-themes/colibre_dark/cmd/32/basicshapes.sinusoid.png
new file mode 100644
index 000000000000..66f701ba1dc9
--- /dev/null
+++ b/icon-themes/colibre_dark/cmd/32/basicshapes.sinusoid.png
Binary files differ
diff --git a/icon-themes/colibre_dark/cmd/lc_basicshapes.sinusoid.png b/icon-themes/colibre_dark/cmd/lc_basicshapes.sinusoid.png
new file mode 100644
index 000000000000..4f49fa91fb65
--- /dev/null
+++ b/icon-themes/colibre_dark/cmd/lc_basicshapes.sinusoid.png
Binary files differ
diff --git a/icon-themes/colibre_dark/cmd/sc_basicshapes.sinusoid.png b/icon-themes/colibre_dark/cmd/sc_basicshapes.sinusoid.png
new file mode 100644
index 000000000000..c3f64f3b0d87
--- /dev/null
+++ b/icon-themes/colibre_dark/cmd/sc_basicshapes.sinusoid.png
Binary files differ
diff --git a/icon-themes/colibre_dark_svg/cmd/32/basicshapes.sinusoid.svg b/icon-themes/colibre_dark_svg/cmd/32/basicshapes.sinusoid.svg
new file mode 100644
index 000000000000..b0bff6dd1235
--- /dev/null
+++ b/icon-themes/colibre_dark_svg/cmd/32/basicshapes.sinusoid.svg
@@ -0,0 +1,3 @@
+<svg width="32" height="32" xmlns="http://www.w3.org/2000/svg">
+ <path d="m3.852 16.293 2.04-.041c.106-.603.43-2.262.699-3.392.44-1.857 1.12-4.083 1.887-5.394.383-.656.78-1.039 1.023-1.143.243-.105.398-.137.865.268.934.81 2.518 3.735 4.231 9.77 1.762 6.203 3.31 9.425 5.113 10.895.902.735 1.98.925 2.879.572.898-.353 1.567-1.096 2.139-1.965 1.145-1.738 1.947-4.105 2.501-6.073.463-1.643.69-2.806.771-3.215h-2.076c-.128.604-.31 1.437-.614 2.519-.522 1.854-1.318 4.074-2.187 5.394-.434.66-.878 1.054-1.195 1.179-.317.124-.55.143-1.054-.268-1.01-.823-2.646-3.725-4.357-9.753-1.76-6.196-3.23-9.394-4.94-10.877a3.102 3.102 0 0 0-1.384-.715 2.314 2.314 0 0 0-1.4.125c-.866.374-1.472 1.146-1.982 2.019-1.02 1.746-1.69 4.107-2.155 6.073-.082.344-.153.65-.22.964z" style="fill:#fff;fill-opacity:0;stroke:#fff;stroke-width:1;stroke-dasharray:none;stroke-opacity:1" fill="none"/>
+</svg>
diff --git a/icon-themes/colibre_svg/cmd/32/basicshapes.sinusoid.svg b/icon-themes/colibre_svg/cmd/32/basicshapes.sinusoid.svg
new file mode 100644
index 000000000000..4567c9b427d2
--- /dev/null
+++ b/icon-themes/colibre_svg/cmd/32/basicshapes.sinusoid.svg
@@ -0,0 +1,3 @@
+<svg width="32" height="32" xmlns="http://www.w3.org/2000/svg">
+ <path d="m3.852 16.293 2.04-.041c.106-.603.43-2.262.699-3.392.44-1.857 1.12-4.083 1.887-5.394.383-.656.78-1.039 1.023-1.143.243-.105.398-.137.865.268.934.81 2.518 3.735 4.231 9.77 1.762 6.203 3.31 9.425 5.113 10.895.902.735 1.98.925 2.879.572.898-.353 1.567-1.096 2.139-1.965 1.145-1.738 1.947-4.105 2.501-6.073.463-1.643.69-2.806.771-3.215h-2.076c-.128.604-.31 1.437-.614 2.519-.522 1.854-1.318 4.074-2.187 5.394-.434.66-.878 1.054-1.195 1.179-.317.124-.55.143-1.054-.268-1.01-.823-2.646-3.725-4.357-9.753-1.76-6.196-3.23-9.394-4.94-10.877a3.102 3.102 0 0 0-1.384-.715 2.314 2.314 0 0 0-1.4.125c-.866.374-1.472 1.146-1.982 2.019-1.02 1.746-1.69 4.107-2.155 6.073-.082.344-.153.65-.22.964z" style="fill:#fff;fill-opacity:1;stroke:#393937;stroke-width:1;stroke-dasharray:none;stroke-opacity:1"/>
+</svg>
diff --git a/include/svx/msdffdef.hxx b/include/svx/msdffdef.hxx
index 373974e67b31..de3b2e8c6c26 100644
--- a/include/svx/msdffdef.hxx
+++ b/include/svx/msdffdef.hxx
@@ -478,6 +478,7 @@ enum MSO_SPT: sal_Int32 {
mso_sptTextBox = 202,
//for pptx shape which doesn't exist in ppt
mso_sptTearDrop = 203,
+ mso_sptSinusoid = 204,
mso_sptMax = 0x0FFF,
mso_sptNil = mso_sptMax
};
diff --git a/officecfg/registry/data/org/openoffice/Office/UI/GenericCommands.xcu b/officecfg/registry/data/org/openoffice/Office/UI/GenericCommands.xcu
index 5b438e01ffe1..c8ba600372b4 100644
--- a/officecfg/registry/data/org/openoffice/Office/UI/GenericCommands.xcu
+++ b/officecfg/registry/data/org/openoffice/Office/UI/GenericCommands.xcu
@@ -391,6 +391,14 @@ bit 3 (0x8): #define UICOMMANDDESCRIPTION_PROPERTIES_TOGGLEBUTTON 8
<value>1</value>
</prop>
</node>
+ <node oor:name=".uno:BasicShapes.sinusoid" oor:op="replace">
+ <prop oor:name="Label" oor:type="xs:string">
+ <value xml:lang="en-US">Sinusoid</value>
+ </prop>
+ <prop oor:name="Properties" oor:type="xs:int">
+ <value>1</value>
+ </prop>
+ </node>
<node oor:name=".uno:BasicShapes.can" oor:op="replace">
<prop oor:name="Label" oor:type="xs:string">
<value xml:lang="en-US">Cylinder</value>
diff --git a/oox/source/export/shapes.cxx b/oox/source/export/shapes.cxx
index 4151c61798f2..25f4aa83a65b 100644
--- a/oox/source/export/shapes.cxx
+++ b/oox/source/export/shapes.cxx
@@ -621,12 +621,13 @@ constexpr frozen::set<std::u16string_view, 57> constDenySet(
u"flowchart-display"
});
-constexpr frozen::set<std::u16string_view, 4> constAllowSet(
+constexpr frozen::set<std::u16string_view, 5> constAllowSet(
{
u"heart",
u"puzzle",
u"col-60da8460",
- u"col-502ad400"
+ u"col-502ad400",
+ u"sinusoid"
});
} // end anonymous namespace
diff --git a/reportdesign/uiconfig/dbreport/toolbar/basicshapes.xml b/reportdesign/uiconfig/dbreport/toolbar/basicshapes.xml
index 4bd60977eb41..ee50dd9255a3 100644
--- a/reportdesign/uiconfig/dbreport/toolbar/basicshapes.xml
+++ b/reportdesign/uiconfig/dbreport/toolbar/basicshapes.xml
@@ -43,4 +43,6 @@
<toolbar:toolbaritem xlink:href=".uno:BasicShapes.cube"/>
<toolbar:toolbaritem xlink:href=".uno:BasicShapes.paper"/>
<toolbar:toolbaritem xlink:href=".uno:BasicShapes.frame"/>
+ <toolbar:toolbarbreak/>
+ <toolbar:toolbaritem xlink:href=".uno:BasicShapes.sinusoid"/>
</toolbar:toolbar> \ No newline at end of file
diff --git a/sc/uiconfig/scalc/toolbar/basicshapes.xml b/sc/uiconfig/scalc/toolbar/basicshapes.xml
index 148245f66672..a0debaab8fd5 100644
--- a/sc/uiconfig/scalc/toolbar/basicshapes.xml
+++ b/sc/uiconfig/scalc/toolbar/basicshapes.xml
@@ -45,4 +45,6 @@
<toolbar:toolbaritem xlink:href=".uno:BasicShapes.cross"/>
<toolbar:toolbaritem xlink:href=".uno:BasicShapes.frame"/>
<toolbar:toolbaritem xlink:href=".uno:BasicShapes.ring"/>
+ <toolbar:toolbarbreak/>
+ <toolbar:toolbaritem xlink:href=".uno:BasicShapes.sinusoid"/>
</toolbar:toolbar>
diff --git a/sd/uiconfig/sdraw/toolbar/basicshapes.xml b/sd/uiconfig/sdraw/toolbar/basicshapes.xml
index 148245f66672..a0debaab8fd5 100644
--- a/sd/uiconfig/sdraw/toolbar/basicshapes.xml
+++ b/sd/uiconfig/sdraw/toolbar/basicshapes.xml
@@ -45,4 +45,6 @@
<toolbar:toolbaritem xlink:href=".uno:BasicShapes.cross"/>
<toolbar:toolbaritem xlink:href=".uno:BasicShapes.frame"/>
<toolbar:toolbaritem xlink:href=".uno:BasicShapes.ring"/>
+ <toolbar:toolbarbreak/>
+ <toolbar:toolbaritem xlink:href=".uno:BasicShapes.sinusoid"/>
</toolbar:toolbar>
diff --git a/sd/uiconfig/simpress/toolbar/basicshapes.xml b/sd/uiconfig/simpress/toolbar/basicshapes.xml
index 148245f66672..a0debaab8fd5 100644
--- a/sd/uiconfig/simpress/toolbar/basicshapes.xml
+++ b/sd/uiconfig/simpress/toolbar/basicshapes.xml
@@ -45,4 +45,6 @@
<toolbar:toolbaritem xlink:href=".uno:BasicShapes.cross"/>
<toolbar:toolbaritem xlink:href=".uno:BasicShapes.frame"/>
<toolbar:toolbaritem xlink:href=".uno:BasicShapes.ring"/>
+ <toolbar:toolbarbreak/>
+ <toolbar:toolbaritem xlink:href=".uno:BasicShapes.sinusoid"/>
</toolbar:toolbar>
diff --git a/svx/source/customshapes/EnhancedCustomShapeGeometry.cxx b/svx/source/customshapes/EnhancedCustomShapeGeometry.cxx
index 7db0ff931ac4..026eac620416 100644
--- a/svx/source/customshapes/EnhancedCustomShapeGeometry.cxx
+++ b/svx/source/customshapes/EnhancedCustomShapeGeometry.cxx
@@ -8352,6 +8352,62 @@ const mso_CustomShape msoTearDrop =
std::span<const SvxMSDffHandle>(mso_sptTearDropHandle),
};
+///////////////////////////// sinusoid
+const SvxMSDffVertPair mso_sptSinusoidVert[] =
+{
+ // calculations courtesy of section 6.3.2 of
+ // https://documentation.libreoffice.org/assets/Uploads/Documentation/en/Tutorials/CustomShapes7/Custom-Shape-Tutorial.pdf#page=52
+
+ // taking K = (3pi/2 - 3pi^2/8 - 1/2)
+ // transforming points to viewbox of size 21600 x 21600
+
+ // Start point
+ { 0, 10800 }, // (0, 0)
+ // First Bezier
+ { 1757, 5278 }, // (K, K)
+ { 3437, 0 }, // (1, 1)
+ { 5400, 0 }, // (pi/2, 1)
+ // Second Bezier
+ { 7362, 0 }, // (pi - 1, 1)
+ { 9042, 5278 }, // (pi - K, K)
+ { 10800, 10800 }, // (pi, 0)
+ // Third Bezier
+ { 12557, 16321 }, // (pi + K, -K)
+ { 14237, 21600 }, // (pi + 1, -1)
+ { 16200, 21600 }, // (3pi/2, -1)
+ // Fourth Bezier
+ { 18162, 21600 }, // (2pi - 1, -1)
+ { 19842, 16321 }, // (2pi - K, -K)
+ { 21600, 10800 } // (2pi, 0)
+};
+
+const sal_uInt16 mso_sptSinusoidSegm[] =
+{
+ 0x4000, 0x2004, 0x8000
+};
+
+const SvxMSDffVertPair mso_sptSinusoidGluePoints[] =
+{
+ { 0, 10800 }, // x = 0.00
+ { 5400, 0 }, // x = 0.25
+ { 10800, 10800 }, // x = 0.50
+ { 16200, 21600 }, // x = 0.75
+ { 21600, 10800 } // x = 1.00
+};
+
+const mso_CustomShape msoSinusoid =
+{
+ std::span<const SvxMSDffVertPair>(mso_sptSinusoidVert), // vertices
+ const_cast<sal_uInt16*>(mso_sptSinusoidSegm), sizeof(mso_sptSinusoidSegm) >> 1, // segments, count
+ std::span<const SvxMSDffCalculationData>(), // calculations (none)
+ nullptr, // default values (none)
+ std::span<const SvxMSDffTextRectangles>(), // text area (default)
+ 21600, 21600, // viewbox w, h (default)
+ MIN_INT32, MIN_INT32, // stretch x, y (unset)
+ std::span<const SvxMSDffVertPair>(mso_sptSinusoidGluePoints), // glue points
+ std::span<const SvxMSDffHandle>(), // handles (none)
+};
+
const mso_CustomShape* GetCustomShapeContent( MSO_SPT eSpType )
{
@@ -8481,6 +8537,7 @@ const mso_CustomShape* GetCustomShapeContent( MSO_SPT eSpType )
case mso_sptCloudCallout : pCustomShape = &msoCloudCallout; break;
case mso_sptWave : pCustomShape = &msoWave; break;
case mso_sptDoubleWave : pCustomShape = &msoDoubleWave; break;
+ case mso_sptSinusoid : pCustomShape = &msoSinusoid; break;
// callout
case mso_sptCallout1 : pCustomShape = &msoCallout1; break;
diff --git a/svx/source/customshapes/EnhancedCustomShapeTypeNames.cxx b/svx/source/customshapes/EnhancedCustomShapeTypeNames.cxx
index 472e5f265753..cafea3164a16 100644
--- a/svx/source/customshapes/EnhancedCustomShapeTypeNames.cxx
+++ b/svx/source/customshapes/EnhancedCustomShapeTypeNames.cxx
@@ -236,7 +236,8 @@ const NameTypeTable pNameTypeTableArray[] =
{ "mso-spt201", mso_sptHostControl },
{ "mso-spt202", mso_sptTextBox },
{ "teardrop", mso_sptTearDrop },
- { "ooxml-rect", mso_sptRectangle }
+ { "ooxml-rect", mso_sptRectangle },
+ { "sinusoid", mso_sptSinusoid }
};
// gallery: quadrat
@@ -518,7 +519,8 @@ const ACCNameTypeTable pACCNameTypeTableArray[] =
{ "mso-spt202", mso_sptTextBox },*/
{ "frame", "Frame" },
{ "col-60da8460", "Octagon Bevel" },
- { "col-502ad400", "Diamond Bevel" }
+ { "col-502ad400", "Diamond Bevel" },
+ { "sinusoid", "Sinusoid" }
};
typedef std::unordered_map<OUString, OUString> TypeACCNameHashMap;
diff --git a/svx/source/sidebar/shapes/ShapesUtil.cxx b/svx/source/sidebar/shapes/ShapesUtil.cxx
index ffd1acb62926..02ac744b6d42 100644
--- a/svx/source/sidebar/shapes/ShapesUtil.cxx
+++ b/svx/source/sidebar/shapes/ShapesUtil.cxx
@@ -87,7 +87,8 @@ SvxShapeCommandsMap::SvxShapeCommandsMap()
{20, ".uno:BasicShapes.cube"},
{21, ".uno:BasicShapes.paper"},
{22, ".uno:BasicShapes.frame"},
- {23, ".uno:BasicShapes.ring"}
+ {23, ".uno:BasicShapes.ring"},
+ {24, ".uno:SymbolShapes.sinusoid"}
};
mpSymbolShapes = decltype(mpSymbolShapes){
diff --git a/sw/uiconfig/sglobal/toolbar/basicshapes.xml b/sw/uiconfig/sglobal/toolbar/basicshapes.xml
index 148245f66672..a0debaab8fd5 100644
--- a/sw/uiconfig/sglobal/toolbar/basicshapes.xml
+++ b/sw/uiconfig/sglobal/toolbar/basicshapes.xml
@@ -45,4 +45,6 @@
<toolbar:toolbaritem xlink:href=".uno:BasicShapes.cross"/>
<toolbar:toolbaritem xlink:href=".uno:BasicShapes.frame"/>
<toolbar:toolbaritem xlink:href=".uno:BasicShapes.ring"/>
+ <toolbar:toolbarbreak/>
+ <toolbar:toolbaritem xlink:href=".uno:BasicShapes.sinusoid"/>
</toolbar:toolbar>
diff --git a/sw/uiconfig/sweb/toolbar/basicshapes.xml b/sw/uiconfig/sweb/toolbar/basicshapes.xml
index 148245f66672..a0debaab8fd5 100644
--- a/sw/uiconfig/sweb/toolbar/basicshapes.xml
+++ b/sw/uiconfig/sweb/toolbar/basicshapes.xml
@@ -45,4 +45,6 @@
<toolbar:toolbaritem xlink:href=".uno:BasicShapes.cross"/>
<toolbar:toolbaritem xlink:href=".uno:BasicShapes.frame"/>
<toolbar:toolbaritem xlink:href=".uno:BasicShapes.ring"/>
+ <toolbar:toolbarbreak/>
+ <toolbar:toolbaritem xlink:href=".uno:BasicShapes.sinusoid"/>
</toolbar:toolbar>
diff --git a/sw/uiconfig/swform/toolbar/basicshapes.xml b/sw/uiconfig/swform/toolbar/basicshapes.xml
index 148245f66672..a0debaab8fd5 100644
--- a/sw/uiconfig/swform/toolbar/basicshapes.xml
+++ b/sw/uiconfig/swform/toolbar/basicshapes.xml
@@ -45,4 +45,6 @@
<toolbar:toolbaritem xlink:href=".uno:BasicShapes.cross"/>
<toolbar:toolbaritem xlink:href=".uno:BasicShapes.frame"/>
<toolbar:toolbaritem xlink:href=".uno:BasicShapes.ring"/>
+ <toolbar:toolbarbreak/>
+ <toolbar:toolbaritem xlink:href=".uno:BasicShapes.sinusoid"/>
</toolbar:toolbar>
diff --git a/sw/uiconfig/swreport/toolbar/basicshapes.xml b/sw/uiconfig/swreport/toolbar/basicshapes.xml
index 5b7194408b0b..7b583dff6d93 100644
--- a/sw/uiconfig/swreport/toolbar/basicshapes.xml
+++ b/sw/uiconfig/swreport/toolbar/basicshapes.xml
@@ -43,4 +43,6 @@
<toolbar:toolbaritem xlink:href=".uno:BasicShapes.cube"/>
<toolbar:toolbaritem xlink:href=".uno:BasicShapes.paper"/>
<toolbar:toolbaritem xlink:href=".uno:BasicShapes.frame"/>
+ <toolbar:toolbarbreak/>
+ <toolbar:toolbaritem xlink:href=".uno:BasicShapes.sinusoid"/>
</toolbar:toolbar> \ No newline at end of file
diff --git a/sw/uiconfig/swriter/toolbar/basicshapes.xml b/sw/uiconfig/swriter/toolbar/basicshapes.xml
index 148245f66672..a0debaab8fd5 100644
--- a/sw/uiconfig/swriter/toolbar/basicshapes.xml
+++ b/sw/uiconfig/swriter/toolbar/basicshapes.xml
@@ -45,4 +45,6 @@
<toolbar:toolbaritem xlink:href=".uno:BasicShapes.cross"/>
<toolbar:toolbaritem xlink:href=".uno:BasicShapes.frame"/>
<toolbar:toolbaritem xlink:href=".uno:BasicShapes.ring"/>
+ <toolbar:toolbarbreak/>
+ <toolbar:toolbaritem xlink:href=".uno:BasicShapes.sinusoid"/>
</toolbar:toolbar>
diff --git a/sw/uiconfig/swxform/toolbar/basicshapes.xml b/sw/uiconfig/swxform/toolbar/basicshapes.xml
index 148245f66672..a0debaab8fd5 100644
--- a/sw/uiconfig/swxform/toolbar/basicshapes.xml
+++ b/sw/uiconfig/swxform/toolbar/basicshapes.xml
@@ -45,4 +45,6 @@
<toolbar:toolbaritem xlink:href=".uno:BasicShapes.cross"/>
<toolbar:toolbaritem xlink:href=".uno:BasicShapes.frame"/>
<toolbar:toolbaritem xlink:href=".uno:BasicShapes.ring"/>
+ <toolbar:toolbarbreak/>
+ <toolbar:toolbaritem xlink:href=".uno:BasicShapes.sinusoid"/>
</toolbar:toolbar>