summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMiklos Vajna <vmiklos@suse.cz>2012-03-13 15:01:24 +0100
committerMiklos Vajna <vmiklos@suse.cz>2012-03-13 15:04:18 +0100
commit605bc21f7941d598f98203928b034add416c9c65 (patch)
tree4cdd8864bc8ff934fa3c909cd88ac134fc31654c
parentf55423d1d44173dec5705700e7ebddedf8f6d250 (diff)
ww8: implement sprmPFContextualSpacing
-rw-r--r--sw/source/filter/ww8/ww8atr.cxx6
-rw-r--r--sw/source/filter/ww8/ww8par.hxx1
-rw-r--r--sw/source/filter/ww8/ww8par6.cxx11
-rw-r--r--sw/source/filter/ww8/ww8scan.cxx2
4 files changed, 11 insertions, 9 deletions
diff --git a/sw/source/filter/ww8/ww8atr.cxx b/sw/source/filter/ww8/ww8atr.cxx
index c8f005b43ad4..7fcba6005983 100644
--- a/sw/source/filter/ww8/ww8atr.cxx
+++ b/sw/source/filter/ww8/ww8atr.cxx
@@ -3885,6 +3885,12 @@ void WW8AttributeOutput::FormatULSpace( const SvxULSpaceItem& rUL )
else
m_rWW8Export.pO->push_back( 22 );
m_rWW8Export.InsUInt16( rUL.GetLower() );
+ // sprmPFContextualSpacing
+ if (m_rWW8Export.bWrtWW8 && rUL.GetContext())
+ {
+ m_rWW8Export.InsUInt16(NS_sprm::LN_PContextualSpacing);
+ m_rWW8Export.InsUInt16(rUL.GetContext());
+ }
}
}
diff --git a/sw/source/filter/ww8/ww8par.hxx b/sw/source/filter/ww8/ww8par.hxx
index cdc495d23a58..b86c5b678049 100644
--- a/sw/source/filter/ww8/ww8par.hxx
+++ b/sw/source/filter/ww8/ww8par.hxx
@@ -1588,7 +1588,6 @@ public: // eigentlich private, geht aber leider nur public
void Read_UL( sal_uInt16 nId, const sal_uInt8*, short nLen );
void Read_ParaAutoBefore(sal_uInt16 , const sal_uInt8 *pData, short nLen);
void Read_ParaAutoAfter(sal_uInt16 , const sal_uInt8 *pData, short nLen);
- void Read_DontAddEqual(sal_uInt16 , const sal_uInt8 *pData, short nLen);
void Read_LineSpace( sal_uInt16, const sal_uInt8*, short nLen );
void Read_Justify(sal_uInt16, const sal_uInt8*, short nLen);
void Read_IdctHint(sal_uInt16, const sal_uInt8*, short nLen);
diff --git a/sw/source/filter/ww8/ww8par6.cxx b/sw/source/filter/ww8/ww8par6.cxx
index eca258b77dc7..e995640f9b2d 100644
--- a/sw/source/filter/ww8/ww8par6.cxx
+++ b/sw/source/filter/ww8/ww8par6.cxx
@@ -4102,12 +4102,6 @@ sal_uInt16 SwWW8ImplReader::GetParagraphAutoSpace(bool fDontUseHTMLAutoSpacing)
return 280; //Seems to be always 14points in this case
}
-void SwWW8ImplReader::Read_DontAddEqual(sal_uInt16, const sal_uInt8 *, short nLen)
-{
- if (nLen < 0)
- return;
-}
-
void SwWW8ImplReader::Read_ParaAutoBefore(sal_uInt16, const sal_uInt8 *pData, short nLen)
{
if (nLen < 0)
@@ -4201,6 +4195,9 @@ void SwWW8ImplReader::Read_UL( sal_uInt16 nId, const sal_uInt8* pData, short nLe
case 0xA414:
aUL.SetLower( nPara );
break;
+ case 0x246D:
+ aUL.SetContextValue( nPara );
+ break;
default:
return;
};
@@ -6079,7 +6076,7 @@ const wwSprmDispatcher *GetWW8SprmDispatcher()
{0x303C, 0}, //undocumented
{0x245B, &SwWW8ImplReader::Read_ParaAutoBefore},//undocumented, para
{0x245C, &SwWW8ImplReader::Read_ParaAutoAfter},//undocumented, para
- {0x246D, &SwWW8ImplReader::Read_DontAddEqual}//undocumented, para
+ {0x246D, &SwWW8ImplReader::Read_UL} //"sprmPFContextualSpacing"
};
static wwSprmDispatcher aSprmSrch(aSprms, SAL_N_ELEMENTS(aSprms));
diff --git a/sw/source/filter/ww8/ww8scan.cxx b/sw/source/filter/ww8/ww8scan.cxx
index 70272616b49c..ac801fbd4f37 100644
--- a/sw/source/filter/ww8/ww8scan.cxx
+++ b/sw/source/filter/ww8/ww8scan.cxx
@@ -779,7 +779,7 @@ const wwSprmSearcher *wwSprmParser::GetWW8SprmSearcher()
{0x303C, 1, L_FIX}, // undocumented, sep
{0x245B, 1, L_FIX}, // undocumented, para autobefore
{0x245C, 1, L_FIX}, // undocumented, para autoafter
- // undocumented, don't add space between para of the same style
+ // "sprmPFContextualSpacing", don't add space between para of the same style
{0x246D, 1, L_FIX}
};