summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVladimir Glazounov <vg@openoffice.org>2009-03-17 07:07:56 +0000
committerVladimir Glazounov <vg@openoffice.org>2009-03-17 07:07:56 +0000
commit431c98a9bbd1f07498c36f6b446b0d80a27797a0 (patch)
tree7e8c689492577b41a2da1e5bc90a3f7b308326f6
parenta08d159e2d70f44cc06484d16b0de36ed712558e (diff)
CWS-TOOLING: integrate CWS fwk105_DEV300
2009-03-12 14:17:34 +0100 od r269409 : #i100132# method <WW8ListManager::GetNumRuleForActivation(..)> use <SwNumRule::Get(..)> instead of <SwNumRule::GetNumFmt(..)> 2009-03-12 10:33:48 +0100 hbrinkm r269369 : #i99564# SwWW8ImplReader::TabCellEnd: only remove paragraph, if table end is before current insert point
-rw-r--r--sw/inc/pam.hxx2
-rw-r--r--sw/source/core/crsr/pam.cxx5
-rw-r--r--sw/source/filter/ww8/ww8par2.cxx7
-rw-r--r--sw/source/filter/ww8/ww8par3.cxx5
4 files changed, 16 insertions, 3 deletions
diff --git a/sw/inc/pam.hxx b/sw/inc/pam.hxx
index 495d2b86cc..30a0cde842 100644
--- a/sw/inc/pam.hxx
+++ b/sw/inc/pam.hxx
@@ -256,6 +256,8 @@ public:
{ return *Start() <= rPos && rPos <= *End(); }
static BOOL Overlap(const SwPaM & a, const SwPaM & b);
+
+ static BOOL LessThan(const SwPaM & a, const SwPaM & b);
DECL_FIXEDMEMPOOL_NEWDEL(SwPaM);
diff --git a/sw/source/core/crsr/pam.cxx b/sw/source/core/crsr/pam.cxx
index 4fde1780b2..b236010a42 100644
--- a/sw/source/core/crsr/pam.cxx
+++ b/sw/source/core/crsr/pam.cxx
@@ -1154,3 +1154,8 @@ BOOL SwPaM::Overlap(const SwPaM & a, const SwPaM & b)
{
return !(*b.End() <= *a.Start() || *a.End() <= *b.End());
}
+
+BOOL SwPaM::LessThan(const SwPaM & a, const SwPaM & b)
+{
+ return (*a.Start() < *b.Start()) || (*a.Start() == *b.Start() && *a.End() < *b.End());
+}
diff --git a/sw/source/filter/ww8/ww8par2.cxx b/sw/source/filter/ww8/ww8par2.cxx
index d63862ca96..4071a6f61c 100644
--- a/sw/source/filter/ww8/ww8par2.cxx
+++ b/sw/source/filter/ww8/ww8par2.cxx
@@ -3532,8 +3532,11 @@ void SwWW8ImplReader::TabCellEnd()
{
pTableDesc->TableCellEnd();
- if (bReadTable && pWFlyPara == NULL && mpTableEndPaM.get() != NULL &&
- ! SwPaM::Overlap(*pPaM, *mpTableEndPaM))
+ if (bReadTable
+ && pWFlyPara == NULL
+ && mpTableEndPaM.get() != NULL
+ && (! SwPaM::Overlap(*pPaM, *mpTableEndPaM))
+ && SwPaM::LessThan(*mpTableEndPaM, *pPaM))
{
if (mpTableEndPaM->GetPoint()->nNode.GetNode().IsTxtNode())
{
diff --git a/sw/source/filter/ww8/ww8par3.cxx b/sw/source/filter/ww8/ww8par3.cxx
index 14bfb583f8..75679a8a03 100644
--- a/sw/source/filter/ww8/ww8par3.cxx
+++ b/sw/source/filter/ww8/ww8par3.cxx
@@ -1504,7 +1504,10 @@ SwNumRule* WW8ListManager::GetNumRuleForActivation(sal_uInt16 nLFOPosition,
return 0;
// #i25545#
- SwNumFmt pFmt(*(pLFOInfo->pNumRule->GetNumFmt(nLevel)));
+ // --> OD 2009-03-12 #i100132# - a number format does not have to exist on given list level
+// SwNumFmt pFmt(*(pLFOInfo->pNumRule->GetNumFmt(nLevel)));
+ SwNumFmt pFmt(pLFOInfo->pNumRule->Get(nLevel));
+ // <--
if (rReader.IsRightToLeft() && nLastLFOPosition != nLFOPosition) {
if ( pFmt.GetNumAdjust() == SVX_ADJUST_RIGHT)
pFmt.SetNumAdjust(SVX_ADJUST_LEFT);