diff options
author | Miklos Vajna <vmiklos@suse.cz> | 2012-06-29 11:26:13 +0200 |
---|---|---|
committer | Miklos Vajna <vmiklos@suse.cz> | 2012-06-29 16:00:20 +0200 |
commit | 5b021a1f0d281aed40ae83dffe4af7600b858bd5 (patch) | |
tree | 9553bf49e5910d120c10d20c08adef656459c047 | |
parent | bf5115328ed454f43b4443f3891a0183dfd62814 (diff) |
sw: initial HeaderIsSharedFirst / FooterIsSharedFirst
It's just like HeaderIsShared / FooterIsShared, enabled by default when
header / footer is on. It does nothing yet, but it's read-writable.
Motivation: https://wiki.oasis-open.org/office/HeaderFooterFirst
Change-Id: I1ccfd0aedd1ac71e9f39b7fd43754264afafc1ef
-rw-r--r-- | offapi/com/sun/star/style/PageProperties.idl | 12 | ||||
-rw-r--r-- | svx/inc/svx/svxids.hrc | 1 | ||||
-rw-r--r-- | sw/inc/cmdid.h | 2 | ||||
-rw-r--r-- | sw/inc/pagedesc.hxx | 11 | ||||
-rw-r--r-- | sw/inc/unoprnms.hxx | 5 | ||||
-rw-r--r-- | sw/source/core/doc/docdesc.cxx | 2 | ||||
-rw-r--r-- | sw/source/core/layout/pagedesc.cxx | 31 | ||||
-rw-r--r-- | sw/source/core/unocore/unomap.cxx | 2 | ||||
-rw-r--r-- | sw/source/core/unocore/unoprnms.cxx | 2 | ||||
-rw-r--r-- | sw/source/core/unocore/unostyle.cxx | 17 | ||||
-rw-r--r-- | sw/source/ui/utlui/uitool.cxx | 12 |
11 files changed, 95 insertions, 2 deletions
diff --git a/offapi/com/sun/star/style/PageProperties.idl b/offapi/com/sun/star/style/PageProperties.idl index b0da2518bf6b..ebd7b4957041 100644 --- a/offapi/com/sun/star/style/PageProperties.idl +++ b/offapi/com/sun/star/style/PageProperties.idl @@ -258,6 +258,12 @@ published service PageProperties */ [property, maybevoid] boolean HeaderIsShared; //----------------------------------------------------------------------------- +/** determines if the header content on the first page and remaining pages is the same. + + @since LibreOffice 3.7 + */ +[optional, property, maybevoid] boolean HeaderIsSharedFirst; +//----------------------------------------------------------------------------- /** contains the height of the header. */ [property, maybevoid] long HeaderHeight; @@ -364,6 +370,12 @@ published service PageProperties */ [property, maybevoid] boolean FooterIsShared; //----------------------------------------------------------------------------- +/** determines if the footer content on the first page and remaining pages is the same. + + @since LibreOffice 3.7 + */ +[optional, property, maybevoid] boolean FooterIsSharedFirst; +//----------------------------------------------------------------------------- /** determines the height of the footer. */ [property, maybevoid] long FooterHeight; diff --git a/svx/inc/svx/svxids.hrc b/svx/inc/svx/svxids.hrc index 918d44d60b95..db8753e36761 100644 --- a/svx/inc/svx/svxids.hrc +++ b/svx/inc/svx/svxids.hrc @@ -956,6 +956,7 @@ #define SID_INSERT_FORM_VSCROLL (SID_SVX_START+1111) #define SID_INSERT_FORM_HSCROLL (SID_SVX_START+1112) #define SID_EXTERNAL_EDIT (SID_SVX_START+1113) +#define SID_ATTR_PAGE_SHARED_FIRST (SID_SVX_START+1114) // IMPORTANT NOTE: adjust SID_SVX_FIRSTFREE, when adding new slot id #define SID_SVX_FIRSTFREE (SID_EXTERNAL_EDIT + 1) diff --git a/sw/inc/cmdid.h b/sw/inc/cmdid.h index 2262521988ef..97ebfc51cd6b 100644 --- a/sw/inc/cmdid.h +++ b/sw/inc/cmdid.h @@ -863,6 +863,8 @@ included in c-context files, so c++ style stuff will cause problems. #define FN_MATH_BASELINE_ALIGNMENT (FN_EXTRA2 + 115) #define FN_EMBEDDED_OBJECT (FN_EXTRA2 + 116) +#define FN_UNO_HEADER_SHARE_FIRST_CONTENT (FN_EXTRA2 + 117) +#define FN_UNO_FOOTER_SHARE_FIRST_CONTENT (FN_EXTRA2 + 118) /*------------------------------------------------ -------------------- Area: Help diff --git a/sw/inc/pagedesc.hxx b/sw/inc/pagedesc.hxx index 44367f590052..08e55c025d7b 100644 --- a/sw/inc/pagedesc.hxx +++ b/sw/inc/pagedesc.hxx @@ -133,6 +133,10 @@ namespace nsUseOnPage const UseOnPage PD_FOOTERSHARE = 0x0080; const UseOnPage PD_NOHEADERSHARE = 0x00BF; // For internal use only. const UseOnPage PD_NOFOOTERSHARE = 0x007F; // For internal use only. + const UseOnPage PD_HEADERSHAREFIRST = 0x0100; + const UseOnPage PD_NOHEADERSHAREFIRST = 0xFEFF; + const UseOnPage PD_FOOTERSHAREFIRST = 0x0200; + const UseOnPage PD_NOFOOTERSHAREFIRST = 0xFDFF; } class SW_DLLPUBLIC SwPageDesc : public SwModify @@ -144,6 +148,7 @@ class SW_DLLPUBLIC SwPageDesc : public SwModify SvxNumberType aNumType; SwFrmFmt aMaster; SwFrmFmt aLeft; + SwFrmFmt aFirst; SwDepend aDepend; // Because of grid alignment (Registerhaltigkeit). SwPageDesc *pFollow; sal_uInt16 nRegHeight; // Sentence spacing and fontascent of style. @@ -183,6 +188,10 @@ public: inline sal_Bool IsFooterShared() const; inline void ChgHeaderShare( sal_Bool bNew ); inline void ChgFooterShare( sal_Bool bNew ); + sal_Bool IsHeaderSharedFirst() const; + void ChgHeaderShareFirst( sal_Bool bNew ); + sal_Bool IsFooterSharedFirst() const; + void ChgFooterShareFirst( sal_Bool bNew ); inline void SetUseOn( UseOnPage eNew ); inline UseOnPage GetUseOn() const; @@ -192,8 +201,10 @@ public: SwFrmFmt &GetMaster() { return aMaster; } SwFrmFmt &GetLeft() { return aLeft; } + SwFrmFmt &GetFirst() { return aFirst; } const SwFrmFmt &GetMaster() const { return aMaster; } const SwFrmFmt &GetLeft() const { return aLeft; } + const SwFrmFmt &GetFirst() const { return aFirst; } // Reset all attrs of the format but keep the ones a pagedesc // cannot live without. diff --git a/sw/inc/unoprnms.hxx b/sw/inc/unoprnms.hxx index a27dc3ab251e..43ed2bb96c4d 100644 --- a/sw/inc/unoprnms.hxx +++ b/sw/inc/unoprnms.hxx @@ -816,7 +816,10 @@ enum SwPropNameIds /* 0750 */ UNO_NAME_PARAGRAPH_STYLE_NAME, -/* 0751 */ SW_PROPNAME_END +/* 0750 */ UNO_NAME_HEADER_IS_SHARED_FIRST, +/* 0751 */ UNO_NAME_FOOTER_IS_SHARED_FIRST, + +/* 0752 */ SW_PROPNAME_END // new items in this array must match SwPropNameTab aPropNameTab }; diff --git a/sw/source/core/doc/docdesc.cxx b/sw/source/core/doc/docdesc.cxx index 5f97836225c4..2aa2b20c68b4 100644 --- a/sw/source/core/doc/docdesc.cxx +++ b/sw/source/core/doc/docdesc.cxx @@ -294,6 +294,7 @@ void SwDoc::ChgPageDesc( sal_uInt16 i, const SwPageDesc &rChged ) } } pDesc->ChgHeaderShare( rChged.IsHeaderShared() ); + pDesc->ChgHeaderShareFirst( rChged.IsHeaderSharedFirst() ); // Synch Footer. const SwFmtFooter &rFoot = rChged.GetMaster().GetFooter(); @@ -354,6 +355,7 @@ void SwDoc::ChgPageDesc( sal_uInt16 i, const SwPageDesc &rChged ) } } pDesc->ChgFooterShare( rChged.IsFooterShared() ); + pDesc->ChgFooterShareFirst( rChged.IsFooterSharedFirst() ); if ( pDesc->GetName() != rChged.GetName() ) pDesc->SetName( rChged.GetName() ); diff --git a/sw/source/core/layout/pagedesc.cxx b/sw/source/core/layout/pagedesc.cxx index 45ac7b5ca7ff..5bbee57546cd 100644 --- a/sw/source/core/layout/pagedesc.cxx +++ b/sw/source/core/layout/pagedesc.cxx @@ -55,11 +55,12 @@ SwPageDesc::SwPageDesc( const String& rName, SwFrmFmt *pFmt, SwDoc *pDc ) : aDescName( rName ), aMaster( pDc->GetAttrPool(), rName, pFmt ), aLeft( pDc->GetAttrPool(), rName, pFmt ), + aFirst( pDc->GetAttrPool(), rName, pFmt ), aDepend( this, 0 ), pFollow( this ), nRegHeight( 0 ), nRegAscent( 0 ), - eUse( (UseOnPage)(nsUseOnPage::PD_ALL | nsUseOnPage::PD_HEADERSHARE | nsUseOnPage::PD_FOOTERSHARE) ), + eUse( (UseOnPage)(nsUseOnPage::PD_ALL | nsUseOnPage::PD_HEADERSHARE | nsUseOnPage::PD_FOOTERSHARE | nsUseOnPage::PD_HEADERSHAREFIRST | nsUseOnPage::PD_FOOTERSHAREFIRST ) ), bLandscape( sal_False ), aFtnInfo() { @@ -71,6 +72,7 @@ SwPageDesc::SwPageDesc( const SwPageDesc &rCpy ) : aNumType( rCpy.GetNumType() ), aMaster( rCpy.GetMaster() ), aLeft( rCpy.GetLeft() ), + aFirst( rCpy.GetFirst() ), aDepend( this, (SwModify*)rCpy.aDepend.GetRegisteredIn() ), pFollow( rCpy.pFollow ), nRegHeight( rCpy.GetRegHeight() ), @@ -87,6 +89,7 @@ SwPageDesc & SwPageDesc::operator = (const SwPageDesc & rSrc) aNumType = rSrc.aNumType; aMaster = rSrc.aMaster; aLeft = rSrc.aLeft; + aFirst = rSrc.aFirst; if (rSrc.pFollow == &rSrc) pFollow = this; @@ -338,6 +341,32 @@ sal_Bool SwPageDesc::IsFollowNextPageOfNode( const SwNode& rNd ) const return bRet; } +sal_Bool SwPageDesc::IsHeaderSharedFirst() const +{ + return eUse & nsUseOnPage::PD_HEADERSHAREFIRST ? sal_True : sal_False; +} + +void SwPageDesc::ChgHeaderShareFirst( sal_Bool bNew ) +{ + if ( bNew ) + eUse = (UseOnPage) (eUse | nsUseOnPage::PD_HEADERSHAREFIRST); + else + eUse = (UseOnPage) (eUse & nsUseOnPage::PD_NOHEADERSHAREFIRST); +} + +sal_Bool SwPageDesc::IsFooterSharedFirst() const +{ + return eUse & nsUseOnPage::PD_FOOTERSHAREFIRST ? sal_True : sal_False; +} + +void SwPageDesc::ChgFooterShareFirst( sal_Bool bNew ) +{ + if ( bNew ) + eUse = (UseOnPage) (eUse | nsUseOnPage::PD_FOOTERSHAREFIRST); + else + eUse = (UseOnPage) (eUse & nsUseOnPage::PD_NOFOOTERSHAREFIRST); +} + /************************************************************************* |* |* SwPageFtnInfo::SwPageFtnInfo() diff --git a/sw/source/core/unocore/unomap.cxx b/sw/source/core/unocore/unomap.cxx index 9eba818cb4d0..365d9ce8b6e9 100644 --- a/sw/source/core/unocore/unomap.cxx +++ b/sw/source/core/unocore/unomap.cxx @@ -787,6 +787,7 @@ const SfxItemPropertyMapEntry* SwUnoPropertyMapProvider::GetPropertyMapEntries(s { SW_PROP_NMID(UNO_NAME_HEADER_BODY_DISTANCE), FN_UNO_HEADER_BODY_DISTANCE,CPPU_E2T(CPPUTYPE_INT32), PROPERTY_NONE ,MID_LO_MARGIN|CONVERT_TWIPS }, { SW_PROP_NMID(UNO_NAME_HEADER_IS_DYNAMIC_HEIGHT), FN_UNO_HEADER_IS_DYNAMIC_DISTANCE,CPPU_E2T(CPPUTYPE_BOOLEAN), PROPERTY_NONE ,0 }, { SW_PROP_NMID(UNO_NAME_HEADER_IS_SHARED), FN_UNO_HEADER_SHARE_CONTENT,CPPU_E2T(CPPUTYPE_BOOLEAN), PROPERTY_NONE ,0 }, + { SW_PROP_NMID(UNO_NAME_HEADER_IS_SHARED_FIRST), FN_UNO_HEADER_SHARE_FIRST_CONTENT,CPPU_E2T(CPPUTYPE_BOOLEAN), PROPERTY_NONE, 0 }, { SW_PROP_NMID(UNO_NAME_HEADER_HEIGHT), FN_UNO_HEADER_HEIGHT, CPPU_E2T(CPPUTYPE_INT32), PROPERTY_NONE ,MID_SIZE_HEIGHT|CONVERT_TWIPS }, { SW_PROP_NMID(UNO_NAME_HEADER_IS_ON), FN_UNO_HEADER_ON, CPPU_E2T(CPPUTYPE_BOOLEAN), PROPERTY_NONE ,0 }, { SW_PROP_NMID(UNO_NAME_HEADER_DYNAMIC_SPACING), FN_UNO_HEADER_EAT_SPACING, CPPU_E2T(CPPUTYPE_BOOLEAN), PropertyAttribute::MAYBEVOID ,0 }, @@ -812,6 +813,7 @@ const SfxItemPropertyMapEntry* SwUnoPropertyMapProvider::GetPropertyMapEntries(s { SW_PROP_NMID(UNO_NAME_FOOTER_BODY_DISTANCE), FN_UNO_FOOTER_BODY_DISTANCE,CPPU_E2T(CPPUTYPE_INT32), PROPERTY_NONE ,MID_UP_MARGIN|CONVERT_TWIPS }, { SW_PROP_NMID(UNO_NAME_FOOTER_IS_DYNAMIC_HEIGHT), FN_UNO_FOOTER_IS_DYNAMIC_DISTANCE,CPPU_E2T(CPPUTYPE_BOOLEAN), PROPERTY_NONE ,0 }, { SW_PROP_NMID(UNO_NAME_FOOTER_IS_SHARED), FN_UNO_FOOTER_SHARE_CONTENT,CPPU_E2T(CPPUTYPE_BOOLEAN), PROPERTY_NONE ,0 }, + { SW_PROP_NMID(UNO_NAME_FOOTER_IS_SHARED_FIRST), FN_UNO_FOOTER_SHARE_FIRST_CONTENT,CPPU_E2T(CPPUTYPE_BOOLEAN), PROPERTY_NONE ,0 }, { SW_PROP_NMID(UNO_NAME_FOOTER_HEIGHT), FN_UNO_FOOTER_HEIGHT, CPPU_E2T(CPPUTYPE_INT32), PROPERTY_NONE ,MID_SIZE_HEIGHT|CONVERT_TWIPS }, { SW_PROP_NMID(UNO_NAME_FOOTER_IS_ON), FN_UNO_FOOTER_ON, CPPU_E2T(CPPUTYPE_BOOLEAN), PROPERTY_NONE ,0 }, { SW_PROP_NMID(UNO_NAME_FOOTER_DYNAMIC_SPACING), FN_UNO_FOOTER_EAT_SPACING, CPPU_E2T(CPPUTYPE_BOOLEAN), PropertyAttribute::MAYBEVOID ,0 }, diff --git a/sw/source/core/unocore/unoprnms.cxx b/sw/source/core/unocore/unoprnms.cxx index 6cecce3b2a15..50497c93d304 100644 --- a/sw/source/core/unocore/unoprnms.cxx +++ b/sw/source/core/unocore/unoprnms.cxx @@ -789,6 +789,8 @@ const SwPropNameTab aPropNameTab = { /* 0749 PARA_CONTEXT_MARGIN */ {MAP_CHAR_LEN("ParaContextMargin")}, /* 0750 PARAGRAPH_STYLE_NAME */ {MAP_CHAR_LEN("ParagraphStyleName")}, +/* 0751 HEADER_IS_SHARED_FIRST */ {MAP_CHAR_LEN("HeaderIsSharedFirst")}, +/* 0752 FOOTER_IS_SHARED_FIRST */ {MAP_CHAR_LEN("FooterIsSharedFirst")}, // new items in this array must match enum SwPropNameIds }; diff --git a/sw/source/core/unocore/unostyle.cxx b/sw/source/core/unocore/unostyle.cxx index f7055be3165d..d43d6fcf11e5 100644 --- a/sw/source/core/unocore/unostyle.cxx +++ b/sw/source/core/unocore/unostyle.cxx @@ -145,6 +145,9 @@ sal_uInt16 lcl_ConvertFNToRES(sal_uInt16 nFNId) case FN_UNO_FOOTER_SHARE_CONTENT: case FN_UNO_HEADER_SHARE_CONTENT: nRes = SID_ATTR_PAGE_SHARED; break; + case FN_UNO_FOOTER_SHARE_FIRST_CONTENT: + case FN_UNO_HEADER_SHARE_FIRST_CONTENT: nRes = SID_ATTR_PAGE_SHARED_FIRST; + break; case FN_UNO_FOOTER_HEIGHT: case FN_UNO_HEADER_HEIGHT: nRes = SID_ATTR_PAGE_SIZE; break; @@ -2999,6 +3002,7 @@ void SAL_CALL SwXPageStyle::SetPropertyValues_Impl( case FN_UNO_HEADER_BODY_DISTANCE: case FN_UNO_HEADER_IS_DYNAMIC_DISTANCE: case FN_UNO_HEADER_SHARE_CONTENT: + case FN_UNO_HEADER_SHARE_FIRST_CONTENT: case FN_UNO_HEADER_HEIGHT: case FN_UNO_HEADER_EAT_SPACING: @@ -3010,6 +3014,7 @@ void SAL_CALL SwXPageStyle::SetPropertyValues_Impl( case FN_UNO_FOOTER_BODY_DISTANCE: case FN_UNO_FOOTER_IS_DYNAMIC_DISTANCE: case FN_UNO_FOOTER_SHARE_CONTENT: + case FN_UNO_FOOTER_SHARE_FIRST_CONTENT: case FN_UNO_FOOTER_HEIGHT: case FN_UNO_FOOTER_EAT_SPACING: { @@ -3050,6 +3055,10 @@ void SAL_CALL SwXPageStyle::SetPropertyValues_Impl( // kein break; case FN_UNO_HEADER_SHARE_CONTENT: nRes = SID_ATTR_PAGE_SHARED; break; + case FN_UNO_FOOTER_SHARE_FIRST_CONTENT: bFooter = sal_True; + // no break; + case FN_UNO_HEADER_SHARE_FIRST_CONTENT: nRes = SID_ATTR_PAGE_SHARED_FIRST; + break; case FN_UNO_FOOTER_HEIGHT: bFooter = sal_True; // kein break; case FN_UNO_HEADER_HEIGHT: nRes = SID_ATTR_PAGE_SIZE;nItemType = TYPE_SIZE; @@ -3106,12 +3115,14 @@ void SAL_CALL SwXPageStyle::SetPropertyValues_Impl( SID_ATTR_PAGE_SIZE, SID_ATTR_PAGE_SIZE, SID_ATTR_PAGE_DYNAMIC, SID_ATTR_PAGE_DYNAMIC, SID_ATTR_PAGE_SHARED, SID_ATTR_PAGE_SHARED, + SID_ATTR_PAGE_SHARED_FIRST, SID_ATTR_PAGE_SHARED_FIRST, 0 ); aTempSet.Put(SfxBoolItem(nRes, sal_True)); aTempSet.Put(SvxSizeItem(SID_ATTR_PAGE_SIZE, Size(MM50, MM50))); aTempSet.Put(SvxLRSpaceItem(RES_LR_SPACE)); aTempSet.Put(SvxULSpaceItem(RES_UL_SPACE)); aTempSet.Put(SfxBoolItem(SID_ATTR_PAGE_SHARED, sal_True)); + aTempSet.Put(SfxBoolItem(SID_ATTR_PAGE_SHARED_FIRST, sal_True)); aTempSet.Put(SfxBoolItem(SID_ATTR_PAGE_DYNAMIC, sal_True)); SvxSetItem aNewSetItem( bFooter ? SID_ATTR_PAGE_FOOTERSET : SID_ATTR_PAGE_HEADERSET, @@ -3254,6 +3265,7 @@ uno::Sequence< uno::Any > SAL_CALL SwXPageStyle::GetPropertyValues_Impl( case FN_UNO_HEADER_BODY_DISTANCE: case FN_UNO_HEADER_IS_DYNAMIC_DISTANCE: case FN_UNO_HEADER_SHARE_CONTENT: + case FN_UNO_HEADER_SHARE_FIRST_CONTENT: case FN_UNO_HEADER_HEIGHT: case FN_UNO_HEADER_EAT_SPACING: @@ -3265,6 +3277,7 @@ uno::Sequence< uno::Any > SAL_CALL SwXPageStyle::GetPropertyValues_Impl( case FN_UNO_FOOTER_BODY_DISTANCE: case FN_UNO_FOOTER_IS_DYNAMIC_DISTANCE: case FN_UNO_FOOTER_SHARE_CONTENT: + case FN_UNO_FOOTER_SHARE_FIRST_CONTENT: case FN_UNO_FOOTER_HEIGHT: case FN_UNO_FOOTER_EAT_SPACING: { @@ -3317,6 +3330,10 @@ uno::Sequence< uno::Any > SAL_CALL SwXPageStyle::GetPropertyValues_Impl( // kein break; case FN_UNO_HEADER_SHARE_CONTENT: nRes = SID_ATTR_PAGE_SHARED; break; + case FN_UNO_FOOTER_SHARE_FIRST_CONTENT: bFooter = sal_True; + // no break; + case FN_UNO_HEADER_SHARE_FIRST_CONTENT: nRes = SID_ATTR_PAGE_SHARED_FIRST; + break; case FN_UNO_FOOTER_HEIGHT: bFooter = sal_True; // kein break; case FN_UNO_HEADER_HEIGHT: nRes = SID_ATTR_PAGE_SIZE; diff --git a/sw/source/ui/utlui/uitool.cxx b/sw/source/ui/utlui/uitool.cxx index aea4c6cd901e..3c760e3dc3f4 100644 --- a/sw/source/ui/utlui/uitool.cxx +++ b/sw/source/ui/utlui/uitool.cxx @@ -219,6 +219,8 @@ void ItemSetToPageDesc( const SfxItemSet& rSet, SwPageDesc& rPageDesc ) rPageDesc.ChgHeaderShare(((const SfxBoolItem&) rHeaderSet.Get(SID_ATTR_PAGE_SHARED)).GetValue()); + rPageDesc.ChgHeaderShareFirst(((const SfxBoolItem&) + rHeaderSet.Get(SID_ATTR_PAGE_SHARED_FIRST)).GetValue()); } else { // Header ausschalten @@ -227,6 +229,7 @@ void ItemSetToPageDesc( const SfxItemSet& rSet, SwPageDesc& rPageDesc ) { rMaster.SetFmtAttr(SwFmtHeader(sal_Bool(sal_False))); rPageDesc.ChgHeaderShare(sal_False); + rPageDesc.ChgHeaderShareFirst(sal_False); } } } @@ -255,6 +258,8 @@ void ItemSetToPageDesc( const SfxItemSet& rSet, SwPageDesc& rPageDesc ) rPageDesc.ChgFooterShare(((const SfxBoolItem&) rFooterSet.Get(SID_ATTR_PAGE_SHARED)).GetValue()); + rPageDesc.ChgFooterShareFirst(((const SfxBoolItem&) + rFooterSet.Get(SID_ATTR_PAGE_SHARED_FIRST)).GetValue()); } else { // Footer ausschalten @@ -263,6 +268,7 @@ void ItemSetToPageDesc( const SfxItemSet& rSet, SwPageDesc& rPageDesc ) { rMaster.SetFmtAttr(SwFmtFooter(sal_Bool(sal_False))); rPageDesc.ChgFooterShare(sal_False); + rPageDesc.ChgFooterShareFirst(sal_False); } } } @@ -368,6 +374,7 @@ void PageDescToItemSet( const SwPageDesc& rPageDesc, SfxItemSet& rSet) // SfxItemSet aHeaderSet( *rSet.GetPool(), SID_ATTR_PAGE_ON, SID_ATTR_PAGE_SHARED, + SID_ATTR_PAGE_SHARED_FIRST, SID_ATTR_PAGE_SHARED_FIRST, SID_ATTR_PAGE_SIZE, SID_ATTR_PAGE_SIZE, SID_ATTR_BORDER_INNER, SID_ATTR_BORDER_INNER, RES_FRMATR_BEGIN, RES_FRMATR_END-1, @@ -387,6 +394,8 @@ void PageDescToItemSet( const SwPageDesc& rPageDesc, SfxItemSet& rSet) // SfxBoolItem aShared(SID_ATTR_PAGE_SHARED, rPageDesc.IsHeaderShared()); aHeaderSet.Put(aShared); + SfxBoolItem aSharedFirst(SID_ATTR_PAGE_SHARED_FIRST, rPageDesc.IsHeaderSharedFirst()); + aHeaderSet.Put(aSharedFirst); // Groesse SvxSizeItem aSize(SID_ATTR_PAGE_SIZE, Size(rFrmSize.GetSize())); @@ -414,6 +423,7 @@ void PageDescToItemSet( const SwPageDesc& rPageDesc, SfxItemSet& rSet) // SfxItemSet aFooterSet( *rSet.GetPool(), SID_ATTR_PAGE_ON, SID_ATTR_PAGE_SHARED, + SID_ATTR_PAGE_SHARED_FIRST, SID_ATTR_PAGE_SHARED_FIRST, SID_ATTR_PAGE_SIZE, SID_ATTR_PAGE_SIZE, SID_ATTR_BORDER_INNER, SID_ATTR_BORDER_INNER, RES_FRMATR_BEGIN, RES_FRMATR_END-1, @@ -433,6 +443,8 @@ void PageDescToItemSet( const SwPageDesc& rPageDesc, SfxItemSet& rSet) // SfxBoolItem aShared(SID_ATTR_PAGE_SHARED, rPageDesc.IsFooterShared()); aFooterSet.Put(aShared); + SfxBoolItem aSharedFirst(SID_ATTR_PAGE_SHARED_FIRST, rPageDesc.IsFooterSharedFirst()); + aFooterSet.Put(aSharedFirst); // Groesse SvxSizeItem aSize(SID_ATTR_PAGE_SIZE, Size(rFrmSize.GetSize())); |