summaryrefslogtreecommitdiff
path: root/chart2
diff options
context:
space:
mode:
authorStephan Bergmann <sbergman@redhat.com>2017-06-19 09:32:45 +0200
committerStephan Bergmann <sbergman@redhat.com>2017-06-19 09:38:05 +0200
commit1e3a00f0c772a76a1dd76b8272e2c35a1802d574 (patch)
treea1eadac1680f1e46c789964200aa8a61bb659189 /chart2
parent9fe114e78f1285397dcd2a0d2e3d6afc3024fa66 (diff)
Make SfxItemSet ranges correct by construction: Fix static cases
...with the aid of an extended compilerplugins/clang/store/sfxitemsetrewrite.cxx (which in turn needed a small addition to compilerplugins/clang/check.hxx). Enable svl::detail::validGap check for the static case, but keep it disabled for now for the dynamic case. Change-Id: I4846ba8e99aff94a86518e2cb5044e575093386e
Diffstat (limited to 'chart2')
-rw-r--r--chart2/source/controller/drawinglayer/DrawViewWrapper.cxx12
-rw-r--r--chart2/source/controller/main/DrawCommandDispatch.cxx28
-rw-r--r--chart2/source/controller/main/ShapeController.cxx12
3 files changed, 28 insertions, 24 deletions
diff --git a/chart2/source/controller/drawinglayer/DrawViewWrapper.cxx b/chart2/source/controller/drawinglayer/DrawViewWrapper.cxx
index 59cff5f86c18..ff550d587ac1 100644
--- a/chart2/source/controller/drawinglayer/DrawViewWrapper.cxx
+++ b/chart2/source/controller/drawinglayer/DrawViewWrapper.cxx
@@ -283,11 +283,13 @@ SdrOutliner* DrawViewWrapper::getOutliner() const
SfxItemSet DrawViewWrapper::getPositionAndSizeItemSetFromMarkedObject() const
{
- SfxItemSet aFullSet( GetModel()->GetItemPool(),
- svl::Items<SID_ATTR_TRANSFORM_POS_X, SID_ATTR_TRANSFORM_ANGLE,
- SID_ATTR_TRANSFORM_PROTECT_POS, SID_ATTR_TRANSFORM_AUTOHEIGHT,
- SDRATTR_ECKENRADIUS, SDRATTR_ECKENRADIUS,
- SID_ATTR_METRIC, SID_ATTR_METRIC>{});
+ SfxItemSet aFullSet(
+ GetModel()->GetItemPool(),
+ svl::Items<
+ SDRATTR_ECKENRADIUS, SDRATTR_ECKENRADIUS,
+ SID_ATTR_TRANSFORM_POS_X, SID_ATTR_TRANSFORM_ANGLE,
+ SID_ATTR_TRANSFORM_PROTECT_POS, SID_ATTR_TRANSFORM_AUTOHEIGHT,
+ SID_ATTR_METRIC, SID_ATTR_METRIC>{});
SfxItemSet aGeoSet( E3dView::GetGeoAttrFromMarked() );
aFullSet.Put( aGeoSet );
aFullSet.Put( SfxUInt16Item(SID_ATTR_METRIC,static_cast< sal_uInt16 >( ConfigurationAccess::getFieldUnit())));
diff --git a/chart2/source/controller/main/DrawCommandDispatch.cxx b/chart2/source/controller/main/DrawCommandDispatch.cxx
index 92485496c731..53929d720a81 100644
--- a/chart2/source/controller/main/DrawCommandDispatch.cxx
+++ b/chart2/source/controller/main/DrawCommandDispatch.cxx
@@ -135,18 +135,22 @@ void DrawCommandDispatch::setAttributes( SdrObject* pObj )
if ( pSourceObj )
{
const SfxItemSet& rSource = pSourceObj->GetMergedItemSet();
- SfxItemSet aDest( pObj->GetModel()->GetItemPool(), // ranges from SdrAttrObj
- svl::Items<SDRATTR_START, SDRATTR_SHADOW_LAST,
- SDRATTR_MISC_FIRST, SDRATTR_MISC_LAST,
- SDRATTR_TEXTDIRECTION, SDRATTR_TEXTDIRECTION,
- // Graphic Attributes
- SDRATTR_GRAF_FIRST, SDRATTR_GRAF_LAST,
- // 3d Properties
- SDRATTR_3D_FIRST, SDRATTR_3D_LAST,
- // CustomShape properties
- SDRATTR_CUSTOMSHAPE_FIRST, SDRATTR_CUSTOMSHAPE_LAST,
- // range from SdrTextObj
- EE_ITEMS_START, EE_ITEMS_END>{});
+ SfxItemSet aDest(
+ pObj->GetModel()->GetItemPool(),
+ svl::Items<
+ // Ranges from SdrAttrObj:
+ SDRATTR_START, SDRATTR_SHADOW_LAST,
+ SDRATTR_MISC_FIRST,
+ SDRATTR_MISC_LAST,
+ SDRATTR_TEXTDIRECTION,
+ SDRATTR_TEXTDIRECTION,
+ // Graphic attributes, 3D
+ // properties, CustomShape
+ // properties:
+ SDRATTR_GRAF_FIRST,
+ SDRATTR_CUSTOMSHAPE_LAST,
+ // Range from SdrTextObj:
+ EE_ITEMS_START, EE_ITEMS_END>{});
aDest.Set( rSource );
pObj->SetMergedItemSet( aDest );
sal_Int32 nAngle = pSourceObj->GetRotateAngle();
diff --git a/chart2/source/controller/main/ShapeController.cxx b/chart2/source/controller/main/ShapeController.cxx
index 2a3d28f649d9..5404eb6df464 100644
--- a/chart2/source/controller/main/ShapeController.cxx
+++ b/chart2/source/controller/main/ShapeController.cxx
@@ -562,13 +562,11 @@ void ShapeController::executeDispatch_ParagraphDialog()
SfxItemSet aAttr( rPool );
pDrawViewWrapper->GetAttributes( aAttr );
- SfxItemSet aNewAttr( rPool,
- svl::Items<EE_ITEMS_START, EE_ITEMS_END,
- SID_ATTR_PARA_HYPHENZONE, SID_ATTR_PARA_HYPHENZONE,
- SID_ATTR_PARA_PAGEBREAK, SID_ATTR_PARA_PAGEBREAK,
- SID_ATTR_PARA_SPLIT, SID_ATTR_PARA_SPLIT,
- SID_ATTR_PARA_WIDOWS, SID_ATTR_PARA_WIDOWS,
- SID_ATTR_PARA_ORPHANS, SID_ATTR_PARA_ORPHANS>{} );
+ SfxItemSet aNewAttr(
+ rPool,
+ svl::Items<
+ EE_ITEMS_START, EE_ITEMS_END,
+ SID_ATTR_PARA_PAGEBREAK, SID_ATTR_PARA_WIDOWS>{});
aNewAttr.Put( aAttr );
aNewAttr.Put( SvxHyphenZoneItem( false, SID_ATTR_PARA_HYPHENZONE ) );
aNewAttr.Put( SvxFormatBreakItem( SvxBreak::NONE, SID_ATTR_PARA_PAGEBREAK ) );