summaryrefslogtreecommitdiffstats
path: root/svx/source/svrtf
diff options
context:
space:
mode:
authorKurt Zenker <kz@openoffice.org>2003-12-09 11:23:21 +0000
committerKurt Zenker <kz@openoffice.org>2003-12-09 11:23:21 +0000
commitca325745dc6480e071eb2586e18f2b1f60dca2db (patch)
tree2e37185dc692511250ec1efa96cf56ecaaaa8148 /svx/source/svrtf
parentINTEGRATION: CWS portlaoisefilterteam16 (1.19.58); FILE MERGED (diff)
downloadcore-ca325745dc6480e071eb2586e18f2b1f60dca2db.tar.gz
core-ca325745dc6480e071eb2586e18f2b1f60dca2db.zip
INTEGRATION: CWS portlaoisefilterteam16 (1.16.58); FILE MERGED
2003/11/10 09:32:42 cmc 1.16.58.3: RESYNC: (1.16-1.17); FILE MERGED 2003/11/03 13:18:35 cmc 1.16.58.2: #i21961# some properties are effectively uncompressible (without a lot of effort) 2003/10/29 17:38:43 cmc 1.16.58.1: #i21422# silly cleaning attribute sets thingy doesn't work in many circumstances
Diffstat (limited to 'svx/source/svrtf')
-rw-r--r--svx/source/svrtf/svxrtf.cxx27
1 files changed, 25 insertions, 2 deletions
diff --git a/svx/source/svrtf/svxrtf.cxx b/svx/source/svrtf/svxrtf.cxx
index a15d34f4cfb3..c0d56010f00b 100644
--- a/svx/source/svrtf/svxrtf.cxx
+++ b/svx/source/svrtf/svxrtf.cxx
@@ -2,9 +2,9 @@
*
* $RCSfile: svxrtf.cxx,v $
*
- * $Revision: 1.17 $
+ * $Revision: 1.18 $
*
- * last change: $Author: hr $ $Date: 2003-11-05 14:22:53 $
+ * last change: $Author: kz $ $Date: 2003-12-09 12:23:21 $
*
* The Contents of this file are made available subject to the terms of
* either of the following licenses
@@ -1120,8 +1120,23 @@ void SvxRTFParser::AttrGroupEnd() // den akt. Bearbeiten, vom Stack loeschen
pOld->pEndNd = pInsPos->MakeNodeIdx();
pOld->nEndCnt = pInsPos->GetCntIdx();
+#if 0
if( IsChkStyleAttr() )
_ClearStyleAttr( *pOld );
+#else
+ /*
+ #i21422#
+ If the parent (pAkt) sets something e.g. , and the child (pOld)
+ unsets it and the style both are based on has it unset then
+ clearing the pOld by looking at the style is clearly a disaster
+ as the text ends up with pAkts bold and not pOlds no bold, this
+ should be rethought out. For the moment its safest to just do
+ the clean if we have no parent, all we suffer is too many
+ redundant properties.
+ */
+ if (IsChkStyleAttr() && !pAkt)
+ _ClearStyleAttr( *pOld );
+#endif
if( pAkt )
{
@@ -1367,6 +1382,11 @@ void SvxRTFItemStackType::MoveFullNode(const SvxNodeIdx &rOldNode,
}
}
+bool SvxRTFParser::UncompressableStackEntry(const SvxRTFItemStackType &rSet) const
+{
+ return false;
+}
+
void SvxRTFItemStackType::Compress( const SvxRTFParser& rParser )
{
DBG_ASSERT( pChildList, "es gibt keine ChildListe" );
@@ -1401,6 +1421,9 @@ void SvxRTFItemStackType::Compress( const SvxRTFParser& rParser )
return;
}
+ if (rParser.UncompressableStackEntry(*pTmp))
+ return;
+
if( n )
{
// suche alle, die ueber den gesamten Bereich gesetzt sind