diff options
author | Noel Grandin <noel.grandin@collabora.co.uk> | 2017-03-09 09:04:15 +0200 |
---|---|---|
committer | Noel Grandin <noel.grandin@collabora.co.uk> | 2017-03-13 09:02:22 +0000 |
commit | 7e9857c2935bb2533806db4e71c6cd1e171c3478 (patch) | |
tree | d9f8a6d4f94e19f349b67141359cc7c49130b5fc /sw | |
parent | 7c0e3d0b37131b12262d0f610505b3384923c4a1 (diff) |
templatize SvXMLEnumMapEntry
in preparation for "scoped UNO enums".
This is a little hacky: In order to limit the scope of this change,
the templated SvXMLEnumMapEntry struct actually has a fixed size field,
and we cast it to SvXMLEnumMapEntry<sal_uInt16>* in various
places, to avoid carrying the type param around.
Change-Id: Idfbc5561303c557598dd5564b7a7259ae5261d83
Reviewed-on: https://gerrit.libreoffice.org/34987
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Diffstat (limited to 'sw')
-rw-r--r-- | sw/source/filter/xml/xmlexpit.cxx | 4 | ||||
-rw-r--r-- | sw/source/filter/xml/xmlimpit.cxx | 18 | ||||
-rw-r--r-- | sw/source/filter/xml/xmlithlp.cxx | 50 | ||||
-rw-r--r-- | sw/source/filter/xml/xmlithlp.hxx | 20 |
4 files changed, 46 insertions, 46 deletions
diff --git a/sw/source/filter/xml/xmlexpit.cxx b/sw/source/filter/xml/xmlexpit.cxx index 59be80af8307..df5556215b21 100644 --- a/sw/source/filter/xml/xmlexpit.cxx +++ b/sw/source/filter/xml/xmlexpit.cxx @@ -136,7 +136,7 @@ void SvXMLExportItemMapper::exportXML( const SvXMLExport& rExport, OUStringBuffer aOut; const SfxBoolItem* pSplit = dynamic_cast<const SfxBoolItem*>( &rItem ); assert(pSplit && "Wrong Which-ID"); - const unsigned int eEnum = (pSplit && pSplit->GetValue()) ? 1 : 0; + const sal_uInt16 eEnum = (pSplit && pSplit->GetValue()) ? 1 : 0; SvXMLUnitConverter::convertEnum( aOut, eEnum, aXML_KeepTogetherType ); aValue = aOut.makeStringAndClear(); } @@ -839,7 +839,7 @@ bool SvXMLExportItemMapper::QueryXMLValue( { const SvxFormatBreakItem& rFormatBreak = dynamic_cast<const SvxFormatBreakItem&>(rItem); - unsigned int eEnum = 0; + sal_uInt16 eEnum = 0; switch( nMemberId ) { diff --git a/sw/source/filter/xml/xmlimpit.cxx b/sw/source/filter/xml/xmlimpit.cxx index e9af97b7634b..6b90a664c656 100644 --- a/sw/source/filter/xml/xmlimpit.cxx +++ b/sw/source/filter/xml/xmlimpit.cxx @@ -673,13 +673,13 @@ bool SvXMLImportItemMapper::PutXMLValue( case MID_GRAPHIC_REPEAT: { SvxGraphicPosition eGraphicPos = rBrush.GetGraphicPos(); - sal_uInt16 nPos = GPOS_NONE; + SvxGraphicPosition nPos = GPOS_NONE; if( SvXMLUnitConverter::convertEnum( nPos, rValue, psXML_BrushRepeat ) ) { if( GPOS_MM != nPos || GPOS_NONE == eGraphicPos || GPOS_AREA == eGraphicPos || GPOS_TILED == eGraphicPos ) - rBrush.SetGraphicPos( (SvxGraphicPosition)nPos ); + rBrush.SetGraphicPos( nPos ); bOk = true; } } @@ -688,7 +688,7 @@ bool SvXMLImportItemMapper::PutXMLValue( case MID_GRAPHIC_POSITION: { SvxGraphicPosition ePos = GPOS_NONE, eTmp; - sal_uInt16 nTmp; + SvxGraphicPosition nTmp; SvXMLTokenEnumerator aTokenEnum( rValue ); OUString aToken; bool bHori = false, bVert = false; @@ -738,9 +738,9 @@ bool SvXMLImportItemMapper::PutXMLValue( { if( bVert ) sw_frmitems_MergeXMLHoriPos( - ePos, (SvxGraphicPosition)nTmp ); + ePos, nTmp ); else if( !bHori ) - ePos = (SvxGraphicPosition)nTmp; + ePos = nTmp; else bOk = false; bHori = true; @@ -750,9 +750,9 @@ bool SvXMLImportItemMapper::PutXMLValue( { if( bHori ) sw_frmitems_MergeXMLVertPos( - ePos, (SvxGraphicPosition)nTmp ); + ePos, nTmp ); else if( !bVert ) - ePos = (SvxGraphicPosition)nTmp; + ePos = nTmp; else bOk = false; bVert = true; @@ -819,7 +819,7 @@ bool SvXMLImportItemMapper::PutXMLValue( { SwFormatHoriOrient& rHoriOrient = dynamic_cast<SwFormatHoriOrient&>(rItem); - sal_uInt16 nValue; + sal_Int16 nValue; bOk = SvXMLUnitConverter::convertEnum( nValue, rValue, aXMLTableAlignMap ); if( bOk ) @@ -831,7 +831,7 @@ bool SvXMLImportItemMapper::PutXMLValue( { SwFormatVertOrient& rVertOrient = dynamic_cast<SwFormatVertOrient&>(rItem); - sal_uInt16 nValue; + sal_Int16 nValue; bOk = SvXMLUnitConverter::convertEnum( nValue, rValue, aXMLTableVAlignMap ); if( bOk ) diff --git a/sw/source/filter/xml/xmlithlp.cxx b/sw/source/filter/xml/xmlithlp.cxx index 9d57fb6c7cd4..ea3922e085da 100644 --- a/sw/source/filter/xml/xmlithlp.cxx +++ b/sw/source/filter/xml/xmlithlp.cxx @@ -58,28 +58,28 @@ using namespace ::com::sun::star; #define SVX_XML_BORDER_WIDTH_MIDDLE 1 #define SVX_XML_BORDER_WIDTH_THICK 2 -const struct SvXMLEnumMapEntry psXML_BorderStyles[] = +const struct SvXMLEnumMapEntry<sal_uInt16> psXML_BorderStyles[] = { - { XML_NONE, API_LINE_NONE }, - { XML_HIDDEN, API_LINE_NONE }, - { XML_SOLID, API_LINE_SOLID }, - { XML_DOUBLE, API_LINE_DOUBLE }, - { XML_DOUBLE_THIN, API_LINE_DOUBLE_THIN }, - { XML_DOTTED, API_LINE_DOTTED }, - { XML_DASHED, API_LINE_DASHED }, - { XML_FINE_DASHED, API_LINE_FINE_DASHED }, + { XML_NONE, API_LINE_NONE }, + { XML_HIDDEN, API_LINE_NONE }, + { XML_SOLID, API_LINE_SOLID }, + { XML_DOUBLE, API_LINE_DOUBLE }, + { XML_DOUBLE_THIN, API_LINE_DOUBLE_THIN }, + { XML_DOTTED, API_LINE_DOTTED }, + { XML_DASHED, API_LINE_DASHED }, + { XML_FINE_DASHED, API_LINE_FINE_DASHED }, { XML_DASH_DOT, API_LINE_DASH_DOT }, { XML_DASH_DOT_DOT, API_LINE_DASH_DOT_DOT }, - { XML_GROOVE, API_LINE_ENGRAVED }, - { XML_RIDGE, API_LINE_EMBOSSED }, - { XML_INSET, API_LINE_INSET }, - { XML_OUTSET, API_LINE_OUTSET }, + { XML_GROOVE, API_LINE_ENGRAVED }, + { XML_RIDGE, API_LINE_EMBOSSED }, + { XML_INSET, API_LINE_INSET }, + { XML_OUTSET, API_LINE_OUTSET }, { XML_TOKEN_INVALID, 0 } }; -const struct SvXMLEnumMapEntry psXML_NamedBorderWidths[] = +const struct SvXMLEnumMapEntry<sal_uInt16> psXML_NamedBorderWidths[] = { - { XML_THIN, SVX_XML_BORDER_WIDTH_THIN }, + { XML_THIN, SVX_XML_BORDER_WIDTH_THIN }, { XML_MIDDLE, SVX_XML_BORDER_WIDTH_MIDDLE }, { XML_THICK, SVX_XML_BORDER_WIDTH_THICK }, { XML_TOKEN_INVALID, 0 } @@ -237,26 +237,26 @@ void sw_frmitems_setXMLBorder( SvxBorderLine*& rpLine, nOutWidth, nInWidth, nDistance); } -const struct SvXMLEnumMapEntry psXML_BrushRepeat[] = +const struct SvXMLEnumMapEntry<SvxGraphicPosition> psXML_BrushRepeat[] = { { XML_BACKGROUND_REPEAT, GPOS_TILED }, { XML_BACKGROUND_NO_REPEAT, GPOS_MM }, { XML_BACKGROUND_STRETCH, GPOS_AREA }, - { XML_TOKEN_INVALID, 0 } + { XML_TOKEN_INVALID, (SvxGraphicPosition)0 } }; -const struct SvXMLEnumMapEntry psXML_BrushHoriPos[] = +const struct SvXMLEnumMapEntry<SvxGraphicPosition> psXML_BrushHoriPos[] = { { XML_LEFT, GPOS_LM }, { XML_RIGHT, GPOS_RM }, - { XML_TOKEN_INVALID, 0 } + { XML_TOKEN_INVALID, (SvxGraphicPosition)0 } }; -const struct SvXMLEnumMapEntry psXML_BrushVertPos[] = +const struct SvXMLEnumMapEntry<SvxGraphicPosition> psXML_BrushVertPos[] = { { XML_TOP, GPOS_MT }, { XML_BOTTOM, GPOS_MB }, - { XML_TOKEN_INVALID, 0 } + { XML_TOKEN_INVALID, (SvxGraphicPosition)0 } }; void sw_frmitems_MergeXMLHoriPos( SvxGraphicPosition& ePos, @@ -319,7 +319,7 @@ void sw_frmitems_MergeXMLVertPos( SvxGraphicPosition& ePos, } } -const struct SvXMLEnumMapEntry psXML_BreakType[] = +const struct SvXMLEnumMapEntry<sal_uInt16> psXML_BreakType[] = { { XML_AUTO, 0 }, { XML_COLUMN, 1 }, @@ -329,7 +329,7 @@ const struct SvXMLEnumMapEntry psXML_BreakType[] = { XML_TOKEN_INVALID, 0} }; -const struct SvXMLEnumMapEntry aXMLTableAlignMap[] = +const struct SvXMLEnumMapEntry<sal_Int16> aXMLTableAlignMap[] = { { XML_LEFT, text::HoriOrientation::LEFT }, { XML_LEFT, text::HoriOrientation::LEFT_AND_WIDTH }, @@ -340,7 +340,7 @@ const struct SvXMLEnumMapEntry aXMLTableAlignMap[] = { XML_TOKEN_INVALID, 0 } }; -const struct SvXMLEnumMapEntry aXMLTableVAlignMap[] = +const struct SvXMLEnumMapEntry<sal_Int16> aXMLTableVAlignMap[] = { { XML_TOP, text::VertOrientation::TOP }, { XML_MIDDLE, text::VertOrientation::CENTER }, @@ -348,7 +348,7 @@ const struct SvXMLEnumMapEntry aXMLTableVAlignMap[] = { XML_TOKEN_INVALID, 0 } }; -const struct SvXMLEnumMapEntry aXML_KeepTogetherType[] = +const struct SvXMLEnumMapEntry<sal_uInt16> aXML_KeepTogetherType[] = { { XML_ALWAYS, 0 }, { XML_AUTO, 1 }, diff --git a/sw/source/filter/xml/xmlithlp.hxx b/sw/source/filter/xml/xmlithlp.hxx index 5388fa063bc2..e2728bc2a04c 100644 --- a/sw/source/filter/xml/xmlithlp.hxx +++ b/sw/source/filter/xml/xmlithlp.hxx @@ -27,7 +27,7 @@ namespace editeng { class SvxBorderLine; } -struct SvXMLEnumMapEntry; +template<typename EnumT> struct SvXMLEnumMapEntry; class SvXMLUnitConverter; class Color; @@ -56,15 +56,15 @@ void sw_frmitems_MergeXMLHoriPos( SvxGraphicPosition& ePos, void sw_frmitems_MergeXMLVertPos( SvxGraphicPosition& ePos, SvxGraphicPosition eVert ); -extern const struct SvXMLEnumMapEntry psXML_BorderStyles[]; -extern const struct SvXMLEnumMapEntry psXML_NamedBorderWidths[]; -extern const struct SvXMLEnumMapEntry psXML_BrushRepeat[]; -extern const struct SvXMLEnumMapEntry psXML_BrushHoriPos[]; -extern const struct SvXMLEnumMapEntry psXML_BrushVertPos[]; -extern const struct SvXMLEnumMapEntry psXML_BreakType[]; -extern const struct SvXMLEnumMapEntry aXMLTableAlignMap[]; -extern const struct SvXMLEnumMapEntry aXMLTableVAlignMap[]; -extern const struct SvXMLEnumMapEntry aXML_KeepTogetherType[]; +extern const struct SvXMLEnumMapEntry<sal_uInt16> psXML_BorderStyles[]; +extern const struct SvXMLEnumMapEntry<sal_uInt16> psXML_NamedBorderWidths[]; +extern const struct SvXMLEnumMapEntry<SvxGraphicPosition> psXML_BrushRepeat[]; +extern const struct SvXMLEnumMapEntry<SvxGraphicPosition> psXML_BrushHoriPos[]; +extern const struct SvXMLEnumMapEntry<SvxGraphicPosition> psXML_BrushVertPos[]; +extern const struct SvXMLEnumMapEntry<sal_uInt16> psXML_BreakType[]; +extern const struct SvXMLEnumMapEntry<sal_Int16> aXMLTableAlignMap[]; +extern const struct SvXMLEnumMapEntry<sal_Int16> aXMLTableVAlignMap[]; +extern const struct SvXMLEnumMapEntry<sal_uInt16> aXML_KeepTogetherType[]; #endif |