sw/source/filter/xml/xmlfmt.cxx   |    8 +-
 sw/source/filter/xml/xmlfmte.cxx  |   16 ++---
 sw/source/filter/xml/xmlitem.cxx  |    7 +-
 sw/source/filter/xml/xmliteme.cxx |   16 ++---
 sw/source/filter/xml/xmltble.cxx  |  108 ++++++++++++--------------------------
 sw/source/filter/xml/xmltbli.cxx  |   36 +++---------
 6 files changed, 64 insertions(+), 127 deletions(-)

New commits:
commit 35dc4d32de59f14c388239449d4e89e0a5c4509b
Author:     Noel Grandin <noel.gran...@collabora.co.uk>
AuthorDate: Wed Mar 9 09:00:05 2022 +0200
Commit:     Noel Grandin <noel.gran...@collabora.co.uk>
CommitDate: Wed Mar 9 10:57:56 2022 +0100

    use SfxItemSet::GetItemIfSet in sw/.../xml
    
    Change-Id: Id74876ca1217d8401798e8b43ca5464b3241d8c8
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/131230
    Tested-by: Jenkins
    Reviewed-by: Noel Grandin <noel.gran...@collabora.co.uk>

diff --git a/sw/source/filter/xml/xmlfmt.cxx b/sw/source/filter/xml/xmlfmt.cxx
index e8dd4cb97861..d107828a2981 100644
--- a/sw/source/filter/xml/xmlfmt.cxx
+++ b/sw/source/filter/xml/xmlfmt.cxx
@@ -643,13 +643,11 @@ void SwXMLItemSetStyleContext_Impl::ConnectPageDesc()
         m_oItemSet.emplace( rItemPool, aTableSetRange );
     }
 
-    const SfxPoolItem *pItem;
     std::unique_ptr<SwFormatPageDesc> pFormatPageDesc;
-    if( SfxItemState::SET == m_oItemSet->GetItemState( RES_PAGEDESC, false,
-                                                &pItem ) )
+    if( const SwFormatPageDesc* pItem = m_oItemSet->GetItemIfSet( 
RES_PAGEDESC, false ) )
     {
-         if( static_cast<const SwFormatPageDesc *>(pItem)->GetPageDesc() != 
pPageDesc )
-            pFormatPageDesc.reset(new SwFormatPageDesc( *static_cast<const 
SwFormatPageDesc *>(pItem) ));
+         if( pItem->GetPageDesc() != pPageDesc )
+            pFormatPageDesc.reset(new SwFormatPageDesc( *pItem ));
     }
     else
         pFormatPageDesc.reset(new SwFormatPageDesc());
diff --git a/sw/source/filter/xml/xmlfmte.cxx b/sw/source/filter/xml/xmlfmte.cxx
index f7866c5290f8..60e650e48e72 100644
--- a/sw/source/filter/xml/xmlfmte.cxx
+++ b/sw/source/filter/xml/xmlfmte.cxx
@@ -81,13 +81,11 @@ void SwXMLExport::ExportFormat( const SwFormat& rFormat, 
enum XMLTokenEnum eFami
     // style:master-page-name
     if( RES_FRMFMT == rFormat.Which() && XML_TABLE == eFamily )
     {
-        const SfxPoolItem *pItem;
-        if( SfxItemState::SET == rFormat.GetAttrSet().GetItemState( 
RES_PAGEDESC,
-                                                            false, &pItem ) )
+        if( const SwFormatPageDesc* pItem = rFormat.GetAttrSet().GetItemIfSet( 
RES_PAGEDESC,
+                                                            false ) )
         {
             OUString sName;
-            const SwPageDesc *pPageDesc =
-                static_cast<const SwFormatPageDesc *>(pItem)->GetPageDesc();
+            const SwPageDesc *pPageDesc = pItem->GetPageDesc();
             if( pPageDesc )
                 SwStyleNameMapper::FillProgName(
                                     pPageDesc->GetName(),
@@ -102,12 +100,10 @@ void SwXMLExport::ExportFormat( const SwFormat& rFormat, 
enum XMLTokenEnum eFami
     {
         OSL_ENSURE(RES_FRMFMT == rFormat.Which(), "only frame format");
 
-        const SfxPoolItem *pItem;
-        if( SfxItemState::SET ==
-            rFormat.GetAttrSet().GetItemState( RES_BOXATR_FORMAT,
-                                            false, &pItem ) )
+        if( const SwTableBoxNumFormat *pItem =
+                rFormat.GetAttrSet().GetItemIfSet( RES_BOXATR_FORMAT, false ) )
         {
-            sal_Int32 nFormat = static_cast<sal_Int32>(static_cast<const 
SwTableBoxNumFormat *>(pItem)->GetValue());
+            sal_Int32 nFormat = static_cast<sal_Int32>(pItem->GetValue());
 
             if ( (nFormat != -1) && (nFormat != 
static_cast<sal_Int32>(getSwDefaultTextFormat())) )
             {
diff --git a/sw/source/filter/xml/xmlitem.cxx b/sw/source/filter/xml/xmlitem.cxx
index 3bd1bad6b234..32c45bb5392e 100644
--- a/sw/source/filter/xml/xmlitem.cxx
+++ b/sw/source/filter/xml/xmlitem.cxx
@@ -81,13 +81,12 @@ SvXMLImportContextRef 
SwXMLItemSetContext::createFastChildContext( sal_Int32 nEl
     {
     case RES_BACKGROUND:
         {
-            const SfxPoolItem *pItem;
-            if( SfxItemState::SET == m_rItemSet.GetItemState( RES_BACKGROUND,
-                                                       false, &pItem ) )
+            if( const SvxBrushItem* pItem = m_rItemSet.GetItemIfSet( 
RES_BACKGROUND,
+                                                       false ) )
             {
                 xContext = new SwXMLBrushItemImportContext(
                                 GetImport(), nElement, xAttrList,
-                                m_rUnitConv, *static_cast<const SvxBrushItem 
*>(pItem) );
+                                m_rUnitConv, *pItem );
             }
             else
             {
diff --git a/sw/source/filter/xml/xmliteme.cxx 
b/sw/source/filter/xml/xmliteme.cxx
index d60cc12b7d12..1d570b64a914 100644
--- a/sw/source/filter/xml/xmliteme.cxx
+++ b/sw/source/filter/xml/xmliteme.cxx
@@ -110,13 +110,11 @@ void SwXMLTableItemMapper_Impl::handleSpecialItem(
 
     case RES_PRINT:
         {
-            const SfxPoolItem *pItem;
+            const SvxPrintItem *pItem;
             if( pSet &&
-                SfxItemState::SET == pSet->GetItemState( RES_PRINT, true,
-                                                    &pItem ) )
+                (pItem = pSet->GetItemIfSet( RES_PRINT )) )
             {
-                bool bHasTextChangesOnly =
-                    static_cast<const SvxPrintItem *>(pItem)->GetValue();
+                bool bHasTextChangesOnly = pItem->GetValue();
                 if ( !bHasTextChangesOnly )
                 {
                     OUString sValue;
@@ -136,13 +134,11 @@ void SwXMLTableItemMapper_Impl::handleSpecialItem(
 
     case RES_LR_SPACE:
         {
-            const SfxPoolItem *pItem;
+            const SwFormatHoriOrient *pItem;
             if( pSet &&
-                SfxItemState::SET == pSet->GetItemState( RES_HORI_ORIENT, true,
-                                                    &pItem ) )
+                (pItem = pSet->GetItemIfSet( RES_HORI_ORIENT )) )
             {
-                sal_Int16 eHoriOrient =
-                    static_cast<const SwFormatHoriOrient 
*>(pItem)->GetHoriOrient();
+                sal_Int16 eHoriOrient = pItem->GetHoriOrient();
                 bool bExport = false;
                 sal_uInt16 nMemberId =
                     o3tl::narrowing<sal_uInt16>( rEntry.nMemberId & 
MID_SW_FLAG_MASK );
diff --git a/sw/source/filter/xml/xmltble.cxx b/sw/source/filter/xml/xmltble.cxx
index 3a3409cd1b46..0da423d4e450 100644
--- a/sw/source/filter/xml/xmltble.cxx
+++ b/sw/source/filter/xml/xmltble.cxx
@@ -195,24 +195,12 @@ bool SwXMLTableFrameFormatsSort_Impl::AddRow( 
SwFrameFormat& rFrameFormat,
                                          std::u16string_view rNamePrefix,
                                             sal_uInt32 nLine )
 {
-    const SwFormatFrameSize *pFrameSize = nullptr;
-    const SwFormatRowSplit* pRowSplit = nullptr;
-    const SvxBrushItem *pBrush = nullptr;
-    const SvxPrintItem *pHasTextChangesOnly = nullptr;
-
     const SfxItemSet& rItemSet = rFrameFormat.GetAttrSet();
-    const SfxPoolItem *pItem;
-    if( SfxItemState::SET == rItemSet.GetItemState( RES_FRM_SIZE, false, 
&pItem ) )
-        pFrameSize = static_cast<const SwFormatFrameSize *>(pItem);
-
-    if( SfxItemState::SET == rItemSet.GetItemState( RES_ROW_SPLIT, false, 
&pItem ) )
-        pRowSplit = static_cast<const SwFormatRowSplit *>(pItem);
 
-    if( SfxItemState::SET == rItemSet.GetItemState( RES_BACKGROUND, false, 
&pItem ) )
-        pBrush = static_cast<const SvxBrushItem *>(pItem);
-
-    if( SfxItemState::SET == rItemSet.GetItemState( RES_PRINT, false, &pItem ) 
)
-        pHasTextChangesOnly = static_cast<const SvxPrintItem *>(pItem);
+    const SwFormatFrameSize *pFrameSize = rItemSet.GetItemIfSet( RES_FRM_SIZE, 
false );
+    const SwFormatRowSplit* pRowSplit = rItemSet.GetItemIfSet( RES_ROW_SPLIT, 
false );
+    const SvxBrushItem *pBrush = rItemSet.GetItemIfSet( RES_BACKGROUND, false 
);
+    const SvxPrintItem *pHasTextChangesOnly = rItemSet.GetItemIfSet( 
RES_PRINT, false);
 
     // empty styles have not to be exported
     if( !pFrameSize && !pBrush && !pRowSplit && !pHasTextChangesOnly )
@@ -229,13 +217,12 @@ bool SwXMLTableFrameFormatsSort_Impl::AddRow( 
SwFrameFormat& rFrameFormat,
         const SvxPrintItem *pTestHasTextChangesOnly = nullptr;
         const SwFrameFormat *pTestFormat = *i;
         const SfxItemSet& rTestSet = pTestFormat->GetAttrSet();
-        if( SfxItemState::SET == rTestSet.GetItemState( RES_FRM_SIZE, false,
-                                                  &pItem ) )
+        if( const SwFormatFrameSize* pItem = rTestSet.GetItemIfSet( 
RES_FRM_SIZE, false ) )
         {
             if( !pFrameSize )
                 break;
 
-            pTestFrameSize = static_cast<const SwFormatFrameSize *>(pItem);
+            pTestFrameSize = pItem;
         }
         else
         {
@@ -243,13 +230,12 @@ bool SwXMLTableFrameFormatsSort_Impl::AddRow( 
SwFrameFormat& rFrameFormat,
                 continue;
         }
 
-        if( SfxItemState::SET == rTestSet.GetItemState( RES_BACKGROUND, false,
-                                                  &pItem ) )
+        if( const SvxBrushItem* pItem = rTestSet.GetItemIfSet( RES_BACKGROUND, 
false) )
         {
             if( !pBrush )
                 break;
 
-            pTestBrush = static_cast<const SvxBrushItem *>(pItem);
+            pTestBrush = pItem;
         }
         else
         {
@@ -257,13 +243,12 @@ bool SwXMLTableFrameFormatsSort_Impl::AddRow( 
SwFrameFormat& rFrameFormat,
                 continue;
         }
 
-        if( SfxItemState::SET == rTestSet.GetItemState( RES_ROW_SPLIT, false,
-                                                  &pItem ) )
+        if( const SwFormatRowSplit* pItem = rTestSet.GetItemIfSet( 
RES_ROW_SPLIT, false ) )
         {
             if( !pRowSplit )
                 break;
 
-            pTestRowSplit = static_cast<const SwFormatRowSplit *>(pItem);
+            pTestRowSplit = pItem;
         }
         else
         {
@@ -271,13 +256,12 @@ bool SwXMLTableFrameFormatsSort_Impl::AddRow( 
SwFrameFormat& rFrameFormat,
                 continue;
         }
 
-        if( SfxItemState::SET == rTestSet.GetItemState( RES_PRINT, false,
-                                                  &pItem ) )
+        if( const SvxPrintItem* pItem = rTestSet.GetItemIfSet( RES_PRINT, 
false ) )
         {
             if( !pHasTextChangesOnly )
                 break;
 
-            pTestHasTextChangesOnly = static_cast<const SvxPrintItem *>(pItem);
+            pTestHasTextChangesOnly = pItem;
         }
         else
         {
@@ -333,34 +317,16 @@ bool SwXMLTableFrameFormatsSort_Impl::AddCell( 
SwFrameFormat& rFrameFormat,
                                          std::u16string_view rNamePrefix,
                                             sal_uInt32 nCol, sal_uInt32 nRow, 
bool bTop )
 {
-    const SwFormatVertOrient *pVertOrient = nullptr;
-    const SvxBrushItem *pBrush = nullptr;
-    const SvxBoxItem *pBox = nullptr;
-    const SwTableBoxNumFormat *pNumFormat = nullptr;
-    const SvxFrameDirectionItem *pFrameDir = nullptr;
-    const SvXMLAttrContainerItem *pAttCnt = nullptr;
-
     const SfxItemSet& rItemSet = rFrameFormat.GetAttrSet();
-    const SfxPoolItem *pItem;
-    if( SfxItemState::SET == rItemSet.GetItemState( RES_VERT_ORIENT, false,
-                                               &pItem ) )
-        pVertOrient = static_cast<const SwFormatVertOrient *>(pItem);
-
-    if( SfxItemState::SET == rItemSet.GetItemState( RES_BACKGROUND, false, 
&pItem ) )
-        pBrush = static_cast<const SvxBrushItem *>(pItem);
-
-    if( SfxItemState::SET == rItemSet.GetItemState( RES_BOX, false, &pItem ) )
-        pBox = static_cast<const SvxBoxItem *>(pItem);
-
-    if ( SfxItemState::SET == rItemSet.GetItemState( RES_BOXATR_FORMAT,
-                                                false, &pItem ) )
-        pNumFormat = static_cast<const SwTableBoxNumFormat *>(pItem);
-    if ( SfxItemState::SET == rItemSet.GetItemState( RES_FRAMEDIR,
-                                                false, &pItem ) )
-        pFrameDir = static_cast<const SvxFrameDirectionItem *>(pItem);
-    if ( SfxItemState::SET == rItemSet.GetItemState( RES_UNKNOWNATR_CONTAINER,
-                                                false, &pItem ) )
-        pAttCnt = static_cast<const SvXMLAttrContainerItem *>(pItem);
+    const SwFormatVertOrient *pVertOrient = rItemSet.GetItemIfSet( 
RES_VERT_ORIENT, false );
+    const SvxBrushItem *pBrush = rItemSet.GetItemIfSet( RES_BACKGROUND, false 
);
+    const SvxBoxItem *pBox = rItemSet.GetItemIfSet( RES_BOX, false );
+    const SwTableBoxNumFormat *pNumFormat = rItemSet.GetItemIfSet( 
RES_BOXATR_FORMAT,
+                                                false );
+    const SvxFrameDirectionItem *pFrameDir = rItemSet.GetItemIfSet( 
RES_FRAMEDIR,
+                                                false );
+    const SvXMLAttrContainerItem *pAttCnt = rItemSet.GetItemIfSet( 
RES_UNKNOWNATR_CONTAINER,
+                                                false );
 
     // empty styles have not to be exported
     if( !pVertOrient && !pBrush && !pBox && !pNumFormat && !pFrameDir && 
!pAttCnt )
@@ -384,13 +350,12 @@ bool SwXMLTableFrameFormatsSort_Impl::AddCell( 
SwFrameFormat& rFrameFormat,
         const SvXMLAttrContainerItem *pTestAttCnt = nullptr;
         const SwFrameFormat* pTestFormat = *i;
         const SfxItemSet& rTestSet = pTestFormat->GetAttrSet();
-        if( SfxItemState::SET == rTestSet.GetItemState( RES_VERT_ORIENT, false,
-                                                  &pItem ) )
+        if( const SwFormatVertOrient* pItem = rTestSet.GetItemIfSet( 
RES_VERT_ORIENT, false ) )
         {
             if( !pVertOrient )
                 break;
 
-            pTestVertOrient = static_cast<const SwFormatVertOrient *>(pItem);
+            pTestVertOrient = pItem;
         }
         else
         {
@@ -398,13 +363,12 @@ bool SwXMLTableFrameFormatsSort_Impl::AddCell( 
SwFrameFormat& rFrameFormat,
                 continue;
         }
 
-        if( SfxItemState::SET == rTestSet.GetItemState( RES_BACKGROUND, false,
-                                                  &pItem ) )
+        if( const SvxBrushItem* pItem = rTestSet.GetItemIfSet( RES_BACKGROUND, 
false ) )
         {
             if( !pBrush )
                 break;
 
-            pTestBrush = static_cast<const SvxBrushItem *>(pItem);
+            pTestBrush = pItem;
         }
         else
         {
@@ -412,12 +376,12 @@ bool SwXMLTableFrameFormatsSort_Impl::AddCell( 
SwFrameFormat& rFrameFormat,
                 continue;
         }
 
-        if( SfxItemState::SET == rTestSet.GetItemState( RES_BOX, false, &pItem 
) )
+        if( const SvxBoxItem* pItem = rTestSet.GetItemIfSet( RES_BOX, false ) )
         {
             if( !pBox )
                 break;
 
-            pTestBox = static_cast<const SvxBoxItem *>(pItem);
+            pTestBox = pItem;
         }
         else
         {
@@ -425,13 +389,13 @@ bool SwXMLTableFrameFormatsSort_Impl::AddCell( 
SwFrameFormat& rFrameFormat,
                 continue;
         }
 
-        if ( SfxItemState::SET == rTestSet.GetItemState( RES_BOXATR_FORMAT,
-                                                false, &pItem ) )
+        if ( const SwTableBoxNumFormat* pItem = rTestSet.GetItemIfSet( 
RES_BOXATR_FORMAT,
+                                                false ) )
         {
             if( !pNumFormat )
                 break;
 
-            pTestNumFormat = static_cast<const SwTableBoxNumFormat *>(pItem);
+            pTestNumFormat = pItem;
         }
         else
         {
@@ -440,13 +404,13 @@ bool SwXMLTableFrameFormatsSort_Impl::AddCell( 
SwFrameFormat& rFrameFormat,
 
         }
 
-        if ( SfxItemState::SET == rTestSet.GetItemState( RES_FRAMEDIR,
-                                                false, &pItem ) )
+        if ( const SvxFrameDirectionItem* pItem = rTestSet.GetItemIfSet( 
RES_FRAMEDIR,
+                                                false ) )
         {
             if( !pFrameDir )
                 break;
 
-            pTestFrameDir = static_cast<const SvxFrameDirectionItem *>(pItem);
+            pTestFrameDir = pItem;
         }
         else
         {
@@ -455,13 +419,13 @@ bool SwXMLTableFrameFormatsSort_Impl::AddCell( 
SwFrameFormat& rFrameFormat,
 
         }
 
-        if ( SfxItemState::SET == rTestSet.GetItemState( 
RES_UNKNOWNATR_CONTAINER,
-                                                false, &pItem ) )
+        if ( const SvXMLAttrContainerItem* pItem = rTestSet.GetItemIfSet( 
RES_UNKNOWNATR_CONTAINER,
+                                                false ) )
         {
              if( !pAttCnt )
                  break;
 
-             pTestAttCnt = static_cast<const SvXMLAttrContainerItem *>(pItem);
+             pTestAttCnt = pItem;
         }
         else
         {
diff --git a/sw/source/filter/xml/xmltbli.cxx b/sw/source/filter/xml/xmltbli.cxx
index 2b02a1360a94..006e747dc264 100644
--- a/sw/source/filter/xml/xmltbli.cxx
+++ b/sw/source/filter/xml/xmltbli.cxx
@@ -697,16 +697,14 @@ SwXMLTableColContext_Impl::SwXMLTableColContext_Impl(
     bool bRelWidth = true;
     if( !aStyleName.isEmpty() )
     {
-        const SfxPoolItem *pItem;
+        const SwFormatFrameSize *pSize;
         const SfxItemSet *pAutoItemSet = nullptr;
         if( GetSwImport().FindAutomaticStyle(
                     XmlStyleFamily::TABLE_COLUMN,
                                               aStyleName, &pAutoItemSet ) &&
             pAutoItemSet &&
-            SfxItemState::SET == pAutoItemSet->GetItemState( RES_FRM_SIZE, 
false,
-                                                        &pItem ) )
+            (pSize = pAutoItemSet->GetItemIfSet( RES_FRM_SIZE, false )) )
         {
-            const SwFormatFrameSize *pSize = static_cast<const 
SwFormatFrameSize *>(pItem);
             nWidth = pSize->GetWidth();
             bRelWidth = SwFrameSize::Variable == pSize->GetHeightSizeType();
         }
@@ -1910,12 +1908,8 @@ SwTableBox *SwXMLTableContext::MakeTableBox(
             !sStyleName.isEmpty() )
         {
             // default num format?
-            const SfxPoolItem* pItem = nullptr;
-            if( pBoxFormat2->GetItemState( RES_BOXATR_FORMAT, false, &pItem )
-                            == SfxItemState::SET )
+            if( const SwTableBoxNumFormat* pNumFormat = 
pBoxFormat2->GetItemIfSet( RES_BOXATR_FORMAT, false ) )
             {
-                const SwTableBoxNumFormat* pNumFormat =
-                    static_cast<const SwTableBoxNumFormat*>( pItem );
                 if (pNumFormat && (pNumFormat->GetValue() % 
SV_COUNTRY_LANGUAGE_OFFSET) == 0)
                 {
                     // only one text node?
@@ -1965,15 +1959,11 @@ SwTableBox *SwXMLTableContext::MakeTableBox(
                 // No value but a non-textual format, i.e. a number format
                 // Solution: the number format will be removed,
                 // the cell gets the default text format.
-                const SfxPoolItem* pItem = nullptr;
-                if( m_pBoxFormat->GetItemState( RES_BOXATR_FORMAT, false, 
&pItem )
-                    == SfxItemState::SET )
+                if( const SwTableBoxNumFormat* pNumFormat = 
m_pBoxFormat->GetItemIfSet( RES_BOXATR_FORMAT, false ) )
                 {
                     const SwDoc* pDoc = m_pBoxFormat->GetDoc();
                     const SvNumberFormatter* pNumberFormatter = pDoc ?
                         pDoc->GetNumberFormatter() : nullptr;
-                    const SwTableBoxNumFormat* pNumFormat =
-                        static_cast<const SwTableBoxNumFormat*>( pItem );
                     if( pNumFormat != nullptr && pNumberFormatter &&
                         !pNumberFormatter->GetEntry( pNumFormat->GetValue() 
)->IsTextFormat() )
                         m_pBoxFormat->ResetFormatAttr( RES_BOXATR_FORMAT );
@@ -2512,16 +2502,12 @@ void SwXMLTableContext::MakeTable()
             XmlStyleFamily::TABLE_TABLE, m_aStyleName, &pAutoItemSet ) &&
          pAutoItemSet )
     {
-        const SfxPoolItem *pItem;
-        const SvxLRSpaceItem *pLRSpace = nullptr;
-        if( SfxItemState::SET == pAutoItemSet->GetItemState( RES_LR_SPACE, 
false,
-                                                        &pItem ) )
-            pLRSpace = static_cast<const SvxLRSpaceItem *>(pItem);
+        const SvxLRSpaceItem *pLRSpace =
+            pAutoItemSet->GetItemIfSet( RES_LR_SPACE, false );
 
-        if( SfxItemState::SET == pAutoItemSet->GetItemState( RES_HORI_ORIENT, 
false,
-                                                        &pItem ) )
+        if( const SwFormatHoriOrient* pItem = pAutoItemSet->GetItemIfSet( 
RES_HORI_ORIENT, false ) )
         {
-            eHoriOrient = static_cast<const SwFormatHoriOrient 
*>(pItem)->GetHoriOrient();
+            eHoriOrient = pItem->GetHoriOrient();
             switch( eHoriOrient )
             {
             case text::HoriOrientation::FULL:
@@ -2547,10 +2533,8 @@ void SwXMLTableContext::MakeTable()
             bSetHoriOrient = true;
         }
 
-        const SwFormatFrameSize *pSize = nullptr;
-        if( SfxItemState::SET == pAutoItemSet->GetItemState( RES_FRM_SIZE, 
false,
-                                                        &pItem ) )
-            pSize = static_cast<const SwFormatFrameSize *>(pItem);
+        const SwFormatFrameSize *pSize =
+            pAutoItemSet->GetItemIfSet( RES_FRM_SIZE, false );
 
         switch( eHoriOrient )
         {

Reply via email to