summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorArmin Le Grand (allotropia) <armin.le.grand.extern@allotropia.de>2024-01-12 18:40:24 +0100
committerArmin Le Grand <Armin.Le.Grand@me.com>2024-01-14 21:02:46 +0100
commit845d92e1f30eef5745480604fb9f6e4c3e3b7284 (patch)
tree7499b058845fbd7317469332e7c0b7414da9f1c6
parentcid#1585558 Using a moved object (diff)
downloadcore-845d92e1f30eef5745480604fb9f6e4c3e3b7284.tar.gz
core-845d92e1f30eef5745480604fb9f6e4c3e3b7284.zip
ITEM: Move Shareable ItemFlag to SfxPolItem
Currently a Pool-Attribute (in SfxItemInfo), but should be a SfxPoolItem property. Originally 'moved' from old 'poolable' used as hint. I identified needs more general and moved it to where it belongs. Also reworked SfxItemInfo to no longer have/support single bollean flags, but a FlagVariable and defined SFX_ITEMINFOFLAG_* entries to access these, that will make future changes easier without having to change all palces where these get defined over and over again. Added CheckItemInfoFlag for gereral access to that flag and e.g. NeedsSurrogateSupport to directly check for the SFX_ITEMINFOFLAG_SUPPORT_SURROGATE flag as syntactical sugar, that makes the intention clear. Change-Id: I09c238c7c5b7f721b657d7b0a44dbc8d14e02528 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/161982 Tested-by: Jenkins Reviewed-by: Armin Le Grand <Armin.Le.Grand@me.com>
-rw-r--r--chart2/source/view/main/ChartItemPool.cxx13
-rw-r--r--dbaccess/source/ui/dlg/dbadmin.cxx124
-rw-r--r--dbaccess/source/ui/misc/UITools.cxx12
-rw-r--r--editeng/source/editeng/editdoc.cxx116
-rw-r--r--extensions/source/propctrlr/fontdialog.cxx42
-rw-r--r--include/svl/itempool.hxx48
-rw-r--r--include/svl/itemset.hxx2
-rw-r--r--include/svl/poolitem.hxx25
-rw-r--r--reportdesign/source/ui/misc/UITools.cxx118
-rw-r--r--reportdesign/source/ui/report/ReportController.cxx64
-rw-r--r--sc/source/core/data/docpool.cxx180
-rw-r--r--sc/source/ui/app/msgpool.cxx22
-rw-r--r--sc/source/ui/condformat/condformatdlgitem.cxx1
-rw-r--r--sfx2/source/explorer/nochaos.cxx4
-rw-r--r--svl/qa/unit/items/stylepool.cxx8
-rw-r--r--svl/source/items/itempool.cxx36
-rw-r--r--svl/source/items/itemset.cxx41
-rw-r--r--svl/source/items/poolitem.cxx1
-rw-r--r--svl/source/items/stylepool.cxx4
-rw-r--r--svx/source/svdraw/svdattr.cxx49
-rw-r--r--svx/source/xoutdev/xpool.cxx89
-rw-r--r--sw/source/core/attr/cellatr.cxx1
-rw-r--r--sw/source/core/bastyp/init.cxx344
-rw-r--r--sw/source/core/layout/atrfrm.cxx7
-rw-r--r--sw/source/core/para/paratr.cxx2
-rw-r--r--sw/source/core/tox/tox.cxx3
-rw-r--r--sw/source/core/txtnode/atrfld.cxx3
-rw-r--r--sw/source/core/txtnode/atrflyin.cxx1
-rw-r--r--sw/source/core/txtnode/atrftn.cxx1
-rw-r--r--sw/source/core/txtnode/atrref.cxx2
-rw-r--r--sw/source/core/txtnode/attrcontentcontrol.cxx2
-rw-r--r--sw/source/core/txtnode/attrlinebreak.cxx1
-rw-r--r--sw/source/core/txtnode/fmtatr2.cxx17
33 files changed, 700 insertions, 683 deletions
diff --git a/chart2/source/view/main/ChartItemPool.cxx b/chart2/source/view/main/ChartItemPool.cxx
index 8f787cd4bd70..afecbf047107 100644
--- a/chart2/source/view/main/ChartItemPool.cxx
+++ b/chart2/source/view/main/ChartItemPool.cxx
@@ -190,16 +190,15 @@ ChartItemPool::ChartItemPool():
const sal_uInt16 nMax = SCHATTR_END - SCHATTR_START + 1;
for( sal_uInt16 i = 0; i < nMax; i++ )
{
- // _nSID, _bNeedsPoolRegistration, _bShareable
- pItemInfos[i]._nSID = 0;
- pItemInfos[i]._bNeedsPoolRegistration = false;
- pItemInfos[i]._bShareable = true;
+ // _nItemInfoSlotID, _nItemInfoFlags
+ pItemInfos[i]._nItemInfoSlotID = 0;
+ pItemInfos[i]._nItemInfoFlags = SFX_ITEMINFOFLAG_NONE;
}
// slot ids differing from which ids
- pItemInfos[SCHATTR_SYMBOL_BRUSH - SCHATTR_START]._nSID = SID_ATTR_BRUSH;
- pItemInfos[SCHATTR_STYLE_SYMBOL - SCHATTR_START]._nSID = SID_ATTR_SYMBOLTYPE;
- pItemInfos[SCHATTR_SYMBOL_SIZE - SCHATTR_START]._nSID = SID_ATTR_SYMBOLSIZE;
+ pItemInfos[SCHATTR_SYMBOL_BRUSH - SCHATTR_START]._nItemInfoSlotID = SID_ATTR_BRUSH;
+ pItemInfos[SCHATTR_STYLE_SYMBOL - SCHATTR_START]._nItemInfoSlotID = SID_ATTR_SYMBOLTYPE;
+ pItemInfos[SCHATTR_SYMBOL_SIZE - SCHATTR_START]._nItemInfoSlotID = SID_ATTR_SYMBOLSIZE;
SetDefaults(ppPoolDefaults);
SetItemInfos(pItemInfos.get());
diff --git a/dbaccess/source/ui/dlg/dbadmin.cxx b/dbaccess/source/ui/dlg/dbadmin.cxx
index 372e72e258a7..8fe5d8a5bd27 100644
--- a/dbaccess/source/ui/dlg/dbadmin.cxx
+++ b/dbaccess/source/ui/dlg/dbadmin.cxx
@@ -340,68 +340,68 @@ void ODbAdminDialog::createItemSet(std::unique_ptr<SfxItemSet>& _rpSet, rtl::Ref
// create the pool
static SfxItemInfo const aItemInfos[DSID_LAST_ITEM_ID - DSID_FIRST_ITEM_ID + 1] =
{
- // _nSID, _bNeedsPoolRegistration, _bShareable
- {0,false,false},
- {0,false,false},
- {0,false,false},
- {0,false,false},
- {0,false,false},
- {0,false,false},
- {0,false,false},
- {0,false,false},
- {0,false,false},
- {0,false,false},
- {0,false,false},
- {0,false,false},
- {0,false,false},
- {0,false,false},
- {0,false,false},
- {0,false,false},
- {0,false,false},
- {0,false,false},
- {0,false,false},
- {0,false,false},
- {0,false,false},
- {0,false,false},
- {0,false,false},
- {0,false,false},
- {0,false,false},
- {0,false,false},
- {0,false,false},
- {0,false,false},
- {0,false,false},
- {0,false,false},
- {0,false,false},
- {0,false,false},
- {0,false,false},
- {0,false,false},
- {0,false,false},
- {0,false,false},
- {0,false,false},
- {0,false,false},
- {0,false,false},
- {0,false,false},
- {0,false,false},
- {0,false,false},
- {0,false,false},
- {0,false,false},
- {0,false,false},
- {0,false,false},
- {0,false,false},
- {0,false,false},
- {0,false,false},
- {0,false,false},
- {0,false,false},
- {0,false,false},
- {0,false,false},
- {0,false,false},
- {0,false,false},
- {0,false,false},
- {0,false,false},
- {0,false,false},
- {0,false,false},
- {0,false,false},
- {0,false,false},
+ // _nItemInfoSlotID, _nItemInfoFlags
+ {0, SFX_ITEMINFOFLAG_NONE },
+ {0, SFX_ITEMINFOFLAG_NONE },
+ {0, SFX_ITEMINFOFLAG_NONE },
+ {0, SFX_ITEMINFOFLAG_NONE },
+ {0, SFX_ITEMINFOFLAG_NONE },
+ {0, SFX_ITEMINFOFLAG_NONE },
+ {0, SFX_ITEMINFOFLAG_NONE },
+ {0, SFX_ITEMINFOFLAG_NONE },
+ {0, SFX_ITEMINFOFLAG_NONE },
+ {0, SFX_ITEMINFOFLAG_NONE },
+ {0, SFX_ITEMINFOFLAG_NONE },
+ {0, SFX_ITEMINFOFLAG_NONE },
+ {0, SFX_ITEMINFOFLAG_NONE },
+ {0, SFX_ITEMINFOFLAG_NONE },
+ {0, SFX_ITEMINFOFLAG_NONE },
+ {0, SFX_ITEMINFOFLAG_NONE },
+ {0, SFX_ITEMINFOFLAG_NONE },
+ {0, SFX_ITEMINFOFLAG_NONE },
+ {0, SFX_ITEMINFOFLAG_NONE },
+ {0, SFX_ITEMINFOFLAG_NONE },
+ {0, SFX_ITEMINFOFLAG_NONE },
+ {0, SFX_ITEMINFOFLAG_NONE },
+ {0, SFX_ITEMINFOFLAG_NONE },
+ {0, SFX_ITEMINFOFLAG_NONE },
+ {0, SFX_ITEMINFOFLAG_NONE },
+ {0, SFX_ITEMINFOFLAG_NONE },
+ {0, SFX_ITEMINFOFLAG_NONE },
+ {0, SFX_ITEMINFOFLAG_NONE },
+ {0, SFX_ITEMINFOFLAG_NONE },
+ {0, SFX_ITEMINFOFLAG_NONE },
+ {0, SFX_ITEMINFOFLAG_NONE },
+ {0, SFX_ITEMINFOFLAG_NONE },
+ {0, SFX_ITEMINFOFLAG_NONE },
+ {0, SFX_ITEMINFOFLAG_NONE },
+ {0, SFX_ITEMINFOFLAG_NONE },
+ {0, SFX_ITEMINFOFLAG_NONE },
+ {0, SFX_ITEMINFOFLAG_NONE },
+ {0, SFX_ITEMINFOFLAG_NONE },
+ {0, SFX_ITEMINFOFLAG_NONE },
+ {0, SFX_ITEMINFOFLAG_NONE },
+ {0, SFX_ITEMINFOFLAG_NONE },
+ {0, SFX_ITEMINFOFLAG_NONE },
+ {0, SFX_ITEMINFOFLAG_NONE },
+ {0, SFX_ITEMINFOFLAG_NONE },
+ {0, SFX_ITEMINFOFLAG_NONE },
+ {0, SFX_ITEMINFOFLAG_NONE },
+ {0, SFX_ITEMINFOFLAG_NONE },
+ {0, SFX_ITEMINFOFLAG_NONE },
+ {0, SFX_ITEMINFOFLAG_NONE },
+ {0, SFX_ITEMINFOFLAG_NONE },
+ {0, SFX_ITEMINFOFLAG_NONE },
+ {0, SFX_ITEMINFOFLAG_NONE },
+ {0, SFX_ITEMINFOFLAG_NONE },
+ {0, SFX_ITEMINFOFLAG_NONE },
+ {0, SFX_ITEMINFOFLAG_NONE },
+ {0, SFX_ITEMINFOFLAG_NONE },
+ {0, SFX_ITEMINFOFLAG_NONE },
+ {0, SFX_ITEMINFOFLAG_NONE },
+ {0, SFX_ITEMINFOFLAG_NONE },
+ {0, SFX_ITEMINFOFLAG_NONE },
+ {0, SFX_ITEMINFOFLAG_NONE },
};
OSL_ENSURE(std::size(aItemInfos) == sal_uInt16(DSID_LAST_ITEM_ID),"Invalid Ids!");
diff --git a/dbaccess/source/ui/misc/UITools.cxx b/dbaccess/source/ui/misc/UITools.cxx
index 483afced1082..d08e1f076d26 100644
--- a/dbaccess/source/ui/misc/UITools.cxx
+++ b/dbaccess/source/ui/misc/UITools.cxx
@@ -763,12 +763,12 @@ bool callColumnFormatDialog(weld::Widget* _pParent,
// UNO->ItemSet
static SfxItemInfo aItemInfos[] =
{
- // _nSID, _bNeedsPoolRegistration, _bShareable
- { 0, false, true }, // SBA_DEF_RANGEFORMAT
- { SID_ATTR_NUMBERFORMAT_VALUE, false, true }, // SBA_DEF_FMTVALUE
- { SID_ATTR_ALIGN_HOR_JUSTIFY, false, true }, // SBA_ATTR_ALIGN_HOR_JUSTIFY
- { SID_ATTR_NUMBERFORMAT_INFO, false, true }, // SID_ATTR_NUMBERFORMAT_INFO
- { SID_ATTR_NUMBERFORMAT_ONE_AREA, false, true } // SID_ATTR_NUMBERFORMAT_ONE_AREA
+ // _nItemInfoSlotID, _nItemInfoFlags
+ { 0, SFX_ITEMINFOFLAG_NONE }, // SBA_DEF_RANGEFORMAT
+ { SID_ATTR_NUMBERFORMAT_VALUE, SFX_ITEMINFOFLAG_NONE }, // SBA_DEF_FMTVALUE
+ { SID_ATTR_ALIGN_HOR_JUSTIFY, SFX_ITEMINFOFLAG_NONE }, // SBA_ATTR_ALIGN_HOR_JUSTIFY
+ { SID_ATTR_NUMBERFORMAT_INFO, SFX_ITEMINFOFLAG_NONE }, // SID_ATTR_NUMBERFORMAT_INFO
+ { SID_ATTR_NUMBERFORMAT_ONE_AREA, SFX_ITEMINFOFLAG_NONE } // SID_ATTR_NUMBERFORMAT_ONE_AREA
};
static const auto aAttrMap = svl::Items<
SBA_DEF_RANGEFORMAT, SBA_ATTR_ALIGN_HOR_JUSTIFY,
diff --git a/editeng/source/editeng/editdoc.cxx b/editeng/source/editeng/editdoc.cxx
index 7dbee3890a6c..acbd97baf87b 100644
--- a/editeng/source/editeng/editdoc.cxx
+++ b/editeng/source/editeng/editdoc.cxx
@@ -159,64 +159,64 @@ bool IsScriptItemValid( sal_uInt16 nItemId, short nScriptType )
const SfxItemInfo aItemInfos[EDITITEMCOUNT] =
{
- // _nSID, _bNeedsPoolRegistration, _bShareable
- { SID_ATTR_FRAMEDIRECTION, false, true }, // EE_PARA_WRITINGDIR
- { 0, true, true }, // EE_PARA_XMLATTRIBS
- { SID_ATTR_PARA_HANGPUNCTUATION, false, true }, // EE_PARA_HANGINGPUNCTUATION
- { SID_ATTR_PARA_FORBIDDEN_RULES, false, true }, // EE_PARA_FORBIDDENRULES
- { SID_ATTR_PARA_SCRIPTSPACE, false, true }, // EE_PARA_ASIANCJKSPACING
- { SID_ATTR_NUMBERING_RULE, false, true }, // EE_PARA_NUMBULL
- { 0, false, true }, // EE_PARA_HYPHENATE
- { 0, false, true }, // EE_PARA_HYPHENATE_NO_CAPS
- { 0, false, true }, // EE_PARA_HYPHENATE_NO_LAST_WORD
- { 0, false, true }, // EE_PARA_BULLETSTATE
- { 0, false, true }, // EE_PARA_OUTLLRSPACE
- { SID_ATTR_PARA_OUTLLEVEL, false, true }, // EE_PARA_OUTLLEVEL
- { SID_ATTR_PARA_BULLET, false, true }, // EE_PARA_BULLET
- { SID_ATTR_LRSPACE, false, true }, // EE_PARA_LRSPACE
- { SID_ATTR_ULSPACE, false, true }, // EE_PARA_ULSPACE
- { SID_ATTR_PARA_LINESPACE, false, true }, // EE_PARA_SBL
- { SID_ATTR_PARA_ADJUST, false, true }, // EE_PARA_JUST
- { SID_ATTR_TABSTOP, false, true }, // EE_PARA_TABS
- { SID_ATTR_ALIGN_HOR_JUSTIFY_METHOD, false, true }, // EE_PARA_JUST_METHOD
- { SID_ATTR_ALIGN_VER_JUSTIFY, false, true }, // EE_PARA_VER_JUST
- { SID_ATTR_CHAR_COLOR, true, true }, // EE_CHAR_COLOR
- { SID_ATTR_CHAR_FONT, true, true }, // EE_CHAR_FONTINFO
- { SID_ATTR_CHAR_FONTHEIGHT, false, true }, // EE_CHAR_FONTHEIGHT
- { SID_ATTR_CHAR_SCALEWIDTH, false, true }, // EE_CHAR_FONTWIDTH
- { SID_ATTR_CHAR_WEIGHT, false, true }, // EE_CHAR_WEIGHT
- { SID_ATTR_CHAR_UNDERLINE, false, true }, // EE_CHAR_UNDERLINE
- { SID_ATTR_CHAR_STRIKEOUT, false, true }, // EE_CHAR_STRIKEOUT
- { SID_ATTR_CHAR_POSTURE, false, true }, // EE_CHAR_ITALIC
- { SID_ATTR_CHAR_CONTOUR, false, true }, // EE_CHAR_OUTLINE
- { SID_ATTR_CHAR_SHADOWED, false, true }, // EE_CHAR_SHADOW
- { SID_ATTR_CHAR_ESCAPEMENT, false, true }, // EE_CHAR_ESCAPEMENT
- { SID_ATTR_CHAR_AUTOKERN, false, true }, // EE_CHAR_PAIRKERNING
- { SID_ATTR_CHAR_KERNING, false, true }, // EE_CHAR_KERNING
- { SID_ATTR_CHAR_WORDLINEMODE, false, true }, // EE_CHAR_WLM
- { SID_ATTR_CHAR_LANGUAGE, false, true }, // EE_CHAR_LANGUAGE
- { SID_ATTR_CHAR_CJK_LANGUAGE, false, true }, // EE_CHAR_LANGUAGE_CJK
- { SID_ATTR_CHAR_CTL_LANGUAGE, false, true }, // EE_CHAR_LANGUAGE_CTL
- { SID_ATTR_CHAR_CJK_FONT, true, true }, // EE_CHAR_FONTINFO_CJK
- { SID_ATTR_CHAR_CTL_FONT, true, true }, // EE_CHAR_FONTINFO_CTL
- { SID_ATTR_CHAR_CJK_FONTHEIGHT, false, true }, // EE_CHAR_FONTHEIGHT_CJK
- { SID_ATTR_CHAR_CTL_FONTHEIGHT, false, true }, // EE_CHAR_FONTHEIGHT_CTL
- { SID_ATTR_CHAR_CJK_WEIGHT, false, true }, // EE_CHAR_WEIGHT_CJK
- { SID_ATTR_CHAR_CTL_WEIGHT, false, true }, // EE_CHAR_WEIGHT_CTL
- { SID_ATTR_CHAR_CJK_POSTURE, false, true }, // EE_CHAR_ITALIC_CJK
- { SID_ATTR_CHAR_CTL_POSTURE, false, true }, // EE_CHAR_ITALIC_CTL
- { SID_ATTR_CHAR_EMPHASISMARK, false, true }, // EE_CHAR_EMPHASISMARK
- { SID_ATTR_CHAR_RELIEF, false, true }, // EE_CHAR_RELIEF
- { 0, false, true }, // EE_CHAR_RUBI_DUMMY
- { 0, true, true }, // EE_CHAR_XMLATTRIBS
- { SID_ATTR_CHAR_OVERLINE, false, true }, // EE_CHAR_OVERLINE
- { SID_ATTR_CHAR_CASEMAP, false, true }, // EE_CHAR_CASEMAP
- { SID_ATTR_CHAR_GRABBAG, false, true }, // EE_CHAR_GRABBAG
- { SID_ATTR_CHAR_BACK_COLOR, false, true }, // EE_CHAR_BKGCOLOR
- { 0, false, true }, // EE_FEATURE_TAB
- { 0, false, true }, // EE_FEATURE_LINEBR
- { SID_ATTR_CHAR_CHARSETCOLOR, false, true }, // EE_FEATURE_NOTCONV
- { SID_FIELD, true, true }, // EE_FEATURE_FIELD
+ // _nItemInfoSlotID, _nItemInfoFlags
+ { SID_ATTR_FRAMEDIRECTION, SFX_ITEMINFOFLAG_NONE }, // EE_PARA_WRITINGDIR
+ { 0, SFX_ITEMINFOFLAG_SUPPORT_SURROGATE }, // EE_PARA_XMLATTRIBS
+ { SID_ATTR_PARA_HANGPUNCTUATION, SFX_ITEMINFOFLAG_NONE }, // EE_PARA_HANGINGPUNCTUATION
+ { SID_ATTR_PARA_FORBIDDEN_RULES, SFX_ITEMINFOFLAG_NONE }, // EE_PARA_FORBIDDENRULES
+ { SID_ATTR_PARA_SCRIPTSPACE, SFX_ITEMINFOFLAG_NONE }, // EE_PARA_ASIANCJKSPACING
+ { SID_ATTR_NUMBERING_RULE, SFX_ITEMINFOFLAG_NONE }, // EE_PARA_NUMBULL
+ { 0, SFX_ITEMINFOFLAG_NONE }, // EE_PARA_HYPHENATE
+ { 0, SFX_ITEMINFOFLAG_NONE }, // EE_PARA_HYPHENATE_NO_CAPS
+ { 0, SFX_ITEMINFOFLAG_NONE }, // EE_PARA_HYPHENATE_NO_LAST_WORD
+ { 0, SFX_ITEMINFOFLAG_NONE }, // EE_PARA_BULLETSTATE
+ { 0, SFX_ITEMINFOFLAG_NONE }, // EE_PARA_OUTLLRSPACE
+ { SID_ATTR_PARA_OUTLLEVEL, SFX_ITEMINFOFLAG_NONE }, // EE_PARA_OUTLLEVEL
+ { SID_ATTR_PARA_BULLET, SFX_ITEMINFOFLAG_NONE }, // EE_PARA_BULLET
+ { SID_ATTR_LRSPACE, SFX_ITEMINFOFLAG_NONE }, // EE_PARA_LRSPACE
+ { SID_ATTR_ULSPACE, SFX_ITEMINFOFLAG_NONE }, // EE_PARA_ULSPACE
+ { SID_ATTR_PARA_LINESPACE, SFX_ITEMINFOFLAG_NONE }, // EE_PARA_SBL
+ { SID_ATTR_PARA_ADJUST, SFX_ITEMINFOFLAG_NONE }, // EE_PARA_JUST
+ { SID_ATTR_TABSTOP, SFX_ITEMINFOFLAG_NONE }, // EE_PARA_TABS
+ { SID_ATTR_ALIGN_HOR_JUSTIFY_METHOD, SFX_ITEMINFOFLAG_NONE }, // EE_PARA_JUST_METHOD
+ { SID_ATTR_ALIGN_VER_JUSTIFY, SFX_ITEMINFOFLAG_NONE }, // EE_PARA_VER_JUST
+ { SID_ATTR_CHAR_COLOR, SFX_ITEMINFOFLAG_SUPPORT_SURROGATE }, // EE_CHAR_COLOR
+ { SID_ATTR_CHAR_FONT, SFX_ITEMINFOFLAG_SUPPORT_SURROGATE }, // EE_CHAR_FONTINFO
+ { SID_ATTR_CHAR_FONTHEIGHT, SFX_ITEMINFOFLAG_NONE }, // EE_CHAR_FONTHEIGHT
+ { SID_ATTR_CHAR_SCALEWIDTH, SFX_ITEMINFOFLAG_NONE }, // EE_CHAR_FONTWIDTH
+ { SID_ATTR_CHAR_WEIGHT, SFX_ITEMINFOFLAG_NONE }, // EE_CHAR_WEIGHT
+ { SID_ATTR_CHAR_UNDERLINE, SFX_ITEMINFOFLAG_NONE }, // EE_CHAR_UNDERLINE
+ { SID_ATTR_CHAR_STRIKEOUT, SFX_ITEMINFOFLAG_NONE }, // EE_CHAR_STRIKEOUT
+ { SID_ATTR_CHAR_POSTURE, SFX_ITEMINFOFLAG_NONE }, // EE_CHAR_ITALIC
+ { SID_ATTR_CHAR_CONTOUR, SFX_ITEMINFOFLAG_NONE }, // EE_CHAR_OUTLINE
+ { SID_ATTR_CHAR_SHADOWED, SFX_ITEMINFOFLAG_NONE }, // EE_CHAR_SHADOW
+ { SID_ATTR_CHAR_ESCAPEMENT, SFX_ITEMINFOFLAG_NONE }, // EE_CHAR_ESCAPEMENT
+ { SID_ATTR_CHAR_AUTOKERN, SFX_ITEMINFOFLAG_NONE }, // EE_CHAR_PAIRKERNING
+ { SID_ATTR_CHAR_KERNING, SFX_ITEMINFOFLAG_NONE }, // EE_CHAR_KERNING
+ { SID_ATTR_CHAR_WORDLINEMODE, SFX_ITEMINFOFLAG_NONE }, // EE_CHAR_WLM
+ { SID_ATTR_CHAR_LANGUAGE, SFX_ITEMINFOFLAG_NONE }, // EE_CHAR_LANGUAGE
+ { SID_ATTR_CHAR_CJK_LANGUAGE, SFX_ITEMINFOFLAG_NONE }, // EE_CHAR_LANGUAGE_CJK
+ { SID_ATTR_CHAR_CTL_LANGUAGE, SFX_ITEMINFOFLAG_NONE }, // EE_CHAR_LANGUAGE_CTL
+ { SID_ATTR_CHAR_CJK_FONT, SFX_ITEMINFOFLAG_SUPPORT_SURROGATE }, // EE_CHAR_FONTINFO_CJK
+ { SID_ATTR_CHAR_CTL_FONT, SFX_ITEMINFOFLAG_SUPPORT_SURROGATE }, // EE_CHAR_FONTINFO_CTL
+ { SID_ATTR_CHAR_CJK_FONTHEIGHT, SFX_ITEMINFOFLAG_NONE }, // EE_CHAR_FONTHEIGHT_CJK
+ { SID_ATTR_CHAR_CTL_FONTHEIGHT, SFX_ITEMINFOFLAG_NONE }, // EE_CHAR_FONTHEIGHT_CTL
+ { SID_ATTR_CHAR_CJK_WEIGHT, SFX_ITEMINFOFLAG_NONE }, // EE_CHAR_WEIGHT_CJK
+ { SID_ATTR_CHAR_CTL_WEIGHT, SFX_ITEMINFOFLAG_NONE }, // EE_CHAR_WEIGHT_CTL
+ { SID_ATTR_CHAR_CJK_POSTURE, SFX_ITEMINFOFLAG_NONE }, // EE_CHAR_ITALIC_CJK
+ { SID_ATTR_CHAR_CTL_POSTURE, SFX_ITEMINFOFLAG_NONE }, // EE_CHAR_ITALIC_CTL
+ { SID_ATTR_CHAR_EMPHASISMARK, SFX_ITEMINFOFLAG_NONE }, // EE_CHAR_EMPHASISMARK
+ { SID_ATTR_CHAR_RELIEF, SFX_ITEMINFOFLAG_NONE }, // EE_CHAR_RELIEF
+ { 0, SFX_ITEMINFOFLAG_NONE }, // EE_CHAR_RUBI_DUMMY
+ { 0, SFX_ITEMINFOFLAG_SUPPORT_SURROGATE }, // EE_CHAR_XMLATTRIBS
+ { SID_ATTR_CHAR_OVERLINE, SFX_ITEMINFOFLAG_NONE }, // EE_CHAR_OVERLINE
+ { SID_ATTR_CHAR_CASEMAP, SFX_ITEMINFOFLAG_NONE }, // EE_CHAR_CASEMAP
+ { SID_ATTR_CHAR_GRABBAG, SFX_ITEMINFOFLAG_NONE }, // EE_CHAR_GRABBAG
+ { SID_ATTR_CHAR_BACK_COLOR, SFX_ITEMINFOFLAG_NONE }, // EE_CHAR_BKGCOLOR
+ { 0, SFX_ITEMINFOFLAG_NONE }, // EE_FEATURE_TAB
+ { 0, SFX_ITEMINFOFLAG_NONE }, // EE_FEATURE_LINEBR
+ { SID_ATTR_CHAR_CHARSETCOLOR, SFX_ITEMINFOFLAG_NONE }, // EE_FEATURE_NOTCONV
+ { SID_FIELD, SFX_ITEMINFOFLAG_SUPPORT_SURROGATE }, // EE_FEATURE_FIELD
};
EditCharAttrib* MakeCharAttrib( SfxItemPool& rPool, const SfxPoolItem& rAttr, sal_Int32 nS, sal_Int32 nE )
diff --git a/extensions/source/propctrlr/fontdialog.cxx b/extensions/source/propctrlr/fontdialog.cxx
index 59757421a06e..5605560070e8 100644
--- a/extensions/source/propctrlr/fontdialog.cxx
+++ b/extensions/source/propctrlr/fontdialog.cxx
@@ -532,27 +532,27 @@ namespace pcr
// create the pool
static SfxItemInfo const aItemInfos[FontItemIds::CFID_LAST_ITEM_ID - FontItemIds::CFID_FIRST_ITEM_ID + 1] =
{
- // _nSID, _bNeedsPoolRegistration, _bShareable
- { SID_ATTR_CHAR_FONT, false, false },
- { SID_ATTR_CHAR_FONTHEIGHT, false, false },
- { SID_ATTR_CHAR_WEIGHT, false, false },
- { SID_ATTR_CHAR_POSTURE, false, false },
- { SID_ATTR_CHAR_LANGUAGE, false, false },
- { SID_ATTR_CHAR_UNDERLINE, false, false },
- { SID_ATTR_CHAR_STRIKEOUT, false, false },
- { SID_ATTR_CHAR_WORDLINEMODE, false, false },
- { SID_ATTR_CHAR_COLOR, false, false },
- { SID_ATTR_CHAR_RELIEF, false, false },
- { SID_ATTR_CHAR_EMPHASISMARK, false, false },
- { 0, false, false },
- { 0, false, false },
- { 0, false, false },
- { 0, false, false },
- { 0, false, false },
- { 0, false, false },
- { 0, false, false },
- { 0, false, false },
- { SID_ATTR_CHAR_FONTLIST, false, false }
+ // _nItemInfoSlotID, _nItemInfoFlags
+ { SID_ATTR_CHAR_FONT, SFX_ITEMINFOFLAG_NONE }, // FontItemIds::CFID_FONT
+ { SID_ATTR_CHAR_FONTHEIGHT, SFX_ITEMINFOFLAG_NONE }, // FontItemIds::CFID_HEIGHT
+ { SID_ATTR_CHAR_WEIGHT, SFX_ITEMINFOFLAG_NONE }, // FontItemIds::CFID_WEIGHT
+ { SID_ATTR_CHAR_POSTURE, SFX_ITEMINFOFLAG_NONE }, // FontItemIds::CFID_POSTURE
+ { SID_ATTR_CHAR_LANGUAGE, SFX_ITEMINFOFLAG_NONE }, // FontItemIds::CFID_LANGUAGE
+ { SID_ATTR_CHAR_UNDERLINE, SFX_ITEMINFOFLAG_NONE }, // FontItemIds::CFID_UNDERLINE
+ { SID_ATTR_CHAR_STRIKEOUT, SFX_ITEMINFOFLAG_NONE }, // FontItemIds::CFID_STRIKEOUT
+ { SID_ATTR_CHAR_WORDLINEMODE, SFX_ITEMINFOFLAG_NONE }, // FontItemIds::CFID_WORDLINEMODE
+ { SID_ATTR_CHAR_COLOR, SFX_ITEMINFOFLAG_NONE }, // FontItemIds::CFID_CHARCOLOR
+ { SID_ATTR_CHAR_RELIEF, SFX_ITEMINFOFLAG_NONE }, // FontItemIds::CFID_RELIEF
+ { SID_ATTR_CHAR_EMPHASISMARK, SFX_ITEMINFOFLAG_NONE }, // FontItemIds::CFID_EMPHASIS
+ { 0, SFX_ITEMINFOFLAG_NONE }, // FontItemIds::CFID_CJK_FONT
+ { 0, SFX_ITEMINFOFLAG_NONE }, // FontItemIds::CFID_CJK_HEIGHT
+ { 0, SFX_ITEMINFOFLAG_NONE }, // FontItemIds::CFID_CJK_WEIGHT
+ { 0, SFX_ITEMINFOFLAG_NONE }, // FontItemIds::CFID_CJK_POSTURE
+ { 0, SFX_ITEMINFOFLAG_NONE }, // FontItemIds::CFID_CJK_LANGUAGE
+ { 0, SFX_ITEMINFOFLAG_NONE }, // FontItemIds::CFID_CASEMAP
+ { 0, SFX_ITEMINFOFLAG_NONE }, // FontItemIds::CFID_CONTOUR
+ { 0, SFX_ITEMINFOFLAG_NONE }, // FontItemIds::CFID_SHADOWED
+ { SID_ATTR_CHAR_FONTLIST, SFX_ITEMINFOFLAG_NONE } // FontItemIds::CFID_FONTLIST
};
_rpPool = new SfxItemPool("PCRControlFontItemPool", FontItemIds::CFID_FIRST_ITEM_ID, FontItemIds::CFID_LAST_ITEM_ID,
diff --git a/include/svl/itempool.hxx b/include/svl/itempool.hxx
index 0a2153c33267..f6193bebe374 100644
--- a/include/svl/itempool.hxx
+++ b/include/svl/itempool.hxx
@@ -31,23 +31,24 @@
#include <salhelper/simplereferenceobject.hxx>
#include <svl/SfxBroadcaster.hxx>
+// Defines if this Item needs to be registered at the pool
+// to make it accessible for the GetItemSurrogates call. It
+// will not be included when this flag is not set, but also
+// needs no registration. There are SAL_INFO calls in the
+// GetItemSurrogates impl that will mention that
+#define SFX_ITEMINFOFLAG_NONE 0x0000
+#define SFX_ITEMINFOFLAG_SUPPORT_SURROGATE 0x0001
+
struct SfxItemInfo
{
// Defines a mapping between WhichID <-> SlotID
- sal_uInt16 _nSID;
-
- // Defines if this Item needs to be registered at the pool
- // to make it accessible for the GetItemSurrogates call. It
- // will not be included when this flag is not set, but also
- // needs no registration. There are SAL_INFO calls in the
- // GetItemSurrogates impl that will mention that
- bool _bNeedsPoolRegistration : 1;
-
- // Defines if the Item can be shared/RefCounted else it will be cloned.
- // Default is true - as it should be for all Items. It is needed by some
- // SW items, so protected to let them set it in constructor. If this could
- // be fixed at that Items we may remove this again.
- bool _bShareable : 1;
+ sal_uInt16 _nItemInfoSlotID;
+
+ // Pool-dependent Item-Attributes, please use
+ // SFX_ITEMINFOFLAG_* to create/set. Now using a
+ // sal_uInt16 and not separate bools so changes
+ // will be easier
+ sal_uInt16 _nItemInfoFlags;
};
#ifdef DBG_UTIL
@@ -102,10 +103,10 @@ private:
sal_uInt16 GetIndex_Impl(sal_uInt16 nWhich) const;
sal_uInt16 GetSize_Impl() const;
- SVL_DLLPRIVATE bool NeedsPoolRegistration_Impl(sal_uInt16 nPos) const
- { return pItemInfos[nPos]._bNeedsPoolRegistration; }
- SVL_DLLPRIVATE bool Shareable_Impl(sal_uInt16 nPos) const
- { return pItemInfos[nPos]._bShareable; }
+ // moved to private: use the access methods, e.g. NeedsSurrogateSupport
+ SVL_DLLPRIVATE bool CheckItemInfoFlag(sal_uInt16 nWhich, sal_uInt16 nMask) const;
+ SVL_DLLPRIVATE bool CheckItemInfoFlag_Impl(sal_uInt16 nPos, sal_uInt16 nMask) const
+ { return pItemInfos[nPos]._nItemInfoFlags & nMask; }
void registerItemSet(SfxItemSet& rSet);
void unregisterItemSet(SfxItemSet& rSet);
@@ -218,13 +219,10 @@ public:
void Delete();
- bool NeedsPoolRegistration(sal_uInt16 nWhich) const;
- bool NeedsPoolRegistration(const SfxPoolItem &rItem) const
- { return NeedsPoolRegistration(rItem.Which()); }
-
- bool Shareable(sal_uInt16 nWhich) const;
- bool Shareable(const SfxPoolItem &rItem) const
- { return Shareable(rItem.Which()); }
+ // syntactical sugar: direct call to not have to use the flag define
+ // and make the intention clearer
+ bool NeedsSurrogateSupport(sal_uInt16 nWhich) const
+ { return CheckItemInfoFlag(nWhich, SFX_ITEMINFOFLAG_SUPPORT_SURROGATE); }
void SetItemInfos( const SfxItemInfo *pInfos );
sal_uInt16 GetWhich( sal_uInt16 nSlot, bool bDeep = true ) const;
diff --git a/include/svl/itemset.hxx b/include/svl/itemset.hxx
index ae97ec991445..b8b58828e2ac 100644
--- a/include/svl/itemset.hxx
+++ b/include/svl/itemset.hxx
@@ -84,7 +84,7 @@ class SAL_WARN_UNUSED SVL_DLLPUBLIC SfxItemSet
SfxItemPool* m_pPool; ///< pool that stores the items
const SfxItemSet* m_pParent; ///< derivation
sal_uInt16 m_nCount; ///< number of items
- sal_uInt16 m_nRegister; ///< number of items with NeedsPoolRegistration
+ sal_uInt16 m_nRegister; ///< number of items with NeedsSurrogateSupport
sal_uInt16 m_nTotalCount; ///< number of WhichIDs, also size of m_ppItems array
// bitfield (better packaging if a bool needs to be added)
diff --git a/include/svl/poolitem.hxx b/include/svl/poolitem.hxx
index d2165a49a446..f1825831c442 100644
--- a/include/svl/poolitem.hxx
+++ b/include/svl/poolitem.hxx
@@ -129,16 +129,35 @@ class SVL_DLLPUBLIC SfxPoolItem
sal_uInt32 m_nSerialNumber;
#endif
- // bitfield for flags (instead of SfxItemKind)
+ // bitfield for Item attributes that are Item-Dpendent
+
+ // Item is a SfxVoidItem (used for SfxItemState::DISABLED,
+ // but unfortunately also for some slot stuff with
+ // Which != 0) -> needs cleanup
bool m_bIsVoidItem : 1; // bit 0
+
+ // Item is registered at some Pool as default.
+ // m_bStaticDefault: direct Pool Item (CAUTION:
+ // thetse are not really 'static', but should be)
+ // -> needs cleanup
+ // m_bPoolDefault: set by user using SetPoolDefaultItem
+ // tho should be better called 'UserDefault'
bool m_bStaticDefault : 1; // bit 1
bool m_bPoolDefault : 1; // bit 2
+
+ // Item is derived from SfxSetItem -> is Pool-dependent
bool m_bIsSetItem : 1; // bit 3
+ // Defines if the Item can be shared/RefCounted else it will be cloned.
+ // Default is true - as it should be for all Items. It is needed by some
+ // SW items, so protected to let them set it in constructor. If this could
+ // be fixed at that Items we may remove this again.
+ bool m_bShareable : 1; // bit 4
+
protected:
#ifdef DBG_UTIL
// this flag will make debugging item stuff much simpler
- bool m_bDeleted : 1; // bit 4
+ bool m_bDeleted : 1; // bit 5
#endif
private:
@@ -153,6 +172,7 @@ protected:
void setStaticDefault() { m_bStaticDefault = true; }
void setPoolDefault() { m_bPoolDefault = true; }
void setIsSetItem() { m_bIsSetItem = true; }
+ void setNonShareable() { m_bShareable = false; }
public:
inline void AddRef(sal_uInt32 n = 1) const
@@ -170,6 +190,7 @@ public:
bool isStaticDefault() const { return m_bStaticDefault; }
bool isPoolDefault() const { return m_bPoolDefault; }
bool isSetItem() const { return m_bIsSetItem; }
+ bool isShareable() const { return m_bShareable; }
// version that allows nullptrs
static bool areSame(const SfxPoolItem* pItem1, const SfxPoolItem* pItem2);
diff --git a/reportdesign/source/ui/misc/UITools.cxx b/reportdesign/source/ui/misc/UITools.cxx
index 9ac14c4bc10e..99b5477788d3 100644
--- a/reportdesign/source/ui/misc/UITools.cxx
+++ b/reportdesign/source/ui/misc/UITools.cxx
@@ -559,68 +559,68 @@ bool openCharDialog( const uno::Reference<report::XReportControlFormat >& _rxRep
// UNO->ItemSet
static SfxItemInfo aItemInfos[] =
{
- // _nSID, _bNeedsPoolRegistration, _bShareable
- { 0, false, true }, // XATTR_FILLSTYLE
- { 0, true, true }, // XATTR_FILLCOLOR
- { 0, false, true }, // XATTR_FILLGRADIENT
- { 0, false, true }, // XATTR_FILLHATCH
- { 0, false, true }, // XATTR_FILLBITMAP
- { 0, false, true }, // XATTR_FILLTRANSPARENCE
- { 0, false, true }, // XATTR_GRADIENTSTEPCOUNT
- { 0, false, true }, // XATTR_FILLBMP_TILE
- { 0, false, true }, // XATTR_FILLBMP_POS
- { 0, false, true }, // XATTR_FILLBMP_SIZEX
- { 0, false, true }, // XATTR_FILLBMP_SIZEY
- { 0, false, true }, // XATTR_FILLFLOATTRANSPARENCE
- { 0, false, true }, // XATTR_SECONDARYFILLCOLOR
- { 0, false, true }, // XATTR_FILLBMP_SIZELOG
- { 0, false, true }, // XATTR_FILLBMP_TILEOFFSETX
- { 0, false, true }, // XATTR_FILLBMP_TILEOFFSETY
- { 0, false, true }, // XATTR_FILLBMP_STRETCH
- { 0, false, true }, // XATTR_FILLBMP_POSOFFSETX
- { 0, false, true }, // XATTR_FILLBMP_POSOFFSETY
- { 0, false, true }, // XATTR_FILLBACKGROUND
-
- { SID_ATTR_CHAR_FONT, false, true },
- { SID_ATTR_CHAR_FONTHEIGHT, false, true },
- { SID_ATTR_CHAR_LANGUAGE, false, true },
- { SID_ATTR_CHAR_POSTURE, false, true },
- { SID_ATTR_CHAR_WEIGHT, false, true },
- { SID_ATTR_CHAR_SHADOWED, false, true },
- { SID_ATTR_CHAR_WORDLINEMODE, false, true },
- { SID_ATTR_CHAR_CONTOUR, false, true },
- { SID_ATTR_CHAR_STRIKEOUT, false, true },
- { SID_ATTR_CHAR_UNDERLINE, false, true },
- { SID_ATTR_CHAR_COLOR, false, true },
- { SID_ATTR_CHAR_KERNING, false, true },
- { SID_ATTR_CHAR_CASEMAP, false, true },
- { SID_ATTR_CHAR_ESCAPEMENT, false, true },
- { SID_ATTR_CHAR_FONTLIST, false, true },
- { SID_ATTR_CHAR_AUTOKERN, false, true },
- { SID_COLOR_TABLE, false, true },
- { SID_ATTR_FLASH, false, true },
- { SID_ATTR_CHAR_EMPHASISMARK, false, true },
- { SID_ATTR_CHAR_TWO_LINES, false, true },
- { SID_ATTR_CHAR_ROTATED, false, true },
- { SID_ATTR_CHAR_SCALEWIDTH, false, true },
- { SID_ATTR_CHAR_RELIEF, false, true },
- { SID_ATTR_CHAR_HIDDEN, false, true },
- { SID_ATTR_BRUSH, false, true },
- { SID_ATTR_ALIGN_HOR_JUSTIFY, false, true },
- { SID_ATTR_ALIGN_VER_JUSTIFY, false, true },
+ // _nItemInfoSlotID, _nItemInfoFlags
+ { 0, SFX_ITEMINFOFLAG_NONE }, // XATTR_FILLSTYLE
+ { 0, SFX_ITEMINFOFLAG_SUPPORT_SURROGATE }, // XATTR_FILLCOLOR
+ { 0, SFX_ITEMINFOFLAG_NONE }, // XATTR_FILLGRADIENT
+ { 0, SFX_ITEMINFOFLAG_NONE }, // XATTR_FILLHATCH
+ { 0, SFX_ITEMINFOFLAG_NONE }, // XATTR_FILLBITMAP
+ { 0, SFX_ITEMINFOFLAG_NONE }, // XATTR_FILLTRANSPARENCE
+ { 0, SFX_ITEMINFOFLAG_NONE }, // XATTR_GRADIENTSTEPCOUNT
+ { 0, SFX_ITEMINFOFLAG_NONE }, // XATTR_FILLBMP_TILE
+ { 0, SFX_ITEMINFOFLAG_NONE }, // XATTR_FILLBMP_POS
+ { 0, SFX_ITEMINFOFLAG_NONE }, // XATTR_FILLBMP_SIZEX
+ { 0, SFX_ITEMINFOFLAG_NONE }, // XATTR_FILLBMP_SIZEY
+ { 0, SFX_ITEMINFOFLAG_NONE }, // XATTR_FILLFLOATTRANSPARENCE
+ { 0, SFX_ITEMINFOFLAG_NONE }, // XATTR_SECONDARYFILLCOLOR
+ { 0, SFX_ITEMINFOFLAG_NONE }, // XATTR_FILLBMP_SIZELOG
+ { 0, SFX_ITEMINFOFLAG_NONE }, // XATTR_FILLBMP_TILEOFFSETX
+ { 0, SFX_ITEMINFOFLAG_NONE }, // XATTR_FILLBMP_TILEOFFSETY
+ { 0, SFX_ITEMINFOFLAG_NONE }, // XATTR_FILLBMP_STRETCH
+ { 0, SFX_ITEMINFOFLAG_NONE }, // XATTR_FILLBMP_POSOFFSETX
+ { 0, SFX_ITEMINFOFLAG_NONE }, // XATTR_FILLBMP_POSOFFSETY
+ { 0, SFX_ITEMINFOFLAG_NONE }, // XATTR_FILLBACKGROUND
+
+ { SID_ATTR_CHAR_FONT, SFX_ITEMINFOFLAG_NONE },
+ { SID_ATTR_CHAR_FONTHEIGHT, SFX_ITEMINFOFLAG_NONE },
+ { SID_ATTR_CHAR_LANGUAGE, SFX_ITEMINFOFLAG_NONE },
+ { SID_ATTR_CHAR_POSTURE, SFX_ITEMINFOFLAG_NONE },
+ { SID_ATTR_CHAR_WEIGHT, SFX_ITEMINFOFLAG_NONE },
+ { SID_ATTR_CHAR_SHADOWED, SFX_ITEMINFOFLAG_NONE },
+ { SID_ATTR_CHAR_WORDLINEMODE, SFX_ITEMINFOFLAG_NONE },
+ { SID_ATTR_CHAR_CONTOUR, SFX_ITEMINFOFLAG_NONE },
+ { SID_ATTR_CHAR_STRIKEOUT, SFX_ITEMINFOFLAG_NONE },
+ { SID_ATTR_CHAR_UNDERLINE, SFX_ITEMINFOFLAG_NONE },
+ { SID_ATTR_CHAR_COLOR, SFX_ITEMINFOFLAG_NONE },
+ { SID_ATTR_CHAR_KERNING, SFX_ITEMINFOFLAG_NONE },
+ { SID_ATTR_CHAR_CASEMAP, SFX_ITEMINFOFLAG_NONE },
+ { SID_ATTR_CHAR_ESCAPEMENT, SFX_ITEMINFOFLAG_NONE },
+ { SID_ATTR_CHAR_FONTLIST, SFX_ITEMINFOFLAG_NONE },
+ { SID_ATTR_CHAR_AUTOKERN, SFX_ITEMINFOFLAG_NONE },
+ { SID_COLOR_TABLE, SFX_ITEMINFOFLAG_NONE },
+ { SID_ATTR_FLASH, SFX_ITEMINFOFLAG_NONE },
+ { SID_ATTR_CHAR_EMPHASISMARK, SFX_ITEMINFOFLAG_NONE },
+ { SID_ATTR_CHAR_TWO_LINES, SFX_ITEMINFOFLAG_NONE },
+ { SID_ATTR_CHAR_ROTATED, SFX_ITEMINFOFLAG_NONE },
+ { SID_ATTR_CHAR_SCALEWIDTH, SFX_ITEMINFOFLAG_NONE },
+ { SID_ATTR_CHAR_RELIEF, SFX_ITEMINFOFLAG_NONE },
+ { SID_ATTR_CHAR_HIDDEN, SFX_ITEMINFOFLAG_NONE },
+ { SID_ATTR_BRUSH, SFX_ITEMINFOFLAG_NONE },
+ { SID_ATTR_ALIGN_HOR_JUSTIFY, SFX_ITEMINFOFLAG_NONE },
+ { SID_ATTR_ALIGN_VER_JUSTIFY, SFX_ITEMINFOFLAG_NONE },
// Asian
- { SID_ATTR_CHAR_CJK_FONT, false, true },
- { SID_ATTR_CHAR_CJK_FONTHEIGHT, false, true },
- { SID_ATTR_CHAR_CJK_LANGUAGE, false, true },
- { SID_ATTR_CHAR_CJK_POSTURE, false, true },
- { SID_ATTR_CHAR_CJK_WEIGHT, false, true },
+ { SID_ATTR_CHAR_CJK_FONT, SFX_ITEMINFOFLAG_NONE },
+ { SID_ATTR_CHAR_CJK_FONTHEIGHT, SFX_ITEMINFOFLAG_NONE },
+ { SID_ATTR_CHAR_CJK_LANGUAGE, SFX_ITEMINFOFLAG_NONE },
+ { SID_ATTR_CHAR_CJK_POSTURE, SFX_ITEMINFOFLAG_NONE },
+ { SID_ATTR_CHAR_CJK_WEIGHT, SFX_ITEMINFOFLAG_NONE },
// Complex
- { SID_ATTR_CHAR_CTL_FONT, false, true },
- { SID_ATTR_CHAR_CTL_FONTHEIGHT, false, true },
- { SID_ATTR_CHAR_CTL_LANGUAGE, false, true },
- { SID_ATTR_CHAR_CTL_POSTURE, false, true },
- { SID_ATTR_CHAR_CTL_WEIGHT, false, true }
+ { SID_ATTR_CHAR_CTL_FONT, SFX_ITEMINFOFLAG_NONE },
+ { SID_ATTR_CHAR_CTL_FONTHEIGHT, SFX_ITEMINFOFLAG_NONE },
+ { SID_ATTR_CHAR_CTL_LANGUAGE, SFX_ITEMINFOFLAG_NONE },
+ { SID_ATTR_CHAR_CTL_POSTURE, SFX_ITEMINFOFLAG_NONE },
+ { SID_ATTR_CHAR_CTL_WEIGHT, SFX_ITEMINFOFLAG_NONE }
};
FontList aFontList(Application::GetDefaultDevice());
XColorListRef pColorList( XColorList::CreateStdColorList() );
diff --git a/reportdesign/source/ui/report/ReportController.cxx b/reportdesign/source/ui/report/ReportController.cxx
index 3047fd404642..b0a92b2a07e9 100644
--- a/reportdesign/source/ui/report/ReportController.cxx
+++ b/reportdesign/source/ui/report/ReportController.cxx
@@ -2329,36 +2329,36 @@ void OReportController::openPageDialog(const uno::Reference<report::XSection>& _
// UNO->ItemSet
static SfxItemInfo aItemInfos[] =
{
- // _nSID, _bNeedsPoolRegistration, _bShareable
- { SID_ATTR_LRSPACE, false, true },
- { SID_ATTR_ULSPACE, false, true },
- { SID_ATTR_PAGE, false, true },
- { SID_ATTR_PAGE_SIZE, false, true },
- { SID_ENUM_PAGE_MODE, false, true },
- { SID_PAPER_START, false, true },
- { SID_PAPER_END, false, true },
- { SID_ATTR_BRUSH, false, true },
- { 0, false, true }, // XATTR_FILLSTYLE
- { 0, true, true }, // XATTR_FILLCOLOR
- { 0, false, true }, // XATTR_FILLGRADIENT
- { 0, false, true }, // XATTR_FILLHATCH
- { 0, false, true }, // XATTR_FILLBITMAP
- { 0, false, true }, // XATTR_FILLTRANSPARENCE
- { 0, false, true }, // XATTR_GRADIENTSTEPCOUNT
- { 0, false, true }, // XATTR_FILLBMP_TILE
- { 0, false, true }, // XATTR_FILLBMP_POS
- { 0, false, true }, // XATTR_FILLBMP_SIZEX
- { 0, false, true }, // XATTR_FILLBMP_SIZEY
- { 0, false, true }, // XATTR_FILLFLOATTRANSPARENCE
- { 0, false, true }, // XATTR_SECONDARYFILLCOLOR
- { 0, false, true }, // XATTR_FILLBMP_SIZELOG
- { 0, false, true }, // XATTR_FILLBMP_TILEOFFSETX
- { 0, false, true }, // XATTR_FILLBMP_TILEOFFSETY
- { 0, false, true }, // XATTR_FILLBMP_STRETCH
- { 0, false, true }, // XATTR_FILLBMP_POSOFFSETX
- { 0, false, true }, // XATTR_FILLBMP_POSOFFSETY
- { 0, false, true }, // XATTR_FILLBACKGROUND
- { SID_ATTR_METRIC, false, true }
+ // _nItemInfoSlotID, _nItemInfoFlags
+ { SID_ATTR_LRSPACE, SFX_ITEMINFOFLAG_NONE },
+ { SID_ATTR_ULSPACE, SFX_ITEMINFOFLAG_NONE },
+ { SID_ATTR_PAGE, SFX_ITEMINFOFLAG_NONE },
+ { SID_ATTR_PAGE_SIZE, SFX_ITEMINFOFLAG_NONE },
+ { SID_ENUM_PAGE_MODE, SFX_ITEMINFOFLAG_NONE },
+ { SID_PAPER_START, SFX_ITEMINFOFLAG_NONE },
+ { SID_PAPER_END, SFX_ITEMINFOFLAG_NONE },
+ { SID_ATTR_BRUSH, SFX_ITEMINFOFLAG_NONE },
+ { 0, SFX_ITEMINFOFLAG_NONE }, // XATTR_FILLSTYLE
+ { 0, SFX_ITEMINFOFLAG_SUPPORT_SURROGATE }, // XATTR_FILLCOLOR
+ { 0, SFX_ITEMINFOFLAG_NONE }, // XATTR_FILLGRADIENT
+ { 0, SFX_ITEMINFOFLAG_NONE }, // XATTR_FILLHATCH
+ { 0, SFX_ITEMINFOFLAG_NONE }, // XATTR_FILLBITMAP
+ { 0, SFX_ITEMINFOFLAG_NONE }, // XATTR_FILLTRANSPARENCE
+ { 0, SFX_ITEMINFOFLAG_NONE }, // XATTR_GRADIENTSTEPCOUNT
+ { 0, SFX_ITEMINFOFLAG_NONE }, // XATTR_FILLBMP_TILE
+ { 0, SFX_ITEMINFOFLAG_NONE }, // XATTR_FILLBMP_POS
+ { 0, SFX_ITEMINFOFLAG_NONE }, // XATTR_FILLBMP_SIZEX
+ { 0, SFX_ITEMINFOFLAG_NONE }, // XATTR_FILLBMP_SIZEY
+ { 0, SFX_ITEMINFOFLAG_NONE }, // XATTR_FILLFLOATTRANSPARENCE
+ { 0, SFX_ITEMINFOFLAG_NONE }, // XATTR_SECONDARYFILLCOLOR
+ { 0, SFX_ITEMINFOFLAG_NONE }, // XATTR_FILLBMP_SIZELOG
+ { 0, SFX_ITEMINFOFLAG_NONE }, // XATTR_FILLBMP_TILEOFFSETX
+ { 0, SFX_ITEMINFOFLAG_NONE }, // XATTR_FILLBMP_TILEOFFSETY
+ { 0, SFX_ITEMINFOFLAG_NONE }, // XATTR_FILLBMP_STRETCH
+ { 0, SFX_ITEMINFOFLAG_NONE }, // XATTR_FILLBMP_POSOFFSETX
+ { 0, SFX_ITEMINFOFLAG_NONE }, // XATTR_FILLBMP_POSOFFSETY
+ { 0, SFX_ITEMINFOFLAG_NONE }, // XATTR_FILLBACKGROUND
+ { SID_ATTR_METRIC, SFX_ITEMINFOFLAG_NONE }
};
MeasurementSystem eSystem = SvtSysLocale().GetLocaleData().getMeasurementSystemEnum();
@@ -4188,8 +4188,8 @@ void OReportController::openZoomDialog()
static SfxItemInfo aItemInfos[] =
{
- // _nSID, _bNeedsPoolRegistration, _bShareable
- { SID_ATTR_ZOOM, false, true }
+ // _nItemInfoSlotID, _nItemInfoFlags
+ { SID_ATTR_ZOOM, SFX_ITEMINFOFLAG_NONE }
};
std::vector<SfxPoolItem*> pDefaults
{
diff --git a/sc/source/core/data/docpool.cxx b/sc/source/core/data/docpool.cxx
index d540c9939380..fcad72a6dbea 100644
--- a/sc/source/core/data/docpool.cxx
+++ b/sc/source/core/data/docpool.cxx
@@ -89,96 +89,96 @@ SvxFontItem* getDefaultFontItem(LanguageType eLang, DefaultFontType nFontType, s
SfxItemInfo const aItemInfos[] =
{
- // _nSID, _bNeedsPoolRegistration, _bShareable
- { SID_ATTR_CHAR_FONT, true, true }, // ATTR_FONT
- { SID_ATTR_CHAR_FONTHEIGHT, false, true }, // ATTR_FONT_HEIGHT
- { SID_ATTR_CHAR_WEIGHT, false, true }, // ATTR_FONT_WEIGHT
- { SID_ATTR_CHAR_POSTURE, false, true }, // ATTR_FONT_POSTURE
- { SID_ATTR_CHAR_UNDERLINE, false, true }, // ATTR_FONT_UNDERLINE
- { SID_ATTR_CHAR_OVERLINE, false, true }, // ATTR_FONT_OVERLINE
- { SID_ATTR_CHAR_STRIKEOUT, false, true }, // ATTR_FONT_CROSSEDOUT
- { SID_ATTR_CHAR_CONTOUR, false, true }, // ATTR_FONT_CONTOUR
- { SID_ATTR_CHAR_SHADOWED, false, true }, // ATTR_FONT_SHADOWED
- { SID_ATTR_CHAR_COLOR, true, true }, // ATTR_FONT_COLOR
- { SID_ATTR_CHAR_LANGUAGE, false, true }, // ATTR_FONT_LANGUAGE
- { SID_ATTR_CHAR_CJK_FONT, true, true }, // ATTR_CJK_FONT from 614
- { SID_ATTR_CHAR_CJK_FONTHEIGHT, false, true }, // ATTR_CJK_FONT_HEIGHT from 614
- { SID_ATTR_CHAR_CJK_WEIGHT, false, true }, // ATTR_CJK_FONT_WEIGHT from 614
- { SID_ATTR_CHAR_CJK_POSTURE, false, true }, // ATTR_CJK_FONT_POSTURE from 614
- { SID_ATTR_CHAR_CJK_LANGUAGE, false, true }, // ATTR_CJK_FONT_LANGUAGE from 614
- { SID_ATTR_CHAR_CTL_FONT, true, true }, // ATTR_CTL_FONT from 614
- { SID_ATTR_CHAR_CTL_FONTHEIGHT, false, true }, // ATTR_CTL_FONT_HEIGHT from 614
- { SID_ATTR_CHAR_CTL_WEIGHT, false, true }, // ATTR_CTL_FONT_WEIGHT from 614
- { SID_ATTR_CHAR_CTL_POSTURE, false, true }, // ATTR_CTL_FONT_POSTURE from 614
- { SID_ATTR_CHAR_CTL_LANGUAGE, false, true }, // ATTR_CTL_FONT_LANGUAGE from 614
- { SID_ATTR_CHAR_EMPHASISMARK, false, true }, // ATTR_FONT_EMPHASISMARK from 614
- { 0, true, true }, // ATTR_USERDEF from 614 / 641c
- { SID_ATTR_CHAR_WORDLINEMODE, false, true }, // ATTR_FONT_WORDLINE from 632b
- { SID_ATTR_CHAR_RELIEF, false, true }, // ATTR_FONT_RELIEF from 632b
- { SID_ATTR_ALIGN_HYPHENATION, false, true }, // ATTR_HYPHENATE from 632b
- { 0, false, true }, // ATTR_SCRIPTSPACE from 614d
- { 0, false, true }, // ATTR_HANGPUNCTUATION from 614d
- { SID_ATTR_PARA_FORBIDDEN_RULES, false, true }, // ATTR_FORBIDDEN_RULES from 614d
- { SID_ATTR_ALIGN_HOR_JUSTIFY, false, true }, // ATTR_HOR_JUSTIFY
- { SID_ATTR_ALIGN_HOR_JUSTIFY_METHOD, false, true }, // ATTR_HOR_JUSTIFY_METHOD
- { SID_ATTR_ALIGN_INDENT, false, true }, // ATTR_INDENT from 350
- { SID_ATTR_ALIGN_VER_JUSTIFY, false, true }, // ATTR_VER_JUSTIFY
- { SID_ATTR_ALIGN_VER_JUSTIFY_METHOD, false, true }, // ATTR_VER_JUSTIFY_METHOD
- { SID_ATTR_ALIGN_STACKED, false, true }, // ATTR_STACKED from 680/dr14 (replaces ATTR_ORIENTATION)
- { SID_ATTR_ALIGN_DEGREES, true, true }, // ATTR_ROTATE_VALUE from 367
- { SID_ATTR_ALIGN_LOCKPOS, false, true }, // ATTR_ROTATE_MODE from 367
- { SID_ATTR_ALIGN_ASIANVERTICAL, false, true }, // ATTR_VERTICAL_ASIAN from 642
- { SID_ATTR_FRAMEDIRECTION, false, true }, // ATTR_WRITINGDIR from 643
- { SID_ATTR_ALIGN_LINEBREAK, false, true }, // ATTR_LINEBREAK
- { SID_ATTR_ALIGN_SHRINKTOFIT, false, true }, // ATTR_SHRINKTOFIT from 680/dr14
- { SID_ATTR_BORDER_DIAG_TLBR, false, true }, // ATTR_BORDER_TLBR from 680/dr14
- { SID_ATTR_BORDER_DIAG_BLTR, false, true }, // ATTR_BORDER_BLTR from 680/dr14
- { SID_ATTR_ALIGN_MARGIN, false, true }, // ATTR_MARGIN
- { 0, false, true }, // ATTR_MERGE
- { 0, false, true }, // ATTR_MERGE_FLAG
- { SID_ATTR_NUMBERFORMAT_VALUE, false, true }, // ATTR_VALUE_FORMAT
- { 0, false, true }, // ATTR_LANGUAGE_FORMAT from 329, is combined with SID_ATTR_NUMBERFORMAT_VALUE in the dialog
- { SID_ATTR_BRUSH, true, true }, // ATTR_BACKGROUND
- { SID_SCATTR_PROTECTION, false, true }, // ATTR_PROTECTION
- { SID_ATTR_BORDER_OUTER, false, true }, // ATTR_BORDER
- { SID_ATTR_BORDER_INNER, false, true }, // ATTR_BORDER_INNER
- { SID_ATTR_BORDER_SHADOW, false, true }, // ATTR_SHADOW
- { 0, false, true }, // ATTR_VALIDDATA
- { 0, false, true }, // ATTR_CONDITIONAL
- { 0, false, true }, // ATTR_HYPERLINK
- { SID_ATTR_LRSPACE, false, true }, // ATTR_LRSPACE
- { SID_ATTR_ULSPACE, false, true }, // ATTR_ULSPACE
- { SID_ATTR_PAGE, false, true }, // ATTR_PAGE
- { SID_ATTR_PAGE_PAPERBIN, false, true }, // ATTR_PAGE_PAPERBIN
- { SID_ATTR_PAGE_SIZE, false, true }, // ATTR_PAGE_SIZE
- { SID_ATTR_PAGE_EXT1, false, true }, // ATTR_PAGE_HORCENTER
- { SID_ATTR_PAGE_EXT2, false, true }, // ATTR_PAGE_VERCENTER
- { SID_ATTR_PAGE_ON, false, true }, // ATTR_PAGE_ON
- { SID_ATTR_PAGE_DYNAMIC, false, true }, // ATTR_PAGE_DYNAMIC
- { SID_ATTR_PAGE_SHARED, false, true }, // ATTR_PAGE_SHARED
- { SID_ATTR_PAGE_SHARED_FIRST, false, true }, // ATTR_PAGE_SHARED_FIRST
- { 0, false, true }, // ATTR_PAGE_NOTES aka. SID_SCATTR_PAGE_NOTES
- { 0, false, true }, // ATTR_PAGE_GRID aka. SID_SCATTR_PAGE_GRID
- { 0, false, true }, // ATTR_PAGE_HEADERS aka. SID_SCATTR_PAGE_HEADERS
- { 0, false, true }, // ATTR_PAGE_CHARTS aka. SID_SCATTR_PAGE_CHARTS
- { 0, false, true }, // ATTR_PAGE_OBJECTS aka. SID_SCATTR_PAGE_OBJECTS
- { 0, false, true }, // ATTR_PAGE_DRAWINGS aka. SID_SCATTR_PAGE_DRAWINGS
- { 0, false, true }, // ATTR_PAGE_TOPDOWN aka. SID_SCATTR_PAGE_TOPDOWN
- { 0, false, true }, // ATTR_PAGE_SCALE aka SID_SCATTR_PAGE_SCALE
- { 0, false, true }, // ATTR_PAGE_SCALETOPAGES aka SID_SCATTR_PAGE_SCALETOPAGES
- { 0, false, true }, // ATTR_PAGE_FIRSTPAGENO aka SID_SCATTR_PAGE_FIRSTPAGENO
- { 0, true, true }, // ATTR_PAGE_HEADERLEFT aka SID_SCATTR_PAGE_HEADERLEFT
- { 0, true, true }, // ATTR_PAGE_FOOTERLEFT aka SID_SCATTR_PAGE_FOOTERLEFT
- { 0, true, true }, // ATTR_PAGE_HEADERRIGHT aka SID_SCATTR_PAGE_HEADERRIGHT
- { 0, true, true }, // ATTR_PAGE_FOOTERRIGHT aka. SID_SCATTR_PAGE_FOOTERRIGHT
- { 0, true, true }, // ATTR_PAGE_HEADERFIRST aka. SID_SCATTR_PAGE_HEADERFIRST
- { 0, true, true }, // ATTR_PAGE_FOOTERFIRST aka. SID_SCATTR_PAGE_FOOTERFIRST`
- { SID_ATTR_PAGE_HEADERSET, false, true }, // ATTR_PAGE_HEADERSET
- { SID_ATTR_PAGE_FOOTERSET, false, true }, // ATTR_PAGE_FOOTERSET
- { 0, false, true }, // ATTR_PAGE_FORMULAS aka. SID_SCATTR_PAGE_FORMULAS
- { 0, false, true }, // ATTR_PAGE_NULLVALS aka. SID_SCATTR_PAGE_NULLVALS
- { 0, false, true }, // ATTR_PAGE_SCALETO aka. SID_SCATTR_PAGE_SCALETO
- { 0, false, true } // ATTR_HIDDEN
+ // _nItemInfoSlotID, _nItemInfoFlags
+ { SID_ATTR_CHAR_FONT, SFX_ITEMINFOFLAG_SUPPORT_SURROGATE }, // ATTR_FONT
+ { SID_ATTR_CHAR_FONTHEIGHT, SFX_ITEMINFOFLAG_NONE }, // ATTR_FONT_HEIGHT
+ { SID_ATTR_CHAR_WEIGHT, SFX_ITEMINFOFLAG_NONE }, // ATTR_FONT_WEIGHT
+ { SID_ATTR_CHAR_POSTURE, SFX_ITEMINFOFLAG_NONE }, // ATTR_FONT_POSTURE
+ { SID_ATTR_CHAR_UNDERLINE, SFX_ITEMINFOFLAG_NONE }, // ATTR_FONT_UNDERLINE
+ { SID_ATTR_CHAR_OVERLINE, SFX_ITEMINFOFLAG_NONE }, // ATTR_FONT_OVERLINE
+ { SID_ATTR_CHAR_STRIKEOUT, SFX_ITEMINFOFLAG_NONE }, // ATTR_FONT_CROSSEDOUT
+ { SID_ATTR_CHAR_CONTOUR, SFX_ITEMINFOFLAG_NONE }, // ATTR_FONT_CONTOUR
+ { SID_ATTR_CHAR_SHADOWED, SFX_ITEMINFOFLAG_NONE }, // ATTR_FONT_SHADOWED
+ { SID_ATTR_CHAR_COLOR, SFX_ITEMINFOFLAG_SUPPORT_SURROGATE }, // ATTR_FONT_COLOR
+ { SID_ATTR_CHAR_LANGUAGE, SFX_ITEMINFOFLAG_NONE }, // ATTR_FONT_LANGUAGE
+ { SID_ATTR_CHAR_CJK_FONT, SFX_ITEMINFOFLAG_SUPPORT_SURROGATE }, // ATTR_CJK_FONT from 614
+ { SID_ATTR_CHAR_CJK_FONTHEIGHT, SFX_ITEMINFOFLAG_NONE }, // ATTR_CJK_FONT_HEIGHT from 614
+ { SID_ATTR_CHAR_CJK_WEIGHT, SFX_ITEMINFOFLAG_NONE }, // ATTR_CJK_FONT_WEIGHT from 614
+ { SID_ATTR_CHAR_CJK_POSTURE, SFX_ITEMINFOFLAG_NONE }, // ATTR_CJK_FONT_POSTURE from 614
+ { SID_ATTR_CHAR_CJK_LANGUAGE, SFX_ITEMINFOFLAG_NONE }, // ATTR_CJK_FONT_LANGUAGE from 614
+ { SID_ATTR_CHAR_CTL_FONT, SFX_ITEMINFOFLAG_SUPPORT_SURROGATE }, // ATTR_CTL_FONT from 614
+ { SID_ATTR_CHAR_CTL_FONTHEIGHT, SFX_ITEMINFOFLAG_NONE }, // ATTR_CTL_FONT_HEIGHT from 614
+ { SID_ATTR_CHAR_CTL_WEIGHT, SFX_ITEMINFOFLAG_NONE }, // ATTR_CTL_FONT_WEIGHT from 614
+ { SID_ATTR_CHAR_CTL_POSTURE, SFX_ITEMINFOFLAG_NONE }, // ATTR_CTL_FONT_POSTURE from 614
+ { SID_ATTR_CHAR_CTL_LANGUAGE, SFX_ITEMINFOFLAG_NONE }, // ATTR_CTL_FONT_LANGUAGE from 614
+ { SID_ATTR_CHAR_EMPHASISMARK, SFX_ITEMINFOFLAG_NONE }, // ATTR_FONT_EMPHASISMARK from 614
+ { 0, SFX_ITEMINFOFLAG_SUPPORT_SURROGATE }, // ATTR_USERDEF from 614 / 641c
+ { SID_ATTR_CHAR_WORDLINEMODE, SFX_ITEMINFOFLAG_NONE }, // ATTR_FONT_WORDLINE from 632b
+ { SID_ATTR_CHAR_RELIEF, SFX_ITEMINFOFLAG_NONE }, // ATTR_FONT_RELIEF from 632b
+ { SID_ATTR_ALIGN_HYPHENATION, SFX_ITEMINFOFLAG_NONE }, // ATTR_HYPHENATE from 632b
+ { 0, SFX_ITEMINFOFLAG_NONE }, // ATTR_SCRIPTSPACE from 614d
+ { 0, SFX_ITEMINFOFLAG_NONE }, // ATTR_HANGPUNCTUATION from 614d
+ { SID_ATTR_PARA_FORBIDDEN_RULES, SFX_ITEMINFOFLAG_NONE }, // ATTR_FORBIDDEN_RULES from 614d
+ { SID_ATTR_ALIGN_HOR_JUSTIFY, SFX_ITEMINFOFLAG_NONE }, // ATTR_HOR_JUSTIFY
+ { SID_ATTR_ALIGN_HOR_JUSTIFY_METHOD, SFX_ITEMINFOFLAG_NONE }, // ATTR_HOR_JUSTIFY_METHOD
+ { SID_ATTR_ALIGN_INDENT, SFX_ITEMINFOFLAG_NONE }, // ATTR_INDENT from 350
+ { SID_ATTR_ALIGN_VER_JUSTIFY, SFX_ITEMINFOFLAG_NONE }, // ATTR_VER_JUSTIFY
+ { SID_ATTR_ALIGN_VER_JUSTIFY_METHOD, SFX_ITEMINFOFLAG_NONE }, // ATTR_VER_JUSTIFY_METHOD
+ { SID_ATTR_ALIGN_STACKED, SFX_ITEMINFOFLAG_NONE }, // ATTR_STACKED from 680/dr14 (replaces ATTR_ORIENTATION)
+ { SID_ATTR_ALIGN_DEGREES, SFX_ITEMINFOFLAG_SUPPORT_SURROGATE }, // ATTR_ROTATE_VALUE from 367
+ { SID_ATTR_ALIGN_LOCKPOS, SFX_ITEMINFOFLAG_NONE }, // ATTR_ROTATE_MODE from 367
+ { SID_ATTR_ALIGN_ASIANVERTICAL, SFX_ITEMINFOFLAG_NONE }, // ATTR_VERTICAL_ASIAN from 642
+ { SID_ATTR_FRAMEDIRECTION, SFX_ITEMINFOFLAG_NONE }, // ATTR_WRITINGDIR from 643
+ { SID_ATTR_ALIGN_LINEBREAK, SFX_ITEMINFOFLAG_NONE }, // ATTR_LINEBREAK
+ { SID_ATTR_ALIGN_SHRINKTOFIT, SFX_ITEMINFOFLAG_NONE }, // ATTR_SHRINKTOFIT from 680/dr14
+ { SID_ATTR_BORDER_DIAG_TLBR, SFX_ITEMINFOFLAG_NONE }, // ATTR_BORDER_TLBR from 680/dr14
+ { SID_ATTR_BORDER_DIAG_BLTR, SFX_ITEMINFOFLAG_NONE }, // ATTR_BORDER_BLTR from 680/dr14
+ { SID_ATTR_ALIGN_MARGIN, SFX_ITEMINFOFLAG_NONE }, // ATTR_MARGIN
+ { 0, SFX_ITEMINFOFLAG_NONE }, // ATTR_MERGE
+ { 0, SFX_ITEMINFOFLAG_NONE }, // ATTR_MERGE_FLAG
+ { SID_ATTR_NUMBERFORMAT_VALUE, SFX_ITEMINFOFLAG_NONE }, // ATTR_VALUE_FORMAT
+ { 0, SFX_ITEMINFOFLAG_NONE }, // ATTR_LANGUAGE_FORMAT from 329, is combined with SID_ATTR_NUMBERFORMAT_VALUE in the dialog
+ { SID_ATTR_BRUSH, SFX_ITEMINFOFLAG_SUPPORT_SURROGATE }, // ATTR_BACKGROUND
+ { SID_SCATTR_PROTECTION, SFX_ITEMINFOFLAG_NONE }, // ATTR_PROTECTION
+ { SID_ATTR_BORDER_OUTER, SFX_ITEMINFOFLAG_NONE }, // ATTR_BORDER
+ { SID_ATTR_BORDER_INNER, SFX_ITEMINFOFLAG_NONE }, // ATTR_BORDER_INNER
+ { SID_ATTR_BORDER_SHADOW, SFX_ITEMINFOFLAG_NONE }, // ATTR_SHADOW
+ { 0, SFX_ITEMINFOFLAG_NONE }, // ATTR_VALIDDATA
+ { 0, SFX_ITEMINFOFLAG_NONE }, // ATTR_CONDITIONAL
+ { 0, SFX_ITEMINFOFLAG_NONE }, // ATTR_HYPERLINK
+ { SID_ATTR_LRSPACE, SFX_ITEMINFOFLAG_NONE }, // ATTR_LRSPACE
+ { SID_ATTR_ULSPACE, SFX_ITEMINFOFLAG_NONE }, // ATTR_ULSPACE
+ { SID_ATTR_PAGE, SFX_ITEMINFOFLAG_NONE }, // ATTR_PAGE
+ { SID_ATTR_PAGE_PAPERBIN, SFX_ITEMINFOFLAG_NONE }, // ATTR_PAGE_PAPERBIN
+ { SID_ATTR_PAGE_SIZE, SFX_ITEMINFOFLAG_NONE }, // ATTR_PAGE_SIZE
+ { SID_ATTR_PAGE_EXT1, SFX_ITEMINFOFLAG_NONE }, // ATTR_PAGE_HORCENTER
+ { SID_ATTR_PAGE_EXT2, SFX_ITEMINFOFLAG_NONE }, // ATTR_PAGE_VERCENTER
+ { SID_ATTR_PAGE_ON, SFX_ITEMINFOFLAG_NONE }, // ATTR_PAGE_ON
+ { SID_ATTR_PAGE_DYNAMIC, SFX_ITEMINFOFLAG_NONE }, // ATTR_PAGE_DYNAMIC
+ { SID_ATTR_PAGE_SHARED, SFX_ITEMINFOFLAG_NONE }, // ATTR_PAGE_SHARED
+ { SID_ATTR_PAGE_SHARED_FIRST, SFX_ITEMINFOFLAG_NONE }, // ATTR_PAGE_SHARED_FIRST
+ { 0, SFX_ITEMINFOFLAG_NONE }, // ATTR_PAGE_NOTES aka. SID_SCATTR_PAGE_NOTES
+ { 0, SFX_ITEMINFOFLAG_NONE }, // ATTR_PAGE_GRID aka. SID_SCATTR_PAGE_GRID
+ { 0, SFX_ITEMINFOFLAG_NONE }, // ATTR_PAGE_HEADERS aka. SID_SCATTR_PAGE_HEADERS
+ { 0, SFX_ITEMINFOFLAG_NONE }, // ATTR_PAGE_CHARTS aka. SID_SCATTR_PAGE_CHARTS
+ { 0, SFX_ITEMINFOFLAG_NONE }, // ATTR_PAGE_OBJECTS aka. SID_SCATTR_PAGE_OBJECTS
+ { 0, SFX_ITEMINFOFLAG_NONE }, // ATTR_PAGE_DRAWINGS aka. SID_SCATTR_PAGE_DRAWINGS
+ { 0, SFX_ITEMINFOFLAG_NONE }, // ATTR_PAGE_TOPDOWN aka. SID_SCATTR_PAGE_TOPDOWN
+ { 0, SFX_ITEMINFOFLAG_NONE }, // ATTR_PAGE_SCALE aka SID_SCATTR_PAGE_SCALE
+ { 0, SFX_ITEMINFOFLAG_NONE }, // ATTR_PAGE_SCALETOPAGES aka SID_SCATTR_PAGE_SCALETOPAGES
+ { 0, SFX_ITEMINFOFLAG_NONE }, // ATTR_PAGE_FIRSTPAGENO aka SID_SCATTR_PAGE_FIRSTPAGENO
+ { 0, SFX_ITEMINFOFLAG_SUPPORT_SURROGATE }, // ATTR_PAGE_HEADERLEFT aka SID_SCATTR_PAGE_HEADERLEFT
+ { 0, SFX_ITEMINFOFLAG_SUPPORT_SURROGATE }, // ATTR_PAGE_FOOTERLEFT aka SID_SCATTR_PAGE_FOOTERLEFT
+ { 0, SFX_ITEMINFOFLAG_SUPPORT_SURROGATE }, // ATTR_PAGE_HEADERRIGHT aka SID_SCATTR_PAGE_HEADERRIGHT
+ { 0, SFX_ITEMINFOFLAG_SUPPORT_SURROGATE }, // ATTR_PAGE_FOOTERRIGHT aka. SID_SCATTR_PAGE_FOOTERRIGHT
+ { 0, SFX_ITEMINFOFLAG_SUPPORT_SURROGATE }, // ATTR_PAGE_HEADERFIRST aka. SID_SCATTR_PAGE_HEADERFIRST
+ { 0, SFX_ITEMINFOFLAG_SUPPORT_SURROGATE }, // ATTR_PAGE_FOOTERFIRST aka. SID_SCATTR_PAGE_FOOTERFIRST`
+ { SID_ATTR_PAGE_HEADERSET, SFX_ITEMINFOFLAG_NONE }, // ATTR_PAGE_HEADERSET
+ { SID_ATTR_PAGE_FOOTERSET, SFX_ITEMINFOFLAG_NONE }, // ATTR_PAGE_FOOTERSET
+ { 0, SFX_ITEMINFOFLAG_NONE }, // ATTR_PAGE_FORMULAS aka. SID_SCATTR_PAGE_FORMULAS
+ { 0, SFX_ITEMINFOFLAG_NONE }, // ATTR_PAGE_NULLVALS aka. SID_SCATTR_PAGE_NULLVALS
+ { 0, SFX_ITEMINFOFLAG_NONE }, // ATTR_PAGE_SCALETO aka. SID_SCATTR_PAGE_SCALETO
+ { 0, SFX_ITEMINFOFLAG_NONE } // ATTR_HIDDEN
};
static_assert(
SAL_N_ELEMENTS(aItemInfos) == ATTR_ENDINDEX - ATTR_STARTINDEX + 1, "these must match");
diff --git a/sc/source/ui/app/msgpool.cxx b/sc/source/ui/app/msgpool.cxx
index 227dbce4560b..83a47c141e48 100644
--- a/sc/source/ui/app/msgpool.cxx
+++ b/sc/source/ui/app/msgpool.cxx
@@ -25,17 +25,17 @@
SfxItemInfo const aMsgItemInfos[] =
{
- // _nSID, _bNeedsPoolRegistration, _bShareable
- { 0, false, true }, // SCITEM_STRING
- { 0, false, true }, // SCITEM_SEARCHDATA - stop using this!
- { SID_SORT, false, true }, // SCITEM_SORTDATA
- { SID_QUERY, false, true }, // SCITEM_QUERYDATA
- { SID_SUBTOTALS, false, true }, // SCITEM_SUBTDATA
- { SID_CONSOLIDATE, false, true }, // SCITEM_CONSOLIDATEDATA
- { SID_PIVOT_TABLE, false, true }, // SCITEM_PIVOTDATA
- { SID_SOLVE, false, true }, // SCITEM_SOLVEDATA
- { SID_SCUSERLISTS, false, true }, // SCITEM_USERLIST
- { 0, true, false } // SCITEM_CONDFORMATDLGDATA
+ // _nItemInfoSlotID, _nItemInfoFlags
+ { 0, SFX_ITEMINFOFLAG_NONE }, // SCITEM_STRING
+ { 0, SFX_ITEMINFOFLAG_NONE }, // SCITEM_SEARCHDATA - stop using this!
+ { SID_SORT, SFX_ITEMINFOFLAG_NONE }, // SCITEM_SORTDATA
+ { SID_QUERY, SFX_ITEMINFOFLAG_NONE }, // SCITEM_QUERYDATA
+ { SID_SUBTOTALS, SFX_ITEMINFOFLAG_NONE }, // SCITEM_SUBTDATA
+ { SID_CONSOLIDATE, SFX_ITEMINFOFLAG_NONE }, // SCITEM_CONSOLIDATEDATA
+ { SID_PIVOT_TABLE, SFX_ITEMINFOFLAG_NONE }, // SCITEM_PIVOTDATA
+ { SID_SOLVE, SFX_ITEMINFOFLAG_NONE }, // SCITEM_SOLVEDATA
+ { SID_SCUSERLISTS, SFX_ITEMINFOFLAG_NONE }, // SCITEM_USERLIST
+ { 0, SFX_ITEMINFOFLAG_SUPPORT_SURROGATE } // SCITEM_CONDFORMATDLGDATA
};
ScMessagePool::ScMessagePool()
diff --git a/sc/source/ui/condformat/condformatdlgitem.cxx b/sc/source/ui/condformat/condformatdlgitem.cxx
index b0bf511c3b79..e62e720049e9 100644
--- a/sc/source/ui/condformat/condformatdlgitem.cxx
+++ b/sc/source/ui/condformat/condformatdlgitem.cxx
@@ -21,6 +21,7 @@ ScCondFormatDlgItem::ScCondFormatDlgItem(std::shared_ptr<ScConditionalFormatList
meDialogType(condformat::dialog::CONDITION),
mbManaged(bManaged)
{
+ setNonShareable();
}
ScCondFormatDlgItem::~ScCondFormatDlgItem()
diff --git a/sfx2/source/explorer/nochaos.cxx b/sfx2/source/explorer/nochaos.cxx
index 999db2dd3de4..3d9dc5bc9450 100644
--- a/sfx2/source/explorer/nochaos.cxx
+++ b/sfx2/source/explorer/nochaos.cxx
@@ -164,8 +164,8 @@ inline void CntStaticPoolDefaults_Impl::Insert(
sal_uInt16 nPos = pItem->Which() - WID_CHAOS_START;
mvDefaults[ nPos ] = pItem;
- m_pItemInfos[ nPos ]._nSID = 0;
- m_pItemInfos[ nPos ]._bNeedsPoolRegistration = false;
+ m_pItemInfos[ nPos ]._nItemInfoSlotID = 0;
+ m_pItemInfos[ nPos ]._nItemInfoFlags = SFX_ITEMINFOFLAG_NONE;
}
diff --git a/svl/qa/unit/items/stylepool.cxx b/svl/qa/unit/items/stylepool.cxx
index 454db1c2faf4..c7b59e77940e 100644
--- a/svl/qa/unit/items/stylepool.cxx
+++ b/svl/qa/unit/items/stylepool.cxx
@@ -26,8 +26,8 @@ CPPUNIT_TEST_FIXTURE(StylePoolTest, testIterationOrder)
// Set up a style pool with multiple parents.
SfxStringItem aDefault1(1);
std::vector<SfxPoolItem*> aDefaults{ &aDefault1 };
- SfxItemInfo const aItems[] = { // _nSID, _bNeedsPoolRegistration, _bShareable
- { 2, false, false }
+ SfxItemInfo const aItems[] = { // _nItemInfoSlotID, _nItemInfoFlags
+ { 2, SFX_ITEMINFOFLAG_NONE }
};
rtl::Reference<SfxItemPool> pPool = new SfxItemPool("test", 1, 1, aItems);
@@ -84,8 +84,8 @@ CPPUNIT_TEST_FIXTURE(StylePoolTest, testFixedItemSet)
{
SfxStringItem aDefault1(1);
std::vector<SfxPoolItem*> aDefaults{ &aDefault1 };
- SfxItemInfo const aItems[] = { // _nSID, _bNeedsPoolRegistration, _bShareable
- { 2, false, false }
+ SfxItemInfo const aItems[] = { // _nItemInfoSlotID, _nItemInfoFlags
+ { 2, SFX_ITEMINFOFLAG_NONE }
};
rtl::Reference<SfxItemPool> pPool = new SfxItemPool("test", 1, 1, aItems);
pPool->SetDefaults(&aDefaults);
diff --git a/svl/source/items/itempool.cxx b/svl/source/items/itempool.cxx
index 0fd59788a711..341cbd3672ff 100644
--- a/svl/source/items/itempool.cxx
+++ b/svl/source/items/itempool.cxx
@@ -40,7 +40,7 @@ size_t getAllDirectlyPooledSfxPoolItemCount() { return nAllDirectlyPooledSfxPool
size_t getRemainingDirectlyPooledSfxPoolItemCount() { return nRemainingDirectlyPooledSfxPoolItemCount; }
#endif
-// WhichIDs that need to set _bNeedsPoolRegistration in SfxItemInfo
+// WhichIDs that need to set SFX_ITEMINFOFLAG_SUPPORT_SURROGATE in SfxItemInfo
// to true to allow a register of all items of that type/with that WhichID
// to be accessible using SfxItemPool::GetItemSurrogates. Created by
// grepping for 'GetItemSurrogates' usages & interpreting. Some
@@ -210,7 +210,7 @@ lcl_CheckSlots2(std::map<sal_uInt16, sal_uInt16> & rSlotMap,
sal_uInt16 const nCount(rPool.GetLastWhich() - rPool.GetFirstWhich() + 1);
for (sal_uInt16 n = 0; n < nCount; ++n)
{
- sal_uInt16 const nSlotId(pInfo[n]._nSID);
+ sal_uInt16 const nSlotId(pInfo[n]._nItemInfoSlotID);
if (nSlotId != 0
&& nSlotId != 10883 // preexisting duplicate SID_ATTR_GRAF_CROP
&& nSlotId != 10023 // preexisting duplicate SID_ATTR_BORDER_INNER
@@ -355,33 +355,19 @@ const SfxPoolItem* SfxItemPool::GetPoolDefaultItem( sal_uInt16 nWhich ) const
}
-bool SfxItemPool::NeedsPoolRegistration(sal_uInt16 nWhich) const
+bool SfxItemPool::CheckItemInfoFlag(sal_uInt16 nWhich, sal_uInt16 nMask) const
{
if (!IsInRange(nWhich))
{
// get to correct pool
if (mpSecondary)
- return mpSecondary->NeedsPoolRegistration(nWhich);
+ return mpSecondary->CheckItemInfoFlag(nWhich, nMask);
return false;
}
- return NeedsPoolRegistration_Impl(nWhich - mnStart);
+ return CheckItemInfoFlag_Impl(nWhich - mnStart, nMask);
}
-bool SfxItemPool::Shareable(sal_uInt16 nWhich) const
-{
- if (!IsInRange(nWhich))
- {
- // get to correct pool
- if (mpSecondary)
- return mpSecondary->Shareable(nWhich);
- return false;
- }
-
- return Shareable_Impl(nWhich - mnStart);
-}
-
-
SfxBroadcaster& SfxItemPool::BC()
{
return aBC;
@@ -447,7 +433,7 @@ SfxItemPool::SfxItemPool
auto nWhich = nStartWhich;
while (nWhich <= nEndWhich)
{
- if (p->_nSID == nWhich)
+ if (p->_nItemInfoSlotID == nWhich)
{
SAL_WARN("svl.items", "No point mapping a SID to itself, just put a 0 here in the SfxItemInfo array, at index " << (p - pItemInfos));
assert(false);
@@ -911,7 +897,7 @@ void SfxItemPool::CollectSurrogates(std::unordered_set<const SfxPoolItem*>& rTar
// the 3rd source for surrogates is the list of direct put items
// but since these use SfxPoolItemHolder now they are automatically
- // registered at 2nd source - IF NeedsPoolRegistration is set. So
+ // registered at 2nd source - IF NeedsSurrogateSupport is set. So
// as long as we have this DirectPutItem stuff, iterate here and
// warn if an Item was added
const directPutSfxPoolItemHolders& rDirects(GetMasterPool()->maDirectPutItems);
@@ -954,7 +940,7 @@ sal_uInt16 SfxItemPool::GetWhich( sal_uInt16 nSlotId, bool bDeep ) const
sal_uInt16 nCount = mnEnd - mnStart + 1;
for ( sal_uInt16 nOfs = 0; nOfs < nCount; ++nOfs )
- if ( pItemInfos[nOfs]._nSID == nSlotId )
+ if ( pItemInfos[nOfs]._nItemInfoSlotID == nSlotId )
return nOfs + mnStart;
if ( mpSecondary && bDeep )
return mpSecondary->GetWhich(nSlotId);
@@ -975,7 +961,7 @@ sal_uInt16 SfxItemPool::GetSlotId( sal_uInt16 nWhich ) const
return 0;
}
- sal_uInt16 nSID = pItemInfos[nWhich - mnStart]._nSID;
+ sal_uInt16 nSID = pItemInfos[nWhich - mnStart]._nItemInfoSlotID;
return nSID ? nSID : nWhich;
}
@@ -987,7 +973,7 @@ sal_uInt16 SfxItemPool::GetTrueWhich( sal_uInt16 nSlotId, bool bDeep ) const
sal_uInt16 nCount = mnEnd - mnStart + 1;
for ( sal_uInt16 nOfs = 0; nOfs < nCount; ++nOfs )
- if ( pItemInfos[nOfs]._nSID == nSlotId )
+ if ( pItemInfos[nOfs]._nItemInfoSlotID == nSlotId )
return nOfs + mnStart;
if ( mpSecondary && bDeep )
return mpSecondary->GetTrueWhich(nSlotId);
@@ -1007,7 +993,7 @@ sal_uInt16 SfxItemPool::GetTrueSlotId( sal_uInt16 nWhich ) const
assert(false && "unknown WhichId - cannot get slot-id");
return 0;
}
- return pItemInfos[nWhich - mnStart]._nSID;
+ return pItemInfos[nWhich - mnStart]._nItemInfoSlotID;
}
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/svl/source/items/itemset.cxx b/svl/source/items/itemset.cxx
index 673cbea84c50..e734561558e1 100644
--- a/svl/source/items/itemset.cxx
+++ b/svl/source/items/itemset.cxx
@@ -83,7 +83,7 @@ SfxPoolItemHolder::SfxPoolItemHolder(SfxItemPool& rPool, const SfxPoolItem* pIte
#endif
if (nullptr != m_pItem)
m_pItem = implCreateItemEntry(getPool(), m_pItem, m_pItem->Which(), bPassingOwnership);
- if (nullptr != m_pItem && getPool().NeedsPoolRegistration(m_pItem->Which()))
+ if (nullptr != m_pItem && getPool().NeedsSurrogateSupport(m_pItem->Which()))
getPool().registerPoolItemHolder(*this);
}
@@ -101,7 +101,7 @@ SfxPoolItemHolder::SfxPoolItemHolder(const SfxPoolItemHolder& rHolder)
#endif
if (nullptr != m_pItem)
m_pItem = implCreateItemEntry(getPool(), m_pItem, m_pItem->Which(), false);
- if (nullptr != m_pItem && getPool().NeedsPoolRegistration(m_pItem->Which()))
+ if (nullptr != m_pItem && getPool().NeedsSurrogateSupport(m_pItem->Which()))
getPool().registerPoolItemHolder(*this);
}
@@ -111,7 +111,7 @@ SfxPoolItemHolder::~SfxPoolItemHolder()
assert(!isDeleted() && "Destructed instance used (!)");
nAllocatedSfxPoolItemHolderCount--;
#endif
- if (nullptr != m_pItem && getPool().NeedsPoolRegistration(m_pItem->Which()))
+ if (nullptr != m_pItem && getPool().NeedsSurrogateSupport(m_pItem->Which()))
getPool().unregisterPoolItemHolder(*this);
if (nullptr != m_pItem)
implCleanupItemEntry(m_pItem);
@@ -127,7 +127,7 @@ const SfxPoolItemHolder& SfxPoolItemHolder::operator=(const SfxPoolItemHolder& r
if (this == &rHolder || *this == rHolder)
return *this;
- if (nullptr != m_pItem && getPool().NeedsPoolRegistration(m_pItem->Which()))
+ if (nullptr != m_pItem && getPool().NeedsSurrogateSupport(m_pItem->Which()))
getPool().unregisterPoolItemHolder(*this);
if (nullptr != m_pItem)
implCleanupItemEntry(m_pItem);
@@ -137,7 +137,7 @@ const SfxPoolItemHolder& SfxPoolItemHolder::operator=(const SfxPoolItemHolder& r
if (nullptr != m_pItem)
m_pItem = implCreateItemEntry(getPool(), m_pItem, m_pItem->Which(), false);
- if (nullptr != m_pItem && getPool().NeedsPoolRegistration(m_pItem->Which()))
+ if (nullptr != m_pItem && getPool().NeedsSurrogateSupport(m_pItem->Which()))
getPool().registerPoolItemHolder(*this);
return *this;
@@ -328,19 +328,6 @@ SfxPoolItem const* implCreateItemEntry(SfxItemPool& rPool, SfxPoolItem const* pS
// have to do this repeatedly
SfxItemPool* pMasterPool(rPool.GetMasterPool());
assert(nullptr != pMasterPool);
- SfxItemPool* pTargetPool(pMasterPool);
- while (pTargetPool && !pTargetPool->IsInRange(nWhich))
- pTargetPool = pTargetPool->GetSecondaryPool();
-
- // if this goes wrong, an Item with invalid ID for this pool is
- // processed. This is not allowed (and should not happen, e.g.
- // ItemSets already have WhichRanges that are checked against
- // their Pool)
- if (nullptr == pTargetPool)
- {
- assert(false);
- return pSource;
- }
// // currently need to check if pSource is a default Item and
// // avoid it to leave the Pool. This is necessary since Pools
@@ -382,10 +369,6 @@ SfxPoolItem const* implCreateItemEntry(SfxItemPool& rPool, SfxPoolItem const* pS
// }
// }
- // CAUTION: Shareable_Impl and NeedsPoolRegistration_Impl
- // use index, not WhichID (one more reason to change the Pools)
- const sal_uInt16 nIndex(pTargetPool->GetIndex_Impl(nWhich));
-
// the Item itself is shareable when it already is used somewhere
// which is equivalent to be referenced already. IsPooledItem also
// checked for SFX_ITEMS_MAXREF, that is not needed here. Use a
@@ -404,7 +387,7 @@ SfxPoolItem const* implCreateItemEntry(SfxItemPool& rPool, SfxPoolItem const* pS
// target ranges (e.g. look for ATTR_FONT_UNDERLINE)
break;
- if (!pTargetPool->Shareable_Impl(nIndex))
+ if (!pSource->isShareable())
// not shareable, done
break;
@@ -631,10 +614,10 @@ void SfxItemSet::checkRemovePoolRegistration(const SfxPoolItem* pItem)
return;
if (SfxItemPool::IsSlot(pItem->Which()))
- // no slots, these do not support NeedsPoolRegistration
+ // no slots, these do not support NeedsSurrogateSupport
return;
- if(!GetPool()->NeedsPoolRegistration(pItem->Which()))
+ if(!GetPool()->NeedsSurrogateSupport(pItem->Which()))
// not needed for this item, done
return;
@@ -644,7 +627,7 @@ void SfxItemSet::checkRemovePoolRegistration(const SfxPoolItem* pItem)
// decrement counter
m_nRegister--;
- // deregister when no more Items that NeedsPoolRegistration exist
+ // deregister when no more Items that NeedsSurrogateSupport exist
if (0 == m_nRegister)
GetPool()->unregisterItemSet(*this);
}
@@ -660,10 +643,10 @@ void SfxItemSet::checkAddPoolRegistration(const SfxPoolItem* pItem)
return;
if (SfxItemPool::IsSlot(pItem->Which()))
- // no slots, these do not support NeedsPoolRegistration
+ // no slots, these do not support NeedsSurrogateSupport
return;
- if(!GetPool()->NeedsPoolRegistration(pItem->Which()))
+ if(!GetPool()->NeedsSurrogateSupport(pItem->Which()))
// not needed for this item, done
return;
@@ -671,7 +654,7 @@ void SfxItemSet::checkAddPoolRegistration(const SfxPoolItem* pItem)
// allow paired Remove/Add calls (see SfxItemSet::PutImpl)
assert(m_nRegister <= m_nCount);
- // register when first Item that NeedsPoolRegistration exist
+ // register when first Item that NeedsSurrogateSupport exist
if (0 == m_nRegister)
GetPool()->registerItemSet(*this);
diff --git a/svl/source/items/poolitem.cxx b/svl/source/items/poolitem.cxx
index 41b85ba60889..3b0ebd6fa882 100644
--- a/svl/source/items/poolitem.cxx
+++ b/svl/source/items/poolitem.cxx
@@ -498,6 +498,7 @@ SfxPoolItem::SfxPoolItem(sal_uInt16 const nWhich)
, m_bStaticDefault(false)
, m_bPoolDefault(false)
, m_bIsSetItem(false)
+ , m_bShareable(true)
#ifdef DBG_UTIL
, m_bDeleted(false)
#endif
diff --git a/svl/source/items/stylepool.cxx b/svl/source/items/stylepool.cxx
index 9de8d87d13b2..22900163ad59 100644
--- a/svl/source/items/stylepool.cxx
+++ b/svl/source/items/stylepool.cxx
@@ -389,7 +389,7 @@ std::shared_ptr<SfxItemSet> StylePoolImpl::insertItemSet( const SfxItemSet& rSet
}
while( pItem )
{
- if (!rSet.GetPool()->Shareable(pItem->Which()))
+ if (!pItem->isShareable())
bNonShareable = true;
if (!xFoundIgnorableItems || (xFoundIgnorableItems->Put(*pItem) == nullptr))
{
@@ -403,7 +403,7 @@ std::shared_ptr<SfxItemSet> StylePoolImpl::insertItemSet( const SfxItemSet& rSet
pItem = aIgnorableItemsIter.GetCurItem();
while( pItem )
{
- if (!rSet.GetPool()->Shareable(pItem->Which()))
+ if (!pItem->isShareable())
bNonShareable = true;
pCurNode = pCurNode->findChildNode( *pItem, true );
pItem = aIgnorableItemsIter.NextItem();
diff --git a/svx/source/svdraw/svdattr.cxx b/svx/source/svdraw/svdattr.cxx
index c518900e6f03..bf237d35ae18 100644
--- a/svx/source/svdraw/svdattr.cxx
+++ b/svx/source/svdraw/svdattr.cxx
@@ -126,12 +126,12 @@ SdrItemPool::SdrItemPool(
// init the non-persistent items
for(sal_uInt16 i(SDRATTR_NOTPERSIST_FIRST); i <= SDRATTR_NOTPERSIST_LAST; i++)
{
- mpLocalItemInfos[i - SDRATTR_START]._bNeedsPoolRegistration = false;
+ mpLocalItemInfos[i - SDRATTR_START]._nItemInfoFlags = SFX_ITEMINFOFLAG_NONE;
}
- // these slots need _bNeedsPoolRegistration == true, see
+ // these slots need SFX_ITEMINFOFLAG_SUPPORT_SURROGATE, see
// text @svl/source/items/itempool.cxx
- mpLocalItemInfos[SDRATTR_XMLATTRIBUTES -SDRATTR_START]._bNeedsPoolRegistration = true;
+ mpLocalItemInfos[SDRATTR_XMLATTRIBUTES -SDRATTR_START]._nItemInfoFlags = SFX_ITEMINFOFLAG_SUPPORT_SURROGATE;
// init own PoolDefaults
std::vector<SfxPoolItem*>& rPoolDefaults = *mpLocalPoolDefaults;
@@ -353,30 +353,25 @@ SdrItemPool::SdrItemPool(
rPoolDefaults[SDRATTR_WRITINGMODE2 - SDRATTR_START] = new SvxFrameDirectionItem(SvxFrameDirection::Horizontal_LR_TB, SDRATTR_WRITINGMODE2);
// set own ItemInfos
- mpLocalItemInfos[SDRATTR_SHADOW-SDRATTR_START]._nSID=SID_ATTR_FILL_SHADOW;
- mpLocalItemInfos[SDRATTR_SHADOWCOLOR-SDRATTR_START]._nSID=SID_ATTR_SHADOW_COLOR;
- mpLocalItemInfos[SDRATTR_SHADOWTRANSPARENCE-SDRATTR_START]._nSID=SID_ATTR_SHADOW_TRANSPARENCE;
- mpLocalItemInfos[SDRATTR_SHADOWBLUR-SDRATTR_START]._nSID=SID_ATTR_SHADOW_BLUR;
- mpLocalItemInfos[SDRATTR_SHADOWXDIST-SDRATTR_START]._nSID=SID_ATTR_SHADOW_XDISTANCE;
- mpLocalItemInfos[SDRATTR_SHADOWYDIST-SDRATTR_START]._nSID=SID_ATTR_SHADOW_YDISTANCE;
- mpLocalItemInfos[SDRATTR_TEXT_FITTOSIZE-SDRATTR_START]._nSID=SID_ATTR_TEXT_FITTOSIZE;
- mpLocalItemInfos[SDRATTR_GRAFCROP-SDRATTR_START]._nSID=SID_ATTR_GRAF_CROP;
-
- mpLocalItemInfos[SDRATTR_TABLE_BORDER - SDRATTR_START ]._nSID = SID_ATTR_BORDER_OUTER;
- mpLocalItemInfos[SDRATTR_TABLE_BORDER_INNER - SDRATTR_START ]._nSID = SID_ATTR_BORDER_INNER;
- mpLocalItemInfos[SDRATTR_TABLE_BORDER_TLBR - SDRATTR_START ]._nSID = SID_ATTR_BORDER_DIAG_TLBR;
- mpLocalItemInfos[SDRATTR_TABLE_BORDER_BLTR - SDRATTR_START ]._nSID = SID_ATTR_BORDER_DIAG_BLTR;
-
- mpLocalItemInfos[SDRATTR_GLOW_RADIUS - SDRATTR_START]._nSID = SID_ATTR_GLOW_RADIUS;
- mpLocalItemInfos[SDRATTR_GLOW_COLOR - SDRATTR_START]._nSID = SID_ATTR_GLOW_COLOR;
- mpLocalItemInfos[SDRATTR_GLOW_TRANSPARENCY - SDRATTR_START]._nSID = SID_ATTR_GLOW_TRANSPARENCY;
-
- mpLocalItemInfos[SDRATTR_SOFTEDGE_RADIUS - SDRATTR_START]._nSID = SID_ATTR_SOFTEDGE_RADIUS;
-
- mpLocalItemInfos[SDRATTR_TEXTCOLUMNS_NUMBER - SDRATTR_START]._nSID = 0 /*TODO*/;
- mpLocalItemInfos[SDRATTR_TEXTCOLUMNS_SPACING - SDRATTR_START]._nSID = 0 /*TODO*/;
-
- mpLocalItemInfos[SDRATTR_WRITINGMODE2 - SDRATTR_START]._nSID = 0 /*TODO*/;
+ mpLocalItemInfos[SDRATTR_SHADOW-SDRATTR_START]._nItemInfoSlotID=SID_ATTR_FILL_SHADOW;
+ mpLocalItemInfos[SDRATTR_SHADOWCOLOR-SDRATTR_START]._nItemInfoSlotID=SID_ATTR_SHADOW_COLOR;
+ mpLocalItemInfos[SDRATTR_SHADOWTRANSPARENCE-SDRATTR_START]._nItemInfoSlotID=SID_ATTR_SHADOW_TRANSPARENCE;
+ mpLocalItemInfos[SDRATTR_SHADOWBLUR-SDRATTR_START]._nItemInfoSlotID=SID_ATTR_SHADOW_BLUR;
+ mpLocalItemInfos[SDRATTR_SHADOWXDIST-SDRATTR_START]._nItemInfoSlotID=SID_ATTR_SHADOW_XDISTANCE;
+ mpLocalItemInfos[SDRATTR_SHADOWYDIST-SDRATTR_START]._nItemInfoSlotID=SID_ATTR_SHADOW_YDISTANCE;
+ mpLocalItemInfos[SDRATTR_TEXT_FITTOSIZE-SDRATTR_START]._nItemInfoSlotID=SID_ATTR_TEXT_FITTOSIZE;
+ mpLocalItemInfos[SDRATTR_GRAFCROP-SDRATTR_START]._nItemInfoSlotID=SID_ATTR_GRAF_CROP;
+ mpLocalItemInfos[SDRATTR_TABLE_BORDER - SDRATTR_START ]._nItemInfoSlotID = SID_ATTR_BORDER_OUTER;
+ mpLocalItemInfos[SDRATTR_TABLE_BORDER_INNER - SDRATTR_START ]._nItemInfoSlotID = SID_ATTR_BORDER_INNER;
+ mpLocalItemInfos[SDRATTR_TABLE_BORDER_TLBR - SDRATTR_START ]._nItemInfoSlotID = SID_ATTR_BORDER_DIAG_TLBR;
+ mpLocalItemInfos[SDRATTR_TABLE_BORDER_BLTR - SDRATTR_START ]._nItemInfoSlotID = SID_ATTR_BORDER_DIAG_BLTR;
+ mpLocalItemInfos[SDRATTR_GLOW_RADIUS - SDRATTR_START]._nItemInfoSlotID = SID_ATTR_GLOW_RADIUS;
+ mpLocalItemInfos[SDRATTR_GLOW_COLOR - SDRATTR_START]._nItemInfoSlotID = SID_ATTR_GLOW_COLOR;
+ mpLocalItemInfos[SDRATTR_GLOW_TRANSPARENCY - SDRATTR_START]._nItemInfoSlotID = SID_ATTR_GLOW_TRANSPARENCY;
+ mpLocalItemInfos[SDRATTR_SOFTEDGE_RADIUS - SDRATTR_START]._nItemInfoSlotID = SID_ATTR_SOFTEDGE_RADIUS;
+ mpLocalItemInfos[SDRATTR_TEXTCOLUMNS_NUMBER - SDRATTR_START]._nItemInfoSlotID = 0 /*TODO*/;
+ mpLocalItemInfos[SDRATTR_TEXTCOLUMNS_SPACING - SDRATTR_START]._nItemInfoSlotID = 0 /*TODO*/;
+ mpLocalItemInfos[SDRATTR_WRITINGMODE2 - SDRATTR_START]._nItemInfoSlotID = 0 /*TODO*/;
// it's my own creation level, set Defaults and ItemInfos
SetDefaults(mpLocalPoolDefaults);
diff --git a/svx/source/xoutdev/xpool.cxx b/svx/source/xoutdev/xpool.cxx
index 017401983ced..cb91553f5390 100644
--- a/svx/source/xoutdev/xpool.cxx
+++ b/svx/source/xoutdev/xpool.cxx
@@ -159,58 +159,57 @@ XOutdevItemPool::XOutdevItemPool(SfxItemPool* _pMaster)
// create ItemInfos
for(sal_uInt16 i(GetFirstWhich()); i <= GetLastWhich(); i++)
{
- // _nSID, _bNeedsPoolRegistration, _bShareable
- mpLocalItemInfos[i - XATTR_START]._nSID = 0;
- mpLocalItemInfos[i - XATTR_START]._bNeedsPoolRegistration = false;
- mpLocalItemInfos[i - XATTR_START]._bShareable = true;
+ // _nItemInfoSlotID, _nItemInfoFlags
+ mpLocalItemInfos[i - XATTR_START]._nItemInfoSlotID = 0;
+ mpLocalItemInfos[i - XATTR_START]._nItemInfoFlags = SFX_ITEMINFOFLAG_NONE;
}
- // these slots need _bNeedsPoolRegistration == true, see
+ // these slots need SFX_ITEMINFOFLAG_SUPPORT_SURROGATE, see
// text @svl/source/items/itempool.cxx
- mpLocalItemInfos[XATTR_FILLBITMAP -XATTR_START]._bNeedsPoolRegistration = true;
- mpLocalItemInfos[XATTR_FILLGRADIENT -XATTR_START]._bNeedsPoolRegistration = true;
- mpLocalItemInfos[XATTR_FILLHATCH -XATTR_START]._bNeedsPoolRegistration = true;
- mpLocalItemInfos[XATTR_FILLFLOATTRANSPARENCE - XATTR_START]._bNeedsPoolRegistration = true;
- mpLocalItemInfos[XATTR_LINEEND -XATTR_START]._bNeedsPoolRegistration = true;
- mpLocalItemInfos[XATTR_LINESTART -XATTR_START]._bNeedsPoolRegistration = true;
- mpLocalItemInfos[XATTR_LINEDASH -XATTR_START]._bNeedsPoolRegistration = true;
- mpLocalItemInfos[XATTR_FILLCOLOR -XATTR_START]._bNeedsPoolRegistration = true;
+ mpLocalItemInfos[XATTR_FILLBITMAP -XATTR_START]._nItemInfoFlags = SFX_ITEMINFOFLAG_SUPPORT_SURROGATE;
+ mpLocalItemInfos[XATTR_FILLGRADIENT -XATTR_START]._nItemInfoFlags = SFX_ITEMINFOFLAG_SUPPORT_SURROGATE;
+ mpLocalItemInfos[XATTR_FILLHATCH -XATTR_START]._nItemInfoFlags = SFX_ITEMINFOFLAG_SUPPORT_SURROGATE;
+ mpLocalItemInfos[XATTR_FILLFLOATTRANSPARENCE - XATTR_START]._nItemInfoFlags = SFX_ITEMINFOFLAG_SUPPORT_SURROGATE;
+ mpLocalItemInfos[XATTR_LINEEND -XATTR_START]._nItemInfoFlags = SFX_ITEMINFOFLAG_SUPPORT_SURROGATE;
+ mpLocalItemInfos[XATTR_LINESTART -XATTR_START]._nItemInfoFlags = SFX_ITEMINFOFLAG_SUPPORT_SURROGATE;
+ mpLocalItemInfos[XATTR_LINEDASH -XATTR_START]._nItemInfoFlags = SFX_ITEMINFOFLAG_SUPPORT_SURROGATE;
+ mpLocalItemInfos[XATTR_FILLCOLOR -XATTR_START]._nItemInfoFlags = SFX_ITEMINFOFLAG_SUPPORT_SURROGATE;
// set the SlotIDs, this is a mapping used by GetWhich()/GetSlotId()
- mpLocalItemInfos[XATTR_LINESTYLE -XATTR_START]._nSID = SID_ATTR_LINE_STYLE;
- mpLocalItemInfos[XATTR_LINEDASH -XATTR_START]._nSID = SID_ATTR_LINE_DASH;
- mpLocalItemInfos[XATTR_LINEWIDTH -XATTR_START]._nSID = SID_ATTR_LINE_WIDTH;
- mpLocalItemInfos[XATTR_LINECOLOR -XATTR_START]._nSID = SID_ATTR_LINE_COLOR;
- mpLocalItemInfos[XATTR_LINESTART -XATTR_START]._nSID = SID_ATTR_LINE_START;
- mpLocalItemInfos[XATTR_LINEEND -XATTR_START]._nSID = SID_ATTR_LINE_END;
- mpLocalItemInfos[XATTR_LINESTARTWIDTH -XATTR_START]._nSID = SID_ATTR_LINE_STARTWIDTH;
- mpLocalItemInfos[XATTR_LINEENDWIDTH -XATTR_START]._nSID = SID_ATTR_LINE_ENDWIDTH;
- mpLocalItemInfos[XATTR_LINESTARTCENTER -XATTR_START]._nSID = SID_ATTR_LINE_STARTCENTER;
- mpLocalItemInfos[XATTR_LINEENDCENTER -XATTR_START]._nSID = SID_ATTR_LINE_ENDCENTER;
- mpLocalItemInfos[XATTR_FILLSTYLE -XATTR_START]._nSID = SID_ATTR_FILL_STYLE;
- mpLocalItemInfos[XATTR_FILLCOLOR -XATTR_START]._nSID = SID_ATTR_FILL_COLOR;
- mpLocalItemInfos[XATTR_FILLGRADIENT -XATTR_START]._nSID = SID_ATTR_FILL_GRADIENT;
- mpLocalItemInfos[XATTR_FILLHATCH -XATTR_START]._nSID = SID_ATTR_FILL_HATCH;
- mpLocalItemInfos[XATTR_FILLBITMAP -XATTR_START]._nSID = SID_ATTR_FILL_BITMAP;
- mpLocalItemInfos[XATTR_FORMTXTSTYLE -XATTR_START]._nSID = SID_FORMTEXT_STYLE;
- mpLocalItemInfos[XATTR_FORMTXTADJUST -XATTR_START]._nSID = SID_FORMTEXT_ADJUST;
- mpLocalItemInfos[XATTR_FORMTXTDISTANCE -XATTR_START]._nSID = SID_FORMTEXT_DISTANCE;
- mpLocalItemInfos[XATTR_FORMTXTSTART -XATTR_START]._nSID = SID_FORMTEXT_START;
- mpLocalItemInfos[XATTR_FORMTXTMIRROR -XATTR_START]._nSID = SID_FORMTEXT_MIRROR;
- mpLocalItemInfos[XATTR_FORMTXTOUTLINE -XATTR_START]._nSID = SID_FORMTEXT_OUTLINE;
- mpLocalItemInfos[XATTR_FORMTXTSHADOW -XATTR_START]._nSID = SID_FORMTEXT_SHADOW;
- mpLocalItemInfos[XATTR_FORMTXTSHDWCOLOR -XATTR_START]._nSID = SID_FORMTEXT_SHDWCOLOR;
- mpLocalItemInfos[XATTR_FORMTXTSHDWXVAL -XATTR_START]._nSID = SID_FORMTEXT_SHDWXVAL;
- mpLocalItemInfos[XATTR_FORMTXTSHDWYVAL -XATTR_START]._nSID = SID_FORMTEXT_SHDWYVAL;
- mpLocalItemInfos[XATTR_FORMTXTHIDEFORM -XATTR_START]._nSID = SID_FORMTEXT_HIDEFORM;
+ mpLocalItemInfos[XATTR_LINESTYLE -XATTR_START]._nItemInfoSlotID = SID_ATTR_LINE_STYLE;
+ mpLocalItemInfos[XATTR_LINEDASH -XATTR_START]._nItemInfoSlotID = SID_ATTR_LINE_DASH;
+ mpLocalItemInfos[XATTR_LINEWIDTH -XATTR_START]._nItemInfoSlotID = SID_ATTR_LINE_WIDTH;
+ mpLocalItemInfos[XATTR_LINECOLOR -XATTR_START]._nItemInfoSlotID = SID_ATTR_LINE_COLOR;
+ mpLocalItemInfos[XATTR_LINESTART -XATTR_START]._nItemInfoSlotID = SID_ATTR_LINE_START;
+ mpLocalItemInfos[XATTR_LINEEND -XATTR_START]._nItemInfoSlotID = SID_ATTR_LINE_END;
+ mpLocalItemInfos[XATTR_LINESTARTWIDTH -XATTR_START]._nItemInfoSlotID = SID_ATTR_LINE_STARTWIDTH;
+ mpLocalItemInfos[XATTR_LINEENDWIDTH -XATTR_START]._nItemInfoSlotID = SID_ATTR_LINE_ENDWIDTH;
+ mpLocalItemInfos[XATTR_LINESTARTCENTER -XATTR_START]._nItemInfoSlotID = SID_ATTR_LINE_STARTCENTER;
+ mpLocalItemInfos[XATTR_LINEENDCENTER -XATTR_START]._nItemInfoSlotID = SID_ATTR_LINE_ENDCENTER;
+ mpLocalItemInfos[XATTR_FILLSTYLE -XATTR_START]._nItemInfoSlotID = SID_ATTR_FILL_STYLE;
+ mpLocalItemInfos[XATTR_FILLCOLOR -XATTR_START]._nItemInfoSlotID = SID_ATTR_FILL_COLOR;
+ mpLocalItemInfos[XATTR_FILLGRADIENT -XATTR_START]._nItemInfoSlotID = SID_ATTR_FILL_GRADIENT;
+ mpLocalItemInfos[XATTR_FILLHATCH -XATTR_START]._nItemInfoSlotID = SID_ATTR_FILL_HATCH;
+ mpLocalItemInfos[XATTR_FILLBITMAP -XATTR_START]._nItemInfoSlotID = SID_ATTR_FILL_BITMAP;
+ mpLocalItemInfos[XATTR_FORMTXTSTYLE -XATTR_START]._nItemInfoSlotID = SID_FORMTEXT_STYLE;
+ mpLocalItemInfos[XATTR_FORMTXTADJUST -XATTR_START]._nItemInfoSlotID = SID_FORMTEXT_ADJUST;
+ mpLocalItemInfos[XATTR_FORMTXTDISTANCE -XATTR_START]._nItemInfoSlotID = SID_FORMTEXT_DISTANCE;
+ mpLocalItemInfos[XATTR_FORMTXTSTART -XATTR_START]._nItemInfoSlotID = SID_FORMTEXT_START;
+ mpLocalItemInfos[XATTR_FORMTXTMIRROR -XATTR_START]._nItemInfoSlotID = SID_FORMTEXT_MIRROR;
+ mpLocalItemInfos[XATTR_FORMTXTOUTLINE -XATTR_START]._nItemInfoSlotID = SID_FORMTEXT_OUTLINE;
+ mpLocalItemInfos[XATTR_FORMTXTSHADOW -XATTR_START]._nItemInfoSlotID = SID_FORMTEXT_SHADOW;
+ mpLocalItemInfos[XATTR_FORMTXTSHDWCOLOR -XATTR_START]._nItemInfoSlotID = SID_FORMTEXT_SHDWCOLOR;
+ mpLocalItemInfos[XATTR_FORMTXTSHDWXVAL -XATTR_START]._nItemInfoSlotID = SID_FORMTEXT_SHDWXVAL;
+ mpLocalItemInfos[XATTR_FORMTXTSHDWYVAL -XATTR_START]._nItemInfoSlotID = SID_FORMTEXT_SHDWYVAL;
+ mpLocalItemInfos[XATTR_FORMTXTHIDEFORM -XATTR_START]._nItemInfoSlotID = SID_FORMTEXT_HIDEFORM;
// associate new slots for panels with known items
- mpLocalItemInfos[XATTR_FILLUSESLIDEBACKGROUND - XATTR_START]._nSID = SID_ATTR_FILL_USE_SLIDE_BACKGROUND;
- mpLocalItemInfos[XATTR_FILLTRANSPARENCE - XATTR_START]._nSID = SID_ATTR_FILL_TRANSPARENCE;
- mpLocalItemInfos[XATTR_FILLFLOATTRANSPARENCE - XATTR_START]._nSID = SID_ATTR_FILL_FLOATTRANSPARENCE;
- mpLocalItemInfos[XATTR_LINETRANSPARENCE - XATTR_START]._nSID = SID_ATTR_LINE_TRANSPARENCE;
- mpLocalItemInfos[XATTR_LINEJOINT - XATTR_START]._nSID = SID_ATTR_LINE_JOINT;
- mpLocalItemInfos[XATTR_LINECAP - XATTR_START]._nSID = SID_ATTR_LINE_CAP;
+ mpLocalItemInfos[XATTR_FILLUSESLIDEBACKGROUND - XATTR_START]._nItemInfoSlotID = SID_ATTR_FILL_USE_SLIDE_BACKGROUND;
+ mpLocalItemInfos[XATTR_FILLTRANSPARENCE - XATTR_START]._nItemInfoSlotID = SID_ATTR_FILL_TRANSPARENCE;
+ mpLocalItemInfos[XATTR_FILLFLOATTRANSPARENCE - XATTR_START]._nItemInfoSlotID = SID_ATTR_FILL_FLOATTRANSPARENCE;
+ mpLocalItemInfos[XATTR_LINETRANSPARENCE - XATTR_START]._nItemInfoSlotID = SID_ATTR_LINE_TRANSPARENCE;
+ mpLocalItemInfos[XATTR_LINEJOINT - XATTR_START]._nItemInfoSlotID = SID_ATTR_LINE_JOINT;
+ mpLocalItemInfos[XATTR_LINECAP - XATTR_START]._nItemInfoSlotID = SID_ATTR_LINE_CAP;
// if it's my own creation level, set Defaults and ItemInfos
if(XATTR_START == GetFirstWhich() && XATTR_END == GetLastWhich())
diff --git a/sw/source/core/attr/cellatr.cxx b/sw/source/core/attr/cellatr.cxx
index 69eb6b1dd314..a14d28a55d2f 100644
--- a/sw/source/core/attr/cellatr.cxx
+++ b/sw/source/core/attr/cellatr.cxx
@@ -58,6 +58,7 @@ SwTableBoxFormula::SwTableBoxFormula( const OUString& rFormula )
SwTableFormula( rFormula ),
m_pDefinedIn( nullptr )
{
+ setNonShareable();
}
bool SwTableBoxFormula::operator==( const SfxPoolItem& rAttr ) const
diff --git a/sw/source/core/bastyp/init.cxx b/sw/source/core/bastyp/init.cxx
index 146b99fbf4f5..0fe5cb710857 100644
--- a/sw/source/core/bastyp/init.cxx
+++ b/sw/source/core/bastyp/init.cxx
@@ -265,181 +265,181 @@ SwDfltAttrTab aAttrTab( POOLATTR_END - POOLATTR_BEGIN, nullptr );
SfxItemInfo aSlotTab[] =
{
- // _nSID, _bNeedsPoolRegistration, _bShareable
- { SID_ATTR_CHAR_CASEMAP, false, true }, // RES_CHRATR_CASEMAP
- { SID_ATTR_CHAR_CHARSETCOLOR, false, true }, // RES_CHRATR_CHARSETCOLOR
- { SID_ATTR_CHAR_COLOR, true, true }, // RES_CHRATR_COLOR
- { SID_ATTR_CHAR_CONTOUR, false, true }, // RES_CHRATR_CONTOUR
- { SID_ATTR_CHAR_STRIKEOUT, false, true }, // RES_CHRATR_CROSSEDOUT
- { SID_ATTR_CHAR_ESCAPEMENT, false, true }, // RES_CHRATR_ESCAPEMENT
- { SID_ATTR_CHAR_FONT, true, true }, // RES_CHRATR_FONT
- { SID_ATTR_CHAR_FONTHEIGHT, false, true }, // RES_CHRATR_FONTSIZE
- { SID_ATTR_CHAR_KERNING, false, true }, // RES_CHRATR_KERNING
- { SID_ATTR_CHAR_LANGUAGE, false, true }, // RES_CHRATR_LANGUAGE
- { SID_ATTR_CHAR_POSTURE, false, true }, // RES_CHRATR_POSTURE
- { 0, false, true }, // RES_CHRATR_UNUSED1
- { SID_ATTR_CHAR_SHADOWED, false, true }, // RES_CHRATR_SHADOWED
- { SID_ATTR_CHAR_UNDERLINE, true, true }, // RES_CHRATR_UNDERLINE
- { SID_ATTR_CHAR_WEIGHT, false, true }, // RES_CHRATR_WEIGHT
- { SID_ATTR_CHAR_WORDLINEMODE, false, true }, // RES_CHRATR_WORDLINEMODE
- { SID_ATTR_CHAR_AUTOKERN, false, true }, // RES_CHRATR_AUTOKERN
- { SID_ATTR_FLASH, false, true }, // RES_CHRATR_BLINK
- { 0, false, true }, // RES_CHRATR_UNUSED2
- { 0, false, true }, // RES_CHRATR_NOHYPHEN
- { SID_ATTR_BRUSH_CHAR, true, true }, // RES_CHRATR_BACKGROUND
- { SID_ATTR_CHAR_CJK_FONT, true, true }, // RES_CHRATR_CJK_FONT
- { SID_ATTR_CHAR_CJK_FONTHEIGHT, false, true }, // RES_CHRATR_CJK_FONTSIZE
- { SID_ATTR_CHAR_CJK_LANGUAGE, false, true }, // RES_CHRATR_CJK_LANGUAGE
- { SID_ATTR_CHAR_CJK_POSTURE, false, true }, // RES_CHRATR_CJK_POSTURE
- { SID_ATTR_CHAR_CJK_WEIGHT, false, true }, // RES_CHRATR_CJK_WEIGHT
- { SID_ATTR_CHAR_CTL_FONT, true, true }, // RES_CHRATR_CTL_FONT
- { SID_ATTR_CHAR_CTL_FONTHEIGHT, false, true }, // RES_CHRATR_CTL_FONTSIZE
- { SID_ATTR_CHAR_CTL_LANGUAGE, false, true }, // RES_CHRATR_CTL_LANGUAGE
- { SID_ATTR_CHAR_CTL_POSTURE, false, true }, // RES_CHRATR_CTL_POSTURE
- { SID_ATTR_CHAR_CTL_WEIGHT, false, true }, // RES_CHRATR_CTL_WEIGHT
- { SID_ATTR_CHAR_ROTATED, false, true }, // RES_CHRATR_ROTATE
- { SID_ATTR_CHAR_EMPHASISMARK, false, true }, // RES_CHRATR_EMPHASIS_MARK
- { SID_ATTR_CHAR_TWO_LINES, false, true }, // RES_CHRATR_TWO_LINES
- { SID_ATTR_CHAR_SCALEWIDTH, false, true }, // RES_CHRATR_SCALEW
- { SID_ATTR_CHAR_RELIEF, false, true }, // RES_CHRATR_RELIEF
- { SID_ATTR_CHAR_HIDDEN, false, true }, // RES_CHRATR_HIDDEN
- { SID_ATTR_CHAR_OVERLINE, true, true }, // RES_CHRATR_OVERLINE
- { 0, false, true }, // RES_CHRATR_RSID
- { SID_ATTR_CHAR_BOX, true, true }, // RES_CHRATR_BOX
- { SID_ATTR_CHAR_SHADOW, false, true }, // RES_CHRATR_SHADOW
- { 0, true, true }, // RES_CHRATR_HIGHLIGHT
- { SID_ATTR_CHAR_GRABBAG, false, true }, // RES_CHRATR_GRABBAG
- { 0, false, true }, // RES_CHRATR_BIDIRTL
- { 0, false, true }, // RES_CHRATR_IDCTHINT
-
- { 0, true, false }, // RES_TXTATR_REFMARK
- { 0, true, false }, // RES_TXTATR_TOXMARK
- { 0, false, false }, // RES_TXTATR_META
- { 0, false, false }, // RES_TXTATR_METAFIELD
- { 0, false, true }, // RES_TXTATR_AUTOFMT
- { FN_TXTATR_INET, true, false }, // RES_TXTATR_INETFMT
- { 0, false, false }, // RES_TXTATR_CHARFMT
- { SID_ATTR_CHAR_CJK_RUBY, true, false }, // RES_TXTATR_CJK_RUBY
- { 0, true, true }, // RES_TXTATR_UNKNOWN_CONTAINER
- { 0, true, false }, // RES_TXTATR_INPUTFIELD
- { 0, false, false }, // RES_TXTATR_CONTENTCONTROL
-
- { 0, true, false }, // RES_TXTATR_FIELD
- { 0, false, false }, // RES_TXTATR_FLYCNT
- { 0, false, false }, // RES_TXTATR_FTN
- { 0, false, false }, // RES_TXTATR_ANNOTATION
- { 0, false, false }, // RES_TXTATR_LINEBREAK
- { 0, false, true }, // RES_TXTATR_DUMMY1
-
- { SID_ATTR_PARA_LINESPACE, false, true }, // RES_PARATR_LINESPACING
- { SID_ATTR_PARA_ADJUST, false, true }, // RES_PARATR_ADJUST
- { SID_ATTR_PARA_SPLIT, false, true }, // RES_PARATR_SPLIT
- { SID_ATTR_PARA_ORPHANS, false, true }, // RES_PARATR_ORPHANS
- { SID_ATTR_PARA_WIDOWS, false, true }, // RES_PARATR_WIDOWS
- { SID_ATTR_TABSTOP, true, true }, // RES_PARATR_TABSTOP
- { SID_ATTR_PARA_HYPHENZONE, false, true }, // RES_PARATR_HYPHENZONE
- { FN_FORMAT_DROPCAPS, false, false }, // RES_PARATR_DROP
- { SID_ATTR_PARA_REGISTER, false, true }, // RES_PARATR_REGISTER
- { SID_ATTR_PARA_NUMRULE, false, true }, // RES_PARATR_NUMRULE
- { SID_ATTR_PARA_SCRIPTSPACE, false, true }, // RES_PARATR_SCRIPTSPACE
- { SID_ATTR_PARA_HANGPUNCTUATION, false, true }, // RES_PARATR_HANGINGPUNCTUATION
-
- { SID_ATTR_PARA_FORBIDDEN_RULES, false, true }, // RES_PARATR_FORBIDDEN_RULES
- { SID_PARA_VERTALIGN, false, true }, // RES_PARATR_VERTALIGN
- { SID_ATTR_PARA_SNAPTOGRID, false, true }, // RES_PARATR_SNAPTOGRID
- { SID_ATTR_BORDER_CONNECT, false, true }, // RES_PARATR_CONNECT_BORDER
-
- { SID_ATTR_PARA_OUTLINE_LEVEL, false, true }, // RES_PARATR_OUTLINELEVEL //#outline level
- { 0, false, true }, // RES_PARATR_RSID
- { SID_ATTR_PARA_GRABBAG, false, true }, // RES_PARATR_GRABBAG
- { 0, false, true }, // RES_PARATR_LIST_ID
- { 0, false, true }, // RES_PARATR_LIST_LEVEL
- { 0, false, true }, // RES_PARATR_LIST_ISRESTART
- { 0, false, true }, // RES_PARATR_LIST_RESTARTVALUE
- { 0, false, true }, // RES_PARATR_LIST_ISCOUNTED
- { 0, false, true }, // RES_PARATR_LIST_AUTOFMT
-
- { 0, false, true }, // RES_FILL_ORDER
- { 0, false, true }, // RES_FRM_SIZE
- { SID_ATTR_PAGE_PAPERBIN, false, true }, // RES_PAPER_BIN
- { SID_ATTR_PARA_FIRSTLINESPACE, false, true }, // RES_MARGIN_FIRSTLINE
- { SID_ATTR_PARA_LEFTSPACE, false, true }, // RES_MARGIN_TEXTLEFT
- { SID_ATTR_PARA_RIGHTSPACE, false, true }, // RES_MARGIN_RIGHT
- { 0, false, true }, // RES_MARGIN_LEFT
- { 0, false, true }, // RES_MARGIN_GUTTER
- { 0, false, true }, // RES_MARGIN_GUTTER_RIGHT
- { SID_ATTR_LRSPACE, false, true }, // RES_LR_SPACE
- { SID_ATTR_ULSPACE, false, true }, // RES_UL_SPACE
- { 0, true, false }, // RES_PAGEDESC
- { SID_ATTR_PARA_PAGEBREAK, false, true }, // RES_BREAK
- { 0, false, false }, // RES_CNTNT
- { 0, false, true }, // RES_HEADER
- { 0, false, true }, // RES_FOOTER
- { 0, false, true }, // RES_PRINT
- { FN_OPAQUE, false, true }, // RES_OPAQUE
- { FN_SET_PROTECT, false, true }, // RES_PROTECT
- { FN_SURROUND, false, true }, // RES_SURROUND
- { FN_VERT_ORIENT, false, true }, // RES_VERT_ORIENT
- { FN_HORI_ORIENT, false, true }, // RES_HORI_ORIENT
- { 0, false, false }, // RES_ANCHOR
- { SID_ATTR_BRUSH, true, true }, // RES_BACKGROUND
- { SID_ATTR_BORDER_OUTER, true, true }, // RES_BOX
- { SID_ATTR_BORDER_SHADOW, true, true }, // RES_SHADOW
- { SID_ATTR_MACROITEM, false, true }, // RES_FRMMACRO
- { FN_ATTR_COLUMNS, false, true }, // RES_COL
- { SID_ATTR_PARA_KEEP, false, true }, // RES_KEEP
- { 0, true, true }, // RES_URL
- { 0, false, true }, // RES_EDIT_IN_READONLY
-
- { 0, false, true }, // RES_LAYOUT_SPLIT
- { 0, false, false }, // RES_CHAIN
- { 0, false, true }, // RES_TEXTGRID
- { FN_FORMAT_LINENUMBER, false, true }, // RES_LINENUMBER
- { 0, false, true }, // RES_FTN_AT_TXTEND
- { 0, false, true }, // RES_END_AT_TXTEND
- { 0, false, true }, // RES_COLUMNBALANCE
-
- { SID_ATTR_FRAMEDIRECTION, false, true }, // RES_FRAMEDIR
-
- { SID_ATTR_HDFT_DYNAMIC_SPACING, false, true }, // RES_HEADER_FOOTER_EAT_SPACING
- { FN_TABLE_ROW_SPLIT, false, true }, // RES_ROW_SPLIT
- { 0, false, true }, // RES_FLY_SPLIT
+ // _nItemInfoSlotID, _nItemInfoFlags
+ { SID_ATTR_CHAR_CASEMAP, SFX_ITEMINFOFLAG_NONE }, // RES_CHRATR_CASEMAP
+ { SID_ATTR_CHAR_CHARSETCOLOR, SFX_ITEMINFOFLAG_NONE }, // RES_CHRATR_CHARSETCOLOR
+ { SID_ATTR_CHAR_COLOR, SFX_ITEMINFOFLAG_SUPPORT_SURROGATE }, // RES_CHRATR_COLOR
+ { SID_ATTR_CHAR_CONTOUR, SFX_ITEMINFOFLAG_NONE }, // RES_CHRATR_CONTOUR
+ { SID_ATTR_CHAR_STRIKEOUT, SFX_ITEMINFOFLAG_NONE }, // RES_CHRATR_CROSSEDOUT
+ { SID_ATTR_CHAR_ESCAPEMENT, SFX_ITEMINFOFLAG_NONE }, // RES_CHRATR_ESCAPEMENT
+ { SID_ATTR_CHAR_FONT, SFX_ITEMINFOFLAG_SUPPORT_SURROGATE }, // RES_CHRATR_FONT
+ { SID_ATTR_CHAR_FONTHEIGHT, SFX_ITEMINFOFLAG_NONE }, // RES_CHRATR_FONTSIZE
+ { SID_ATTR_CHAR_KERNING, SFX_ITEMINFOFLAG_NONE }, // RES_CHRATR_KERNING
+ { SID_ATTR_CHAR_LANGUAGE, SFX_ITEMINFOFLAG_NONE }, // RES_CHRATR_LANGUAGE
+ { SID_ATTR_CHAR_POSTURE, SFX_ITEMINFOFLAG_NONE }, // RES_CHRATR_POSTURE
+ { 0, SFX_ITEMINFOFLAG_NONE }, // RES_CHRATR_UNUSED1
+ { SID_ATTR_CHAR_SHADOWED, SFX_ITEMINFOFLAG_NONE }, // RES_CHRATR_SHADOWED
+ { SID_ATTR_CHAR_UNDERLINE, SFX_ITEMINFOFLAG_SUPPORT_SURROGATE }, // RES_CHRATR_UNDERLINE
+ { SID_ATTR_CHAR_WEIGHT, SFX_ITEMINFOFLAG_NONE }, // RES_CHRATR_WEIGHT
+ { SID_ATTR_CHAR_WORDLINEMODE, SFX_ITEMINFOFLAG_NONE }, // RES_CHRATR_WORDLINEMODE
+ { SID_ATTR_CHAR_AUTOKERN, SFX_ITEMINFOFLAG_NONE }, // RES_CHRATR_AUTOKERN
+ { SID_ATTR_FLASH, SFX_ITEMINFOFLAG_NONE }, // RES_CHRATR_BLINK
+ { 0, SFX_ITEMINFOFLAG_NONE }, // RES_CHRATR_UNUSED2
+ { 0, SFX_ITEMINFOFLAG_NONE }, // RES_CHRATR_NOHYPHEN
+ { SID_ATTR_BRUSH_CHAR, SFX_ITEMINFOFLAG_SUPPORT_SURROGATE }, // RES_CHRATR_BACKGROUND
+ { SID_ATTR_CHAR_CJK_FONT, SFX_ITEMINFOFLAG_SUPPORT_SURROGATE }, // RES_CHRATR_CJK_FONT
+ { SID_ATTR_CHAR_CJK_FONTHEIGHT, SFX_ITEMINFOFLAG_NONE }, // RES_CHRATR_CJK_FONTSIZE
+ { SID_ATTR_CHAR_CJK_LANGUAGE, SFX_ITEMINFOFLAG_NONE }, // RES_CHRATR_CJK_LANGUAGE
+ { SID_ATTR_CHAR_CJK_POSTURE, SFX_ITEMINFOFLAG_NONE }, // RES_CHRATR_CJK_POSTURE
+ { SID_ATTR_CHAR_CJK_WEIGHT, SFX_ITEMINFOFLAG_NONE }, // RES_CHRATR_CJK_WEIGHT
+ { SID_ATTR_CHAR_CTL_FONT, SFX_ITEMINFOFLAG_SUPPORT_SURROGATE }, // RES_CHRATR_CTL_FONT
+ { SID_ATTR_CHAR_CTL_FONTHEIGHT, SFX_ITEMINFOFLAG_NONE }, // RES_CHRATR_CTL_FONTSIZE
+ { SID_ATTR_CHAR_CTL_LANGUAGE, SFX_ITEMINFOFLAG_NONE }, // RES_CHRATR_CTL_LANGUAGE
+ { SID_ATTR_CHAR_CTL_POSTURE, SFX_ITEMINFOFLAG_NONE }, // RES_CHRATR_CTL_POSTURE
+ { SID_ATTR_CHAR_CTL_WEIGHT, SFX_ITEMINFOFLAG_NONE }, // RES_CHRATR_CTL_WEIGHT
+ { SID_ATTR_CHAR_ROTATED, SFX_ITEMINFOFLAG_NONE }, // RES_CHRATR_ROTATE
+ { SID_ATTR_CHAR_EMPHASISMARK, SFX_ITEMINFOFLAG_NONE }, // RES_CHRATR_EMPHASIS_MARK
+ { SID_ATTR_CHAR_TWO_LINES, SFX_ITEMINFOFLAG_NONE }, // RES_CHRATR_TWO_LINES
+ { SID_ATTR_CHAR_SCALEWIDTH, SFX_ITEMINFOFLAG_NONE }, // RES_CHRATR_SCALEW
+ { SID_ATTR_CHAR_RELIEF, SFX_ITEMINFOFLAG_NONE }, // RES_CHRATR_RELIEF
+ { SID_ATTR_CHAR_HIDDEN, SFX_ITEMINFOFLAG_NONE }, // RES_CHRATR_HIDDEN
+ { SID_ATTR_CHAR_OVERLINE, SFX_ITEMINFOFLAG_SUPPORT_SURROGATE }, // RES_CHRATR_OVERLINE
+ { 0, SFX_ITEMINFOFLAG_NONE }, // RES_CHRATR_RSID
+ { SID_ATTR_CHAR_BOX, SFX_ITEMINFOFLAG_SUPPORT_SURROGATE }, // RES_CHRATR_BOX
+ { SID_ATTR_CHAR_SHADOW, SFX_ITEMINFOFLAG_NONE }, // RES_CHRATR_SHADOW
+ { 0, SFX_ITEMINFOFLAG_SUPPORT_SURROGATE }, // RES_CHRATR_HIGHLIGHT
+ { SID_ATTR_CHAR_GRABBAG, SFX_ITEMINFOFLAG_NONE }, // RES_CHRATR_GRABBAG
+ { 0, SFX_ITEMINFOFLAG_NONE }, // RES_CHRATR_BIDIRTL
+ { 0, SFX_ITEMINFOFLAG_NONE }, // RES_CHRATR_IDCTHINT
+
+ { 0, SFX_ITEMINFOFLAG_SUPPORT_SURROGATE }, // RES_TXTATR_REFMARK
+ { 0, SFX_ITEMINFOFLAG_SUPPORT_SURROGATE }, // RES_TXTATR_TOXMARK
+ { 0, SFX_ITEMINFOFLAG_NONE }, // RES_TXTATR_META
+ { 0, SFX_ITEMINFOFLAG_NONE }, // RES_TXTATR_METAFIELD
+ { 0, SFX_ITEMINFOFLAG_NONE }, // RES_TXTATR_AUTOFMT
+ { FN_TXTATR_INET, SFX_ITEMINFOFLAG_SUPPORT_SURROGATE }, // RES_TXTATR_INETFMT
+ { 0, SFX_ITEMINFOFLAG_NONE }, // RES_TXTATR_CHARFMT
+ { SID_ATTR_CHAR_CJK_RUBY, SFX_ITEMINFOFLAG_SUPPORT_SURROGATE }, // RES_TXTATR_CJK_RUBY
+ { 0, SFX_ITEMINFOFLAG_SUPPORT_SURROGATE }, // RES_TXTATR_UNKNOWN_CONTAINER
+ { 0, SFX_ITEMINFOFLAG_SUPPORT_SURROGATE }, // RES_TXTATR_INPUTFIELD
+ { 0, SFX_ITEMINFOFLAG_NONE }, // RES_TXTATR_CONTENTCONTROL
+
+ { 0, SFX_ITEMINFOFLAG_SUPPORT_SURROGATE }, // RES_TXTATR_FIELD
+ { 0, SFX_ITEMINFOFLAG_NONE }, // RES_TXTATR_FLYCNT
+ { 0, SFX_ITEMINFOFLAG_NONE }, // RES_TXTATR_FTN
+ { 0, SFX_ITEMINFOFLAG_NONE }, // RES_TXTATR_ANNOTATION
+ { 0, SFX_ITEMINFOFLAG_NONE }, // RES_TXTATR_LINEBREAK
+ { 0, SFX_ITEMINFOFLAG_NONE }, // RES_TXTATR_DUMMY1
+
+ { SID_ATTR_PARA_LINESPACE, SFX_ITEMINFOFLAG_NONE }, // RES_PARATR_LINESPACING
+ { SID_ATTR_PARA_ADJUST, SFX_ITEMINFOFLAG_NONE }, // RES_PARATR_ADJUST
+ { SID_ATTR_PARA_SPLIT, SFX_ITEMINFOFLAG_NONE }, // RES_PARATR_SPLIT
+ { SID_ATTR_PARA_ORPHANS, SFX_ITEMINFOFLAG_NONE }, // RES_PARATR_ORPHANS
+ { SID_ATTR_PARA_WIDOWS, SFX_ITEMINFOFLAG_NONE }, // RES_PARATR_WIDOWS
+ { SID_ATTR_TABSTOP, SFX_ITEMINFOFLAG_SUPPORT_SURROGATE }, // RES_PARATR_TABSTOP
+ { SID_ATTR_PARA_HYPHENZONE, SFX_ITEMINFOFLAG_NONE }, // RES_PARATR_HYPHENZONE
+ { FN_FORMAT_DROPCAPS, SFX_ITEMINFOFLAG_NONE }, // RES_PARATR_DROP
+ { SID_ATTR_PARA_REGISTER, SFX_ITEMINFOFLAG_NONE }, // RES_PARATR_REGISTER
+ { SID_ATTR_PARA_NUMRULE, SFX_ITEMINFOFLAG_NONE }, // RES_PARATR_NUMRULE
+ { SID_ATTR_PARA_SCRIPTSPACE, SFX_ITEMINFOFLAG_NONE }, // RES_PARATR_SCRIPTSPACE
+ { SID_ATTR_PARA_HANGPUNCTUATION, SFX_ITEMINFOFLAG_NONE }, // RES_PARATR_HANGINGPUNCTUATION
+
+ { SID_ATTR_PARA_FORBIDDEN_RULES, SFX_ITEMINFOFLAG_NONE }, // RES_PARATR_FORBIDDEN_RULES
+ { SID_PARA_VERTALIGN, SFX_ITEMINFOFLAG_NONE }, // RES_PARATR_VERTALIGN
+ { SID_ATTR_PARA_SNAPTOGRID, SFX_ITEMINFOFLAG_NONE }, // RES_PARATR_SNAPTOGRID
+ { SID_ATTR_BORDER_CONNECT, SFX_ITEMINFOFLAG_NONE }, // RES_PARATR_CONNECT_BORDER
+
+ { SID_ATTR_PARA_OUTLINE_LEVEL, SFX_ITEMINFOFLAG_NONE }, // RES_PARATR_OUTLINELEVEL //#outline level
+ { 0, SFX_ITEMINFOFLAG_NONE }, // RES_PARATR_RSID
+ { SID_ATTR_PARA_GRABBAG, SFX_ITEMINFOFLAG_NONE }, // RES_PARATR_GRABBAG
+ { 0, SFX_ITEMINFOFLAG_NONE }, // RES_PARATR_LIST_ID
+ { 0, SFX_ITEMINFOFLAG_NONE }, // RES_PARATR_LIST_LEVEL
+ { 0, SFX_ITEMINFOFLAG_NONE }, // RES_PARATR_LIST_ISRESTART
+ { 0, SFX_ITEMINFOFLAG_NONE }, // RES_PARATR_LIST_RESTARTVALUE
+ { 0, SFX_ITEMINFOFLAG_NONE }, // RES_PARATR_LIST_ISCOUNTED
+ { 0, SFX_ITEMINFOFLAG_NONE }, // RES_PARATR_LIST_AUTOFMT
+
+ { 0, SFX_ITEMINFOFLAG_NONE }, // RES_FILL_ORDER
+ { 0, SFX_ITEMINFOFLAG_NONE }, // RES_FRM_SIZE
+ { SID_ATTR_PAGE_PAPERBIN, SFX_ITEMINFOFLAG_NONE }, // RES_PAPER_BIN
+ { SID_ATTR_PARA_FIRSTLINESPACE, SFX_ITEMINFOFLAG_NONE }, // RES_MARGIN_FIRSTLINE
+ { SID_ATTR_PARA_LEFTSPACE, SFX_ITEMINFOFLAG_NONE }, // RES_MARGIN_TEXTLEFT
+ { SID_ATTR_PARA_RIGHTSPACE, SFX_ITEMINFOFLAG_NONE }, // RES_MARGIN_RIGHT
+ { 0, SFX_ITEMINFOFLAG_NONE }, // RES_MARGIN_LEFT
+ { 0, SFX_ITEMINFOFLAG_NONE }, // RES_MARGIN_GUTTER
+ { 0, SFX_ITEMINFOFLAG_NONE }, // RES_MARGIN_GUTTER_RIGHT
+ { SID_ATTR_LRSPACE, SFX_ITEMINFOFLAG_NONE }, // RES_LR_SPACE
+ { SID_ATTR_ULSPACE, SFX_ITEMINFOFLAG_NONE }, // RES_UL_SPACE
+ { 0, SFX_ITEMINFOFLAG_SUPPORT_SURROGATE }, // RES_PAGEDESC
+ { SID_ATTR_PARA_PAGEBREAK, SFX_ITEMINFOFLAG_NONE }, // RES_BREAK
+ { 0, SFX_ITEMINFOFLAG_NONE }, // RES_CNTNT
+ { 0, SFX_ITEMINFOFLAG_NONE }, // RES_HEADER
+ { 0, SFX_ITEMINFOFLAG_NONE }, // RES_FOOTER
+ { 0, SFX_ITEMINFOFLAG_NONE }, // RES_PRINT
+ { FN_OPAQUE, SFX_ITEMINFOFLAG_NONE }, // RES_OPAQUE
+ { FN_SET_PROTECT, SFX_ITEMINFOFLAG_NONE }, // RES_PROTECT
+ { FN_SURROUND, SFX_ITEMINFOFLAG_NONE }, // RES_SURROUND
+ { FN_VERT_ORIENT, SFX_ITEMINFOFLAG_NONE }, // RES_VERT_ORIENT
+ { FN_HORI_ORIENT, SFX_ITEMINFOFLAG_NONE }, // RES_HORI_ORIENT
+ { 0, SFX_ITEMINFOFLAG_NONE }, // RES_ANCHOR
+ { SID_ATTR_BRUSH, SFX_ITEMINFOFLAG_SUPPORT_SURROGATE }, // RES_BACKGROUND
+ { SID_ATTR_BORDER_OUTER, SFX_ITEMINFOFLAG_SUPPORT_SURROGATE }, // RES_BOX
+ { SID_ATTR_BORDER_SHADOW, SFX_ITEMINFOFLAG_SUPPORT_SURROGATE }, // RES_SHADOW
+ { SID_ATTR_MACROITEM, SFX_ITEMINFOFLAG_NONE }, // RES_FRMMACRO
+ { FN_ATTR_COLUMNS, SFX_ITEMINFOFLAG_NONE }, // RES_COL
+ { SID_ATTR_PARA_KEEP, SFX_ITEMINFOFLAG_NONE }, // RES_KEEP
+ { 0, SFX_ITEMINFOFLAG_SUPPORT_SURROGATE }, // RES_URL
+ { 0, SFX_ITEMINFOFLAG_NONE }, // RES_EDIT_IN_READONLY
+
+ { 0, SFX_ITEMINFOFLAG_NONE }, // RES_LAYOUT_SPLIT
+ { 0, SFX_ITEMINFOFLAG_NONE }, // RES_CHAIN
+ { 0, SFX_ITEMINFOFLAG_NONE }, // RES_TEXTGRID
+ { FN_FORMAT_LINENUMBER, SFX_ITEMINFOFLAG_NONE }, // RES_LINENUMBER
+ { 0, SFX_ITEMINFOFLAG_NONE }, // RES_FTN_AT_TXTEND
+ { 0, SFX_ITEMINFOFLAG_NONE }, // RES_END_AT_TXTEND
+ { 0, SFX_ITEMINFOFLAG_NONE }, // RES_COLUMNBALANCE
+
+ { SID_ATTR_FRAMEDIRECTION, SFX_ITEMINFOFLAG_NONE }, // RES_FRAMEDIR
+
+ { SID_ATTR_HDFT_DYNAMIC_SPACING, SFX_ITEMINFOFLAG_NONE }, // RES_HEADER_FOOTER_EAT_SPACING
+ { FN_TABLE_ROW_SPLIT, SFX_ITEMINFOFLAG_NONE }, // RES_ROW_SPLIT
+ { 0, SFX_ITEMINFOFLAG_NONE }, // RES_FLY_SPLIT
// #i18732# - use slot-id define in svx
- { SID_SW_FOLLOW_TEXT_FLOW, false, true }, // RES_FOLLOW_TEXT_FLOW
+ { SID_SW_FOLLOW_TEXT_FLOW, SFX_ITEMINFOFLAG_NONE }, // RES_FOLLOW_TEXT_FLOW
// #i29550#
- { SID_SW_COLLAPSING_BORDERS, false, true }, // RES_COLLAPSING_BORDERS
+ { SID_SW_COLLAPSING_BORDERS, SFX_ITEMINFOFLAG_NONE }, // RES_COLLAPSING_BORDERS
// #i28701#
- { SID_SW_WRAP_INFLUENCE_ON_OBJPOS, false, true }, // RES_WRAP_INFLUENCE_ON_OBJPOS
- { 0, false, false }, // RES_AUTO_STYLE
- { 0, false, true }, // RES_FRMATR_STYLE_NAME
- { 0, false, true }, // RES_FRMATR_CONDITIONAL_STYLE_NAME
- { 0, false, true }, // RES_FRMATR_GRABBAG
- { 0, false, true }, // RES_TEXT_VERT_ADJUST
- { 0, false, true }, // RES_BACKGROUND_FULL_SIZE
- { 0, false, true }, // RES_RTL_GUTTER
- { 0, false, true }, // RES_DECORATIVE
- { 0, false, true }, // RES_WRAP_TEXT_AT_FLY_START
-
- { 0, false, true }, // RES_GRFATR_MIRRORGRF
- { SID_ATTR_GRAF_CROP, false, true }, // RES_GRFATR_CROPGRF
- { 0, false, true }, // RES_GRFATR_ROTATION,
- { 0, false, true }, // RES_GRFATR_LUMINANCE,
- { 0, false, true }, // RES_GRFATR_CONTRAST,
- { 0, false, true }, // RES_GRFATR_CHANNELR,
- { 0, false, true }, // RES_GRFATR_CHANNELG,
- { 0, false, true }, // RES_GRFATR_CHANNELB,
- { 0, false, true }, // RES_GRFATR_GAMMA,
- { 0, false, true }, // RES_GRFATR_INVERT,
- { 0, false, true }, // RES_GRFATR_TRANSPARENCY,
- { 0, false, true }, // RES_GRFATR_DUMMY4,
- { 0, false, true }, // RES_GRFATR_DUMMY5,
- { 0, false, true }, // RES_GRFATR_DUMMY6,
-
- { 0, false, true }, // RES_BOXATR_FORMAT
- { 0, true, false }, // RES_BOXATR_FORMULA,
- { 0, false, true }, // RES_BOXATR_VALUE
-
- { 0, true, true } // RES_UNKNOWNATR_CONTAINER
+ { SID_SW_WRAP_INFLUENCE_ON_OBJPOS, SFX_ITEMINFOFLAG_NONE }, // RES_WRAP_INFLUENCE_ON_OBJPOS
+ { 0, SFX_ITEMINFOFLAG_NONE }, // RES_AUTO_STYLE
+ { 0, SFX_ITEMINFOFLAG_NONE }, // RES_FRMATR_STYLE_NAME
+ { 0, SFX_ITEMINFOFLAG_NONE }, // RES_FRMATR_CONDITIONAL_STYLE_NAME
+ { 0, SFX_ITEMINFOFLAG_NONE }, // RES_FRMATR_GRABBAG
+ { 0, SFX_ITEMINFOFLAG_NONE }, // RES_TEXT_VERT_ADJUST
+ { 0, SFX_ITEMINFOFLAG_NONE }, // RES_BACKGROUND_FULL_SIZE
+ { 0, SFX_ITEMINFOFLAG_NONE }, // RES_RTL_GUTTER
+ { 0, SFX_ITEMINFOFLAG_NONE }, // RES_DECORATIVE
+ { 0, SFX_ITEMINFOFLAG_NONE }, // RES_WRAP_TEXT_AT_FLY_START
+
+ { 0, SFX_ITEMINFOFLAG_NONE }, // RES_GRFATR_MIRRORGRF
+ { SID_ATTR_GRAF_CROP, SFX_ITEMINFOFLAG_NONE }, // RES_GRFATR_CROPGRF
+ { 0, SFX_ITEMINFOFLAG_NONE }, // RES_GRFATR_ROTATION,
+ { 0, SFX_ITEMINFOFLAG_NONE }, // RES_GRFATR_LUMINANCE,
+ { 0, SFX_ITEMINFOFLAG_NONE }, // RES_GRFATR_CONTRAST,
+ { 0, SFX_ITEMINFOFLAG_NONE }, // RES_GRFATR_CHANNELR,
+ { 0, SFX_ITEMINFOFLAG_NONE }, // RES_GRFATR_CHANNELG,
+ { 0, SFX_ITEMINFOFLAG_NONE }, // RES_GRFATR_CHANNELB,
+ { 0, SFX_ITEMINFOFLAG_NONE }, // RES_GRFATR_GAMMA,
+ { 0, SFX_ITEMINFOFLAG_NONE }, // RES_GRFATR_INVERT,
+ { 0, SFX_ITEMINFOFLAG_NONE }, // RES_GRFATR_TRANSPARENCY,
+ { 0, SFX_ITEMINFOFLAG_NONE }, // RES_GRFATR_DUMMY4,
+ { 0, SFX_ITEMINFOFLAG_NONE }, // RES_GRFATR_DUMMY5,
+ { 0, SFX_ITEMINFOFLAG_NONE }, // RES_GRFATR_DUMMY6,
+
+ { 0, SFX_ITEMINFOFLAG_NONE }, // RES_BOXATR_FORMAT
+ { 0, SFX_ITEMINFOFLAG_SUPPORT_SURROGATE }, // RES_BOXATR_FORMULA,
+ { 0, SFX_ITEMINFOFLAG_NONE }, // RES_BOXATR_VALUE
+
+ { 0, SFX_ITEMINFOFLAG_SUPPORT_SURROGATE } // RES_UNKNOWNATR_CONTAINER
};
std::vector<SvGlobalName> *pGlobalOLEExcludeList = nullptr;
diff --git a/sw/source/core/layout/atrfrm.cxx b/sw/source/core/layout/atrfrm.cxx
index 5e95d1aaf787..26b466588d35 100644
--- a/sw/source/core/layout/atrfrm.cxx
+++ b/sw/source/core/layout/atrfrm.cxx
@@ -580,11 +580,13 @@ SwFormatContent::SwFormatContent( const SwFormatContent &rCpy )
: SfxPoolItem( RES_CNTNT )
, m_oStartNode( rCpy.m_oStartNode )
{
+ setNonShareable();
}
SwFormatContent::SwFormatContent( const SwStartNode *pStartNd )
: SfxPoolItem( RES_CNTNT )
{
+ setNonShareable();
if (pStartNd)
m_oStartNode = *pStartNd;
}
@@ -634,6 +636,7 @@ SwFormatPageDesc::SwFormatPageDesc( const SwFormatPageDesc &rCpy )
m_oNumOffset( rCpy.m_oNumOffset ),
m_pDefinedIn( nullptr )
{
+ setNonShareable();
}
SwFormatPageDesc::SwFormatPageDesc( const SwPageDesc *pDesc )
@@ -641,6 +644,7 @@ SwFormatPageDesc::SwFormatPageDesc( const SwPageDesc *pDesc )
SwClient( const_cast<SwPageDesc*>(pDesc) ),
m_pDefinedIn( nullptr )
{
+ setNonShareable();
}
SwFormatPageDesc &SwFormatPageDesc::operator=(const SwFormatPageDesc &rCpy)
@@ -1572,6 +1576,7 @@ SwFormatAnchor::SwFormatAnchor( RndStdIds nRnd, sal_uInt16 nPage )
// OD 2004-05-05 #i28701# - get always new increased order number
m_nOrder( ++s_nOrderCounter )
{
+ setNonShareable();
assert( m_eAnchorId == RndStdIds::FLY_AT_PARA
|| m_eAnchorId == RndStdIds::FLY_AS_CHAR
|| m_eAnchorId == RndStdIds::FLY_AT_PAGE
@@ -1589,6 +1594,7 @@ SwFormatAnchor::SwFormatAnchor( const SwFormatAnchor &rCpy )
// OD 2004-05-05 #i28701# - get always new increased order number
, m_nOrder( ++s_nOrderCounter )
{
+ setNonShareable();
}
SwFormatAnchor::~SwFormatAnchor()
@@ -2161,6 +2167,7 @@ bool SwFormatChain::operator==( const SfxPoolItem &rAttr ) const
SwFormatChain::SwFormatChain( const SwFormatChain &rCpy ) :
SfxPoolItem( RES_CHAIN )
{
+ setNonShareable();
SetPrev( rCpy.GetPrev() );
SetNext( rCpy.GetNext() );
}
diff --git a/sw/source/core/para/paratr.cxx b/sw/source/core/para/paratr.cxx
index f724ac21c0fe..2c8aa82ecf8a 100644
--- a/sw/source/core/para/paratr.cxx
+++ b/sw/source/core/para/paratr.cxx
@@ -44,6 +44,7 @@ SwFormatDrop::SwFormatDrop()
m_nChars( 0 ),
m_bWholeWord( false )
{
+ setNonShareable();
}
SwFormatDrop::SwFormatDrop( const SwFormatDrop &rCpy )
@@ -55,6 +56,7 @@ SwFormatDrop::SwFormatDrop( const SwFormatDrop &rCpy )
m_nChars( rCpy.GetChars() ),
m_bWholeWord( rCpy.GetWholeWord() )
{
+ setNonShareable();
}
SwFormatDrop::~SwFormatDrop()
diff --git a/sw/source/core/tox/tox.cxx b/sw/source/core/tox/tox.cxx
index b29bafde11f6..8f5e7b9569d0 100644
--- a/sw/source/core/tox/tox.cxx
+++ b/sw/source/core/tox/tox.cxx
@@ -98,6 +98,7 @@ SwTOXMark::SwTOXMark()
, m_bAutoGenerated(false)
, m_bMainEntry(false)
{
+ setNonShareable();
}
SwTOXMark::SwTOXMark(const SwTOXType* pType)
@@ -108,6 +109,7 @@ SwTOXMark::SwTOXMark(const SwTOXType* pType)
, m_bAutoGenerated(false)
, m_bMainEntry(false)
{
+ setNonShareable();
StartListening(const_cast<SwTOXType*>(m_pType)->GetNotifier());
}
@@ -125,6 +127,7 @@ SwTOXMark::SwTOXMark(const SwTOXMark& rCopy)
, m_bAutoGenerated(rCopy.m_bAutoGenerated)
, m_bMainEntry(rCopy.m_bMainEntry)
{
+ setNonShareable();
if(m_pType)
StartListening(const_cast<SwTOXType*>(m_pType)->GetNotifier());
// Copy AlternativString
diff --git a/sw/source/core/txtnode/atrfld.cxx b/sw/source/core/txtnode/atrfld.cxx
index 2812522024bb..5907e5014298 100644
--- a/sw/source/core/txtnode/atrfld.cxx
+++ b/sw/source/core/txtnode/atrfld.cxx
@@ -50,6 +50,7 @@ SwFormatField::SwFormatField( sal_uInt16 nWhich )
, SfxBroadcaster()
, mpTextField( nullptr )
{
+ setNonShareable();
}
SwFormatField::SwFormatField( const SwField &rField )
@@ -58,6 +59,7 @@ SwFormatField::SwFormatField( const SwField &rField )
, mpField( rField.CopyField() )
, mpTextField( nullptr )
{
+ setNonShareable();
rField.GetTyp()->Add(this);
if ( mpField->GetTyp()->Which() == SwFieldIds::Input )
{
@@ -95,6 +97,7 @@ SwFormatField::SwFormatField( const SwFormatField& rAttr )
, SfxBroadcaster()
, mpTextField( nullptr )
{
+ setNonShareable();
if ( !rAttr.mpField )
return;
diff --git a/sw/source/core/txtnode/atrflyin.cxx b/sw/source/core/txtnode/atrflyin.cxx
index 9a61e8dedb4a..8b5d1b6352f9 100644
--- a/sw/source/core/txtnode/atrflyin.cxx
+++ b/sw/source/core/txtnode/atrflyin.cxx
@@ -41,6 +41,7 @@ SwFormatFlyCnt::SwFormatFlyCnt( SwFrameFormat *pFrameFormat )
m_pTextAttr( nullptr ),
m_pFormat( pFrameFormat )
{
+ setNonShareable();
}
bool SwFormatFlyCnt::operator==( const SfxPoolItem& rAttr ) const
diff --git a/sw/source/core/txtnode/atrftn.cxx b/sw/source/core/txtnode/atrftn.cxx
index 90d93c02b10e..a4c9e05fc063 100644
--- a/sw/source/core/txtnode/atrftn.cxx
+++ b/sw/source/core/txtnode/atrftn.cxx
@@ -131,6 +131,7 @@ SwFormatFootnote::SwFormatFootnote( bool bEndNote )
, m_nNumberRLHidden(0)
, m_bEndNote(bEndNote)
{
+ setNonShareable();
}
void SwFormatFootnote::SetXFootnote(rtl::Reference<SwXFootnote> const& xNote)
diff --git a/sw/source/core/txtnode/atrref.cxx b/sw/source/core/txtnode/atrref.cxx
index 6a3e31fab130..208c04ac2757 100644
--- a/sw/source/core/txtnode/atrref.cxx
+++ b/sw/source/core/txtnode/atrref.cxx
@@ -46,6 +46,7 @@ SwFormatRefMark::SwFormatRefMark( OUString aName )
, m_pTextAttr(nullptr)
, m_aRefName(std::move(aName))
{
+ setNonShareable();
}
SwFormatRefMark::SwFormatRefMark( const SwFormatRefMark& rAttr )
@@ -54,6 +55,7 @@ SwFormatRefMark::SwFormatRefMark( const SwFormatRefMark& rAttr )
, m_pTextAttr(nullptr)
, m_aRefName(rAttr.m_aRefName)
{
+ setNonShareable();
}
void SwFormatRefMark::SetXRefMark(rtl::Reference<SwXReferenceMark> const& xMark)
diff --git a/sw/source/core/txtnode/attrcontentcontrol.cxx b/sw/source/core/txtnode/attrcontentcontrol.cxx
index 28abc9b7fc30..6f8e7fa3511c 100644
--- a/sw/source/core/txtnode/attrcontentcontrol.cxx
+++ b/sw/source/core/txtnode/attrcontentcontrol.cxx
@@ -50,6 +50,7 @@ SwFormatContentControl::SwFormatContentControl(sal_uInt16 nWhich)
: SfxPoolItem(nWhich)
, m_pTextAttr(nullptr)
{
+ setNonShareable();
}
SwFormatContentControl::SwFormatContentControl(
@@ -58,6 +59,7 @@ SwFormatContentControl::SwFormatContentControl(
, m_pContentControl(pContentControl)
, m_pTextAttr(nullptr)
{
+ setNonShareable();
if (!pContentControl)
{
SAL_WARN("sw.core", "SwFormatContentControl ctor: no pContentControl?");
diff --git a/sw/source/core/txtnode/attrlinebreak.cxx b/sw/source/core/txtnode/attrlinebreak.cxx
index b1fb393139b5..dfa3819a9825 100644
--- a/sw/source/core/txtnode/attrlinebreak.cxx
+++ b/sw/source/core/txtnode/attrlinebreak.cxx
@@ -37,6 +37,7 @@ SwFormatLineBreak::SwFormatLineBreak(SwLineBreakClear eClear)
, sw::BroadcastingModify()
, m_pTextAttr(nullptr)
{
+ setNonShareable();
}
SwFormatLineBreak::~SwFormatLineBreak() {}
diff --git a/sw/source/core/txtnode/fmtatr2.cxx b/sw/source/core/txtnode/fmtatr2.cxx
index d9fe78377de3..f5c0cee1cdb7 100644
--- a/sw/source/core/txtnode/fmtatr2.cxx
+++ b/sw/source/core/txtnode/fmtatr2.cxx
@@ -64,6 +64,7 @@ SwFormatCharFormat::SwFormatCharFormat( SwCharFormat *pFormat )
SwClient(pFormat),
m_pTextAttribute( nullptr )
{
+ setNonShareable();
}
SwFormatCharFormat::SwFormatCharFormat( const SwFormatCharFormat& rAttr )
@@ -71,6 +72,7 @@ SwFormatCharFormat::SwFormatCharFormat( const SwFormatCharFormat& rAttr )
SwClient( rAttr.GetCharFormat() ),
m_pTextAttribute( nullptr )
{
+ setNonShareable();
}
SwFormatCharFormat::~SwFormatCharFormat() {}
@@ -130,6 +132,7 @@ void SwFormatCharFormat::dumpAsXml(xmlTextWriterPtr pWriter) const
SwFormatAutoFormat::SwFormatAutoFormat( sal_uInt16 nInitWhich )
: SfxPoolItem( nInitWhich )
{
+ setNonShareable();
}
bool SwFormatAutoFormat::operator==( const SfxPoolItem& rAttr ) const
@@ -177,7 +180,9 @@ SwFormatINetFormat::SwFormatINetFormat()
, mpTextAttr( nullptr )
, mnINetFormatId( 0 )
, mnVisitedFormatId( 0 )
-{}
+{
+ setNonShareable();
+}
SwFormatINetFormat::SwFormatINetFormat( OUString aURL, OUString aTarget )
: SfxPoolItem( RES_TXTATR_INETFMT )
@@ -190,6 +195,7 @@ SwFormatINetFormat::SwFormatINetFormat( OUString aURL, OUString aTarget )
, mnINetFormatId( RES_POOLCHR_INET_NORMAL )
, mnVisitedFormatId( RES_POOLCHR_INET_VISIT )
{
+ setNonShareable();
SwStyleNameMapper::FillUIName( mnINetFormatId, msINetFormatName );
SwStyleNameMapper::FillUIName( mnVisitedFormatId, msVisitedFormatName );
}
@@ -206,6 +212,7 @@ SwFormatINetFormat::SwFormatINetFormat( const SwFormatINetFormat& rAttr )
, mnINetFormatId( rAttr.mnINetFormatId )
, mnVisitedFormatId( rAttr.mnVisitedFormatId )
{
+ setNonShareable();
if ( rAttr.GetMacroTable() )
mpMacroTable.reset( new SvxMacroTableDtor( *rAttr.GetMacroTable() ) );
}
@@ -409,6 +416,7 @@ SwFormatRuby::SwFormatRuby( OUString aRubyText )
m_nPosition( 0 ),
m_eAdjustment( css::text::RubyAdjust_LEFT )
{
+ setNonShareable();
}
SwFormatRuby::SwFormatRuby( const SwFormatRuby& rAttr )
@@ -420,6 +428,7 @@ SwFormatRuby::SwFormatRuby( const SwFormatRuby& rAttr )
m_nPosition( rAttr.m_nPosition ),
m_eAdjustment( rAttr.m_eAdjustment )
{
+ setNonShareable();
}
SwFormatRuby::~SwFormatRuby()
@@ -564,8 +573,9 @@ SwFormatMeta::SwFormatMeta(const sal_uInt16 i_nWhich)
, m_pMeta()
, m_pTextAttr( nullptr )
{
- OSL_ENSURE((RES_TXTATR_META == i_nWhich) || (RES_TXTATR_METAFIELD == i_nWhich),
- "ERROR: SwFormatMeta: invalid which id!");
+ setNonShareable();
+ OSL_ENSURE((RES_TXTATR_META == i_nWhich) || (RES_TXTATR_METAFIELD == i_nWhich),
+ "ERROR: SwFormatMeta: invalid which id!");
}
SwFormatMeta::SwFormatMeta( std::shared_ptr< ::sw::Meta > i_pMeta,
@@ -574,6 +584,7 @@ SwFormatMeta::SwFormatMeta( std::shared_ptr< ::sw::Meta > i_pMeta,
, m_pMeta( std::move(i_pMeta) )
, m_pTextAttr( nullptr )
{
+ setNonShareable();
OSL_ENSURE((RES_TXTATR_META == i_nWhich) || (RES_TXTATR_METAFIELD == i_nWhich),
"ERROR: SwFormatMeta: invalid which id!");
OSL_ENSURE(m_pMeta, "SwFormatMeta: no Meta ?");