[Libreoffice-commits] .: sw/qa sw/source
Libreoffice Gerrit user
logerrit at kemper.freedesktop.org
Wed Dec 19 13:46:25 PST 2012
sw/qa/extras/odfimport/odfimport.cxx | 9 +++++++++
sw/source/ui/utlui/uitool.cxx | 34 ++++++++++++++++++++++++++++++++--
2 files changed, 41 insertions(+), 2 deletions(-)
New commits:
commit bee957fc48867aa1b98b8672b02a187a461f4e38
Author: Miklos Vajna <vmiklos at suse.cz>
Date: Wed Dec 19 22:35:38 2012 +0100
fdo#57881 sw: make UseOnPage independent from SvxPageUsage
UseOnPage got changed in commit
fa0f42bafbf24e9141ddee728b160b5ab47077f2, but SvxPageUsage got
unchanged. Given that right now other applications don't support first
page headers / footers, leave SvxPageUsage unchanged and provide
conversion methods between the two types.
diff --git a/sw/qa/extras/odfimport/odfimport.cxx b/sw/qa/extras/odfimport/odfimport.cxx
index 78531b4..885413c 100644
--- a/sw/qa/extras/odfimport/odfimport.cxx
+++ b/sw/qa/extras/odfimport/odfimport.cxx
@@ -40,6 +40,7 @@ public:
void testEmptySvgFamilyName();
void testHideAllSections();
void testOdtBorders();
+ void testPageStyleLayoutDefault();
void testPageStyleLayoutRight();
CPPUNIT_TEST_SUITE(Test);
@@ -58,6 +59,7 @@ void Test::run()
{"empty-svg-family-name.odt", &Test::testEmptySvgFamilyName},
{"fdo53210.odt", &Test::testHideAllSections},
{"borders_ooo33.odt", &Test::testOdtBorders},
+ {"hello.odt", &Test::testPageStyleLayoutDefault},
{"hello.odt", &Test::testPageStyleLayoutRight},
};
for (unsigned int i = 0; i < SAL_N_ELEMENTS(aMethods); ++i)
@@ -273,6 +275,13 @@ void Test::testOdtBorders()
} while(xParaEnum->hasMoreElements());
}
+void Test::testPageStyleLayoutDefault()
+{
+ uno::Reference<beans::XPropertySet> xPropertySet(getStyles("PageStyles")->getByName("Default Style"), uno::UNO_QUERY);
+ // This was style::PageStyleLayout_MIRRORED.
+ CPPUNIT_ASSERT_EQUAL(style::PageStyleLayout_ALL, getProperty<style::PageStyleLayout>(xPropertySet, "PageStyleLayout"));
+}
+
void Test::testPageStyleLayoutRight()
{
uno::Reference<beans::XPropertySet> xPropertySet(getStyles("PageStyles")->getByName("Default Style"), uno::UNO_QUERY);
diff --git a/sw/source/ui/utlui/uitool.cxx b/sw/source/ui/utlui/uitool.cxx
index 6cd7c8b..1db6d38 100644
--- a/sw/source/ui/utlui/uitool.cxx
+++ b/sw/source/ui/utlui/uitool.cxx
@@ -147,6 +147,36 @@ void FillHdFt(SwFrmFmt* pFmt, const SfxItemSet& rSet)
pFmt->SetFmtAttr(aSet);
}
+/// Convert from UseOnPage to SvxPageUsage.
+UseOnPage lcl_convertUseToSvx(UseOnPage nUse)
+{
+ UseOnPage nRet = nsUseOnPage::PD_NONE;
+ if ((nUse & nsUseOnPage::PD_LEFT) == nsUseOnPage::PD_LEFT)
+ nRet |= SVX_PAGE_LEFT;
+ if ((nUse & nsUseOnPage::PD_RIGHT) == nsUseOnPage::PD_RIGHT)
+ nRet |= SVX_PAGE_RIGHT;
+ if ((nUse & nsUseOnPage::PD_ALL) == nsUseOnPage::PD_ALL)
+ nRet |= SVX_PAGE_ALL;
+ if ((nUse & nsUseOnPage::PD_MIRROR) == nsUseOnPage::PD_MIRROR)
+ nRet |= SVX_PAGE_MIRROR;
+ return nRet;
+}
+
+/// Convert from SvxPageUsage to UseOnPage.
+UseOnPage lcl_convertUseFromSvx(UseOnPage nUse)
+{
+ UseOnPage nRet = nsUseOnPage::PD_NONE;
+ if ((nUse & SVX_PAGE_LEFT) == SVX_PAGE_LEFT)
+ nRet |= nsUseOnPage::PD_LEFT;
+ if ((nUse & SVX_PAGE_RIGHT) == SVX_PAGE_RIGHT)
+ nRet |= nsUseOnPage::PD_RIGHT;
+ if ((nUse & SVX_PAGE_ALL) == SVX_PAGE_ALL)
+ nRet |= nsUseOnPage::PD_ALL;
+ if ((nUse & SVX_PAGE_MIRROR) == SVX_PAGE_MIRROR)
+ nRet |= nsUseOnPage::PD_MIRROR;
+ return nRet;
+}
+
/*--------------------------------------------------------------------
Beschreibung: PageDesc <-> in Sets wandeln und zurueck
--------------------------------------------------------------------*/
@@ -171,7 +201,7 @@ void ItemSetToPageDesc( const SfxItemSet& rSet, SwPageDesc& rPageDesc )
if(nUse & 0x04)
nUse |= 0x03;
if(nUse)
- rPageDesc.SetUseOn( (UseOnPage) nUse );
+ rPageDesc.SetUseOn( lcl_convertUseFromSvx((UseOnPage) nUse) );
rPageDesc.SetLandscape(rPageItem.IsLandscape());
SvxNumberType aNumType;
aNumType.SetNumberingType( static_cast< sal_Int16 >(rPageItem.GetNumType()) );
@@ -320,7 +350,7 @@ void PageDescToItemSet( const SwPageDesc& rPageDesc, SfxItemSet& rSet)
//
SvxPageItem aPageItem(SID_ATTR_PAGE);
aPageItem.SetDescName(rPageDesc.GetName());
- aPageItem.SetPageUsage(rPageDesc.GetUseOn());
+ aPageItem.SetPageUsage(lcl_convertUseToSvx(rPageDesc.GetUseOn()));
aPageItem.SetLandscape(rPageDesc.GetLandscape());
aPageItem.SetNumType((SvxNumType)rPageDesc.GetNumType().GetNumberingType());
rSet.Put(aPageItem);
More information about the Libreoffice-commits
mailing list