summaryrefslogtreecommitdiff
path: root/sw/source/filter/html/htmlcss1.cxx
diff options
context:
space:
mode:
authorArmin Le Grand <Armin.Le.Grand@me.com>2019-04-18 19:25:06 +0200
committerArmin Le Grand <Armin.Le.Grand@me.com>2019-04-25 19:59:04 +0200
commit1e2682235cded9a7cd90e55f0bfc60a1285e9a46 (patch)
tree17457bc49d6faf37270c8a481b94765f58a5f434 /sw/source/filter/html/htmlcss1.cxx
parent5e4c1e6ba425ce0b75864e4584a846957b032e61 (diff)
WIP: Further preparations for deeper Item changes
(1) Migrated all still existing binary load/save stuff in SfxPoolItem to legacy files. Isolated from Item implementations. Adapted all usages. No more methods Create/Store needed, also GetVersion removed (2) Removed operator= for SfxPoolItem. Adapted all usages. Goal ist to handle Items more as Objects ('Object-Oriented') in the sense to move/handle instances, not to copy one instance over another one (which is more and more problematic with hard to copy content as UNO API stuff or similar). This lead to much more usages of std::shared_ptr which correlates well with future plans fr Items (see dev branch). Next logic step will be to also remove copy constructor Linux build and corrections done Fixed Writer test and removed unused defines Fixed another unused m,acro Started to unify the AutoFormat stuff Changes to OUString constructor usages, tests completely No idea why, but SfxStringItem constructor which takes a OUString& now insists of not getting ::OUString's handed in - changed all 'SfxStringItem.*OUString.*".*"' accordingly Change-Id: Ibed7358b18fb019994a7490332b9d797a6694c29 Reviewed-on: https://gerrit.libreoffice.org/71075 Tested-by: Jenkins Reviewed-by: Armin Le Grand <Armin.Le.Grand@me.com>
Diffstat (limited to 'sw/source/filter/html/htmlcss1.cxx')
-rw-r--r--sw/source/filter/html/htmlcss1.cxx22
1 files changed, 11 insertions, 11 deletions
diff --git a/sw/source/filter/html/htmlcss1.cxx b/sw/source/filter/html/htmlcss1.cxx
index c08bd868b084..8ff8ab08d378 100644
--- a/sw/source/filter/html/htmlcss1.cxx
+++ b/sw/source/filter/html/htmlcss1.cxx
@@ -377,12 +377,12 @@ void SwCSS1Parser::SetTableTextColl( bool bHeader )
void SwCSS1Parser::SetPageDescAttrs( const SvxBrushItem *pBrush,
SfxItemSet *pItemSet2 )
{
- SvxBrushItem aBrushItem( RES_BACKGROUND );
- SvxBoxItem aBoxItem( RES_BOX );
- SvxFrameDirectionItem aFrameDirItem(SvxFrameDirection::Environment, RES_FRAMEDIR);
+ std::shared_ptr<SvxBrushItem> aBrushItem(std::make_shared<SvxBrushItem>(RES_BACKGROUND));
+ std::shared_ptr<SvxBoxItem> aBoxItem(std::make_shared<SvxBoxItem>(RES_BOX));
+ std::shared_ptr<SvxFrameDirectionItem> aFrameDirItem(std::make_shared<SvxFrameDirectionItem>(SvxFrameDirection::Environment, RES_FRAMEDIR));
bool bSetBrush = pBrush!=nullptr, bSetBox = false, bSetFrameDir = false;
if( pBrush )
- aBrushItem = *pBrush;
+ aBrushItem.reset(static_cast<SvxBrushItem*>(pBrush->Clone()));
if( pItemSet2 )
{
@@ -391,7 +391,7 @@ void SwCSS1Parser::SetPageDescAttrs( const SvxBrushItem *pBrush,
&pItem ) )
{
// set a background
- aBrushItem = *static_cast<const SvxBrushItem *>(pItem);
+ aBrushItem.reset(static_cast<SvxBrushItem*>(pItem->Clone()));
pItemSet2->ClearItem( RES_BACKGROUND );
bSetBrush = true;
}
@@ -399,7 +399,7 @@ void SwCSS1Parser::SetPageDescAttrs( const SvxBrushItem *pBrush,
if( SfxItemState::SET == pItemSet2->GetItemState( RES_BOX, false, &pItem ) )
{
// set a border
- aBoxItem = *static_cast<const SvxBoxItem *>(pItem);
+ aBoxItem.reset(static_cast<SvxBoxItem*>(pItem->Clone()));
pItemSet2->ClearItem( RES_BOX );
bSetBox = true;
}
@@ -407,7 +407,7 @@ void SwCSS1Parser::SetPageDescAttrs( const SvxBrushItem *pBrush,
if( SfxItemState::SET == pItemSet2->GetItemState( RES_FRAMEDIR, false, &pItem ) )
{
// set a frame
- aFrameDirItem = *static_cast< const SvxFrameDirectionItem *>( pItem );
+ aFrameDirItem.reset(static_cast<SvxFrameDirectionItem*>(pItem->Clone()));
pItemSet2->ClearItem( RES_FRAMEDIR );
bSetFrameDir = true;
}
@@ -425,11 +425,11 @@ void SwCSS1Parser::SetPageDescAttrs( const SvxBrushItem *pBrush,
SwPageDesc aNewPageDesc( *pPageDesc );
SwFrameFormat &rMaster = aNewPageDesc.GetMaster();
if( bSetBrush )
- rMaster.SetFormatAttr( aBrushItem );
+ rMaster.SetFormatAttr( *aBrushItem );
if( bSetBox )
- rMaster.SetFormatAttr( aBoxItem );
+ rMaster.SetFormatAttr( *aBoxItem );
if( bSetFrameDir )
- rMaster.SetFormatAttr( aFrameDirItem );
+ rMaster.SetFormatAttr( *aFrameDirItem );
ChgPageDesc( pPageDesc, aNewPageDesc );
}
@@ -546,7 +546,7 @@ void SwCSS1Parser::SetPageDescAttrs( const SwPageDesc *pPageDesc,
ChgPageDesc( pPageDesc, aNewPageDesc );
}
-SvxBrushItem SwCSS1Parser::makePageDescBackground() const
+std::shared_ptr<SvxBrushItem> SwCSS1Parser::makePageDescBackground() const
{
return m_pDoc->getIDocumentStylePoolAccess().GetPageDescFromPool( RES_POOLPAGE_HTML, false )
->GetMaster().makeBackgroundBrushItem();