diff options
author | Kurt Zenker <kz@openoffice.org> | 2010-07-13 14:54:15 +0200 |
---|---|---|
committer | Kurt Zenker <kz@openoffice.org> | 2010-07-13 14:54:15 +0200 |
commit | b0289f45e20706eb2dd2394cc979f50bb98c6ac1 (patch) | |
tree | 96f5adc876ae06bdf7dcbafc776885ef7b0441f8 | |
parent | 5c62576e5d8af7379a57b45392d3c51c0bcd0fcc (diff) | |
parent | 8fe56c485a0034695674ada833eb7eeef8780ddd (diff) |
CWS-TOOLING: integrate CWS sw33bf06_OOO330
Notes
split repo tag: writer_ooo/OOO330_m1
-rw-r--r-- | sw/qa/unoapi/sw.sce | 28 | ||||
-rw-r--r-- | sw/source/core/crsr/findtxt.cxx | 14 | ||||
-rw-r--r-- | sw/source/core/objectpositioning/tocntntanchoredobjectposition.cxx | 8 | ||||
-rw-r--r-- | sw/source/core/text/txttab.cxx | 4 | ||||
-rw-r--r-- | sw/source/core/unocore/unoidx.cxx | 7 | ||||
-rw-r--r-- | sw/source/core/unocore/unoparagraph.cxx | 3 | ||||
-rw-r--r-- | sw/source/core/unocore/unorefmk.cxx | 6 | ||||
-rw-r--r-- | sw/source/core/unocore/unosect.cxx | 3 | ||||
-rw-r--r-- | sw/source/filter/rtf/rtftbl.cxx | 7 | ||||
-rw-r--r-- | sw/source/ui/docvw/SidebarTxtControlAcc.cxx | 2 |
10 files changed, 51 insertions, 31 deletions
diff --git a/sw/qa/unoapi/sw.sce b/sw/qa/unoapi/sw.sce index e57a6643cd0d..0f1092af8a51 100644 --- a/sw/qa/unoapi/sw.sce +++ b/sw/qa/unoapi/sw.sce @@ -4,9 +4,9 @@ -o sw.ParagraphStyle #i111197 -o sw.SwAccessibleDocumentPageView #i86751 -o sw.SwAccessibleDocumentView -#i111185 -o sw.SwAccessibleEndnoteView +-o sw.SwAccessibleEndnoteView -o sw.SwAccessibleFooterView -#i111185 -o sw.SwAccessibleFootnoteView +-o sw.SwAccessibleFootnoteView -o sw.SwAccessibleHeaderView #i89022 -o sw.SwAccessiblePageView -o sw.SwAccessibleParagraphView @@ -18,25 +18,25 @@ -o sw.SwXAutoTextContainer -o sw.SwXAutoTextEntry -o sw.SwXAutoTextGroup -#i111185 -o sw.SwXBodyText +-o sw.SwXBodyText -o sw.SwXBookmark -o sw.SwXBookmarks -o sw.SwXCell -o sw.SwXCellRange -o sw.SwXChapterNumbering -#i111185 -o sw.SwXDocumentIndex -#i111185 -o sw.SwXDocumentIndexMark +-o sw.SwXDocumentIndex +-o sw.SwXDocumentIndexMark -o sw.SwXDocumentIndexes -o sw.SwXDrawPage -#i111185 -o sw.SwXEndnoteProperties +-o sw.SwXEndnoteProperties -o sw.SwXFieldEnumeration -o sw.SwXFieldMaster -#i111185 -o sw.SwXFootnote -#i111185 -o sw.SwXFootnoteProperties -#i111185 -o sw.SwXFootnoteText -#i111185 -o sw.SwXFootnotes +-o sw.SwXFootnote +-o sw.SwXFootnoteProperties +-o sw.SwXFootnoteText +-o sw.SwXFootnotes -o sw.SwXFrames -#i111185 -o sw.SwXHeadFootText +-o sw.SwXHeadFootText -o sw.SwXLineNumberingProperties #i85640 -o sw.SwXMailMerge -o sw.SwXModule @@ -51,20 +51,20 @@ #i111190 -o sw.SwXShape -o sw.SwXStyleFamilies -o sw.SwXStyleFamily -#i111185 -o sw.SwXTableCellText +-o sw.SwXTableCellText -o sw.SwXTableColumns -o sw.SwXTableRows -o sw.SwXTextColumns -o sw.SwXTextCursor #i89021 -o sw.SwXTextDefaults -#i111185 -o sw.SwXTextDocument +-o sw.SwXTextDocument -o sw.SwXTextEmbeddedObject -o sw.SwXTextEmbeddedObjects -o sw.SwXTextField -o sw.SwXTextFieldMasters -o sw.SwXTextFieldTypes -o sw.SwXTextFrame -#i111185 -o sw.SwXTextFrameText +-o sw.SwXTextFrameText -o sw.SwXTextGraphicObject -o sw.SwXTextGraphicObjects #i103696 -o sw.SwXTextPortion diff --git a/sw/source/core/crsr/findtxt.cxx b/sw/source/core/crsr/findtxt.cxx index 9fd6dd0516e9..4a0697692975 100644 --- a/sw/source/core/crsr/findtxt.cxx +++ b/sw/source/core/crsr/findtxt.cxx @@ -53,8 +53,6 @@ #include <viewsh.hxx> #include <vcl/window.hxx> -#define POSTITMGR ((ViewShell*)pNode->GetDoc()->GetDocShell()->GetWrtShell())->GetPostItMgr() - using namespace ::com::sun::star; using namespace util; @@ -333,9 +331,13 @@ BYTE SwPaM::Find( const SearchOptions& rSearchOpt, BOOL bSearchInNotes , utl::Te } + SwDocShell *const pDocShell = pNode->GetDoc()->GetDocShell(); + ViewShell *const pWrtShell = (pDocShell) ? (ViewShell*)(pDocShell->GetWrtShell()) : 0; + SwPostItMgr *const pPostItMgr = (pWrtShell) ? pWrtShell->GetPostItMgr() : 0; + xub_StrLen aStart = 0; // do we need to finish a note? - if (POSTITMGR->HasActiveSidebarWin()) + if (pPostItMgr && pPostItMgr->HasActiveSidebarWin()) { if (bSearchInNotes) { @@ -347,7 +349,7 @@ BYTE SwPaM::Find( const SearchOptions& rSearchOpt, BOOL bSearchInNotes , utl::Te --aNumberPostits; } //search inside and finsih and put focus back into the doc - if (POSTITMGR->FinishSearchReplace(rSearchOpt,bSrchForward)) + if (pPostItMgr->FinishSearchReplace(rSearchOpt,bSrchForward)) { bFound = true ; break; @@ -355,7 +357,7 @@ BYTE SwPaM::Find( const SearchOptions& rSearchOpt, BOOL bSearchInNotes , utl::Te } else { - POSTITMGR->SetActiveSidebarWin(0); + pPostItMgr->SetActiveSidebarWin(0); } } @@ -391,7 +393,7 @@ BYTE SwPaM::Find( const SearchOptions& rSearchOpt, BOOL bSearchInNotes , utl::Te if ( (bSrchForward && (GetPostIt(aLoop + aIgnore,pHts) < pHts->Count()) ) || ( !bSrchForward && (aLoop!=0) )) { const SwTxtAttr* pTxtAttr = bSrchForward ? (*pHts)[GetPostIt(aLoop+aIgnore,pHts)] : (*pHts)[GetPostIt(aLoop+aIgnore-1,pHts)]; - if ( POSTITMGR->SearchReplace(((SwTxtFld*)pTxtAttr)->GetFld(),rSearchOpt,bSrchForward) ) + if ( pPostItMgr && pPostItMgr->SearchReplace(((SwTxtFld*)pTxtAttr)->GetFld(),rSearchOpt,bSrchForward) ) { bFound = true ; break; diff --git a/sw/source/core/objectpositioning/tocntntanchoredobjectposition.cxx b/sw/source/core/objectpositioning/tocntntanchoredobjectposition.cxx index 5f5e0155e77c..209ceb3c20e0 100644 --- a/sw/source/core/objectpositioning/tocntntanchoredobjectposition.cxx +++ b/sw/source/core/objectpositioning/tocntntanchoredobjectposition.cxx @@ -213,9 +213,11 @@ void SwToCntntAnchoredObjectPosition::CalcPosition() !GetAnchoredObj().GetLastCharRect().Width() ) || !GetAnchoredObj().GetLastTopOfLine() ) { - // --> OD 2004-07-15 #117380# - suppress check for paragraph - // portion information by passing <false> as first parameter - GetAnchoredObj().CheckCharRectAndTopOfLine( false ); + // --> OD 2010-07-02 #i111886# + // Check existence of paragraph portion information in order + // to avoid formatting which could cause deletion of follow frames. + GetAnchoredObj().CheckCharRectAndTopOfLine(); + // <-- // OD 2005-01-12 - Due to table break algorithm the character // rectangle can have no height. Thus, check also the width if ( ( !GetAnchoredObj().GetLastCharRect().Height() && diff --git a/sw/source/core/text/txttab.cxx b/sw/source/core/text/txttab.cxx index 0fd88876532b..a86589b64851 100644 --- a/sw/source/core/text/txttab.cxx +++ b/sw/source/core/text/txttab.cxx @@ -194,6 +194,10 @@ SwTabPortion *SwTxtFormatter::NewTabPortion( SwTxtFormatInfo &rInf, bool bAuto ) } SwTwips nCount = nSearchPos; + //Minimum tab stop width is 1 + if (nDefTabDist <= 0) + nDefTabDist = 1; + nCount /= nDefTabDist; nNextPos = nCount < 0 || (!nCount && nSearchPos <= 0)? nCount * nDefTabDist :( nCount + 1 ) * nDefTabDist ; // --> FME 2004-09-21 #117919 Minimum tab stop width is 1 or 51 twips: diff --git a/sw/source/core/unocore/unoidx.cxx b/sw/source/core/unocore/unoidx.cxx index d51225f84f96..94ee14450f08 100644 --- a/sw/source/core/unocore/unoidx.cxx +++ b/sw/source/core/unocore/unoidx.cxx @@ -367,7 +367,8 @@ public: *aSwMapProvider.GetPropertySet(lcl_TypeToPropertyMap_Index(eType))) , m_eTOXType(eType) , m_ListenerContainer(static_cast< ::cppu::OWeakObject* >(&rThis)) - , m_bIsDescriptor(0 == pBaseSection) + // #i111177# unxsols4 (Sun C++ 5.9 SunOS_sparc) may generate wrong code + , m_bIsDescriptor((0 == pBaseSection) ? true : false) , m_pDoc(&rDoc) , m_pProps((m_bIsDescriptor) ? new SwDocIndexDescriptorProperties_Impl(rDoc.GetTOXType(eType, 0)) @@ -1625,7 +1626,9 @@ public: *aSwMapProvider.GetPropertySet(lcl_TypeToPropertyMap_Mark(eType))) , m_eTOXType(eType) , m_ListenerContainer(static_cast< ::cppu::OWeakObject* >(&rThis)) - , m_bIsDescriptor(0 == pMark) +// #i112513#: unxsols4 (Sun C++ 5.9 SunOS_sparc) generates wrong code for this +// , m_bIsDescriptor(0 == pMark) + , m_bIsDescriptor((0 == pMark) ? true : false) , m_TypeDepend(this, pType) , m_pTOXMark(pMark) , m_pDoc(pDoc) diff --git a/sw/source/core/unocore/unoparagraph.cxx b/sw/source/core/unocore/unoparagraph.cxx index 974faebc4421..3b865d49bf09 100644 --- a/sw/source/core/unocore/unoparagraph.cxx +++ b/sw/source/core/unocore/unoparagraph.cxx @@ -139,7 +139,8 @@ public: , m_rThis(rThis) , m_ListenerContainer(static_cast< ::cppu::OWeakObject* >(&rThis)) , m_rPropSet(*aSwMapProvider.GetPropertySet(PROPERTY_MAP_PARAGRAPH)) - , m_bIsDescriptor(0 == pTxtNode) + // #i111177# unxsols4 (Sun C++ 5.9 SunOS_sparc) may generate wrong code + , m_bIsDescriptor((0 == pTxtNode) ? true : false) , m_nSelectionStartPos(nSelStart) , m_nSelectionEndPos(nSelEnd) , m_xParentText(xParent) diff --git a/sw/source/core/unocore/unorefmk.cxx b/sw/source/core/unocore/unorefmk.cxx index 622a995df0ac..25ce3ec6c441 100644 --- a/sw/source/core/unocore/unorefmk.cxx +++ b/sw/source/core/unocore/unorefmk.cxx @@ -68,7 +68,8 @@ public: SwDoc *const pDoc, SwFmtRefMark const*const pRefMark) : SwClient((pDoc) ? pDoc->GetUnoCallBack() : 0) , m_ListenerContainer(static_cast< ::cppu::OWeakObject* >(&rThis)) - , m_bIsDescriptor(0 == pRefMark) + // #i111177# unxsols4 (Sun C++ 5.9 SunOS_sparc) may generate wrong code + , m_bIsDescriptor((0 == pRefMark) ? true : false) , m_pDoc(pDoc) , m_pMarkFmt(pRefMark) { @@ -762,7 +763,8 @@ public: , m_ListenerContainer(static_cast< ::cppu::OWeakObject* >(&rThis)) , m_pTextPortions( pPortions ) , m_bIsDisposed( false ) - , m_bIsDescriptor(0 == pMeta) + // #i111177# unxsols4 (Sun C++ 5.9 SunOS_sparc) may generate wrong code + , m_bIsDescriptor((0 == pMeta) ? true : false) , m_xParentText(xParentText) , m_Text(rDoc, rThis) { diff --git a/sw/source/core/unocore/unosect.cxx b/sw/source/core/unocore/unosect.cxx index 1e18cc5becc5..2810b500ea4b 100644 --- a/sw/source/core/unocore/unosect.cxx +++ b/sw/source/core/unocore/unosect.cxx @@ -136,7 +136,8 @@ public: , m_rPropSet(*aSwMapProvider.GetPropertySet(PROPERTY_MAP_SECTION)) , m_ListenerContainer(static_cast< ::cppu::OWeakObject* >(&rThis)) , m_bIndexHeader(bIndexHeader) - , m_bIsDescriptor(0 == pFmt) + // #i111177# unxsols4 (Sun C++ 5.9 SunOS_sparc) may generate wrong code + , m_bIsDescriptor((0 == pFmt) ? true : false) , m_pProps((pFmt) ? 0 : new SwTextSectionProperties_Impl()) { } diff --git a/sw/source/filter/rtf/rtftbl.cxx b/sw/source/filter/rtf/rtftbl.cxx index a2572006a290..2c182532079d 100644 --- a/sw/source/filter/rtf/rtftbl.cxx +++ b/sw/source/filter/rtf/rtftbl.cxx @@ -288,7 +288,12 @@ void SwRTFParser::ReadTable( int nToken ) break; case RTF_CLMRG: - aMergeBoxes[ nBoxCnt ] = TRUE; + // would crash later on reading \cellx (#i112657#): + // the first cell cannot be merged with earlier ones. + if (nBoxCnt != 0) + { + aMergeBoxes[ nBoxCnt ] = TRUE; + } break; case RTF_CELLX: diff --git a/sw/source/ui/docvw/SidebarTxtControlAcc.cxx b/sw/source/ui/docvw/SidebarTxtControlAcc.cxx index 8b0f0293367c..bd613fc7c031 100644 --- a/sw/source/ui/docvw/SidebarTxtControlAcc.cxx +++ b/sw/source/ui/docvw/SidebarTxtControlAcc.cxx @@ -80,7 +80,7 @@ class SidebarTextEditSource : public SvxEditSource, SidebarTextEditSource::SidebarTextEditSource( SidebarTxtControl& rSidebarTxtControl ) : SvxEditSource() , mrSidebarTxtControl( rSidebarTxtControl ) - , mTextForwarder( *(rSidebarTxtControl.GetTextView()->GetOutliner()), NULL ) + , mTextForwarder( *(rSidebarTxtControl.GetTextView()->GetOutliner()), FALSE ) , mViewForwarder( *(rSidebarTxtControl.GetTextView()) ) { if ( mrSidebarTxtControl.GetTextView() ) |