[Libreoffice-commits] .: Branch 'libreoffice-4-0' - sw/source

Libreoffice Gerrit user logerrit at kemper.freedesktop.org
Thu Dec 20 00:09:38 PST 2012


 sw/source/ui/utlui/uitool.cxx |   34 ++++++++++++++++++++++++++++++++--
 1 file changed, 32 insertions(+), 2 deletions(-)

New commits:
commit 5c3450498b7f818fcff70d8daf1aa0d25f60c663
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.
    (cherry picked from commit bee957fc48867aa1b98b8672b02a187a461f4e38)

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