diff options
Diffstat (limited to 'patches/src680/cws-fs03-04.diff')
-rw-r--r-- | patches/src680/cws-fs03-04.diff | 240 |
1 files changed, 0 insertions, 240 deletions
diff --git a/patches/src680/cws-fs03-04.diff b/patches/src680/cws-fs03-04.diff deleted file mode 100644 index 5e126d287..000000000 --- a/patches/src680/cws-fs03-04.diff +++ /dev/null @@ -1,240 +0,0 @@ ---- libwpd/makefile.mk 7 Sep 2005 19:36:56 -0000 1.8 -+++ libwpd/makefile.mk 12 Oct 2005 10:53:21 -0000 -@@ -49,8 +49,8 @@ - @echo "Using system libwpd..." - .ENDIF - --TARFILE_NAME=libwpd-0.8.2 --#PATCH_FILE_NAME=$(TARFILE_NAME).diff -+TARFILE_NAME=libwpd-0.8.3 -+PATCH_FILE_NAME=$(TARFILE_NAME).diff - BUILD_ACTION=dmake $(MFLAGS) $(CALLMACROS) - BUILD_DIR=src/lib - ---- /dev/null 2005-10-11 15:28:41.082360224 +0200 -+++ libwpd/libwpd-0.8.3.diff 2005-10-12 12:48:38.000000000 +0200 -@@ -0,0 +1,37 @@ -+--- misc/build/libwpd-0.8.3/src/lib/WP6HLContentListener.cpp 25 Aug 2005 14:34:42 -0000 1.81 -++++ misc/build/libwpd-0.8.3/src/lib/WP6HLContentListener.cpp 31 Aug 2005 16:17:50 -0000 -+@@ -1037,6 +1037,7 @@ -+ // save a reference to the text PID, we want to parse -+ // the packet after we're through with the footnote ref. -+ m_parseState->m_noteTextPID = textPID; -++ m_ps->m_isNote = true; -+ } -+ } -+ -+@@ -1064,6 +1065,7 @@ -+ m_listenerImpl->closeFootnote(); -+ else -+ m_listenerImpl->closeEndnote(); -++ m_ps->m_isNote = false; -+ } -+ } -+ -+@@ -1253,7 +1255,7 @@ -+ // -+ void WP6HLContentListener::_flushText() -+ { -+- if (m_ps->m_isListElementOpened) -++ if (m_ps->m_isListElementOpened || m_ps->m_isNote) -+ { -+ m_parseState->m_textBeforeNumber.clear(); -+ m_parseState->m_textBeforeDisplayReference.clear(); -+--- misc/build/libwpd-0.8.3/src/lib/WPXHLListener.cpp 25 Aug 2005 14:34:42 -0000 1.62 -++++ misc/build/libwpd-0.8.3/src/lib/WPXHLListener.cpp 31 Aug 2005 16:17:50 -0000 -+@@ -883,6 +883,7 @@ -+ m_ps->m_pageMarginLeft = oldPS->m_pageMarginLeft; -+ m_ps->m_pageMarginRight = oldPS->m_pageMarginRight; -+ m_ps->m_subDocumentTextPIDs = oldPS->m_subDocumentTextPIDs; -++ m_ps->m_isNote = oldPS->m_isNote; -+ // END: copy page properties into the new parsing state -+ m_ps->m_inSubDocument = true; -+ // Check whether the document is calling its own TextPID ---- writerperfect/source/filter/ListStyle.cxx 1 Mar 2005 17:04:30 -0000 1.2 -+++ writerperfect/source/filter/ListStyle.cxx 12 Oct 2005 10:50:09 -0000 -@@ -35,6 +35,8 @@ - - void OrderedListStyle::updateListLevel(const int iLevel, const WPXPropertyList &xPropList) - { -+ if (iLevel < 0) -+ return; - if (!isListLevelDefined(iLevel)) - setListLevel(iLevel, new OrderedListLevelStyle(xPropList)); - } -@@ -60,7 +62,10 @@ - TagOpenElement stylePropertiesOpen("style:properties"); - if (mPropList["text:space-before"]) - stylePropertiesOpen.addAttribute("text:space-before", mPropList["text:space-before"]->getStr()); -- stylePropertiesOpen.addAttribute("text:min-label-width", "0.499cm"); -+ if (mPropList["text:min-label-width"]) -+ stylePropertiesOpen.addAttribute("text:min-label-width", mPropList["text:min-label-width"]->getStr()); -+ if (mPropList["text:min-label-distance"]) -+ stylePropertiesOpen.addAttribute("text:min-label-distance", mPropList["text:min-label-distance"]->getStr()); - stylePropertiesOpen.write(xHandler); - - xHandler.endElement("style:properties"); -@@ -74,6 +79,8 @@ - - void UnorderedListStyle::updateListLevel(const int iLevel, const WPXPropertyList &xPropList) - { -+ if (iLevel < 0) -+ return; - if (!isListLevelDefined(iLevel)) - setListLevel(iLevel, new UnorderedListLevelStyle(xPropList)); - } -@@ -92,9 +99,12 @@ - - TagOpenElement stylePropertiesOpen("style:properties"); - if (mPropList["text:space-before"]) -- listLevelStyleOpen.addAttribute("text:space-before", mPropList["text:space-before"]->getStr()); -- stylePropertiesOpen.addAttribute("text:min-label-width", "0.499cm"); -- stylePropertiesOpen.addAttribute("style:font-name", "StarSymbol"); -+ stylePropertiesOpen.addAttribute("text:space-before", mPropList["text:space-before"]->getStr()); -+ if (mPropList["text:min-label-width"]) -+ stylePropertiesOpen.addAttribute("text:min-label-width", mPropList["text:min-label-width"]->getStr()); -+ if (mPropList["text:min-label-distance"]) -+ stylePropertiesOpen.addAttribute("text:min-label-distance", mPropList["text:min-label-distance"]->getStr()); -+ stylePropertiesOpen.addAttribute("style:font-name", "OpenSymbol"); - stylePropertiesOpen.write(xHandler); - - xHandler.endElement("style:properties"); ---- writerperfect/source/filter/ListStyle.hxx 1 Mar 2005 17:04:43 -0000 1.2 -+++ writerperfect/source/filter/ListStyle.hxx 12 Oct 2005 10:50:09 -0000 -@@ -64,6 +64,7 @@ - public: - ListStyle(const char *psName, const int iListID); - virtual ~ListStyle(); -+ virtual void updateListLevel(const int iLevel, const WPXPropertyList &xPropList) = 0; - virtual void write(DocumentHandler &xHandler) const; - const int getListID() { return miListID; } - const bool isListLevelDefined(int iLevel) const; ---- writerperfect/source/filter/OODocumentHandler.cxx 1 Mar 2005 17:05:02 -0000 1.2 -+++ writerperfect/source/filter/OODocumentHandler.cxx 12 Oct 2005 10:50:09 -0000 -@@ -76,8 +76,14 @@ - mxHandler->endElement(OUString::createFromAscii(psName)); - } - -+#define LEFT_TO_RIGHT_OVERRIDE 0x202d -+ - void OODocumentHandler::characters(const WPXString &sCharacters) - { -+ // First force LTR rendering of all characters, since in WordPerfect, even text in RTL -+ // languages has to be entered left to right :-) -+ OUString sCharLTR=OUString::valueOf((sal_Unicode)LEFT_TO_RIGHT_OVERRIDE); -+ mxHandler->characters(sCharLTR); - OUString sCharU16(sCharacters.cstr(), strlen(sCharacters.cstr()), RTL_TEXTENCODING_UTF8); - mxHandler->characters(sCharU16); - } ---- writerperfect/source/filter/TableStyle.cxx 1 Mar 2005 17:06:35 -0000 1.2 -+++ writerperfect/source/filter/TableStyle.cxx 12 Oct 2005 10:50:09 -0000 -@@ -122,6 +122,8 @@ - stylePropertiesOpen.addAttribute("fo:margin-right", mPropList["fo:margin-right"]->getStr()); - if (mPropList["style:width"]) - stylePropertiesOpen.addAttribute("style:width", mPropList["style:width"]->getStr()); -+ if (mPropList["fo:break-before"]) -+ stylePropertiesOpen.addAttribute("fo:break-before", mPropList["fo:break-before"]->getStr()); - stylePropertiesOpen.write(xHandler); - - xHandler.endElement("style:properties"); ---- writerperfect/source/filter/WordPerfectCollector.cxx 1 Mar 2005 17:07:29 -0000 1.4 -+++ writerperfect/source/filter/WordPerfectCollector.cxx 12 Oct 2005 10:50:10 -0000 -@@ -47,7 +47,8 @@ - mbInFakeSection(false), - mbListElementOpenedAtCurrentLevel(false), - mbTableCellOpened(false), -- mbHeaderRow(false) -+ mbHeaderRow(false), -+ mbInNote(false) - { - } - -@@ -566,11 +567,12 @@ - OrderedListStyle *pOrderedListStyle = NULL; - if (mpCurrentListStyle && mpCurrentListStyle->getListID() == id) - pOrderedListStyle = static_cast<OrderedListStyle *>(mpCurrentListStyle); // FIXME: using a dynamic cast here causes oo to crash?! -+ - // this rather appalling conditional makes sure we only start a new list (rather than continue an old -- // one) iff: (1) we have no prior list OR (2) the prior list is actually definitively different -+ // one) if: (1) we have no prior list OR (2) the prior list is actually definitively different - // from the list that is just being defined (listIDs differ) OR (3) we can tell that the user actually - // is starting a new list at level 1 (and only level 1) -- if (pOrderedListStyle == NULL || pOrderedListStyle->getListID() != id || -+ if (pOrderedListStyle == NULL || pOrderedListStyle->getListID() != id || - (propList["libwpd:level"] && propList["libwpd:level"]->getInt()==1 && - (propList["text:start-value"] && propList["text:start-value"]->getInt() != (miLastListNumber+1)))) - { -@@ -587,7 +589,14 @@ - else - mbListContinueNumbering = true; - -- pOrderedListStyle->updateListLevel(miCurrentListLevel, propList); -+ // Iterate through ALL list styles with the same WordPerfect list id and define a level if it is not already defined -+ // This solves certain problems with lists that start and finish without reaching certain levels and then begin again -+ // and reach those levels. See gradguide0405_PC.wpd in the regression suite -+ for (std::vector<ListStyle *>::iterator iterOrderedListStyles = mListStyles.begin(); iterOrderedListStyles != mListStyles.end(); iterOrderedListStyles++) -+ { -+ if ((* iterOrderedListStyles)->getListID() == propList["libwpd:id"]->getInt()) -+ (* iterOrderedListStyles)->updateListLevel((propList["libwpd:level"]->getInt() - 1), propList); -+ } - } - - void WordPerfectCollector::defineUnorderedListLevel(const WPXPropertyList &propList) -@@ -608,7 +617,13 @@ - mListStyles.push_back(static_cast<ListStyle *>(pUnorderedListStyle)); - mpCurrentListStyle = static_cast<ListStyle *>(pUnorderedListStyle); - } -- pUnorderedListStyle->updateListLevel(miCurrentListLevel, propList); -+ -+ // See comment in WordPerfectCollector::defineOrderedListLevel -+ for (std::vector<ListStyle *>::iterator iterUnorderedListStyles = mListStyles.begin(); iterUnorderedListStyles != mListStyles.end(); iterUnorderedListStyles++) -+ { -+ if ((* iterUnorderedListStyles)->getListID() == propList["libwpd:id"]->getInt()) -+ (* iterUnorderedListStyles)->updateListLevel((propList["libwpd:level"]->getInt() - 1), propList); -+ } - } - - void WordPerfectCollector::openOrderedListLevel(const WPXPropertyList &propList) -@@ -746,11 +761,14 @@ - mpCurrentContentElements->push_back(static_cast<DocumentElement *>(new TagCloseElement("text:footnote-citation"))); - - mpCurrentContentElements->push_back(static_cast<DocumentElement *>(new TagOpenElement("text:footnote-body"))); -- -+ -+ mWriterDocumentState.mbInNote = true; - } - - void WordPerfectCollector::closeFootnote() - { -+ mWriterDocumentState.mbInNote = false; -+ - mpCurrentContentElements->push_back(static_cast<DocumentElement *>(new TagCloseElement("text:footnote-body"))); - mpCurrentContentElements->push_back(static_cast<DocumentElement *>(new TagCloseElement("text:footnote"))); - } -@@ -815,7 +833,7 @@ - - void WordPerfectCollector::openTableRow(const WPXPropertyList &propList) - { -- if (propList["libwpd:is-header-row"] && propList["libwpd:is-header-row"]->getInt()) -+ if (propList["libwpd:is-header-row"] && (propList["libwpd:is-header-row"]->getInt())) - { - mpCurrentContentElements->push_back(static_cast<DocumentElement *>(new TagOpenElement("table:table-header-rows"))); - mWriterDocumentState.mbHeaderRow = true; -@@ -878,7 +896,6 @@ - { - mpCurrentContentElements->push_back(static_cast<DocumentElement *>(new TagCloseElement("table:table"))); - } -- - - void WordPerfectCollector::insertTab() - { ---- writerperfect/source/filter/WordPerfectCollector.hxx 1 Mar 2005 17:07:50 -0000 1.3 -+++ writerperfect/source/filter/WordPerfectCollector.hxx 12 Oct 2005 10:50:10 -0000 -@@ -59,6 +59,7 @@ - bool mbListElementOpenedAtCurrentLevel; - bool mbTableCellOpened; - bool mbHeaderRow; -+ bool mbInNote; - }; - - enum WriterListType { unordered, ordered }; |