sw/source/filter/html/htmlctxt.cxx           |   12 ++--
 sw/source/filter/ww8/docxattributeoutput.cxx |   70 +++++++++++++--------------
 2 files changed, 41 insertions(+), 41 deletions(-)

New commits:
commit 7d942fbff01e69d10c23c6d20d10ecc8558004f3
Author:     Oromidayo Owolabi <owolabioromiday...@gmail.com>
AuthorDate: Wed Oct 23 19:22:11 2024 +0100
Commit:     Hossein <hoss...@libreoffice.org>
CommitDate: Tue Oct 29 09:50:33 2024 +0100

    tdf#140226 use StaticWhichCast
    
    Replace static_casts informed by .Which() for SfxPoolItems with 
StaticWhichCasts
    where appropriate in htmlctxt.cxx and docxattributeoutput.cxx
    
    Change-Id: I0a905c9e92cf39396bab0620ed35b201f8e6a8c5
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/175515
    Reviewed-by: Hossein   <hoss...@libreoffice.org>
    Tested-by: Jenkins

diff --git a/sw/source/filter/html/htmlctxt.cxx 
b/sw/source/filter/html/htmlctxt.cxx
index 2358b3152cb2..7dad6a6065d4 100644
--- a/sw/source/filter/html/htmlctxt.cxx
+++ b/sw/source/filter/html/htmlctxt.cxx
@@ -575,17 +575,17 @@ void SwHTMLParser::InsertAttrs( SfxItemSet &rItemSet,
         {
         case RES_MARGIN_FIRSTLINE:
             {
-                pFirstLineItem = static_cast<const 
SvxFirstLineIndentItem*>(pItem);
+                pFirstLineItem = 
&(pItem->StaticWhichCast(RES_MARGIN_FIRSTLINE));
             }
             break;
         case RES_MARGIN_TEXTLEFT:
             {
-                pTextLeftMargin = static_cast<const 
SvxTextLeftMarginItem*>(pItem);
+                pTextLeftMargin = 
&(pItem->StaticWhichCast(RES_MARGIN_TEXTLEFT));
             }
             break;
         case RES_MARGIN_RIGHT:
             {
-                pRightMargin = static_cast<const SvxRightMarginItem*>(pItem);
+                pRightMargin = &(pItem->StaticWhichCast(RES_MARGIN_RIGHT));
             }
             break;
         }
@@ -669,7 +669,7 @@ void SwHTMLParser::InsertAttrs( SfxItemSet &rItemSet,
             {
                 sal_uInt16 nUpper = 0, nLower = 0;
                 GetULSpaceFromContext( nUpper, nLower );
-                SvxULSpaceItem aULSpace( *static_cast<const SvxULSpaceItem 
*>(pItem) );
+                SvxULSpaceItem aULSpace( pItem->StaticWhichCast(RES_UL_SPACE) 
);
                 if( !rPropInfo.m_bTopMargin )
                     aULSpace.SetUpper( nUpper );
                 if( !rPropInfo.m_bBottomMargin )
@@ -708,7 +708,7 @@ void SwHTMLParser::InsertAttrs( SfxItemSet &rItemSet,
             if( bCharLvl )
             {
                 // Convert the Frame attribute to a Char attribute (if needed)
-                SvxBrushItem aBrushItem( *static_cast<const SvxBrushItem 
*>(pItem) );
+                SvxBrushItem aBrushItem( 
pItem->StaticWhichCast(RES_BACKGROUND) );
                 aBrushItem.SetWhich( RES_CHRATR_BACKGROUND );
 
                 // Set the attribute
@@ -728,7 +728,7 @@ void SwHTMLParser::InsertAttrs( SfxItemSet &rItemSet,
         case RES_BOX:
             if( bCharLvl )
             {
-                SvxBoxItem aBoxItem( *static_cast<const SvxBoxItem *>(pItem) );
+                SvxBoxItem aBoxItem( pItem->StaticWhichCast(RES_BOX) );
                 aBoxItem.SetWhich( RES_CHRATR_BOX );
 
                 NewAttr(m_xAttrTab, &m_xAttrTab->pCharBox, aBoxItem);
diff --git a/sw/source/filter/ww8/docxattributeoutput.cxx 
b/sw/source/filter/ww8/docxattributeoutput.cxx
index de5deb897463..e5f7e071f3fe 100644
--- a/sw/source/filter/ww8/docxattributeoutput.cxx
+++ b/sw/source/filter/ww8/docxattributeoutput.cxx
@@ -1569,8 +1569,8 @@ void 
lcl_writeParagraphMarkerProperties(DocxAttributeOutput& rAttributeOutput, c
             }
             else if (nWhichId == RES_TXTATR_AUTOFMT)
             {
-                const SwFormatAutoFormat* pAutoFormat = static_cast<const 
SwFormatAutoFormat*>(pItem);
-                lcl_writeParagraphMarkerProperties(rAttributeOutput, 
*pAutoFormat->GetStyleHandle());
+                const SwFormatAutoFormat pAutoFormat = 
pItem->StaticWhichCast(RES_TXTATR_AUTOFMT);
+                lcl_writeParagraphMarkerProperties(rAttributeOutput, 
*pAutoFormat.GetStyleHandle());
             }
         }
         nWhichId = aIter.NextWhich();
@@ -4957,53 +4957,53 @@ void DocxAttributeOutput::OutputDefaultItem(const 
SfxPoolItem& rHt)
     switch (rHt.Which())
     {
         case RES_CHRATR_CASEMAP:
-            bMustWrite = static_cast< const SvxCaseMapItem& 
>(rHt).GetCaseMap() != SvxCaseMap::NotMapped;
+            bMustWrite = rHt.StaticWhichCast(RES_CHRATR_CASEMAP).GetCaseMap() 
!= SvxCaseMap::NotMapped;
             break;
         case RES_CHRATR_COLOR:
-            bMustWrite = static_cast< const SvxColorItem& >(rHt).GetValue() != 
COL_AUTO;
+            bMustWrite = rHt.StaticWhichCast(RES_CHRATR_COLOR).GetValue() != 
COL_AUTO;
             break;
         case RES_CHRATR_CONTOUR:
-            bMustWrite = static_cast< const SvxContourItem& >(rHt).GetValue();
+            bMustWrite = rHt.StaticWhichCast(RES_CHRATR_CONTOUR).GetValue();
             break;
         case RES_CHRATR_CROSSEDOUT:
-            bMustWrite = static_cast< const SvxCrossedOutItem& 
>(rHt).GetStrikeout() != STRIKEOUT_NONE;
+            bMustWrite = 
rHt.StaticWhichCast(RES_CHRATR_CROSSEDOUT).GetStrikeout() != STRIKEOUT_NONE;
             break;
         case RES_CHRATR_ESCAPEMENT:
-            bMustWrite = static_cast< const SvxEscapementItem& 
>(rHt).GetEscapement() != SvxEscapement::Off;
+            bMustWrite = 
rHt.StaticWhichCast(RES_CHRATR_ESCAPEMENT).GetEscapement() != 
SvxEscapement::Off;
             break;
         case RES_CHRATR_FONT:
             bMustWrite = true;
             break;
         case RES_CHRATR_FONTSIZE:
-            bMustWrite = static_cast< const SvxFontHeightItem& 
>(rHt).GetHeight() != 200; // see StyleSheetTable_Impl::StyleSheetTable_Impl() 
where we set this default
+            bMustWrite = rHt.StaticWhichCast(RES_CHRATR_FONTSIZE).GetHeight() 
!= 200; // see StyleSheetTable_Impl::StyleSheetTable_Impl() where we set this 
default
             break;
         case RES_CHRATR_KERNING:
-            bMustWrite = static_cast< const SvxKerningItem& >(rHt).GetValue() 
!= 0;
+            bMustWrite = rHt.StaticWhichCast(RES_CHRATR_KERNING).GetValue() != 
0;
             break;
         case RES_CHRATR_LANGUAGE:
             bMustWrite = true;
             break;
         case RES_CHRATR_POSTURE:
-            bMustWrite = static_cast< const SvxPostureItem& 
>(rHt).GetPosture() != ITALIC_NONE;
+            bMustWrite = rHt.StaticWhichCast(RES_CHRATR_POSTURE).GetPosture() 
!= ITALIC_NONE;
             break;
         case RES_CHRATR_SHADOWED:
-            bMustWrite = static_cast< const SvxShadowedItem& >(rHt).GetValue();
+            bMustWrite = rHt.StaticWhichCast(RES_CHRATR_SHADOWED).GetValue();
             break;
         case RES_CHRATR_UNDERLINE:
-            bMustWrite = static_cast< const SvxUnderlineItem& 
>(rHt).GetLineStyle() != LINESTYLE_NONE;
+            bMustWrite = 
rHt.StaticWhichCast(RES_CHRATR_UNDERLINE).GetLineStyle() != LINESTYLE_NONE;
             break;
         case RES_CHRATR_WEIGHT:
-            bMustWrite = static_cast< const SvxWeightItem& >(rHt).GetWeight() 
!= WEIGHT_NORMAL;
+            bMustWrite = rHt.StaticWhichCast(RES_CHRATR_WEIGHT).GetWeight() != 
WEIGHT_NORMAL;
             break;
         case RES_CHRATR_AUTOKERN:
-            bMustWrite = static_cast< const SvxAutoKernItem& >(rHt).GetValue();
+            bMustWrite = rHt.StaticWhichCast(RES_CHRATR_AUTOKERN).GetValue();
             break;
         case RES_CHRATR_BLINK:
-            bMustWrite = static_cast< const SvxBlinkItem& >(rHt).GetValue();
+            bMustWrite = rHt.StaticWhichCast(RES_CHRATR_BLINK).GetValue();
             break;
         case RES_CHRATR_BACKGROUND:
             {
-                const SvxBrushItem& rBrushItem = static_cast< const 
SvxBrushItem& >(rHt);
+                const SvxBrushItem& rBrushItem = 
rHt.StaticWhichCast(RES_CHRATR_BACKGROUND);
                 bMustWrite = (rBrushItem.GetColor() != COL_AUTO ||
                               rBrushItem.GetShadingValue() != 
ShadingPattern::CLEAR ||
                               rBrushItem.GetGraphicObject() != nullptr);
@@ -5030,39 +5030,39 @@ void DocxAttributeOutput::OutputDefaultItem(const 
SfxPoolItem& rHt)
             bMustWrite = true;
             break;
         case RES_CHRATR_CTL_FONTSIZE:
-            bMustWrite = static_cast< const SvxFontHeightItem& 
>(rHt).GetHeight() != 200; // see StyleSheetTable_Impl::StyleSheetTable_Impl() 
where we set this default
+            bMustWrite = 
rHt.StaticWhichCast(RES_CHRATR_CTL_FONTSIZE).GetHeight() != 200; // see 
StyleSheetTable_Impl::StyleSheetTable_Impl() where we set this default
             break;
         case RES_CHRATR_CTL_LANGUAGE:
             bMustWrite = true;
             break;
         case RES_CHRATR_CTL_POSTURE:
-            bMustWrite = static_cast< const SvxPostureItem& 
>(rHt).GetPosture() != ITALIC_NONE;
+            bMustWrite = 
rHt.StaticWhichCast(RES_CHRATR_CTL_POSTURE).GetPosture() != ITALIC_NONE;
             break;
         case RES_CHRATR_CTL_WEIGHT:
-            bMustWrite = static_cast< const SvxWeightItem& >(rHt).GetWeight() 
!= WEIGHT_NORMAL;
+            bMustWrite = 
rHt.StaticWhichCast(RES_CHRATR_CTL_WEIGHT).GetWeight() != WEIGHT_NORMAL;
             break;
 
         case RES_CHRATR_ROTATE:
-            bMustWrite = static_cast< const SvxCharRotateItem& 
>(rHt).GetValue() != 0_deg10;
+            bMustWrite = rHt.StaticWhichCast(RES_CHRATR_ROTATE).GetValue() != 
0_deg10;
             break;
         case RES_CHRATR_EMPHASIS_MARK:
-            bMustWrite = static_cast< const SvxEmphasisMarkItem& 
>(rHt).GetEmphasisMark() != FontEmphasisMark::NONE;
+            bMustWrite = 
rHt.StaticWhichCast(RES_CHRATR_EMPHASIS_MARK).GetEmphasisMark() != 
FontEmphasisMark::NONE;
             break;
         case RES_CHRATR_TWO_LINES:
-            bMustWrite = static_cast< const SvxTwoLinesItem& >(rHt).GetValue();
+            bMustWrite = rHt.StaticWhichCast(RES_CHRATR_TWO_LINES).GetValue();
             break;
         case RES_CHRATR_SCALEW:
-            bMustWrite = static_cast< const SvxCharScaleWidthItem& 
>(rHt).GetValue() != 100;
+            bMustWrite = rHt.StaticWhichCast(RES_CHRATR_SCALEW).GetValue() != 
100;
             break;
         case RES_CHRATR_RELIEF:
-            bMustWrite = static_cast< const SvxCharReliefItem& 
>(rHt).GetValue() != FontRelief::NONE;
+            bMustWrite = rHt.StaticWhichCast(RES_CHRATR_RELIEF).GetValue() != 
FontRelief::NONE;
             break;
         case RES_CHRATR_HIDDEN:
-            bMustWrite = static_cast< const SvxCharHiddenItem& 
>(rHt).GetValue();
+            bMustWrite = rHt.StaticWhichCast(RES_CHRATR_HIDDEN).GetValue();
             break;
         case RES_CHRATR_BOX:
             {
-                const SvxBoxItem& rBoxItem = static_cast< const SvxBoxItem& 
>(rHt);
+                const SvxBoxItem& rBoxItem = 
rHt.StaticWhichCast(RES_CHRATR_BOX);
                 bMustWrite = rBoxItem.GetTop() || rBoxItem.GetLeft() ||
                              rBoxItem.GetBottom() || rBoxItem.GetRight() ||
                              rBoxItem.GetSmallestDistance();
@@ -5070,7 +5070,7 @@ void DocxAttributeOutput::OutputDefaultItem(const 
SfxPoolItem& rHt)
             break;
         case RES_CHRATR_HIGHLIGHT:
             {
-                const SvxBrushItem& rBrushItem = static_cast< const 
SvxBrushItem& >(rHt);
+                const SvxBrushItem& rBrushItem = 
rHt.StaticWhichCast(RES_CHRATR_HIGHLIGHT);
                 bMustWrite = (rBrushItem.GetColor() != COL_AUTO ||
                               rBrushItem.GetShadingValue() != 
ShadingPattern::CLEAR ||
                               rBrushItem.GetGraphicObject() != nullptr);
@@ -5078,25 +5078,25 @@ void DocxAttributeOutput::OutputDefaultItem(const 
SfxPoolItem& rHt)
             break;
 
         case RES_PARATR_LINESPACING:
-            bMustWrite = static_cast< const SvxLineSpacingItem& 
>(rHt).GetInterLineSpaceRule() != SvxInterLineSpaceRule::Off;
+            bMustWrite = 
rHt.StaticWhichCast(RES_PARATR_LINESPACING).GetInterLineSpaceRule() != 
SvxInterLineSpaceRule::Off;
             break;
         case RES_PARATR_ADJUST:
-            bMustWrite = static_cast< const SvxAdjustItem& >(rHt).GetAdjust() 
!= SvxAdjust::Left;
+            bMustWrite = rHt.StaticWhichCast(RES_PARATR_ADJUST).GetAdjust() != 
SvxAdjust::Left;
             break;
         case RES_PARATR_SPLIT:
-            bMustWrite = !static_cast< const SvxFormatSplitItem& 
>(rHt).GetValue();
+            bMustWrite = !rHt.StaticWhichCast(RES_PARATR_SPLIT).GetValue();
             break;
         case RES_PARATR_WIDOWS:
-            bMustWrite = static_cast< const SvxWidowsItem& >(rHt).GetValue();
+            bMustWrite = rHt.StaticWhichCast(RES_PARATR_WIDOWS).GetValue();
             break;
         case RES_PARATR_TABSTOP:
-            bMustWrite = static_cast< const SvxTabStopItem& >(rHt).Count() != 
0;
+            bMustWrite = rHt.StaticWhichCast(RES_PARATR_TABSTOP).Count() != 0;
             break;
         case RES_PARATR_HYPHENZONE:
             bMustWrite = true;
             break;
         case RES_PARATR_NUMRULE:
-            bMustWrite = !static_cast< const SwNumRuleItem& 
>(rHt).GetValue().isEmpty();
+            bMustWrite = 
!rHt.StaticWhichCast(RES_PARATR_NUMRULE).GetValue().isEmpty();
             break;
         case RES_PARATR_SCRIPTSPACE:
             bMustWrite = !static_cast< const SfxBoolItem& >(rHt).GetValue();
@@ -5108,10 +5108,10 @@ void DocxAttributeOutput::OutputDefaultItem(const 
SfxPoolItem& rHt)
             bMustWrite = !static_cast< const SfxBoolItem& >(rHt).GetValue();
             break;
         case RES_PARATR_VERTALIGN:
-            bMustWrite = static_cast< const SvxParaVertAlignItem& 
>(rHt).GetValue() != SvxParaVertAlignItem::Align::Automatic;
+            bMustWrite = rHt.StaticWhichCast(RES_PARATR_VERTALIGN).GetValue() 
!= SvxParaVertAlignItem::Align::Automatic;
             break;
         case RES_PARATR_SNAPTOGRID:
-            bMustWrite = !static_cast< const SvxParaGridItem& 
>(rHt).GetValue();
+            bMustWrite = 
!rHt.StaticWhichCast(RES_PARATR_SNAPTOGRID).GetValue();
             break;
         case RES_CHRATR_GRABBAG:
             bMustWrite = true;

Reply via email to