[ooo-build-commit] .: patches/dev300
Miklos Vajna
vmiklos at kemper.freedesktop.org
Fri Sep 3 18:06:49 PDT 2010
patches/dev300/cws-vmiklos01.diff | 968 +++++++++++++++++++++-----------------
patches/dev300/docx-fixes02.diff | 2
2 files changed, 561 insertions(+), 409 deletions(-)
New commits:
commit 3ebd5a2860f25cf7b8a91a3f6dd612c70d7f3ccf
Author: Miklos Vajna <vmiklos at frugalware.org>
Date: Sat Sep 4 03:06:01 2010 +0200
Update cws-vmiklos01.diff from hg
Also fix docx-fixes02.diff to apply again on top of the new cws
snapshot.
diff --git a/patches/dev300/cws-vmiklos01.diff b/patches/dev300/cws-vmiklos01.diff
index ae2263f..448c224 100644
--- a/patches/dev300/cws-vmiklos01.diff
+++ b/patches/dev300/cws-vmiklos01.diff
@@ -1,6 +1,19 @@
-unchanged:
---- svtools/inc/rtfkeywd.hxx Wed Jul 21 17:35:19 2010 +0200
-+++ svtools/inc/rtfkeywd.hxx Thu Jul 29 20:08:54 2010 +0200
+diff -r 004715ace8e7 -r b935ac15ff37 filter/source/config/fragments/filters/Rich_Text_Format.xcu
+--- filter/source/config/fragments/filters/Rich_Text_Format.xcu Mon Jul 19 17:09:02 2010 +0200
++++ filter/source/config/fragments/filters/Rich_Text_Format.xcu Sat Sep 04 01:00:40 2010 +0200
+@@ -1,7 +1,7 @@
+ <node oor:name="Rich Text Format" oor:op="replace">
+- <prop oor:name="Flags"><value>IMPORT EXPORT ALIEN PREFERRED</value></prop>
++ <prop oor:name="Flags"><value>IMPORT EXPORT ALIEN 3RDPARTYFILTER PREFERRED</value></prop>
+ <prop oor:name="UIComponent"/>
+- <prop oor:name="FilterService"/>
++ <prop oor:name="FilterService"><value>com.sun.star.comp.Writer.RtfFilter</value></prop>
+ <prop oor:name="UserData"><value>RTF</value></prop>
+ <prop oor:name="UIName">
+ <value xml:lang="x-default">Rich Text Format</value>
+diff -r 004715ace8e7 -r b935ac15ff37 svtools/inc/rtfkeywd.hxx
+--- svtools/inc/rtfkeywd.hxx Mon Jul 19 17:09:02 2010 +0200
++++ svtools/inc/rtfkeywd.hxx Sat Sep 04 01:00:40 2010 +0200
@@ -39,6 +39,7 @@
#define OOO_STRING_SVTOOLS_RTF_ALT "\\alt"
#define OOO_STRING_SVTOOLS_RTF_ANNOTATION "\\annotation"
@@ -45,9 +58,57 @@ unchanged:
+#define OOO_STRING_SVTOOLS_RTF_NONESTTABLES "\\nonesttables"
+
#endif // _RTFKEYWD_HXX
-unchanged:
---- sw/source/filter/rtf/swparrtf.cxx Thu Jul 29 20:08:54 2010 +0200
-+++ sw/source/filter/rtf/swparrtf.cxx Thu Jul 29 22:01:25 2010 +0200
+diff -r 004715ace8e7 -r b935ac15ff37 sw/source/filter/rtf/makefile.mk
+--- sw/source/filter/rtf/makefile.mk Mon Jul 19 17:09:02 2010 +0200
++++ sw/source/filter/rtf/makefile.mk Sat Sep 04 01:00:40 2010 +0200
+@@ -46,18 +46,15 @@
+ EXCEPTIONSFILES= \
+ $(SLO)$/rtffly.obj \
+ $(SLO)$/rtfnum.obj \
+- $(SLO)$/swparrtf.obj \
+- $(SLO)$/wrtrtf.obj
++ $(SLO)$/swparrtf.obj
+
+
+ SLOFILES = \
+- $(SLO)$/rtfatr.obj \
+ $(SLO)$/rtffld.obj \
+ $(SLO)$/rtffly.obj \
+ $(SLO)$/rtfnum.obj \
+ $(SLO)$/rtftbl.obj \
+- $(SLO)$/swparrtf.obj \
+- $(SLO)$/wrtrtf.obj
++ $(SLO)$/swparrtf.obj
+
+ # --- Tagets -------------------------------------------------------
+
+diff -r 004715ace8e7 -r b935ac15ff37 sw/source/filter/rtf/rtfnum.cxx
+--- sw/source/filter/rtf/rtfnum.cxx Mon Jul 19 17:09:02 2010 +0200
++++ sw/source/filter/rtf/rtfnum.cxx Sat Sep 04 01:00:40 2010 +0200
+@@ -47,7 +47,6 @@
+ #include <fltini.hxx>
+ #include <swtypes.hxx>
+ #include <swparrtf.hxx>
+-#include <wrtrtf.hxx>
+ #include <ndtxt.hxx>
+ #include <doc.hxx>
+ #include <docary.hxx>
+@@ -1130,6 +1130,7 @@
+ return nLvl != nEnd;
+ }
+
++#if 0
+ void SwRTFWriter::OutRTFListTab()
+ {
+ ByteString sOverrideList;
+@@ -1458,3 +1459,4 @@
+ }
+ return bRet;
+ }
++#endif
+diff -r 004715ace8e7 -r b935ac15ff37 sw/source/filter/rtf/swparrtf.cxx
+--- sw/source/filter/rtf/swparrtf.cxx Mon Jul 19 17:09:02 2010 +0200
++++ sw/source/filter/rtf/swparrtf.cxx Sat Sep 04 01:00:40 2010 +0200
@@ -179,6 +179,12 @@
return nRet;
}
@@ -61,9 +122,9 @@ unchanged:
SwRTFParser::SwRTFParser(SwDoc* pD,
uno::Reference<document::XDocumentProperties> i_xDocProps,
const SwPaM& rCrsr, SvStream& rIn, const String& rBaseURL,
-unchanged:
---- sw/source/filter/rtf/swparrtf.hxx Thu Jul 29 20:08:54 2010 +0200
-+++ sw/source/filter/rtf/swparrtf.hxx Thu Jul 29 22:01:25 2010 +0200
+diff -r 004715ace8e7 -r b935ac15ff37 sw/source/filter/rtf/swparrtf.hxx
+--- sw/source/filter/rtf/swparrtf.hxx Mon Jul 19 17:09:02 2010 +0200
++++ sw/source/filter/rtf/swparrtf.hxx Sat Sep 04 01:00:40 2010 +0200
@@ -81,6 +81,8 @@
class RtfReader: public Reader
{
@@ -73,9 +134,240 @@ unchanged:
};
class SwNodeIdx : public SvxNodeIdx
-unchanged:
---- sw/source/filter/ww8/docxexport.cxx Thu Jul 29 20:08:54 2010 +0200
-+++ sw/source/filter/ww8/docxexport.cxx Thu Jul 29 22:01:25 2010 +0200
+diff -r 004715ace8e7 -r b935ac15ff37 sw/source/filter/ww8/README-rtf.txt
+--- /dev/null Thu Jan 01 00:00:00 1970 +0000
++++ sw/source/filter/ww8/README-rtf.txt Sat Sep 04 01:00:40 2010 +0200
+@@ -0,0 +1,227 @@
++
++---------------------------------------------------------------------
++
++Summary of new features in RtfExport
++
++---------------------------------------------------------------------
++
++Miklos Vajna
++
++<vmiklos at frugalware.org>
++---------------------------------------------------------------------
++
++Table of Contents
++
++1. Introduction
++
++ 1.1. Terminology
++ 1.2. General
++
++2. List if fixed bugs
++3. List of new features
++
++ 3.1. Nested tables
++ 3.2. Character properties
++ 3.3. Sections
++ 3.4. Graphics
++ 3.5. Bookmarks
++ 3.6. Fields
++ 3.7. Drawing
++ 3.8. Form fields
++ 3.9. OLE objects
++
++4. Changes in the source code outside RTF
++
++
++---------------------------------------------------------------------
++
++1. Introduction
++
++---------------------------------------------------------------------
++
++The biggest difference is that the new exporter is an UNO component,
++and it?s based on the MSWord base classes, the vision here is that
++this way much less code can achieve the same set of features,
++reducing the amount of duplicated code.
++
++
++1.1. Terminology
++
++--------------
++
++ * The "MSO OK, OOo KO" and similar abbreviations describe if the
++ given new feature is supported by the OOo RTF importer or it can
++ be tested using Microsoft Office.
++ * RtfExport refers to the new UNO-based exporter, RtfWriter refers
++ to the old built-in one.
++
++
++1.2. General
++
++--------------
++
++RtfWriter sometimes created documents where the first { is closed in
++the middle of the document. MSO ignores this problem, but OOo stops
++parsing the rest of the document if this happens, in other words
++everything after such a bug is ignored. This can be reproduced by for
++example parprops.odt, but it?s triggered in several other cases as
++well. RtfExport has no automatic prevention for this, either - but
++during development I primarily test the output with OOo, so hopefully
++the bug will pop up less frequently.
++
++
++---------------------------------------------------------------------
++
++2. List if fixed bugs
++
++---------------------------------------------------------------------
++
++ * http://www.openoffice.org/issues/show_bug.cgi?id=51469 postit
++ fields
++ * http://www.openoffice.org/issues/show_bug.cgi?id=66619 page
++ margins
++ * http://www.openoffice.org/issues/show_bug.cgi?id=69856 page
++ numbers
++ * http://www.openoffice.org/issues/show_bug.cgi?id=81569 { and } in
++ document title
++ * http://www.openoffice.org/issues/show_bug.cgi?id=84703 redlines
++ * http://www.openoffice.org/issues/show_bug.cgi?id=91166 russian
++ chars
++ * http://www.openoffice.org/issues/show_bug.cgi?id=92673 bookmarks
++ across tables
++ * http://www.openoffice.org/issues/show_bug.cgi?id=100507 ole
++ object export
++ * http://www.openoffice.org/issues/show_bug.cgi?id=103993 same as #
++ 81569 just for doc comments
++ * http://www.openoffice.org/issues/show_bug.cgi?id=106677
++ listoverride index starts at zero
++ * http://www.openoffice.org/issues/show_bug.cgi?id=38344 enhanced
++ character space
++
++
++---------------------------------------------------------------------
++
++3. List of new features
++
++---------------------------------------------------------------------
++
++
++3.1. Nested tables
++
++--------------
++
++This was new in Word2000 and it?s now supported by RtfExport (MSO OK,
++OOo KO)
++
++
++3.2. Character properties
++
++--------------
++
++The followings are now supported:
++
++ * blinking (MSO OK, OOo KO)
++ * expanded spacing (MSO OK, OOo OK)
++ * pair kerning (MSO OK, OOo OK)
++
++
++3.3. Sections
++
++--------------
++
++RtfExport writes:
++
++ * column breaks (MSO OK, OOo OK)
++ * special breaks (when the next page should be an odd or an even
++ page; MSO OK, OOo KO)
++ * the write-protected property of sections is experted properly
++ (MSO OK, OOo KO)
++ * better page numbers (inherited type from page styles, restarts;
++ MSO OK, OOo KO)
++ * line numbering (MSO OK, OOo KO)
++
++
++3.4. Graphics
++
++--------------
++
++PNG graphics are exported in WMF format as well, so that not only MSO
++and OOo can display graphics from the output document, but Wordpad as
++well.
++
++
++3.5. Bookmarks
++
++--------------
++
++Implicit bookmarks like reference to a footnote did not work in OOo
++(one got an Error: Reference source not found message when opening
++the result), this now works as expected. (MSO OK - the importer
++previously autocorrected this as well, OO OK)
++
++
++3.6. Fields
++
++--------------
++
++ * Table of contents is now written as a field, so it?s properly
++ read-only (MSO OK, OOo KO)
++ * Postit comments are now exported. (MSO OK, OOo KO)
++
++
++3.7. Drawing
++
++--------------
++
++Drawing objects for Word 97 through Word 2007 (shapes) are now
++implemented:
++
++ * basic shapes (rectangle, ellipse, etc.)
++ * lines, including free-form ones
++ * texts, including vertical ones and their (paragraph and
++ character) formatting
++
++(MSO OK, OOo KO)
++
++
++3.8. Form fields
++
++--------------
++
++All types supported by the RTF format are exported, namely:
++
++ * text boxes
++ * check boxes
++ * list boxes
++
++(MSO OK, OOo KO)
++
++
++3.9. OLE objects
++
++--------------
++
++Their result is exported as a picture - RtfWriter did not export
++anything. (MSO OK, OOo OK)
++
++For math, the native data is written as well, so you can edit the
++object, too. (MSO OK, OOo KO)
++
++
++---------------------------------------------------------------------
++
++4. Changes in the source code outside RTF
++
++---------------------------------------------------------------------
++
++These are refactorings I needed for RTF. To my best knowledge they do
++not change the output of other filters from a user?s point of view.
++
++ * The code that splits runs according to bookmarks is moved from
++ DocxExport to MSWordExportBase
++ * WW8_SdrAttrIter has been refactored to MSWord_SdrAttrIter
++ * MSWordExportBase::SubstituteBullet can avoid replacing bullets
++ * wwFontHelper::InitFontTable can really load all fonts
++ * An obvious typo in WW8AttributeOutput::CharTwoLines has been
++ fixed
++
+diff -r 004715ace8e7 -r b935ac15ff37 sw/source/filter/ww8/docxexport.cxx
+--- sw/source/filter/ww8/docxexport.cxx Mon Jul 19 17:09:02 2010 +0200
++++ sw/source/filter/ww8/docxexport.cxx Sat Sep 04 01:00:40 2010 +0200
@@ -116,131 +116,6 @@
return true;
}
@@ -208,9 +500,9 @@ unchanged:
void DocxExport::AppendBookmarks( const SwTxtNode& rNode, xub_StrLen nAktPos, xub_StrLen nLen )
{
std::vector< OUString > aStarts;
-unchanged:
---- sw/source/filter/ww8/docxexport.hxx Thu Jul 29 20:08:54 2010 +0200
-+++ sw/source/filter/ww8/docxexport.hxx Thu Jul 29 22:01:25 2010 +0200
+diff -r 004715ace8e7 -r b935ac15ff37 sw/source/filter/ww8/docxexport.hxx
+--- sw/source/filter/ww8/docxexport.hxx Mon Jul 19 17:09:02 2010 +0200
++++ sw/source/filter/ww8/docxexport.hxx Sat Sep 04 01:00:40 2010 +0200
@@ -76,11 +76,6 @@
/// Footer counter.
sal_Int32 m_nFooters;
@@ -248,9 +540,9 @@ unchanged:
/// Setup pStyles and write styles.xml
void InitStyles();
-unchanged:
---- sw/source/filter/ww8/docxexportfilter.cxx Thu Jul 29 20:08:54 2010 +0200
-+++ sw/source/filter/ww8/docxexportfilter.cxx Thu Jul 29 22:01:25 2010 +0200
+diff -r 004715ace8e7 -r b935ac15ff37 sw/source/filter/ww8/docxexportfilter.cxx
+--- sw/source/filter/ww8/docxexportfilter.cxx Mon Jul 19 17:09:02 2010 +0200
++++ sw/source/filter/ww8/docxexportfilter.cxx Sat Sep 04 01:00:40 2010 +0200
@@ -26,6 +26,8 @@
************************************************************************/
@@ -328,20 +620,20 @@ unchanged:
}
if ( xFactory.is() )
-unchanged:
---- sw/source/filter/ww8/makefile.mk Thu Jul 29 20:08:54 2010 +0200
-+++ sw/source/filter/ww8/makefile.mk Thu Jul 29 22:01:25 2010 +0200
+diff -r 004715ace8e7 -r b935ac15ff37 sw/source/filter/ww8/makefile.mk
+--- sw/source/filter/ww8/makefile.mk Mon Jul 19 17:09:02 2010 +0200
++++ sw/source/filter/ww8/makefile.mk Sat Sep 04 01:00:40 2010 +0200
@@ -67,7 +67,12 @@
$(SLO)$/WW8TableInfo.obj \
$(SLO)$/WW8FFData.obj \
$(SLO)$/WW8Sttbf.obj \
-- $(SLO)$/WW8FibData.obj
-+ $(SLO)$/WW8FibData.obj \
-+ $(SLO)$/rtfexportfilter.obj \
-+ $(SLO)$/rtfimportfilter.obj \
-+ $(SLO)$/rtfattributeoutput.obj \
-+ $(SLO)$/rtfsdrexport.obj \
-+ $(SLO)$/rtfexport.obj
+- $(SLO)$/WW8FibData.obj
++ $(SLO)$/WW8FibData.obj \
++ $(SLO)$/rtfexportfilter.obj \
++ $(SLO)$/rtfimportfilter.obj \
++ $(SLO)$/rtfattributeoutput.obj \
++ $(SLO)$/rtfsdrexport.obj \
++ $(SLO)$/rtfexport.obj
SLOFILES = \
@@ -349,20 +641,20 @@ unchanged:
$(SLO)$/WW8TableInfo.obj \
$(SLO)$/WW8FFData.obj \
$(SLO)$/WW8Sttbf.obj \
-- $(SLO)$/WW8FibData.obj
-+ $(SLO)$/WW8FibData.obj \
-+ $(SLO)$/rtfexportfilter.obj \
-+ $(SLO)$/rtfimportfilter.obj \
-+ $(SLO)$/rtfattributeoutput.obj \
-+ $(SLO)$/rtfsdrexport.obj \
-+ $(SLO)$/rtfexport.obj
+- $(SLO)$/WW8FibData.obj
++ $(SLO)$/WW8FibData.obj \
++ $(SLO)$/rtfexportfilter.obj \
++ $(SLO)$/rtfimportfilter.obj \
++ $(SLO)$/rtfattributeoutput.obj \
++ $(SLO)$/rtfsdrexport.obj \
++ $(SLO)$/rtfexport.obj
# --- Tagets -------------------------------------------------------
-unchanged:
---- sw/source/filter/ww8/rtfattributeoutput.cxx Fri Jul 30 00:54:41 2010 +0200
-+++ sw/source/filter/ww8/rtfattributeoutput.cxx Fri Jul 30 19:59:04 2010 +0200
-@@ -0,0 +1,3302 @@
+diff -r 004715ace8e7 -r b935ac15ff37 sw/source/filter/ww8/rtfattributeoutput.cxx
+--- /dev/null Thu Jan 01 00:00:00 1970 +0000
++++ sw/source/filter/ww8/rtfattributeoutput.cxx Sat Sep 04 01:00:40 2010 +0200
+@@ -0,0 +1,3357 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -590,21 +882,21 @@ unchanged:
+ code that we're triggering ?
+ */
+ if (bIsRTL) {
-+ m_aRun.append(OOO_STRING_SVTOOLS_RTF_LTRCH);
-+ m_aRun.append(' ');
-+ m_aRun.append(OOO_STRING_SVTOOLS_RTF_RTLCH);
++ m_aStylesEnd.append(OOO_STRING_SVTOOLS_RTF_LTRCH);
++ m_aStylesEnd.append(' ');
++ m_aStylesEnd.append(OOO_STRING_SVTOOLS_RTF_RTLCH);
+ } else {
-+ m_aRun.append(OOO_STRING_SVTOOLS_RTF_RTLCH);
-+ m_aRun.append(' ');
-+ m_aRun.append(OOO_STRING_SVTOOLS_RTF_LTRCH);
++ m_aStylesEnd.append(OOO_STRING_SVTOOLS_RTF_RTLCH);
++ m_aStylesEnd.append(' ');
++ m_aStylesEnd.append(OOO_STRING_SVTOOLS_RTF_LTRCH);
+ }
+
+ switch (nScript) {
+ case i18n::ScriptType::LATIN:
-+ m_aRun.append(OOO_STRING_SVTOOLS_RTF_LOCH);
++ m_aStylesEnd.append(OOO_STRING_SVTOOLS_RTF_LOCH);
+ break;
+ case i18n::ScriptType::ASIAN:
-+ m_aRun.append(OOO_STRING_SVTOOLS_RTF_DBCH);
++ m_aStylesEnd.append(OOO_STRING_SVTOOLS_RTF_DBCH);
+ break;
+ case i18n::ScriptType::COMPLEX:
+ /* noop */
@@ -727,9 +1019,12 @@ unchanged:
+ m_bBufferSectionBreaks = false;
+
+ OStringBuffer aPar;
-+ aPar.append(OOO_STRING_SVTOOLS_RTF_PARD);
-+ aPar.append(OOO_STRING_SVTOOLS_RTF_PLAIN);
-+ aPar.append(' ');
++ if (!m_rExport.bRTFFlySyntax)
++ {
++ aPar.append(OOO_STRING_SVTOOLS_RTF_PARD);
++ aPar.append(OOO_STRING_SVTOOLS_RTF_PLAIN);
++ aPar.append(' ');
++ }
+ if (!m_bBufferSectionHeaders)
+ m_rExport.Strm() << aPar.makeStringAndClear();
+ else
@@ -1362,14 +1657,17 @@ unchanged:
+ /* noop, the default style is always 0 in RTF */
+}
+
-+void RtfAttributeOutput::StartStyle( const String& rName, bool /*bPapFmt*/,
++void RtfAttributeOutput::StartStyle( const String& rName, bool bPapFmt,
+ USHORT nBase, USHORT nNext, USHORT /*nWwId*/, USHORT nId )
+{
+ OSL_TRACE("%s, rName = '%s'", OSL_THIS_FUNC,
+ OUStringToOString( OUString( rName ), m_rExport.eCurrentEncoding ).getStr());
+
+ m_aStylesheet.append('{');
-+ m_aStylesheet.append(OOO_STRING_SVTOOLS_RTF_S);
++ if (bPapFmt)
++ m_aStylesheet.append(OOO_STRING_SVTOOLS_RTF_S);
++ else
++ m_aStylesheet.append( OOO_STRING_SVTOOLS_RTF_IGNORE OOO_STRING_SVTOOLS_RTF_CS);
+ m_aStylesheet.append( (sal_Int32)nId );
+
+ if ( nBase != 0x0FFF )
@@ -1417,7 +1715,9 @@ unchanged:
+ if ( nLvl >= WW8ListManager::nMaxLevel )
+ nLvl = WW8ListManager::nMaxLevel - 1;
+
-+ m_aStyles.append(OOO_STRING_SVTOOLS_RTF_LEVEL);
++ m_aStyles.append(OOO_STRING_SVTOOLS_RTF_ILVL);
++ m_aStyles.append((sal_Int32)nLvl);
++ m_aStyles.append(OOO_STRING_SVTOOLS_RTF_OUTLINELEVEL);
+ m_aStyles.append((sal_Int32)nLvl);
+}
+
@@ -1768,6 +2068,38 @@ unchanged:
+
+ switch ( rFrame.GetWriterType() )
+ {
++ case sw::Frame::eTxtBox:
++ OSL_ENSURE(m_aRunText.getLength() == 0, "m_aRunText is not empty");
++ m_rExport.mpParentFrame = &rFrame;
++ m_rExport.bOutFlyFrmAttrs = m_rExport.bRTFFlySyntax = true;
++ m_rExport.OutputFormat( rFrame.GetFrmFmt(), false, false, true );
++ m_rExport.Strm() << m_aRunText.makeStringAndClear();
++ m_rExport.Strm() << m_aStyles.makeStringAndClear();
++ m_rExport.bOutFlyFrmAttrs = m_rExport.bRTFFlySyntax = false;
++ m_rExport.Strm() << "{" OOO_STRING_SVTOOLS_RTF_IGNORE;
++ m_rExport.OutputFormat( rFrame.GetFrmFmt(), false, false, true );
++ m_rExport.Strm() << m_aRunText.makeStringAndClear();
++ m_rExport.Strm() << m_aStyles.makeStringAndClear();
++ m_rExport.Strm() << '}';
++
++ {
++ /*
++ * Save m_aRun as we should not loose the opening brace.
++ * OTOH, just drop the contents of m_aRunText in case something
++ * would be there, causing a problem later.
++ */
++ OString aSave = m_aRun.makeStringAndClear();
++ m_rExport.bRTFFlySyntax = true;
++ m_rExport.OutContent(*rFrame.GetContent());
++ m_rExport.Strm() << OOO_STRING_SVTOOLS_RTF_PARD;
++ m_rExport.bRTFFlySyntax = false;
++ m_aRun.append(aSave);
++ m_aRunText.setLength(0);
++ }
++
++ m_rExport.mpParentFrame = NULL;
++ m_rExport.Strm() << RtfExport::sNewLine;
++ break;
+ case sw::Frame::eGraphic:
+ if (!rFrame.IsInline())
+ {
@@ -2529,6 +2861,8 @@ unchanged:
+ OSL_TRACE("%s", OSL_THIS_FUNC);
+
+ USHORT nStyle = m_rExport.GetId( *rCharFmt.GetCharFmt() );
++ m_aStyles.append(OOO_STRING_SVTOOLS_RTF_IGNORE OOO_STRING_SVTOOLS_RTF_CS);
++ m_aStyles.append((sal_Int32)nStyle);
+ OString* pString = m_rExport.GetStyle(nStyle);
+ if (pString)
+ m_aStyles.append(*pString);
@@ -2738,9 +3072,8 @@ unchanged:
+ }
+
+ SvxLRSpaceItem aLR( (SvxLRSpaceItem&)rNdSet.Get( RES_LR_SPACE ) );
-+ aLR.SetTxtLeft( aLR.GetTxtLeft() + pFmt->GetAbsLSpace() );
++ aLR.SetTxtLeft( aLR.GetTxtLeft() + pFmt->GetIndentAt() );
+ aLR.SetTxtFirstLineOfst( pFmt->GetFirstLineOffset() );
-+ FormatLRSpace(aLR);
+
+ USHORT nStyle = m_rExport.GetId( *pFmt->GetCharFmt() );
+ OString* pString = m_rExport.GetStyle(nStyle);
@@ -2777,16 +3110,17 @@ unchanged:
+ }
+ else
+ m_aStyles.append((sal_Int32)nLvl);
-+ m_aStyles.append(OOO_STRING_SVTOOLS_RTF_LS);
-+ m_aStyles.append((sal_Int32)m_rExport.GetId(*pRule)+1);
-+ m_aStyles.append(' ');
+ }
+ else
+ m_aStyles.append(OOO_STRING_SVTOOLS_RTF_TAB "}");
++ m_aStyles.append(OOO_STRING_SVTOOLS_RTF_LS);
++ m_aStyles.append((sal_Int32)m_rExport.GetId(*pRule)+1);
++ m_aStyles.append(' ');
+ }
+ else if( sTxt.Len() )
+ m_aStyles.append(OOO_STRING_SVTOOLS_RTF_TAB);
+ }
++ FormatLRSpace(aLR);
+ }
+}
+
@@ -2907,6 +3241,11 @@ unchanged:
+ m_aStyles.append( (sal_Int32) rLRSpace.GetTxtFirstLineOfst() );
+ }
+ }
++ else if (rLRSpace.GetLeft() == rLRSpace.GetRight() && m_rExport.bRTFFlySyntax)
++ {
++ m_rExport.Strm() << OOO_STRING_SVTOOLS_RTF_DFRMTXTX;
++ m_rExport.OutLong( rLRSpace.GetLeft() );
++ }
+}
+
+void RtfAttributeOutput::FormatULSpace( const SvxULSpaceItem& rULSpace )
@@ -2938,6 +3277,11 @@ unchanged:
+ m_aStyles.append( (sal_Int32) rULSpace.GetLower() );
+ }
+ }
++ else if (rULSpace.GetUpper() == rULSpace.GetLower() && m_rExport.bRTFFlySyntax)
++ {
++ m_rExport.Strm() << OOO_STRING_SVTOOLS_RTF_DFRMTXTY;
++ m_rExport.OutLong( rULSpace.GetLower() );
++ }
+}
+
+void RtfAttributeOutput::FormatSurround( const SwFmtSurround& rSurround )
@@ -3077,6 +3421,9 @@ unchanged:
+
+ USHORT nDist = rBox.GetDistance();
+
++ if ( m_rExport.bRTFFlySyntax )
++ return;
++
+ if( rBox.GetTop() && rBox.GetBottom() &&
+ rBox.GetLeft() && rBox.GetRight() &&
+ *rBox.GetTop() == *rBox.GetBottom() &&
@@ -3665,9 +4012,9 @@ unchanged:
+}
+
+/* vi:set shiftwidth=4 expandtab: */
-unchanged:
---- sw/source/filter/ww8/rtfattributeoutput.hxx Thu Jul 29 22:01:25 2010 +0200
-+++ sw/source/filter/ww8/rtfattributeoutput.hxx Fri Jul 30 00:54:41 2010 +0200
+diff -r 004715ace8e7 -r b935ac15ff37 sw/source/filter/ww8/rtfattributeoutput.hxx
+--- /dev/null Thu Jan 01 00:00:00 1970 +0000
++++ sw/source/filter/ww8/rtfattributeoutput.hxx Sat Sep 04 01:00:40 2010 +0200
@@ -0,0 +1,574 @@
+/*************************************************************************
+ *
@@ -4243,10 +4590,10 @@ unchanged:
+#endif // _RTFATTRIBUTEOUTPUT_HXX_
+
+/* vi:set shiftwidth=4 expandtab: */
-unchanged:
---- sw/source/filter/ww8/rtfexport.cxx Fri Jul 30 15:21:58 2010 +0200
-+++ sw/source/filter/ww8/rtfexport.cxx Fri Jul 30 21:59:04 2010 +0200
-@@ -0,0 +1,1235 @@
+diff -r 004715ace8e7 -r b935ac15ff37 sw/source/filter/ww8/rtfexport.cxx
+--- /dev/null Thu Jan 01 00:00:00 1970 +0000
++++ sw/source/filter/ww8/rtfexport.cxx Sat Sep 04 01:00:40 2010 +0200
+@@ -0,0 +1,1240 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -5352,6 +5699,11 @@ unchanged:
+ }
+}
+
++void RtfExport::OutContent( const SwNode& rNode )
++{
++ OutputContentNode(*rNode.GetCntntNode());
++}
++
+void RtfExport::OutPageDescription( const SwPageDesc& rPgDsc, BOOL bWriteReset, BOOL bCheckForFirstPage )
+{
+ OSL_TRACE("%s start", OSL_THIS_FUNC);
@@ -5482,10 +5834,10 @@ unchanged:
+}
+
+/* vi:set shiftwidth=4 expandtab: */
-unchanged:
---- sw/source/filter/ww8/rtfexport.hxx Thu Jul 29 22:01:25 2010 +0200
-+++ sw/source/filter/ww8/rtfexport.hxx Fri Jul 30 00:54:41 2010 +0200
-@@ -0,0 +1,211 @@
+diff -r 004715ace8e7 -r b935ac15ff37 sw/source/filter/ww8/rtfexport.hxx
+--- /dev/null Thu Jan 01 00:00:00 1970 +0000
++++ sw/source/filter/ww8/rtfexport.hxx Sat Sep 04 01:00:40 2010 +0200
+@@ -0,0 +1,212 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -5662,6 +6014,7 @@ unchanged:
+ rtl::OString OutString(const String &rStr, rtl_TextEncoding eDestEnc);
+ rtl::OString OutHex(ULONG nHex, BYTE nLen);
+ void OutPageDescription( const SwPageDesc& rPgDsc, BOOL bWriteReset, BOOL bCheckForFirstPage );
++ void OutContent( const SwNode& rNode );
+
+ USHORT GetColor( const Color& rColor ) const;
+ void InsColor( const Color& rCol );
@@ -5697,10 +6050,10 @@ unchanged:
+
+#endif // _RTFEXPORT_HXX_
+/* vi:set shiftwidth=4 expandtab: */
-unchanged:
---- sw/source/filter/ww8/rtfexportfilter.cxx Thu Jul 29 22:01:25 2010 +0200
-+++ sw/source/filter/ww8/rtfexportfilter.cxx Fri Jul 30 00:54:41 2010 +0200
-@@ -0,0 +1,136 @@
+diff -r 004715ace8e7 -r b935ac15ff37 sw/source/filter/ww8/rtfexportfilter.cxx
+--- /dev/null Thu Jan 01 00:00:00 1970 +0000
++++ sw/source/filter/ww8/rtfexportfilter.cxx Sat Sep 04 01:00:40 2010 +0200
+@@ -0,0 +1,227 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -5835,11 +6188,102 @@ unchanged:
+{
+ return (cppu::OWeakObject*) new RtfExportFilter( rSMgr );
+}
++#if 0
++#ifdef __cplusplus
++extern "C"
++{
++#endif
++
++SAL_DLLPUBLIC_EXPORT void SAL_CALL component_getImplementationEnvironment( const sal_Char ** ppEnvTypeName, uno_Environment ** /* ppEnv */ )
++{
++ *ppEnvTypeName = CPPU_CURRENT_LANGUAGE_BINDING_NAME;
++}
++
++SAL_DLLPUBLIC_EXPORT sal_Bool SAL_CALL component_writeInfo( void* /* pServiceManager */, void* pRegistryKey )
++{
++ sal_Bool bRet = sal_False;
++
++ if( pRegistryKey )
++ {
++ try
++ {
++ uno::Reference< registry::XRegistryKey > xNewKey1(
++ static_cast< registry::XRegistryKey* >( pRegistryKey )->createKey(
++ OUString::createFromAscii( IMPL_NAME_RTFEXPORT "/UNO/SERVICES/" ) ) );
++ xNewKey1->createKey( RtfExport_getSupportedServiceNames().getConstArray()[0] );
++
++ bRet = sal_True;
++ }
++ catch( registry::InvalidRegistryException& )
++ {
++ OSL_ENSURE( sal_False, "### InvalidRegistryException (rtfexport)!" );
++ }
++
++// try
++// {
++// uno::Reference< registry::XRegistryKey > xNewKey1(
++// static_cast< registry::XRegistryKey* >( pRegistryKey )->createKey(
++// OUString::createFromAscii( IMPL_NAME_RTFIMPORT "/UNO/SERVICES/" ) ) );
++// xNewKey1->createKey( RtfExport_getSupportedServiceNames().getConstArray()[0] );
++
++// bRet = sal_True;
++// }
++// catch( registry::InvalidRegistryException& )
++// {
++// OSL_ENSURE( sal_False, "### InvalidRegistryException (rtfimport)!" );
++// }
++ }
++
++ return bRet;
++}
++
++// ------------------------
++// - component_getFactory -
++// ------------------------
++
++SAL_DLLPUBLIC_EXPORT void* SAL_CALL component_getFactory( const sal_Char* pImplName, void* pServiceManager, void* /* pRegistryKey */ )
++{
++ OSL_TRACE("%s, pImplName is '%s'", OSL_THIS_FUNC, pImplName);
++ uno::Reference< lang::XSingleServiceFactory > xFactory;
++ void* pRet = 0;
++
++ if ( rtl_str_compare( pImplName, IMPL_NAME_RTFEXPORT ) == 0 ) {
++ const OUString aServiceName( OUString::createFromAscii( IMPL_NAME_RTFEXPORT ) );
++
++ xFactory = uno::Reference< lang::XSingleServiceFactory >( ::cppu::createSingleFactory(
++ reinterpret_cast< lang::XMultiServiceFactory* >( pServiceManager ),
++ RtfExport_getImplementationName(),
++ RtfExport_createInstance,
++ RtfExport_getSupportedServiceNames() ) );
++ }
++// else if ( rtl_str_compare( pImplName, IMPL_NAME_RTFIMPORT ) == 0 ) {
++// const OUString aServiceName( OUString::createFromAscii( IMPL_NAME_RTFIMPORT ) );
++
++// xFactory = uno::Reference< lang::XSingleServiceFactory >( ::cppu::createSingleFactory(
++// reinterpret_cast< lang::XMultiServiceFactory* >( pServiceManager ),
++// RtfImport_getImplementationName(),
++// RtfImport_createInstance,
++// RtfImport_getSupportedServiceNames() ) );
++// }
++
++ if ( xFactory.is() )
++ {
++ xFactory->acquire();
++ pRet = xFactory.get();
++ }
++
++ return pRet;
++}
++
++#ifdef __cplusplus
++}
++#endif
++#endif
+
+/* vi:set shiftwidth=4 expandtab: */
-unchanged:
+diff -r 004715ace8e7 -r b935ac15ff37 sw/source/filter/ww8/rtfexportfilter.hxx
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
-+++ sw/source/filter/ww8/rtfexportfilter.hxx Thu Jul 29 22:01:25 2010 +0200
++++ sw/source/filter/ww8/rtfexportfilter.hxx Sat Sep 04 01:00:40 2010 +0200
@@ -0,0 +1,85 @@
+/*************************************************************************
+ *
@@ -5926,9 +6370,9 @@ unchanged:
+
+#endif // _RTFEXPORTFILTER_HXX_
+/* vi:set shiftwidth=4 expandtab: */
-unchanged:
+diff -r 004715ace8e7 -r b935ac15ff37 sw/source/filter/ww8/rtfimportfilter.cxx
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
-+++ sw/source/filter/ww8/rtfimportfilter.cxx Thu Jul 29 22:01:25 2010 +0200
++++ sw/source/filter/ww8/rtfimportfilter.cxx Sat Sep 04 01:00:40 2010 +0200
@@ -0,0 +1,135 @@
+/*************************************************************************
+ *
@@ -6065,9 +6509,9 @@ unchanged:
+}
+
+/* vi:set shiftwidth=4 expandtab: */
-unchanged:
+diff -r 004715ace8e7 -r b935ac15ff37 sw/source/filter/ww8/rtfimportfilter.hxx
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
-+++ sw/source/filter/ww8/rtfimportfilter.hxx Thu Jul 29 22:01:25 2010 +0200
++++ sw/source/filter/ww8/rtfimportfilter.hxx Sat Sep 04 01:00:40 2010 +0200
@@ -0,0 +1,75 @@
+/*************************************************************************
+ *
@@ -6144,9 +6588,9 @@ unchanged:
+
+#endif // _RTFIMPORTFILTER_HXX_
+/* vi:set shiftwidth=4 expandtab: */
-unchanged:
---- sw/source/filter/ww8/rtfsdrexport.cxx Thu Jul 29 22:01:25 2010 +0200
-+++ sw/source/filter/ww8/rtfsdrexport.cxx Fri Jul 30 00:54:41 2010 +0200
+diff -r 004715ace8e7 -r b935ac15ff37 sw/source/filter/ww8/rtfsdrexport.cxx
+--- /dev/null Thu Jan 01 00:00:00 1970 +0000
++++ sw/source/filter/ww8/rtfsdrexport.cxx Sat Sep 04 01:00:40 2010 +0200
@@ -0,0 +1,578 @@
+/*************************************************************************
+ *
@@ -6726,9 +7170,9 @@ unchanged:
+}
+
+/* vi:set shiftwidth=4 expandtab: */
-unchanged:
---- sw/source/filter/ww8/rtfsdrexport.hxx Thu Jul 29 22:01:25 2010 +0200
-+++ sw/source/filter/ww8/rtfsdrexport.hxx Fri Jul 30 00:54:41 2010 +0200
+diff -r 004715ace8e7 -r b935ac15ff37 sw/source/filter/ww8/rtfsdrexport.hxx
+--- /dev/null Thu Jan 01 00:00:00 1970 +0000
++++ sw/source/filter/ww8/rtfsdrexport.hxx Sat Sep 04 01:00:40 2010 +0200
@@ -0,0 +1,112 @@
+/*************************************************************************
+ *
@@ -6842,9 +7286,9 @@ unchanged:
+
+#endif // _RTFSdrEXPORT_HXX_
+/* vi:set shiftwidth=4 expandtab: */
-unchanged:
---- sw/source/filter/ww8/wrtw8esh.cxx Thu Jul 29 20:08:54 2010 +0200
-+++ sw/source/filter/ww8/wrtw8esh.cxx Thu Jul 29 22:01:25 2010 +0200
+diff -r 004715ace8e7 -r b935ac15ff37 sw/source/filter/ww8/wrtw8esh.cxx
+--- sw/source/filter/ww8/wrtw8esh.cxx Mon Jul 19 17:09:02 2010 +0200
++++ sw/source/filter/ww8/wrtw8esh.cxx Sat Sep 04 01:00:40 2010 +0200
@@ -811,49 +811,7 @@
OutputField(0, ww::eSHAPE, aEmptyStr, WRITEFIELD_CLOSE);
}
@@ -6995,9 +7439,9 @@ unchanged:
USHORT nPara = rEditObj.GetParagraphCount();
BYTE bNul = 0;
-unchanged:
---- sw/source/filter/ww8/wrtw8nds.cxx Thu Jul 29 20:08:54 2010 +0200
-+++ sw/source/filter/ww8/wrtw8nds.cxx Thu Jul 29 22:01:25 2010 +0200
+diff -r 004715ace8e7 -r b935ac15ff37 sw/source/filter/ww8/wrtw8nds.cxx
+--- sw/source/filter/ww8/wrtw8nds.cxx Mon Jul 19 17:09:02 2010 +0200
++++ sw/source/filter/ww8/wrtw8nds.cxx Sat Sep 04 01:00:40 2010 +0200
@@ -1646,14 +1646,127 @@
m_rWW8Export.pO->Remove( 0, m_rWW8Export.pO->Count() );
}
@@ -7130,9 +7574,9 @@ unchanged:
}
void MSWordExportBase::OutputTextNode( const SwTxtNode& rNode )
-unchanged:
---- sw/source/filter/ww8/wrtw8num.cxx Thu Jul 29 20:08:54 2010 +0200
-+++ sw/source/filter/ww8/wrtw8num.cxx Thu Jul 29 22:01:25 2010 +0200
+diff -r 004715ace8e7 -r b935ac15ff37 sw/source/filter/ww8/wrtw8num.cxx
+--- sw/source/filter/ww8/wrtw8num.cxx Mon Jul 19 17:09:02 2010 +0200
++++ sw/source/filter/ww8/wrtw8num.cxx Sat Sep 04 01:00:40 2010 +0200
@@ -721,6 +721,9 @@
StarSymbolToMSMultiFont *pConvert = 0;
FontFamily eFamily = FAMILY_DECORATIVE;
@@ -7143,9 +7587,9 @@ unchanged:
if (!pConvert)
{
pConvert = CreateStarSymbolToMSMultiFont();
-unchanged:
---- sw/source/filter/ww8/wrtw8sty.cxx Thu Jul 29 20:08:54 2010 +0200
-+++ sw/source/filter/ww8/wrtw8sty.cxx Thu Jul 29 22:01:25 2010 +0200
+diff -r 004715ace8e7 -r b935ac15ff37 sw/source/filter/ww8/wrtw8sty.cxx
+--- sw/source/filter/ww8/wrtw8sty.cxx Mon Jul 19 17:09:02 2010 +0200
++++ sw/source/filter/ww8/wrtw8sty.cxx Sat Sep 04 01:00:40 2010 +0200
@@ -79,6 +79,7 @@
#include "ww8par.hxx"
#include "ww8attributeoutput.hxx"
@@ -7210,9 +7654,9 @@ unchanged:
/* */
WW8_WrPlc0::WW8_WrPlc0( ULONG nOffset )
-unchanged:
---- sw/source/filter/ww8/wrtww8.cxx Thu Jul 29 20:08:54 2010 +0200
-+++ sw/source/filter/ww8/wrtww8.cxx Thu Jul 29 22:01:25 2010 +0200
+diff -r 004715ace8e7 -r b935ac15ff37 sw/source/filter/ww8/wrtww8.cxx
+--- sw/source/filter/ww8/wrtww8.cxx Mon Jul 19 17:09:02 2010 +0200
++++ sw/source/filter/ww8/wrtww8.cxx Sat Sep 04 01:00:40 2010 +0200
@@ -3371,7 +3371,7 @@
mpTableInfo(new ww8::WW8TableInfo()), nUniqueList(0),
mnHdFtIndex(0), pAktPageDesc(0), pPapPlc(0), pChpPlc(0), pChpIter(0),
@@ -7222,9 +7666,9 @@ unchanged:
pDoc( pDocument ),
pCurPam( pCurrentPam ),
pOrigPam( pOriginalPam )
-unchanged:
---- sw/source/filter/ww8/wrtww8.hxx Thu Jul 29 22:01:25 2010 +0200
-+++ sw/source/filter/ww8/wrtww8.hxx Fri Jul 30 00:54:41 2010 +0200
+diff -r 004715ace8e7 -r b935ac15ff37 sw/source/filter/ww8/wrtww8.hxx
+--- sw/source/filter/ww8/wrtww8.hxx Mon Jul 19 17:09:02 2010 +0200
++++ sw/source/filter/ww8/wrtww8.hxx Sat Sep 04 01:00:40 2010 +0200
@@ -35,6 +35,7 @@
#define _SVSTDARR_ULONGS
#include <svl/svstdarr.hxx>
@@ -7355,9 +7799,9 @@ unchanged:
/// Class to collect and output the styles table.
class MSWordStyles
{
-unchanged:
---- sw/source/filter/ww8/ww8atr.cxx Thu Jul 29 20:08:54 2010 +0200
-+++ sw/source/filter/ww8/ww8atr.cxx Thu Jul 29 22:01:25 2010 +0200
+diff -r 004715ace8e7 -r b935ac15ff37 sw/source/filter/ww8/ww8atr.cxx
+--- sw/source/filter/ww8/ww8atr.cxx Mon Jul 19 17:09:02 2010 +0200
++++ sw/source/filter/ww8/ww8atr.cxx Sat Sep 04 01:00:40 2010 +0200
@@ -3340,7 +3340,7 @@
m_rWW8Export.pO->Insert( (BYTE)0x02, m_rWW8Export.pO->Count() );
@@ -7367,9 +7811,9 @@ unchanged:
/*
As per usual we have problems. We can have seperate left and right brackets
-unchanged:
+diff -r 004715ace8e7 -r b935ac15ff37 writerfilter/source/filter/RtfFilter.cxx
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
-+++ writerfilter/source/filter/RtfFilter.cxx Fri Jul 30 01:33:36 2010 +0200
++++ writerfilter/source/filter/RtfFilter.cxx Sat Sep 04 01:00:40 2010 +0200
@@ -0,0 +1,146 @@
+/*************************************************************************
+ *
@@ -7517,9 +7961,9 @@ unchanged:
+}
+
+/* vi:set shiftwidth=4 expandtab: */
-unchanged:
+diff -r 004715ace8e7 -r b935ac15ff37 writerfilter/source/filter/RtfFilter.hxx
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
-+++ writerfilter/source/filter/RtfFilter.hxx Fri Jul 30 01:33:36 2010 +0200
++++ writerfilter/source/filter/RtfFilter.hxx Sat Sep 04 01:00:40 2010 +0200
@@ -0,0 +1,102 @@
+/*************************************************************************
+ *
@@ -7623,9 +8067,9 @@ unchanged:
+ throw( ::com::sun::star::uno::Exception );
+#endif
+
-unchanged:
---- writerfilter/source/filter/WriterFilter.cxx Fri Jul 30 00:54:41 2010 +0200
-+++ writerfilter/source/filter/WriterFilter.cxx Fri Jul 30 01:33:36 2010 +0200
+diff -r 004715ace8e7 -r b935ac15ff37 writerfilter/source/filter/WriterFilter.cxx
+--- writerfilter/source/filter/WriterFilter.cxx Mon Jul 19 17:09:02 2010 +0200
++++ writerfilter/source/filter/WriterFilter.cxx Sat Sep 04 01:00:40 2010 +0200
@@ -30,6 +30,7 @@
#endif
#include <WriterFilter.hxx>
@@ -7642,9 +8086,9 @@ unchanged:
{ 0, 0, 0, 0, 0, 0 } // terminate with NULL
};
-unchanged:
---- writerfilter/source/filter/makefile.mk Fri Jul 30 00:54:41 2010 +0200
-+++ writerfilter/source/filter/makefile.mk Fri Jul 30 01:33:36 2010 +0200
+diff -r 004715ace8e7 -r b935ac15ff37 writerfilter/source/filter/makefile.mk
+--- writerfilter/source/filter/makefile.mk Mon Jul 19 17:09:02 2010 +0200
++++ writerfilter/source/filter/makefile.mk Sat Sep 04 01:00:40 2010 +0200
@@ -40,7 +40,8 @@
SLOFILES= $(SLO)$/WriterFilter.obj \
@@ -7655,295 +8099,3 @@ unchanged:
# --- Targets ----------------------------------
-unchanged:
---- filter/source/config/fragments/filters/Rich_Text_Format.xcu Fri Jul 30 01:33:36 2010 +0200
-+++ filter/source/config/fragments/filters/Rich_Text_Format.xcu Fri Jul 30 01:41:03 2010 +0200
-@@ -1,7 +1,7 @@
- <node oor:name="Rich Text Format" oor:op="replace">
-- <prop oor:name="Flags"><value>IMPORT EXPORT ALIEN PREFERRED</value></prop>
-+ <prop oor:name="Flags"><value>IMPORT EXPORT ALIEN 3RDPARTYFILTER PREFERRED</value></prop>
- <prop oor:name="UIComponent"/>
-- <prop oor:name="FilterService"/>
-+ <prop oor:name="FilterService"><value>com.sun.star.comp.Writer.RtfFilter</value></prop>
- <prop oor:name="UserData"><value>RTF</value></prop>
- <prop oor:name="UIName">
- <value xml:lang="x-default">Rich Text Format</value>
-unchanged:
---- sw/source/filter/rtf/makefile.mk Fri Jul 30 19:59:04 2010 +0200
-+++ sw/source/filter/rtf/makefile.mk Fri Jul 30 21:59:04 2010 +0200
-@@ -46,18 +46,15 @@
- EXCEPTIONSFILES= \
- $(SLO)$/rtffly.obj \
- $(SLO)$/rtfnum.obj \
-- $(SLO)$/swparrtf.obj \
-- $(SLO)$/wrtrtf.obj
-+ $(SLO)$/swparrtf.obj
-
-
- SLOFILES = \
-- $(SLO)$/rtfatr.obj \
- $(SLO)$/rtffld.obj \
- $(SLO)$/rtffly.obj \
- $(SLO)$/rtfnum.obj \
- $(SLO)$/rtftbl.obj \
-- $(SLO)$/swparrtf.obj \
-- $(SLO)$/wrtrtf.obj
-+ $(SLO)$/swparrtf.obj
-
- # --- Tagets -------------------------------------------------------
-
-unchanged:
---- sw/source/filter/rtf/rtfnum.cxx Fri Jul 30 19:59:04 2010 +0200
-+++ sw/source/filter/rtf/rtfnum.cxx Fri Jul 30 21:59:04 2010 +0200
-@@ -47,7 +47,6 @@
- #include <fltini.hxx>
- #include <swtypes.hxx>
- #include <swparrtf.hxx>
--#include <wrtrtf.hxx>
- #include <ndtxt.hxx>
- #include <doc.hxx>
- #include <docary.hxx>
-@@ -1130,6 +1130,7 @@ BOOL lcl_IsExportNumRule( const SwNumRule& rRule, BYTE* pEnd = 0 )
- return nLvl != nEnd;
- }
-
-+#if 0
- void SwRTFWriter::OutRTFListTab()
- {
- ByteString sOverrideList;
-@@ -1458,3 +1459,4 @@ BOOL SwRTFWriter::OutListNum( const SwTxtNode& rNd )
- }
- return bRet;
- }
-+#endif
-diff -u sw/source/filter/ww8/README-rtf.txt sw/source/filter/ww8/README-rtf.txt
---- sw/source/filter/ww8/README-rtf.txt Wed Aug 04 12:49:33 2010 +0200
-+++ sw/source/filter/ww8/README-rtf.txt Wed Aug 04 12:53:57 2010 +0200
-@@ -0,0 +1,227 @@
-+
-+---------------------------------------------------------------------
-+
-+Summary of new features in RtfExport
-+
-+---------------------------------------------------------------------
-+
-+Miklos Vajna
-+
-+<vmiklos at frugalware.org>
-+---------------------------------------------------------------------
-+
-+Table of Contents
-+
-+1. Introduction
-+
-+ 1.1. Terminology
-+ 1.2. General
-+
-+2. List if fixed bugs
-+3. List of new features
-+
-+ 3.1. Nested tables
-+ 3.2. Character properties
-+ 3.3. Sections
-+ 3.4. Graphics
-+ 3.5. Bookmarks
-+ 3.6. Fields
-+ 3.7. Drawing
-+ 3.8. Form fields
-+ 3.9. OLE objects
-+
-+4. Changes in the source code outside RTF
-+
-+
-+---------------------------------------------------------------------
-+
-+1. Introduction
-+
-+---------------------------------------------------------------------
-+
-+The biggest difference is that the new exporter is an UNO component,
-+and it?s based on the MSWord base classes, the vision here is that
-+this way much less code can achieve the same set of features,
-+reducing the amount of duplicated code.
-+
-+
-+1.1. Terminology
-+
-+--------------
-+
-+ * The "MSO OK, OOo KO" and similar abbreviations describe if the
-+ given new feature is supported by the OOo RTF importer or it can
-+ be tested using Microsoft Office.
-+ * RtfExport refers to the new UNO-based exporter, RtfWriter refers
-+ to the old built-in one.
-+
-+
-+1.2. General
-+
-+--------------
-+
-+RtfWriter sometimes created documents where the first { is closed in
-+the middle of the document. MSO ignores this problem, but OOo stops
-+parsing the rest of the document if this happens, in other words
-+everything after such a bug is ignored. This can be reproduced by for
-+example parprops.odt, but it?s triggered in several other cases as
-+well. RtfExport has no automatic prevention for this, either - but
-+during development I primarily test the output with OOo, so hopefully
-+the bug will pop up less frequently.
-+
-+
-+---------------------------------------------------------------------
-+
-+2. List if fixed bugs
-+
-+---------------------------------------------------------------------
-+
-+ * http://www.openoffice.org/issues/show_bug.cgi?id=51469 postit
-+ fields
-+ * http://www.openoffice.org/issues/show_bug.cgi?id=66619 page
-+ margins
-+ * http://www.openoffice.org/issues/show_bug.cgi?id=69856 page
-+ numbers
-+ * http://www.openoffice.org/issues/show_bug.cgi?id=81569 { and } in
-+ document title
-+ * http://www.openoffice.org/issues/show_bug.cgi?id=84703 redlines
-+ * http://www.openoffice.org/issues/show_bug.cgi?id=91166 russian
-+ chars
-+ * http://www.openoffice.org/issues/show_bug.cgi?id=92673 bookmarks
-+ across tables
-+ * http://www.openoffice.org/issues/show_bug.cgi?id=100507 ole
-+ object export
-+ * http://www.openoffice.org/issues/show_bug.cgi?id=103993 same as #
-+ 81569 just for doc comments
-+ * http://www.openoffice.org/issues/show_bug.cgi?id=106677
-+ listoverride index starts at zero
-+ * http://www.openoffice.org/issues/show_bug.cgi?id=38344 enhanced
-+ character space
-+
-+
-+---------------------------------------------------------------------
-+
-+3. List of new features
-+
-+---------------------------------------------------------------------
-+
-+
-+3.1. Nested tables
-+
-+--------------
-+
-+This was new in Word2000 and it?s now supported by RtfExport (MSO OK,
-+OOo KO)
-+
-+
-+3.2. Character properties
-+
-+--------------
-+
-+The followings are now supported:
-+
-+ * blinking (MSO OK, OOo KO)
-+ * expanded spacing (MSO OK, OOo OK)
-+ * pair kerning (MSO OK, OOo OK)
-+
-+
-+3.3. Sections
-+
-+--------------
-+
-+RtfExport writes:
-+
-+ * column breaks (MSO OK, OOo OK)
-+ * special breaks (when the next page should be an odd or an even
-+ page; MSO OK, OOo KO)
-+ * the write-protected property of sections is experted properly
-+ (MSO OK, OOo KO)
-+ * better page numbers (inherited type from page styles, restarts;
-+ MSO OK, OOo KO)
-+ * line numbering (MSO OK, OOo KO)
-+
-+
-+3.4. Graphics
-+
-+--------------
-+
-+PNG graphics are exported in WMF format as well, so that not only MSO
-+and OOo can display graphics from the output document, but Wordpad as
-+well.
-+
-+
-+3.5. Bookmarks
-+
-+--------------
-+
-+Implicit bookmarks like reference to a footnote did not work in OOo
-+(one got an Error: Reference source not found message when opening
-+the result), this now works as expected. (MSO OK - the importer
-+previously autocorrected this as well, OO OK)
-+
-+
-+3.6. Fields
-+
-+--------------
-+
-+ * Table of contents is now written as a field, so it?s properly
-+ read-only (MSO OK, OOo KO)
-+ * Postit comments are now exported. (MSO OK, OOo KO)
-+
-+
-+3.7. Drawing
-+
-+--------------
-+
-+Drawing objects for Word 97 through Word 2007 (shapes) are now
-+implemented:
-+
-+ * basic shapes (rectangle, ellipse, etc.)
-+ * lines, including free-form ones
-+ * texts, including vertical ones and their (paragraph and
-+ character) formatting
-+
-+(MSO OK, OOo KO)
-+
-+
-+3.8. Form fields
-+
-+--------------
-+
-+All types supported by the RTF format are exported, namely:
-+
-+ * text boxes
-+ * check boxes
-+ * list boxes
-+
-+(MSO OK, OOo KO)
-+
-+
-+3.9. OLE objects
-+
-+--------------
-+
-+Their result is exported as a picture - RtfWriter did not export
-+anything. (MSO OK, OOo OK)
-+
-+For math, the native data is written as well, so you can edit the
-+object, too. (MSO OK, OOo KO)
-+
-+
-+---------------------------------------------------------------------
-+
-+4. Changes in the source code outside RTF
-+
-+---------------------------------------------------------------------
-+
-+These are refactorings I needed for RTF. To my best knowledge they do
-+not change the output of other filters from a user?s point of view.
-+
-+ * The code that splits runs according to bookmarks is moved from
-+ DocxExport to MSWordExportBase
-+ * WW8_SdrAttrIter has been refactored to MSWord_SdrAttrIter
-+ * MSWordExportBase::SubstituteBullet can avoid replacing bullets
-+ * wwFontHelper::InitFontTable can really load all fonts
-+ * An obvious typo in WW8AttributeOutput::CharTwoLines has been
-+ fixed
-+
diff --git a/patches/dev300/docx-fixes02.diff b/patches/dev300/docx-fixes02.diff
index c078a63..6af40ff 100644
--- a/patches/dev300/docx-fixes02.diff
+++ b/patches/dev300/docx-fixes02.diff
@@ -775,7 +775,7 @@ index 81cba2f..6265c14 100644
@@ -998,7 +998,7 @@ void RtfAttributeOutput::DefaultStyle( USHORT /*nStyle*/ )
}
- void RtfAttributeOutput::StartStyle( const String& rName, bool /*bPapFmt*/,
+ void RtfAttributeOutput::StartStyle( const String& rName, bool bPapFmt,
- USHORT nBase, USHORT nNext, USHORT /*nWwId*/, USHORT nId )
+ USHORT nBase, USHORT nNext, USHORT /*nWwId*/, USHORT nId, bool /*bAutoUpdate*/ )
{
More information about the ooo-build-commit
mailing list