fdo#53175: Don't load the default values of the styles in writerfilter
...or we may have some additional properties set on some styles.
Change-Id: I5a5d307931a2a6c1f25bd2da93381d8de65c2480
diff --git a/sw/inc/IDocumentSettingAccess.hxx b/sw/inc/IDocumentSettingAccess.hxx
index d912376..dd907f2 100644
--- a/sw/inc/IDocumentSettingAccess.hxx
+++ b/sw/inc/IDocumentSettingAccess.hxx
@@ -93,7 +93,8 @@ namespace com { namespace sun { namespace star { namespace i18n { struct Forbidd
LABEL_DOCUMENT,
PURGE_OLE,
KERN_ASIAN_PUNCTUATION,
MATH_BASELINE_ALIGNMENT
MATH_BASELINE_ALIGNMENT,
STYLES_NODEFAULT
};
public:
diff --git a/sw/inc/doc.hxx b/sw/inc/doc.hxx
index e6b617f..c18635e 100644
--- a/sw/inc/doc.hxx
+++ b/sw/inc/doc.hxx
@@ -566,6 +566,7 @@ private:
// floating screen objects as given by its
// attribute 'WrapInfluenceOnObjPos'.
bool mbMathBaselineAlignment : 1; // TL 2010-10-29 #i972#
bool mbStylesNoDefault : 1;
// non-ui-compatibility flags:
bool mbOldNumbering : 1;
diff --git a/sw/source/core/doc/doc.cxx b/sw/source/core/doc/doc.cxx
index bf1a7f1..834bc96 100644
--- a/sw/source/core/doc/doc.cxx
+++ b/sw/source/core/doc/doc.cxx
@@ -209,6 +209,7 @@ bool SwDoc::get(/*[in]*/ DocumentSettingId id) const
case KERN_ASIAN_PUNCTUATION: return mbKernAsianPunctuation;
case DO_NOT_RESET_PARA_ATTRS_FOR_NUM_FONT: return mbDoNotResetParaAttrsForNumFont;
case MATH_BASELINE_ALIGNMENT: return mbMathBaselineAlignment;
case STYLES_NODEFAULT: return mbStylesNoDefault;
default:
OSL_FAIL("Invalid setting id");
}
@@ -377,6 +378,9 @@ void SwDoc::set(/*[in]*/ DocumentSettingId id, /*[in]*/ bool value)
case MATH_BASELINE_ALIGNMENT:
mbMathBaselineAlignment = value;
break;
case STYLES_NODEFAULT:
mbStylesNoDefault = value;
break;
default:
OSL_FAIL("Invalid setting id");
}
diff --git a/sw/source/core/doc/poolfmt.cxx b/sw/source/core/doc/poolfmt.cxx
index 40e8f6e..ccd9670 100644
--- a/sw/source/core/doc/poolfmt.cxx
+++ b/sw/source/core/doc/poolfmt.cxx
@@ -377,661 +377,665 @@ SwTxtFmtColl* SwDoc::GetTxtCollFromPool( sal_uInt16 nId, bool bRegardLanguage )
pTxtFmtCollTbl->push_back( pNewColl );
}
switch( nId )
bool bNoDefault = get( IDocumentSettingAccess::STYLES_NODEFAULT );
if ( !bNoDefault )
{
// General content forms
case RES_POOLCOLL_STANDARD:
/* koreans do not like SvxScriptItem(TRUE) */
if (bRegardLanguage)
switch( nId )
{
sal_uLong nAppLanguage = GetAppLanguage();
if (GetDefaultFrameDirection(nAppLanguage) ==
FRMDIR_HORI_RIGHT_TOP)
// General content forms
case RES_POOLCOLL_STANDARD:
/* koreans do not like SvxScriptItem(TRUE) */
if (bRegardLanguage)
{
SvxAdjustItem aAdjust(SVX_ADJUST_RIGHT, RES_PARATR_ADJUST );
aSet.Put(aAdjust);
sal_uLong nAppLanguage = GetAppLanguage();
if (GetDefaultFrameDirection(nAppLanguage) ==
FRMDIR_HORI_RIGHT_TOP)
{
SvxAdjustItem aAdjust(SVX_ADJUST_RIGHT, RES_PARATR_ADJUST );
aSet.Put(aAdjust);
}
if (nAppLanguage == LANGUAGE_KOREAN)
{
SvxScriptSpaceItem aScriptSpace(sal_False, RES_PARATR_SCRIPTSPACE);
aSet.Put(aScriptSpace);
}
}
if (nAppLanguage == LANGUAGE_KOREAN)
break;
case RES_POOLCOLL_TEXT: // Text body
{
SvxScriptSpaceItem aScriptSpace(sal_False, RES_PARATR_SCRIPTSPACE);
aSet.Put(aScriptSpace);
SvxULSpaceItem aUL( 0, PT_6, RES_UL_SPACE );
if( get(IDocumentSettingAccess::HTML_MODE) ) aUL.SetLower( HTML_PARSPACE );
aSet.Put( aUL );
}
}
break;
case RES_POOLCOLL_TEXT: // Text body
{
SvxULSpaceItem aUL( 0, PT_6, RES_UL_SPACE );
if( get(IDocumentSettingAccess::HTML_MODE) ) aUL.SetLower( HTML_PARSPACE );
aSet.Put( aUL );
}
break;
case RES_POOLCOLL_TEXT_IDENT: // Text body indentation
{
SvxLRSpaceItem aLR( RES_LR_SPACE );
aLR.SetTxtFirstLineOfst( GetMetricVal( CM_05 ));
aSet.Put( aLR );
}
break;
case RES_POOLCOLL_TEXT_NEGIDENT: // Text body neg. indentation
{
SvxLRSpaceItem aLR( RES_LR_SPACE );
aLR.SetTxtFirstLineOfst( -(short)GetMetricVal( CM_05 ));
aLR.SetTxtLeft( GetMetricVal( CM_1 ));
SvxTabStopItem aTStops(RES_PARATR_TABSTOP); aTStops.Insert( SvxTabStop( 0 ));
aSet.Put( aLR );
aSet.Put( aTStops );
}
break;
case RES_POOLCOLL_TEXT_MOVE: // Text body move
{
SvxLRSpaceItem aLR( RES_LR_SPACE );
aLR.SetTxtLeft( GetMetricVal( CM_05 ));
aSet.Put( aLR );
}
break;
case RES_POOLCOLL_CONFRONTATION: // Text body confrontation
{
SvxLRSpaceItem aLR( RES_LR_SPACE );
aLR.SetTxtFirstLineOfst( - short( GetMetricVal( CM_1 ) * 4 +
GetMetricVal( CM_05)) );
aLR.SetTxtLeft( GetMetricVal( CM_1 ) * 5 );
SvxTabStopItem aTStops( RES_PARATR_TABSTOP ); aTStops.Insert( SvxTabStop( 0 ));
aSet.Put( aLR );
aSet.Put( aTStops );
}
break;
case RES_POOLCOLL_MARGINAL: // Text body marginal
{
SvxLRSpaceItem aLR( RES_LR_SPACE );
aLR.SetTxtLeft( GetMetricVal( CM_1 ) * 4 );
aSet.Put( aLR );
}
break;
case RES_POOLCOLL_HEADLINE_BASE: // Base headline
{
static const sal_uInt16 aFntInit[] = {
DEFAULTFONT_LATIN_HEADING, RES_CHRATR_FONT,
RES_CHRATR_LANGUAGE, LANGUAGE_ENGLISH_US,
DEFAULTFONT_CJK_HEADING, RES_CHRATR_CJK_FONT,
RES_CHRATR_CJK_LANGUAGE, LANGUAGE_ENGLISH_US,
DEFAULTFONT_CTL_HEADING, RES_CHRATR_CTL_FONT,
RES_CHRATR_CTL_LANGUAGE, LANGUAGE_ARABIC_SAUDI_ARABIA,
0
};
for( const sal_uInt16* pArr = aFntInit; *pArr; pArr += 4 )
break;
case RES_POOLCOLL_TEXT_IDENT: // Text body indentation
{
sal_uInt16 nLng = ((SvxLanguageItem&)GetDefault( *(pArr+2) )).GetLanguage();
if( LANGUAGE_DONTKNOW == nLng )
nLng = *(pArr+3);
Font aFnt( OutputDevice::GetDefaultFont( *pArr,
nLng, DEFAULTFONT_FLAGS_ONLYONE ) );
aSet.Put( SvxFontItem( aFnt.GetFamily(), aFnt.GetName(),
aEmptyStr, aFnt.GetPitch(),
aFnt.GetCharSet(), *(pArr+1) ));
SvxLRSpaceItem aLR( RES_LR_SPACE );
aLR.SetTxtFirstLineOfst( GetMetricVal( CM_05 ));
aSet.Put( aLR );
}
break;
case RES_POOLCOLL_TEXT_NEGIDENT: // Text body neg. indentation
{
SvxLRSpaceItem aLR( RES_LR_SPACE );
aLR.SetTxtFirstLineOfst( -(short)GetMetricVal( CM_05 ));
aLR.SetTxtLeft( GetMetricVal( CM_1 ));
SvxTabStopItem aTStops(RES_PARATR_TABSTOP); aTStops.Insert( SvxTabStop( 0 ));
SvxFontHeightItem aFntSize( PT_14, 100, RES_CHRATR_FONTSIZE );
SvxULSpaceItem aUL( PT_12, PT_6, RES_UL_SPACE );
if( get(IDocumentSettingAccess::HTML_MODE) )
aUL.SetLower( HTML_PARSPACE );
aSet.Put( SvxFmtKeepItem( sal_True, RES_KEEP ));
aSet.Put( aLR );
aSet.Put( aTStops );
}
break;
case RES_POOLCOLL_TEXT_MOVE: // Text body move
{
SvxLRSpaceItem aLR( RES_LR_SPACE );
aLR.SetTxtLeft( GetMetricVal( CM_05 ));
aSet.Put( aLR );
}
break;
pNewColl->SetNextTxtFmtColl( *GetTxtCollFromPool( RES_POOLCOLL_TEXT ));
case RES_POOLCOLL_CONFRONTATION: // Text body confrontation
{
SvxLRSpaceItem aLR( RES_LR_SPACE );
aLR.SetTxtFirstLineOfst( - short( GetMetricVal( CM_1 ) * 4 +
GetMetricVal( CM_05)) );
aLR.SetTxtLeft( GetMetricVal( CM_1 ) * 5 );
SvxTabStopItem aTStops( RES_PARATR_TABSTOP ); aTStops.Insert( SvxTabStop( 0 ));
aSet.Put( aUL );
SetAllScriptItem( aSet, aFntSize );
}
break;
aSet.Put( aLR );
aSet.Put( aTStops );
}
break;
case RES_POOLCOLL_MARGINAL: // Text body marginal
{
SvxLRSpaceItem aLR( RES_LR_SPACE );
aLR.SetTxtLeft( GetMetricVal( CM_1 ) * 4 );
aSet.Put( aLR );
}
break;
case RES_POOLCOLL_NUMBUL_BASE: // Base Numbering
break;
case RES_POOLCOLL_HEADLINE_BASE: // Base headline
{
static const sal_uInt16 aFntInit[] = {
DEFAULTFONT_LATIN_HEADING, RES_CHRATR_FONT,
RES_CHRATR_LANGUAGE, LANGUAGE_ENGLISH_US,
DEFAULTFONT_CJK_HEADING, RES_CHRATR_CJK_FONT,
RES_CHRATR_CJK_LANGUAGE, LANGUAGE_ENGLISH_US,
DEFAULTFONT_CTL_HEADING, RES_CHRATR_CTL_FONT,
RES_CHRATR_CTL_LANGUAGE, LANGUAGE_ARABIC_SAUDI_ARABIA,
0
};
case RES_POOLCOLL_GREETING: // Greeting
case RES_POOLCOLL_REGISTER_BASE: // Base directories
case RES_POOLCOLL_SIGNATURE: // Signatures
case RES_POOLCOLL_TABLE: // Tabele content
{
SwFmtLineNumber aLN; aLN.SetCountLines( sal_False );
aSet.Put( aLN );
}
break;
for( const sal_uInt16* pArr = aFntInit; *pArr; pArr += 4 )
{
sal_uInt16 nLng = ((SvxLanguageItem&)GetDefault( *(pArr+2) )).GetLanguage();
if( LANGUAGE_DONTKNOW == nLng )
nLng = *(pArr+3);
case RES_POOLCOLL_HEADLINE1: // Headinline 1
lcl_SetHeadline( this, pNewColl, aSet, nOutLvlBits, 0, sal_False );
break;
case RES_POOLCOLL_HEADLINE2: // Headinline 2
lcl_SetHeadline( this, pNewColl, aSet, nOutLvlBits, 1, sal_True );
break;
case RES_POOLCOLL_HEADLINE3: // Headinline 3
lcl_SetHeadline( this, pNewColl, aSet, nOutLvlBits, 2, sal_False );
break;
case RES_POOLCOLL_HEADLINE4: // Headinline 4
lcl_SetHeadline( this, pNewColl, aSet, nOutLvlBits, 3, sal_True );
break;
case RES_POOLCOLL_HEADLINE5: // Headinline 5
lcl_SetHeadline( this, pNewColl, aSet, nOutLvlBits, 4, sal_False );
break;
case RES_POOLCOLL_HEADLINE6: // Headinline 6
lcl_SetHeadline( this, pNewColl, aSet, nOutLvlBits, 5, sal_False );
break;
case RES_POOLCOLL_HEADLINE7: // Headinline 7
lcl_SetHeadline( this, pNewColl, aSet, nOutLvlBits, 6, sal_False );
break;
case RES_POOLCOLL_HEADLINE8: // Headinline 8
lcl_SetHeadline( this, pNewColl, aSet, nOutLvlBits, 7, sal_False );
break;
case RES_POOLCOLL_HEADLINE9: // Headinline 9
lcl_SetHeadline( this, pNewColl, aSet, nOutLvlBits, 8, sal_False );
break;
case RES_POOLCOLL_HEADLINE10: // Headinline 10
lcl_SetHeadline( this, pNewColl, aSet, nOutLvlBits, 9, sal_False );
break;
Font aFnt( OutputDevice::GetDefaultFont( *pArr,
nLng, DEFAULTFONT_FLAGS_ONLYONE ) );
aSet.Put( SvxFontItem( aFnt.GetFamily(), aFnt.GetName(),
aEmptyStr, aFnt.GetPitch(),
aFnt.GetCharSet(), *(pArr+1) ));
}
SvxFontHeightItem aFntSize( PT_14, 100, RES_CHRATR_FONTSIZE );
SvxULSpaceItem aUL( PT_12, PT_6, RES_UL_SPACE );
if( get(IDocumentSettingAccess::HTML_MODE) )
aUL.SetLower( HTML_PARSPACE );
aSet.Put( SvxFmtKeepItem( sal_True, RES_KEEP ));
pNewColl->SetNextTxtFmtColl( *GetTxtCollFromPool( RES_POOLCOLL_TEXT ));
aSet.Put( aUL );
SetAllScriptItem( aSet, aFntSize );
}
break;
case RES_POOLCOLL_NUMBUL_BASE: // Base Numbering
break;
case RES_POOLCOLL_GREETING: // Greeting
case RES_POOLCOLL_REGISTER_BASE: // Base directories
case RES_POOLCOLL_SIGNATURE: // Signatures
case RES_POOLCOLL_TABLE: // Tabele content
{
SwFmtLineNumber aLN; aLN.SetCountLines( sal_False );
aSet.Put( aLN );
}
break;
case RES_POOLCOLL_HEADLINE1: // Headinline 1
lcl_SetHeadline( this, pNewColl, aSet, nOutLvlBits, 0, sal_False );
break;
case RES_POOLCOLL_HEADLINE2: // Headinline 2
lcl_SetHeadline( this, pNewColl, aSet, nOutLvlBits, 1, sal_True );
break;
case RES_POOLCOLL_HEADLINE3: // Headinline 3
lcl_SetHeadline( this, pNewColl, aSet, nOutLvlBits, 2, sal_False );
break;
case RES_POOLCOLL_HEADLINE4: // Headinline 4
lcl_SetHeadline( this, pNewColl, aSet, nOutLvlBits, 3, sal_True );
break;
case RES_POOLCOLL_HEADLINE5: // Headinline 5
lcl_SetHeadline( this, pNewColl, aSet, nOutLvlBits, 4, sal_False );
break;
case RES_POOLCOLL_HEADLINE6: // Headinline 6
lcl_SetHeadline( this, pNewColl, aSet, nOutLvlBits, 5, sal_False );
break;
case RES_POOLCOLL_HEADLINE7: // Headinline 7
lcl_SetHeadline( this, pNewColl, aSet, nOutLvlBits, 6, sal_False );
break;
case RES_POOLCOLL_HEADLINE8: // Headinline 8
lcl_SetHeadline( this, pNewColl, aSet, nOutLvlBits, 7, sal_False );
break;
case RES_POOLCOLL_HEADLINE9: // Headinline 9
lcl_SetHeadline( this, pNewColl, aSet, nOutLvlBits, 8, sal_False );
break;
case RES_POOLCOLL_HEADLINE10: // Headinline 10
lcl_SetHeadline( this, pNewColl, aSet, nOutLvlBits, 9, sal_False );
break;
// Special areas:
// Header
case RES_POOLCOLL_HEADER:
case RES_POOLCOLL_HEADERL:
case RES_POOLCOLL_HEADERR:
// Footer
case RES_POOLCOLL_FOOTER:
case RES_POOLCOLL_FOOTERL:
case RES_POOLCOLL_FOOTERR:
{
SwFmtLineNumber aLN; aLN.SetCountLines( sal_False );
aSet.Put( aLN );
// Special areas:
// Header
case RES_POOLCOLL_HEADER:
case RES_POOLCOLL_HEADERL:
case RES_POOLCOLL_HEADERR:
// Footer
case RES_POOLCOLL_FOOTER:
case RES_POOLCOLL_FOOTERL:
case RES_POOLCOLL_FOOTERR:
{
SwFmtLineNumber aLN; aLN.SetCountLines( sal_False );
aSet.Put( aLN );
long nRightMargin = lcl_GetRightMargin( *this );
long nRightMargin = lcl_GetRightMargin( *this );
SvxTabStopItem aTStops( 0, 0, SVX_TAB_ADJUST_DEFAULT, RES_PARATR_TABSTOP );
aTStops.Insert( SvxTabStop( nRightMargin / 2, SVX_TAB_ADJUST_CENTER ) );
aTStops.Insert( SvxTabStop( nRightMargin, SVX_TAB_ADJUST_RIGHT ) );
SvxTabStopItem aTStops( 0, 0, SVX_TAB_ADJUST_DEFAULT, RES_PARATR_TABSTOP );
aTStops.Insert( SvxTabStop( nRightMargin / 2, SVX_TAB_ADJUST_CENTER ) );
aTStops.Insert( SvxTabStop( nRightMargin, SVX_TAB_ADJUST_RIGHT ) );
aSet.Put( aTStops );
}
break;
aSet.Put( aTStops );
}
break;
case RES_POOLCOLL_TABLE_HDLN:
{
SetAllScriptItem( aSet, SvxWeightItem( WEIGHT_BOLD, RES_CHRATR_WEIGHT ) );
aSet.Put( SvxAdjustItem( SVX_ADJUST_CENTER, RES_PARATR_ADJUST ) );
SwFmtLineNumber aLN; aLN.SetCountLines( sal_False );
aSet.Put( aLN );
}
break;
case RES_POOLCOLL_TABLE_HDLN:
{
SetAllScriptItem( aSet, SvxWeightItem( WEIGHT_BOLD, RES_CHRATR_WEIGHT ) );
aSet.Put( SvxAdjustItem( SVX_ADJUST_CENTER, RES_PARATR_ADJUST ) );
SwFmtLineNumber aLN; aLN.SetCountLines( sal_False );
aSet.Put( aLN );
}
break;
case RES_POOLCOLL_FOOTNOTE: // paragraph style Footnote
case RES_POOLCOLL_ENDNOTE: // paragraph style Endnote
{
SvxLRSpaceItem aLR( RES_LR_SPACE );
aLR.SetTxtFirstLineOfst( -(short)( GetMetricVal( CM_05 ) + GetMetricVal( CM_01 ) ) );
aLR.SetTxtLeft( GetMetricVal( CM_05 ) + GetMetricVal( CM_01 ) );
SetAllScriptItem( aSet, SvxFontHeightItem( PT_10, 100, RES_CHRATR_FONTSIZE ) );
aSet.Put( aLR );
SwFmtLineNumber aLN; aLN.SetCountLines( sal_False );
aSet.Put( aLN );
}
break;
case RES_POOLCOLL_FOOTNOTE: // paragraph style Footnote
case RES_POOLCOLL_ENDNOTE: // paragraph style Endnote
{
SvxLRSpaceItem aLR( RES_LR_SPACE );
aLR.SetTxtFirstLineOfst( -(short)( GetMetricVal( CM_05 ) + GetMetricVal( CM_01 ) ) );
aLR.SetTxtLeft( GetMetricVal( CM_05 ) + GetMetricVal( CM_01 ) );
SetAllScriptItem( aSet, SvxFontHeightItem( PT_10, 100, RES_CHRATR_FONTSIZE ) );
aSet.Put( aLR );
SwFmtLineNumber aLN; aLN.SetCountLines( sal_False );
aSet.Put( aLN );
}
break;
case RES_POOLCOLL_LABEL: // Base label
{
SvxULSpaceItem aUL( RES_UL_SPACE ); aUL.SetUpper( PT_6 ); aUL.SetLower( PT_6 );
aSet.Put( aUL );
SetAllScriptItem( aSet, SvxPostureItem( ITALIC_NORMAL, RES_CHRATR_POSTURE ) );
SetAllScriptItem( aSet, SvxFontHeightItem( PT_10, 100, RES_CHRATR_FONTSIZE ) );
SwFmtLineNumber aLN; aLN.SetCountLines( sal_False );
aSet.Put( aLN );
}
break;
case RES_POOLCOLL_LABEL: // Base label
{
SvxULSpaceItem aUL( RES_UL_SPACE ); aUL.SetUpper( PT_6 ); aUL.SetLower( PT_6 );
aSet.Put( aUL );
SetAllScriptItem( aSet, SvxPostureItem( ITALIC_NORMAL, RES_CHRATR_POSTURE ) );
SetAllScriptItem( aSet, SvxFontHeightItem( PT_10, 100, RES_CHRATR_FONTSIZE ) );
SwFmtLineNumber aLN; aLN.SetCountLines( sal_False );
aSet.Put( aLN );
}
break;
case RES_POOLCOLL_FRAME: // Frame content
case RES_POOLCOLL_LABEL_ABB: // Label projection
case RES_POOLCOLL_LABEL_TABLE: // Label table
case RES_POOLCOLL_LABEL_FRAME: // Label frame
case RES_POOLCOLL_LABEL_DRAWING: // Label drawing
break;
case RES_POOLCOLL_FRAME: // Frame content
case RES_POOLCOLL_LABEL_ABB: // Label projection
case RES_POOLCOLL_LABEL_TABLE: // Label table
case RES_POOLCOLL_LABEL_FRAME: // Label frame
case RES_POOLCOLL_LABEL_DRAWING: // Label drawing
break;
case RES_POOLCOLL_JAKETADRESS: // Jaket address
{
SvxULSpaceItem aUL( RES_UL_SPACE ); aUL.SetLower( PT_3 );
aSet.Put( aUL );
SwFmtLineNumber aLN; aLN.SetCountLines( sal_False );
aSet.Put( aLN );
}
break;
case RES_POOLCOLL_SENDADRESS: // Sender address
{
if( get(IDocumentSettingAccess::HTML_MODE) )
SetAllScriptItem( aSet, SvxPostureItem(ITALIC_NORMAL, RES_CHRATR_POSTURE) );
else
case RES_POOLCOLL_JAKETADRESS: // Jaket address
{
SvxULSpaceItem aUL( RES_UL_SPACE ); aUL.SetLower( PT_3 );
aSet.Put( aUL );
SwFmtLineNumber aLN; aLN.SetCountLines( sal_False );
aSet.Put( aLN );
}
SwFmtLineNumber aLN; aLN.SetCountLines( sal_False );
aSet.Put( aLN );
}
break;
break;
// User directories:
case RES_POOLCOLL_TOX_USERH: // Header
lcl_SetRegister( this, aSet, 0, sal_True, sal_False );
{
SwFmtLineNumber aLN; aLN.SetCountLines( sal_False );
aSet.Put( aLN );
}
break;
case RES_POOLCOLL_TOX_USER1: // 1. Level
lcl_SetRegister( this, aSet, 0, sal_False, sal_True );
break;
case RES_POOLCOLL_TOX_USER2: // 2. Level
lcl_SetRegister( this, aSet, 1, sal_False, sal_True );
break;
case RES_POOLCOLL_TOX_USER3: // 3. Level
lcl_SetRegister( this, aSet, 2, sal_False, sal_True );
break;
case RES_POOLCOLL_TOX_USER4: // 4. Level
lcl_SetRegister( this, aSet, 3, sal_False, sal_True );
break;
case RES_POOLCOLL_TOX_USER5: // 5. Level
lcl_SetRegister( this, aSet, 4, sal_False, sal_True );
break;
case RES_POOLCOLL_TOX_USER6: // 6. Level
lcl_SetRegister( this, aSet, 5, sal_False, sal_True );
break;
case RES_POOLCOLL_TOX_USER7: // 7. Level
lcl_SetRegister( this, aSet, 6, sal_False, sal_True );
break;
case RES_POOLCOLL_TOX_USER8: // 8. Level
lcl_SetRegister( this, aSet, 7, sal_False, sal_True );
break;
case RES_POOLCOLL_TOX_USER9: // 9. Level
lcl_SetRegister( this, aSet, 8, sal_False, sal_True );
break;
case RES_POOLCOLL_TOX_USER10: // 10. Level
lcl_SetRegister( this, aSet, 9, sal_False, sal_True );
break;
// Index directories
case RES_POOLCOLL_TOX_IDXH: // Header
lcl_SetRegister( this, aSet, 0, sal_True, sal_False );
{
SwFmtLineNumber aLN; aLN.SetCountLines( sal_False );
aSet.Put( aLN );
}
break;
case RES_POOLCOLL_TOX_IDX1: // 1. Level
lcl_SetRegister( this, aSet, 0, sal_False, sal_False );
break;
case RES_POOLCOLL_TOX_IDX2: // 2. Level
lcl_SetRegister( this, aSet, 1, sal_False, sal_False );
break;
case RES_POOLCOLL_TOX_IDX3: // 3. Level
lcl_SetRegister( this, aSet, 2, sal_False, sal_False );
break;
case RES_POOLCOLL_TOX_IDXBREAK: // Trenner
lcl_SetRegister( this, aSet, 0, sal_False, sal_False );
break;
// Content directories
case RES_POOLCOLL_TOX_CNTNTH: // Header
lcl_SetRegister( this, aSet, 0, sal_True, sal_False );
{
SwFmtLineNumber aLN; aLN.SetCountLines( sal_False );
aSet.Put( aLN );
}
break;
case RES_POOLCOLL_TOX_CNTNT1: // 1. Level
lcl_SetRegister( this, aSet, 0, sal_False, sal_True );
break;
case RES_POOLCOLL_TOX_CNTNT2: // 2. Level
lcl_SetRegister( this, aSet, 1, sal_False, sal_True );
break;
case RES_POOLCOLL_TOX_CNTNT3: // 3. Level
lcl_SetRegister( this, aSet, 2, sal_False, sal_True );
break;
case RES_POOLCOLL_TOX_CNTNT4: // 4. Level
lcl_SetRegister( this, aSet, 3, sal_False, sal_True );
break;
case RES_POOLCOLL_TOX_CNTNT5: // 5. Level
lcl_SetRegister( this, aSet, 4, sal_False, sal_True );
break;
case RES_POOLCOLL_TOX_CNTNT6: // 6. Level
lcl_SetRegister( this, aSet, 5, sal_False, sal_True );
break;
case RES_POOLCOLL_TOX_CNTNT7: // 7. Level
lcl_SetRegister( this, aSet, 6, sal_False, sal_True );
break;
case RES_POOLCOLL_TOX_CNTNT8: // 8. Level
lcl_SetRegister( this, aSet, 7, sal_False, sal_True );
break;
case RES_POOLCOLL_TOX_CNTNT9: // 9. Level
lcl_SetRegister( this, aSet, 8, sal_False, sal_True );
break;
case RES_POOLCOLL_TOX_CNTNT10: // 10. Level
lcl_SetRegister( this, aSet, 9, sal_False, sal_True );
break;
case RES_POOLCOLL_TOX_ILLUSH:
case RES_POOLCOLL_TOX_OBJECTH:
case RES_POOLCOLL_TOX_TABLESH:
case RES_POOLCOLL_TOX_AUTHORITIESH:
lcl_SetRegister( this, aSet, 0, sal_True, sal_False );
{
SwFmtLineNumber aLN; aLN.SetCountLines( sal_False );
aSet.Put( aLN );
}
break;
case RES_POOLCOLL_TOX_ILLUS1:
case RES_POOLCOLL_TOX_OBJECT1:
case RES_POOLCOLL_TOX_TABLES1:
case RES_POOLCOLL_TOX_AUTHORITIES1:
lcl_SetRegister( this, aSet, 0, sal_False, sal_True );
break;
case RES_POOLCOLL_NUM_LEVEL1S:
lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_NUM_LEVEL1,
lNumFirstLineOffset, SwNumRule::GetNumIndent( 0 ),
PT_12, PT_6 );
break;
case RES_POOLCOLL_NUM_LEVEL1:
lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_NUM_LEVEL1,
lNumFirstLineOffset, SwNumRule::GetNumIndent( 0 ),
0, PT_6 );
break;
case RES_POOLCOLL_NUM_LEVEL1E:
lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_NUM_LEVEL1,
lNumFirstLineOffset, SwNumRule::GetNumIndent( 0 ),
0, PT_12 );
break;
case RES_POOLCOLL_NUM_NONUM1:
lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_NUM_NONUM1,
0, SwNumRule::GetNumIndent( 0 ), 0, PT_6 );
break;
case RES_POOLCOLL_NUM_LEVEL2S:
lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_NUM_LEVEL2,
lNumFirstLineOffset, SwNumRule::GetNumIndent( 1 ),
PT_12, PT_6 );
break;
case RES_POOLCOLL_NUM_LEVEL2:
lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_NUM_LEVEL2,
lNumFirstLineOffset, SwNumRule::GetNumIndent( 1 ),
0, PT_6 );
break;
case RES_POOLCOLL_NUM_LEVEL2E:
lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_NUM_LEVEL2,
lNumFirstLineOffset, SwNumRule::GetNumIndent( 1 ),
0, PT_12 );
break;
case RES_POOLCOLL_NUM_NONUM2:
lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_NUM_NONUM2,
0, SwNumRule::GetNumIndent( 1 ), 0, PT_6 );
break;
case RES_POOLCOLL_NUM_LEVEL3S:
lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_NUM_LEVEL3,
lNumFirstLineOffset, SwNumRule::GetNumIndent( 2 ),
PT_12, PT_6 );
break;
case RES_POOLCOLL_NUM_LEVEL3:
lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_NUM_LEVEL3,
lNumFirstLineOffset, SwNumRule::GetNumIndent( 2 ),
0, PT_6 );
break;
case RES_POOLCOLL_NUM_LEVEL3E:
lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_NUM_LEVEL3,
lNumFirstLineOffset, SwNumRule::GetNumIndent( 2 ),
0, PT_12 );
break;
case RES_POOLCOLL_NUM_NONUM3:
lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_NUM_NONUM3,
0, SwNumRule::GetNumIndent( 2 ), 0, PT_6 );
break;
case RES_POOLCOLL_NUM_LEVEL4S:
lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_NUM_LEVEL4,
lNumFirstLineOffset, SwNumRule::GetNumIndent( 3 ),
PT_12, PT_6 );
break;
case RES_POOLCOLL_NUM_LEVEL4:
lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_NUM_LEVEL4,
lNumFirstLineOffset, SwNumRule::GetNumIndent( 3 ),
0, PT_6 );
break;
case RES_POOLCOLL_NUM_LEVEL4E:
lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_NUM_LEVEL4,
lNumFirstLineOffset, SwNumRule::GetNumIndent( 3 ),
0, PT_12 );
break;
case RES_POOLCOLL_NUM_NONUM4:
lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_NUM_NONUM4,
0, SwNumRule::GetNumIndent( 3 ), 0, PT_6 );
break;
case RES_POOLCOLL_NUM_LEVEL5S:
lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_NUM_LEVEL5,
lNumFirstLineOffset, SwNumRule::GetNumIndent( 4 ),
PT_12, PT_6 );
break;
case RES_POOLCOLL_NUM_LEVEL5:
lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_NUM_LEVEL5,
lNumFirstLineOffset, SwNumRule::GetNumIndent( 4 ),
0, PT_6 );
break;
case RES_POOLCOLL_NUM_LEVEL5E:
lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_NUM_LEVEL5,
lNumFirstLineOffset, SwNumRule::GetNumIndent( 4 ),
0, PT_12 );
break;
case RES_POOLCOLL_NUM_NONUM5:
lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_NUM_NONUM5,
0, SwNumRule::GetNumIndent( 4 ), 0, PT_6 );
break;
case RES_POOLCOLL_BUL_LEVEL1S:
lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_BUL_LEVEL1,
lBullFirstLineOffset, SwNumRule::GetBullIndent( 0 ),
PT_12, PT_6 );
break;
case RES_POOLCOLL_BUL_LEVEL1:
lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_BUL_LEVEL1,
lBullFirstLineOffset, SwNumRule::GetBullIndent( 0 ),
0, PT_6 );
break;
case RES_POOLCOLL_BUL_LEVEL1E:
lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_BUL_LEVEL1,
lBullFirstLineOffset, SwNumRule::GetBullIndent( 0 ),
0, PT_12 );
break;
case RES_POOLCOLL_BUL_NONUM1:
lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_BUL_NONUM1,
0, SwNumRule::GetBullIndent( 0 ), 0, PT_6 );
break;
case RES_POOLCOLL_BUL_LEVEL2S:
lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_BUL_LEVEL2,
lBullFirstLineOffset, SwNumRule::GetBullIndent( 1 ),
PT_12, PT_6 );
break;
case RES_POOLCOLL_BUL_LEVEL2:
lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_BUL_LEVEL2,
lBullFirstLineOffset, SwNumRule::GetBullIndent( 1 ),
0, PT_6 );
break;
case RES_POOLCOLL_BUL_LEVEL2E:
lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_BUL_LEVEL2,
lBullFirstLineOffset, SwNumRule::GetBullIndent( 1 ),
0, PT_12 );
break;
case RES_POOLCOLL_BUL_NONUM2:
lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_BUL_NONUM2,
0, SwNumRule::GetBullIndent( 1 ), 0, PT_6 );
break;
case RES_POOLCOLL_BUL_LEVEL3S:
lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_BUL_LEVEL3,
lBullFirstLineOffset, SwNumRule::GetBullIndent( 2 ),
PT_12, PT_6 );
break;
case RES_POOLCOLL_BUL_LEVEL3:
lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_BUL_LEVEL3,
lBullFirstLineOffset, SwNumRule::GetBullIndent( 2 ),
0, PT_6 );
break;
case RES_POOLCOLL_BUL_LEVEL3E:
lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_BUL_LEVEL3,
lBullFirstLineOffset, SwNumRule::GetBullIndent( 2 ),
0, PT_12 );
break;
case RES_POOLCOLL_BUL_NONUM3:
lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_BUL_NONUM3,
0, SwNumRule::GetBullIndent( 2 ), 0, PT_6 );
break;
case RES_POOLCOLL_BUL_LEVEL4S:
lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_BUL_LEVEL4,
lBullFirstLineOffset, SwNumRule::GetBullIndent( 3 ),
PT_12, PT_6 );
break;
case RES_POOLCOLL_BUL_LEVEL4:
lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_BUL_LEVEL4,
lBullFirstLineOffset, SwNumRule::GetBullIndent( 3 ),
0, PT_6 );
break;
case RES_POOLCOLL_BUL_LEVEL4E:
lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_BUL_LEVEL4,
lBullFirstLineOffset, SwNumRule::GetBullIndent( 3 ),
0, PT_12 );
break;
case RES_POOLCOLL_BUL_NONUM4:
lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_BUL_NONUM4,
0, SwNumRule::GetBullIndent( 3 ), 0, PT_6 );
break;
case RES_POOLCOLL_BUL_LEVEL5S:
lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_BUL_LEVEL5,
lBullFirstLineOffset, SwNumRule::GetBullIndent( 4 ),
PT_12, PT_6 );
break;
case RES_POOLCOLL_BUL_LEVEL5:
lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_BUL_LEVEL5,
lBullFirstLineOffset, SwNumRule::GetBullIndent( 4 ),
0, PT_6 );
break;
case RES_POOLCOLL_BUL_LEVEL5E:
lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_BUL_LEVEL5,
lBullFirstLineOffset, SwNumRule::GetBullIndent( 4 ),
0, PT_12 );
break;
case RES_POOLCOLL_BUL_NONUM5:
lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_BUL_NONUM5,
0, SwNumRule::GetBullIndent( 4 ), 0, PT_6 );
break;
case RES_POOLCOLL_DOC_TITEL: // Document Title
{
SetAllScriptItem( aSet, SvxWeightItem( WEIGHT_BOLD, RES_CHRATR_WEIGHT ) );
SetAllScriptItem( aSet, SvxFontHeightItem( PT_18, 100, RES_CHRATR_FONTSIZE ) );
aSet.Put( SvxAdjustItem( SVX_ADJUST_CENTER, RES_PARATR_ADJUST ) );
pNewColl->SetNextTxtFmtColl( *GetTxtCollFromPool(
RES_POOLCOLL_DOC_SUBTITEL ));
}
break;
case RES_POOLCOLL_DOC_SUBTITEL: // Document subtitle
{
SetAllScriptItem( aSet, SvxPostureItem( ITALIC_NORMAL, RES_CHRATR_POSTURE ));
SetAllScriptItem( aSet, SvxFontHeightItem( PT_14, 100, RES_CHRATR_FONTSIZE ));
aSet.Put( SvxAdjustItem( SVX_ADJUST_CENTER, RES_PARATR_ADJUST ));
pNewColl->SetNextTxtFmtColl( *GetTxtCollFromPool(
RES_POOLCOLL_TEXT ));
}
break;
case RES_POOLCOLL_HTML_BLOCKQUOTE:
{
SvxLRSpaceItem aLR( RES_LR_SPACE );
aLR.SetLeft( GetMetricVal( CM_1 ));
aLR.SetRight( GetMetricVal( CM_1 ));
aSet.Put( aLR );
SvxULSpaceItem aUL( RES_UL_SPACE );
aUL = pNewColl->GetULSpace();
aUL.SetLower( HTML_PARSPACE );
aSet.Put( aUL);
}
break;
case RES_POOLCOLL_HTML_PRE:
{
::lcl_SetDfltFont( DEFAULTFONT_FIXED, aSet );
// WORKAROUND: Set PRE to 10pt
SetAllScriptItem( aSet, SvxFontHeightItem(PT_10, 100, RES_CHRATR_FONTSIZE) );
// WORKAROUND: Set PRE to 10pt
// The lower paragraph distance is set explicitly (makes
// assigning hard attributes easier)
SvxULSpaceItem aULSpaceItem( RES_UL_SPACE );
aULSpaceItem = pNewColl->GetULSpace();
aULSpaceItem.SetLower( 0 );
aSet.Put( aULSpaceItem );
}
break;
case RES_POOLCOLL_HTML_HR:
{
SvxBoxItem aBox( RES_BOX );
Color aColor( COL_GRAY );
SvxBorderLine aNew(&aColor, 1, table::BorderLineStyle::DOUBLE);
aBox.SetLine( &aNew, BOX_LINE_BOTTOM );
aSet.Put( aBox );
aSet.Put( SwParaConnectBorderItem( sal_False ) );
SetAllScriptItem( aSet, SvxFontHeightItem(120, 100, RES_CHRATR_FONTSIZE) );
SvxULSpaceItem aUL( RES_UL_SPACE );
case RES_POOLCOLL_SENDADRESS: // Sender address
{
if( get(IDocumentSettingAccess::HTML_MODE) )
SetAllScriptItem( aSet, SvxPostureItem(ITALIC_NORMAL, RES_CHRATR_POSTURE) );
else
{
SvxULSpaceItem aUL( RES_UL_SPACE ); aUL.SetLower( PT_3 );
aSet.Put( aUL );
}
SwFmtLineNumber aLN; aLN.SetCountLines( sal_False );
aSet.Put( aLN );
}
break;
// User directories:
case RES_POOLCOLL_TOX_USERH: // Header
lcl_SetRegister( this, aSet, 0, sal_True, sal_False );
{
SwFmtLineNumber aLN; aLN.SetCountLines( sal_False );
aSet.Put( aLN );
}
break;
case RES_POOLCOLL_TOX_USER1: // 1. Level
lcl_SetRegister( this, aSet, 0, sal_False, sal_True );
break;
case RES_POOLCOLL_TOX_USER2: // 2. Level
lcl_SetRegister( this, aSet, 1, sal_False, sal_True );
break;
case RES_POOLCOLL_TOX_USER3: // 3. Level
lcl_SetRegister( this, aSet, 2, sal_False, sal_True );
break;
case RES_POOLCOLL_TOX_USER4: // 4. Level
lcl_SetRegister( this, aSet, 3, sal_False, sal_True );
break;
case RES_POOLCOLL_TOX_USER5: // 5. Level
lcl_SetRegister( this, aSet, 4, sal_False, sal_True );
break;
case RES_POOLCOLL_TOX_USER6: // 6. Level
lcl_SetRegister( this, aSet, 5, sal_False, sal_True );
break;
case RES_POOLCOLL_TOX_USER7: // 7. Level
lcl_SetRegister( this, aSet, 6, sal_False, sal_True );
break;
case RES_POOLCOLL_TOX_USER8: // 8. Level
lcl_SetRegister( this, aSet, 7, sal_False, sal_True );
break;
case RES_POOLCOLL_TOX_USER9: // 9. Level
lcl_SetRegister( this, aSet, 8, sal_False, sal_True );
break;
case RES_POOLCOLL_TOX_USER10: // 10. Level
lcl_SetRegister( this, aSet, 9, sal_False, sal_True );
break;
// Index directories
case RES_POOLCOLL_TOX_IDXH: // Header
lcl_SetRegister( this, aSet, 0, sal_True, sal_False );
{
SwFmtLineNumber aLN; aLN.SetCountLines( sal_False );
aSet.Put( aLN );
}
break;
case RES_POOLCOLL_TOX_IDX1: // 1. Level
lcl_SetRegister( this, aSet, 0, sal_False, sal_False );
break;
case RES_POOLCOLL_TOX_IDX2: // 2. Level
lcl_SetRegister( this, aSet, 1, sal_False, sal_False );
break;
case RES_POOLCOLL_TOX_IDX3: // 3. Level
lcl_SetRegister( this, aSet, 2, sal_False, sal_False );
break;
case RES_POOLCOLL_TOX_IDXBREAK: // Trenner
lcl_SetRegister( this, aSet, 0, sal_False, sal_False );
break;
// Content directories
case RES_POOLCOLL_TOX_CNTNTH: // Header
lcl_SetRegister( this, aSet, 0, sal_True, sal_False );
{
SwFmtLineNumber aLN; aLN.SetCountLines( sal_False );
aSet.Put( aLN );
}
break;
case RES_POOLCOLL_TOX_CNTNT1: // 1. Level
lcl_SetRegister( this, aSet, 0, sal_False, sal_True );
break;
case RES_POOLCOLL_TOX_CNTNT2: // 2. Level
lcl_SetRegister( this, aSet, 1, sal_False, sal_True );
break;
case RES_POOLCOLL_TOX_CNTNT3: // 3. Level
lcl_SetRegister( this, aSet, 2, sal_False, sal_True );
break;
case RES_POOLCOLL_TOX_CNTNT4: // 4. Level
lcl_SetRegister( this, aSet, 3, sal_False, sal_True );
break;
case RES_POOLCOLL_TOX_CNTNT5: // 5. Level
lcl_SetRegister( this, aSet, 4, sal_False, sal_True );
break;
case RES_POOLCOLL_TOX_CNTNT6: // 6. Level
lcl_SetRegister( this, aSet, 5, sal_False, sal_True );
break;
case RES_POOLCOLL_TOX_CNTNT7: // 7. Level
lcl_SetRegister( this, aSet, 6, sal_False, sal_True );
break;
case RES_POOLCOLL_TOX_CNTNT8: // 8. Level
lcl_SetRegister( this, aSet, 7, sal_False, sal_True );
break;
case RES_POOLCOLL_TOX_CNTNT9: // 9. Level
lcl_SetRegister( this, aSet, 8, sal_False, sal_True );
break;
case RES_POOLCOLL_TOX_CNTNT10: // 10. Level
lcl_SetRegister( this, aSet, 9, sal_False, sal_True );
break;
case RES_POOLCOLL_TOX_ILLUSH:
case RES_POOLCOLL_TOX_OBJECTH:
case RES_POOLCOLL_TOX_TABLESH:
case RES_POOLCOLL_TOX_AUTHORITIESH:
lcl_SetRegister( this, aSet, 0, sal_True, sal_False );
{
SwFmtLineNumber aLN; aLN.SetCountLines( sal_False );
aSet.Put( aLN );
}
break;
case RES_POOLCOLL_TOX_ILLUS1:
case RES_POOLCOLL_TOX_OBJECT1:
case RES_POOLCOLL_TOX_TABLES1:
case RES_POOLCOLL_TOX_AUTHORITIES1:
lcl_SetRegister( this, aSet, 0, sal_False, sal_True );
break;
case RES_POOLCOLL_NUM_LEVEL1S:
lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_NUM_LEVEL1,
lNumFirstLineOffset, SwNumRule::GetNumIndent( 0 ),
PT_12, PT_6 );
break;
case RES_POOLCOLL_NUM_LEVEL1:
lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_NUM_LEVEL1,
lNumFirstLineOffset, SwNumRule::GetNumIndent( 0 ),
0, PT_6 );
break;
case RES_POOLCOLL_NUM_LEVEL1E:
lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_NUM_LEVEL1,
lNumFirstLineOffset, SwNumRule::GetNumIndent( 0 ),
0, PT_12 );
break;
case RES_POOLCOLL_NUM_NONUM1:
lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_NUM_NONUM1,
0, SwNumRule::GetNumIndent( 0 ), 0, PT_6 );
break;
case RES_POOLCOLL_NUM_LEVEL2S:
lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_NUM_LEVEL2,
lNumFirstLineOffset, SwNumRule::GetNumIndent( 1 ),
PT_12, PT_6 );
break;
case RES_POOLCOLL_NUM_LEVEL2:
lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_NUM_LEVEL2,
lNumFirstLineOffset, SwNumRule::GetNumIndent( 1 ),
0, PT_6 );
break;
case RES_POOLCOLL_NUM_LEVEL2E:
lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_NUM_LEVEL2,
lNumFirstLineOffset, SwNumRule::GetNumIndent( 1 ),
0, PT_12 );
break;
case RES_POOLCOLL_NUM_NONUM2:
lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_NUM_NONUM2,
0, SwNumRule::GetNumIndent( 1 ), 0, PT_6 );
break;
case RES_POOLCOLL_NUM_LEVEL3S:
lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_NUM_LEVEL3,
lNumFirstLineOffset, SwNumRule::GetNumIndent( 2 ),
PT_12, PT_6 );
break;
case RES_POOLCOLL_NUM_LEVEL3:
lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_NUM_LEVEL3,
lNumFirstLineOffset, SwNumRule::GetNumIndent( 2 ),
0, PT_6 );
break;
case RES_POOLCOLL_NUM_LEVEL3E:
lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_NUM_LEVEL3,
lNumFirstLineOffset, SwNumRule::GetNumIndent( 2 ),
0, PT_12 );
break;
case RES_POOLCOLL_NUM_NONUM3:
lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_NUM_NONUM3,
0, SwNumRule::GetNumIndent( 2 ), 0, PT_6 );
break;
case RES_POOLCOLL_NUM_LEVEL4S:
lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_NUM_LEVEL4,
lNumFirstLineOffset, SwNumRule::GetNumIndent( 3 ),
PT_12, PT_6 );
break;
case RES_POOLCOLL_NUM_LEVEL4:
lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_NUM_LEVEL4,
lNumFirstLineOffset, SwNumRule::GetNumIndent( 3 ),
0, PT_6 );
break;
case RES_POOLCOLL_NUM_LEVEL4E:
lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_NUM_LEVEL4,
lNumFirstLineOffset, SwNumRule::GetNumIndent( 3 ),
0, PT_12 );
break;
case RES_POOLCOLL_NUM_NONUM4:
lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_NUM_NONUM4,
0, SwNumRule::GetNumIndent( 3 ), 0, PT_6 );
break;
case RES_POOLCOLL_NUM_LEVEL5S:
lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_NUM_LEVEL5,
lNumFirstLineOffset, SwNumRule::GetNumIndent( 4 ),
PT_12, PT_6 );
break;
case RES_POOLCOLL_NUM_LEVEL5:
lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_NUM_LEVEL5,
lNumFirstLineOffset, SwNumRule::GetNumIndent( 4 ),
0, PT_6 );
break;
case RES_POOLCOLL_NUM_LEVEL5E:
lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_NUM_LEVEL5,
lNumFirstLineOffset, SwNumRule::GetNumIndent( 4 ),
0, PT_12 );
break;
case RES_POOLCOLL_NUM_NONUM5:
lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_NUM_NONUM5,
0, SwNumRule::GetNumIndent( 4 ), 0, PT_6 );
break;
case RES_POOLCOLL_BUL_LEVEL1S:
lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_BUL_LEVEL1,
lBullFirstLineOffset, SwNumRule::GetBullIndent( 0 ),
PT_12, PT_6 );
break;
case RES_POOLCOLL_BUL_LEVEL1:
lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_BUL_LEVEL1,
lBullFirstLineOffset, SwNumRule::GetBullIndent( 0 ),
0, PT_6 );
break;
case RES_POOLCOLL_BUL_LEVEL1E:
lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_BUL_LEVEL1,
lBullFirstLineOffset, SwNumRule::GetBullIndent( 0 ),
0, PT_12 );
break;
case RES_POOLCOLL_BUL_NONUM1:
lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_BUL_NONUM1,
0, SwNumRule::GetBullIndent( 0 ), 0, PT_6 );
break;
case RES_POOLCOLL_BUL_LEVEL2S:
lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_BUL_LEVEL2,
lBullFirstLineOffset, SwNumRule::GetBullIndent( 1 ),
PT_12, PT_6 );
break;
case RES_POOLCOLL_BUL_LEVEL2:
lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_BUL_LEVEL2,
lBullFirstLineOffset, SwNumRule::GetBullIndent( 1 ),
0, PT_6 );
break;
case RES_POOLCOLL_BUL_LEVEL2E:
lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_BUL_LEVEL2,
lBullFirstLineOffset, SwNumRule::GetBullIndent( 1 ),
0, PT_12 );
break;
case RES_POOLCOLL_BUL_NONUM2:
lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_BUL_NONUM2,
0, SwNumRule::GetBullIndent( 1 ), 0, PT_6 );
break;
case RES_POOLCOLL_BUL_LEVEL3S:
lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_BUL_LEVEL3,
lBullFirstLineOffset, SwNumRule::GetBullIndent( 2 ),
PT_12, PT_6 );
break;
case RES_POOLCOLL_BUL_LEVEL3:
lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_BUL_LEVEL3,
lBullFirstLineOffset, SwNumRule::GetBullIndent( 2 ),
0, PT_6 );
break;
case RES_POOLCOLL_BUL_LEVEL3E:
lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_BUL_LEVEL3,
lBullFirstLineOffset, SwNumRule::GetBullIndent( 2 ),
0, PT_12 );
break;
case RES_POOLCOLL_BUL_NONUM3:
lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_BUL_NONUM3,
0, SwNumRule::GetBullIndent( 2 ), 0, PT_6 );
break;
case RES_POOLCOLL_BUL_LEVEL4S:
lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_BUL_LEVEL4,
lBullFirstLineOffset, SwNumRule::GetBullIndent( 3 ),
PT_12, PT_6 );
break;
case RES_POOLCOLL_BUL_LEVEL4:
lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_BUL_LEVEL4,
lBullFirstLineOffset, SwNumRule::GetBullIndent( 3 ),
0, PT_6 );
break;
case RES_POOLCOLL_BUL_LEVEL4E:
lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_BUL_LEVEL4,
lBullFirstLineOffset, SwNumRule::GetBullIndent( 3 ),
0, PT_12 );
break;
case RES_POOLCOLL_BUL_NONUM4:
lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_BUL_NONUM4,
0, SwNumRule::GetBullIndent( 3 ), 0, PT_6 );
break;
case RES_POOLCOLL_BUL_LEVEL5S:
lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_BUL_LEVEL5,
lBullFirstLineOffset, SwNumRule::GetBullIndent( 4 ),
PT_12, PT_6 );
break;
case RES_POOLCOLL_BUL_LEVEL5:
lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_BUL_LEVEL5,
lBullFirstLineOffset, SwNumRule::GetBullIndent( 4 ),
0, PT_6 );
break;
case RES_POOLCOLL_BUL_LEVEL5E:
lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_BUL_LEVEL5,
lBullFirstLineOffset, SwNumRule::GetBullIndent( 4 ),
0, PT_12 );
break;
case RES_POOLCOLL_BUL_NONUM5:
lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_BUL_NONUM5,
0, SwNumRule::GetBullIndent( 4 ), 0, PT_6 );
break;
case RES_POOLCOLL_DOC_TITEL: // Document Title
{
SetAllScriptItem( aSet, SvxWeightItem( WEIGHT_BOLD, RES_CHRATR_WEIGHT ) );
SetAllScriptItem( aSet, SvxFontHeightItem( PT_18, 100, RES_CHRATR_FONTSIZE ) );
aSet.Put( SvxAdjustItem( SVX_ADJUST_CENTER, RES_PARATR_ADJUST ) );
pNewColl->SetNextTxtFmtColl( *GetTxtCollFromPool(
RES_POOLCOLL_TEXT ));
RES_POOLCOLL_DOC_SUBTITEL ));
}
break;
case RES_POOLCOLL_DOC_SUBTITEL: // Document subtitle
{
SetAllScriptItem( aSet, SvxPostureItem( ITALIC_NORMAL, RES_CHRATR_POSTURE ));
SetAllScriptItem( aSet, SvxFontHeightItem( PT_14, 100, RES_CHRATR_FONTSIZE ));
aSet.Put( SvxAdjustItem( SVX_ADJUST_CENTER, RES_PARATR_ADJUST ));
pNewColl->SetNextTxtFmtColl( *GetTxtCollFromPool(
RES_POOLCOLL_TEXT ));
}
break;
case RES_POOLCOLL_HTML_BLOCKQUOTE:
{
SvxLRSpaceItem aLR( RES_LR_SPACE );
aLR.SetLeft( GetMetricVal( CM_1 ));
aLR.SetRight( GetMetricVal( CM_1 ));
aSet.Put( aLR );
SvxULSpaceItem aUL( RES_UL_SPACE );
aUL = pNewColl->GetULSpace();
aUL.SetLower( HTML_PARSPACE );
aSet.Put( aUL);
}
aUL.SetLower( HTML_PARSPACE );
aSet.Put( aUL);
SwFmtLineNumber aLN; aLN.SetCountLines( sal_False );
aSet.Put( aLN );
}
break;
break;
case RES_POOLCOLL_HTML_DD:
{
SvxLRSpaceItem aLR( RES_LR_SPACE );
aLR = pNewColl->GetLRSpace();
// We indent by 1 cm. The IDs are always 2 away from each other!
aLR.SetLeft( GetMetricVal( CM_1 ));
aSet.Put( aLR );
}
break;
case RES_POOLCOLL_HTML_DT:
{
SvxLRSpaceItem aLR( RES_LR_SPACE );
case RES_POOLCOLL_HTML_PRE:
{
pNewColl->SetNextTxtFmtColl( *GetTxtCollFromPool(
RES_POOLCOLL_HTML_DD ));
aLR = pNewColl->GetLRSpace();
::lcl_SetDfltFont( DEFAULTFONT_FIXED, aSet );
// WORKAROUND: Set PRE to 10pt
SetAllScriptItem( aSet, SvxFontHeightItem(PT_10, 100, RES_CHRATR_FONTSIZE) );
// WORKAROUND: Set PRE to 10pt
// The lower paragraph distance is set explicitly (makes
// assigning hard attributes easier)
SvxULSpaceItem aULSpaceItem( RES_UL_SPACE );
aULSpaceItem = pNewColl->GetULSpace();
aULSpaceItem.SetLower( 0 );
aSet.Put( aULSpaceItem );
}
// We indent by 0 cm. The IDs are always 2 away from each other!
aLR.SetLeft( 0 );
aSet.Put( aLR );
break;
case RES_POOLCOLL_HTML_HR:
{
SvxBoxItem aBox( RES_BOX );
Color aColor( COL_GRAY );
SvxBorderLine aNew(&aColor, 1, table::BorderLineStyle::DOUBLE);
aBox.SetLine( &aNew, BOX_LINE_BOTTOM );
aSet.Put( aBox );
aSet.Put( SwParaConnectBorderItem( sal_False ) );
SetAllScriptItem( aSet, SvxFontHeightItem(120, 100, RES_CHRATR_FONTSIZE) );
SvxULSpaceItem aUL( RES_UL_SPACE );
{
pNewColl->SetNextTxtFmtColl( *GetTxtCollFromPool(
RES_POOLCOLL_TEXT ));
aUL = pNewColl->GetULSpace();
}
aUL.SetLower( HTML_PARSPACE );
aSet.Put( aUL);
SwFmtLineNumber aLN; aLN.SetCountLines( sal_False );
aSet.Put( aLN );
}
break;
case RES_POOLCOLL_HTML_DD:
{
SvxLRSpaceItem aLR( RES_LR_SPACE );
aLR = pNewColl->GetLRSpace();
// We indent by 1 cm. The IDs are always 2 away from each other!
aLR.SetLeft( GetMetricVal( CM_1 ));
aSet.Put( aLR );
}
break;
case RES_POOLCOLL_HTML_DT:
{
SvxLRSpaceItem aLR( RES_LR_SPACE );
{
pNewColl->SetNextTxtFmtColl( *GetTxtCollFromPool(
RES_POOLCOLL_HTML_DD ));
aLR = pNewColl->GetLRSpace();
}
// We indent by 0 cm. The IDs are always 2 away from each other!
aLR.SetLeft( 0 );
aSet.Put( aLR );
}
break;
}
break;
}
if( aSet.Count() )
diff --git a/sw/source/ui/uno/SwXDocumentSettings.cxx b/sw/source/ui/uno/SwXDocumentSettings.cxx
index ff56b00..69e44a6 100644
--- a/sw/source/ui/uno/SwXDocumentSettings.cxx
+++ b/sw/source/ui/uno/SwXDocumentSettings.cxx
@@ -125,7 +125,8 @@ enum SwDocumentSettingsPropertyHandles
HANDLE_COLLAPSE_EMPTY_CELL_PARA,
HANDLE_SMALL_CAPS_PERCENTAGE_66,
HANDLE_TAB_OVERFLOW,
HANDLE_UNBREAKABLE_NUMBERINGS
HANDLE_UNBREAKABLE_NUMBERINGS,
HANDLE_STYLES_NODEFAULT
};
MasterPropertySetInfo * lcl_createSettingsInfo()
@@ -188,6 +189,7 @@ MasterPropertySetInfo * lcl_createSettingsInfo()
{ RTL_CONSTASCII_STRINGPARAM("SmallCapsPercentage66"), HANDLE_SMALL_CAPS_PERCENTAGE_66, CPPUTYPE_BOOLEAN, 0, 0},
{ RTL_CONSTASCII_STRINGPARAM("TabOverflow"), HANDLE_TAB_OVERFLOW, CPPUTYPE_BOOLEAN, 0, 0},
{ RTL_CONSTASCII_STRINGPARAM("UnbreakableNumberings"), HANDLE_UNBREAKABLE_NUMBERINGS, CPPUTYPE_BOOLEAN, 0, 0},
{ RTL_CONSTASCII_STRINGPARAM("StylesNoDefault"), HANDLE_STYLES_NODEFAULT, CPPUTYPE_BOOLEAN, 0, 0},
/*
* As OS said, we don't have a view when we need to set this, so I have to
* find another solution before adding them to this property set - MTG
@@ -747,6 +749,12 @@ void SwXDocumentSettings::_setSingleValue( const comphelper::PropertyInfo & rInf
mpDoc->set(IDocumentSettingAccess::UNBREAKABLE_NUMBERINGS, bTmp);
}
break;
case HANDLE_STYLES_NODEFAULT:
{
sal_Bool bTmp = *(sal_Bool*)rValue.getValue();
mpDoc->set(IDocumentSettingAccess::STYLES_NODEFAULT, bTmp);
}
break;
default:
throw UnknownPropertyException();
}
@@ -1119,6 +1127,12 @@ void SwXDocumentSettings::_getSingleValue( const comphelper::PropertyInfo & rInf
rValue.setValue( &bTmp, ::getBooleanCppuType() );
}
break;
case HANDLE_STYLES_NODEFAULT:
{
sal_Bool bTmp = mpDoc->get( IDocumentSettingAccess::STYLES_NODEFAULT );
rValue.setValue( &bTmp, ::getBooleanCppuType() );
}
break;
default:
throw UnknownPropertyException();
}
diff --git a/writerfilter/source/filter/ImportFilter.cxx b/writerfilter/source/filter/ImportFilter.cxx
index 4aa61ce..8952703 100644
--- a/writerfilter/source/filter/ImportFilter.cxx
+++ b/writerfilter/source/filter/ImportFilter.cxx
@@ -173,6 +173,9 @@ void WriterFilter::setTargetDocument( const uno::Reference< lang::XComponent >&
uno::Reference< beans::XPropertySet > xSettings( xFactory->createInstance("com.sun.star.document.Settings"), uno::UNO_QUERY );
xSettings->setPropertyValue( "UnbreakableNumberings", uno::makeAny( sal_True ) );
// Don't load the default style definitions to avoid weird mix
xSettings->setPropertyValue( "StylesNoDefault", uno::makeAny( sal_True ) );
}
void WriterFilter::setSourceDocument( const uno::Reference< lang::XComponent >& xDoc )