summaryrefslogtreecommitdiff
path: root/sd
diff options
context:
space:
mode:
authorMuhammet Kara <muhammet.kara@collabora.com>2019-02-19 23:41:57 +0300
committerAndras Timar <andras.timar@collabora.com>2019-03-27 21:43:37 +0100
commit6f5466e19e7a645ad0a8215c29a2a3a0213e6dd6 (patch)
tree5ea824f0618e45950277a01d40edd0f11a109abc /sd
parentb93a50c4acae93bff3596663361bb26753241c34 (diff)
Use named shapes for redaction
Change-Id: Ibb55bd503d264b618c3fbebfdbcf3fe9958c6783 Reviewed-on: https://gerrit.libreoffice.org/68031 Tested-by: Jenkins Reviewed-by: Muhammet Kara <muhammet.kara@collabora.com> Reviewed-on: https://gerrit.libreoffice.org/69835 Reviewed-by: Andras Timar <andras.timar@collabora.com> Tested-by: Andras Timar <andras.timar@collabora.com>
Diffstat (limited to 'sd')
-rw-r--r--sd/source/ui/func/fuconbez.cxx14
-rw-r--r--sd/source/ui/func/fuconrec.cxx7
-rw-r--r--sd/source/ui/inc/fuconbez.hxx3
-rw-r--r--sd/source/ui/inc/fuconrec.hxx1
-rw-r--r--sd/uiconfig/sdraw/toolbar/redactionbar.xml4
5 files changed, 23 insertions, 6 deletions
diff --git a/sd/source/ui/func/fuconbez.cxx b/sd/source/ui/func/fuconbez.cxx
index bb7352328d10..b6de7982701a 100644
--- a/sd/source/ui/func/fuconbez.cxx
+++ b/sd/source/ui/func/fuconbez.cxx
@@ -55,7 +55,8 @@ namespace sd {
/*//Extra attributes coming from parameters
sal_uInt16 mnTransparence; // Default: 0
OUString msColor; // Default: ""
- sal_uInt16 mnWidth; // Default: 0*/
+ sal_uInt16 mnWidth; // Default: 0
+ OUString msShapeName; // Default: ""*/
FuConstructBezierPolygon::FuConstructBezierPolygon (
ViewShell* pViewSh,
::sd::Window* pWin,
@@ -114,6 +115,7 @@ void FuConstructBezierPolygon::DoExecute( SfxRequest& rReq )
const SfxUInt16Item* pTransparence = rReq.GetArg<SfxUInt16Item>(FN_PARAM_1);
const SfxStringItem* pColor = rReq.GetArg<SfxStringItem>(FN_PARAM_2);
const SfxUInt16Item* pWidth = rReq.GetArg<SfxUInt16Item>(FN_PARAM_3);
+ const SfxStringItem* pShapeName = rReq.GetArg<SfxStringItem>(SID_SHAPE_NAME);
if (pTransparence && pTransparence->GetValue() > 0)
{
@@ -127,6 +129,10 @@ void FuConstructBezierPolygon::DoExecute( SfxRequest& rReq )
{
mnWidth = pWidth->GetValue();
}
+ if (pShapeName && !pShapeName->GetValue().isEmpty())
+ {
+ msShapeName = pShapeName->GetValue();
+ }
}
}
}
@@ -173,7 +179,7 @@ bool FuConstructBezierPolygon::MouseButtonDown(const MouseEvent& rMEvt)
{
SfxItemSet aAttr(mpDoc->GetPool());
SetStyleSheet(aAttr, pObj);
- SetAttributes(aAttr);
+ SetAttributes(aAttr, pObj);
pObj->SetMergedItemSet(aAttr);
}
}
@@ -351,7 +357,7 @@ Color strToColor(const OUString& sColor)
}
}
-void FuConstructBezierPolygon::SetAttributes(SfxItemSet& rAttr)
+void FuConstructBezierPolygon::SetAttributes(SfxItemSet& rAttr, SdrObject *pObj)
{
if (nSlotId == SID_DRAW_FREELINE_NOFILL)
{
@@ -361,6 +367,8 @@ void FuConstructBezierPolygon::SetAttributes(SfxItemSet& rAttr)
rAttr.Put(XLineColorItem(OUString(), strToColor(msColor)));
if (mnWidth > 0)
rAttr.Put(XLineWidthItem(mnWidth));
+ if (!msShapeName.isEmpty())
+ pObj->SetName(msShapeName);
}
}
diff --git a/sd/source/ui/func/fuconrec.cxx b/sd/source/ui/func/fuconrec.cxx
index 6631a8705294..91c629240380 100644
--- a/sd/source/ui/func/fuconrec.cxx
+++ b/sd/source/ui/func/fuconrec.cxx
@@ -152,6 +152,7 @@ void FuConstructRectangle::DoExecute( SfxRequest& rReq )
const SfxUInt16Item* pFillTransparence = rReq.GetArg<SfxUInt16Item>(FN_PARAM_1);
const SfxStringItem* pFillColor = rReq.GetArg<SfxStringItem>(FN_PARAM_2);
const SfxUInt16Item* pLineStyle = rReq.GetArg<SfxUInt16Item>(FN_PARAM_3);
+ const SfxStringItem* pShapeName = rReq.GetArg<SfxStringItem>(SID_SHAPE_NAME);
if (pFillTransparence && pFillTransparence->GetValue() > 0)
{
@@ -165,6 +166,10 @@ void FuConstructRectangle::DoExecute( SfxRequest& rReq )
{
mnLineStyle = pLineStyle->GetValue();
}
+ if (pShapeName && !pShapeName->GetValue().isEmpty())
+ {
+ msShapeName = pShapeName->GetValue();
+ }
if (!pMouseStartX || !pMouseStartY || !pMouseEndX || !pMouseEndY)
break;
@@ -564,6 +569,8 @@ void FuConstructRectangle::SetAttributes(SfxItemSet& rAttr, SdrObject* pObj)
rAttr.Put(XFillTransparenceItem(mnFillTransparence));
if (!msFillColor.isEmpty())
rAttr.Put(XFillColorItem(OUString(), strToColor(msFillColor)));
+ if (!msShapeName.isEmpty())
+ pObj->SetName(msShapeName);
switch(mnLineStyle)
{
diff --git a/sd/source/ui/inc/fuconbez.hxx b/sd/source/ui/inc/fuconbez.hxx
index 2ec20f0a0488..c7a14915911c 100644
--- a/sd/source/ui/inc/fuconbez.hxx
+++ b/sd/source/ui/inc/fuconbez.hxx
@@ -50,7 +50,7 @@ public:
/**
* set attribute for the object to be created
*/
- void SetAttributes(SfxItemSet& rAttr);
+ void SetAttributes(SfxItemSet& rAttr, SdrObject* pObj);
virtual SdrObject* CreateDefaultObject(const sal_uInt16 nID, const ::tools::Rectangle& rRectangle) override;
@@ -69,6 +69,7 @@ private:
sal_uInt16 mnTransparence; // Default: 0
OUString msColor; // Default: ""
sal_uInt16 mnWidth; // Default: 0
+ OUString msShapeName; // Default: ""
};
} // end of namespace sd
diff --git a/sd/source/ui/inc/fuconrec.hxx b/sd/source/ui/inc/fuconrec.hxx
index d792fa822fb9..14884fe2f452 100644
--- a/sd/source/ui/inc/fuconrec.hxx
+++ b/sd/source/ui/inc/fuconrec.hxx
@@ -40,6 +40,7 @@ private:
sal_uInt16 mnFillTransparence; // Default: 0
OUString msFillColor; // Default: ""
sal_uInt16 mnLineStyle; // Default: SAL_MAX_UINT16
+ OUString msShapeName; // Default: ""
public:
diff --git a/sd/uiconfig/sdraw/toolbar/redactionbar.xml b/sd/uiconfig/sdraw/toolbar/redactionbar.xml
index a0fb06709377..43ce5e856f7a 100644
--- a/sd/uiconfig/sdraw/toolbar/redactionbar.xml
+++ b/sd/uiconfig/sdraw/toolbar/redactionbar.xml
@@ -18,8 +18,8 @@
* the License at http://www.apache.org/licenses/LICENSE-2.0 .
-->
<toolbar:toolbar xmlns:toolbar="http://openoffice.org/2001/toolbar" xmlns:xlink="http://www.w3.org/1999/xlink">
- <toolbar:toolbaritem xlink:href=".uno:Rect?FillTransparence:short=50&amp;FillColor:string=COL_GRAY7&amp;LineStyle:short=0&amp;IsSticky:bool=true"/>
- <toolbar:toolbaritem xlink:href=".uno:Freeline_Unfilled?Transparence:short=50&amp;Color:string=COL_GRAY7&amp;Width:short=500&amp;IsSticky:bool=true"/>
+ <toolbar:toolbaritem xlink:href=".uno:Rect?FillTransparence:short=50&amp;FillColor:string=COL_GRAY7&amp;LineStyle:short=0&amp;IsSticky:bool=true&amp;ShapeName:string=RectangleRedactionShape"/>
+ <toolbar:toolbaritem xlink:href=".uno:Freeline_Unfilled?Transparence:short=50&amp;Color:string=COL_GRAY7&amp;Width:short=500&amp;IsSticky:bool=true&amp;ShapeName:string=FreeformRedactionShape"/>
<toolbar:toolbarseparator/>
<toolbar:toolbaritem xlink:href=".uno:ExportDirectToPDF?IsRedactMode:bool=true"/>
</toolbar:toolbar>