[ooo-build-commit] 2 commits - patches/dev300

Cédric Bosdonnat cbosdo at kemper.freedesktop.org
Fri Oct 9 07:54:57 PDT 2009


 patches/dev300/apply                      |    7 
 patches/dev300/field-patch.diff           |  762 +++++++++++++-----------------
 patches/dev300/oox-fix-abs-relations.diff |   11 
 3 files changed, 350 insertions(+), 430 deletions(-)

New commits:
commit eccf3b902c4223fc7d35b27ea62b9238450707b4
Author: Cédric Bosdonnat <cedricbosdo at openoffice.org>
Date:   Fri Oct 9 16:49:05 2009 +0200

    Field patch updated to m60
    
    * patches/dev300/apply:
    * patches/dev300/field-patch.diff:

diff --git a/patches/dev300/apply b/patches/dev300/apply
index b9da83f..a138d09 100644
--- a/patches/dev300/apply
+++ b/patches/dev300/apply
@@ -2790,8 +2790,8 @@ fix-ppt-linespacing-import-export.diff, n#355302, rodo
 sw-allow-negative-spacing.diff, n#364534, freuter
 
 # FIXME: These patches no longer apply against dev300-m60.
-#field-patch.diff, n#248354, freuter
-#field-patch-uno-fix.diff, cbosdo
+field-patch.diff, n#248354, freuter
+field-patch-uno-fix.diff, cbosdo
 
 sw-import-html-controls.diff, n#485609, freuter
 svx-hacky-htmlselect-control-import.diff, n#523191, noelpwer
diff --git a/patches/dev300/field-patch.diff b/patches/dev300/field-patch.diff
index 742f1ad..c873915 100644
--- a/patches/dev300/field-patch.diff
+++ b/patches/dev300/field-patch.diff
@@ -1,7 +1,6 @@
-diff --git offapi/com/sun/star/text/XFormField.idl offapi/com/sun/star/text/XFormField.idl
-index b8d6023..772d7eb 100644
---- offapi/com/sun/star/text/XFormField.idl
-+++ offapi/com/sun/star/text/XFormField.idl
+diff -urN '--exclude=unxlngi6.pro' '--exclude=*.orig' offapi/com/sun/star/text/XFormField.idl offapi/com/sun/star/text/XFormField.idl
+--- offapi/com/sun/star/text/XFormField.idl	2009-08-13 16:13:57.000000000 +0200
++++ offapi/com/sun/star/text/XFormField.idl	2009-10-09 10:53:45.000000000 +0200
 @@ -11,14 +11,13 @@
   */
   interface XFormField: com::sun::star::uno::XInterface
@@ -24,11 +23,10 @@ index b8d6023..772d7eb 100644
   };
   
   }; }; }; }; 
-diff --git svtools/source/config/fltrcfg.cxx svtools/source/config/fltrcfg.cxx
-index 09b7a95..529e72b 100644
---- svtools/source/config/fltrcfg.cxx
-+++ svtools/source/config/fltrcfg.cxx
-@@ -312,7 +312,7 @@ const Sequence<OUString>& SvtFilterOptions::GetPropertyNames()
+diff -urN '--exclude=unxlngi6.pro' '--exclude=*.orig' svtools/source/config/fltrcfg.cxx svtools/source/config/fltrcfg.cxx
+--- svtools/source/config/fltrcfg.cxx	2009-08-04 15:49:29.000000000 +0200
++++ svtools/source/config/fltrcfg.cxx	2009-10-09 10:53:45.000000000 +0200
+@@ -312,7 +312,7 @@
              "Export/EnablePowerPointPreview",	//	8
              "Export/EnableExcelPreview",		//	9
              "Export/EnableWordPreview",			// 10
@@ -37,7 +35,7 @@ index 09b7a95..529e72b 100644
          };
          OUString* pNames = aNames.getArray();
          for(int i = 0; i < nCount; i++)
-@@ -525,8 +525,7 @@ void SvtFilterOptions::SetWriter2WinWord( BOOL bFlag )
+@@ -525,8 +525,7 @@
  
  BOOL SvtFilterOptions::IsUseEnhancedFields() const
  {
@@ -47,11 +45,10 @@ index 09b7a95..529e72b 100644
  }
  
  void SvtFilterOptions::SetUseEnhancedFields( BOOL bFlag )
-diff --git sw/inc/IDocumentMarkAccess.hxx sw/inc/IDocumentMarkAccess.hxx
-index e31eec0..e5a0112 100644
---- sw/inc/IDocumentMarkAccess.hxx
-+++ sw/inc/IDocumentMarkAccess.hxx
-@@ -86,6 +86,13 @@ class IDocumentMarkAccess
+diff -urN '--exclude=unxlngi6.pro' '--exclude=*.orig' sw/inc/IDocumentMarkAccess.hxx sw/inc/IDocumentMarkAccess.hxx
+--- sw/inc/IDocumentMarkAccess.hxx	2009-08-13 16:14:38.000000000 +0200
++++ sw/inc/IDocumentMarkAccess.hxx	2009-10-09 10:53:45.000000000 +0200
+@@ -86,6 +86,13 @@
              const ::rtl::OUString& rProposedName,
              MarkType eMark) =0;
  
@@ -65,11 +62,10 @@ index e31eec0..e5a0112 100644
          /** Returns a mark in the document for a paragraph.
              If there is none, a mark will be created.
  
-diff --git sw/inc/IMark.hxx sw/inc/IMark.hxx
-index 8507b1d..5143843 100644
---- sw/inc/IMark.hxx
-+++ sw/inc/IMark.hxx
-@@ -51,12 +51,12 @@ namespace sw { namespace mark
+diff -urN '--exclude=unxlngi6.pro' '--exclude=*.orig' sw/inc/IMark.hxx sw/inc/IMark.hxx
+--- sw/inc/IMark.hxx	2009-08-13 16:14:38.000000000 +0200
++++ sw/inc/IMark.hxx	2009-10-09 10:53:45.000000000 +0200
+@@ -51,12 +51,12 @@
      {
          public:
              //getters
@@ -86,7 +82,7 @@ index 8507b1d..5143843 100644
              virtual const ::rtl::OUString& GetName() const =0;
              virtual bool IsExpanded() const =0;
              virtual bool IsCoveringPosition(const SwPosition& rPos) const =0;
-@@ -79,6 +79,9 @@ namespace sw { namespace mark
+@@ -79,6 +79,9 @@
                  { return GetMarkEnd() < rPos; }
              bool EndsAfter(const SwPosition& rPos) const
                  { return GetMarkEnd() > rPos; }
@@ -96,7 +92,7 @@ index 8507b1d..5143843 100644
      };
  
      class IBookmark
-@@ -95,13 +98,25 @@ namespace sw { namespace mark
+@@ -95,13 +98,25 @@
          : virtual public IMark
      {
          public:
@@ -122,32 +118,9 @@ index 8507b1d..5143843 100644
      };
  
      class ICheckboxFieldmark
-diff --git sw/inc/bookmrk.hxx sw/inc/bookmrk.hxx
-index 991b401..fc082e5 100644
---- sw/inc/bookmrk.hxx
-+++ sw/inc/bookmrk.hxx
-@@ -62,7 +62,7 @@ protected:
-     String		aName;
-     String		aShortName;
-     KeyCode		aCode;
--    IDocumentBookmarkAccess::BookmarkType eMarkType;
-+    IDocumentMarkAccess::BookmarkType eMarkType;
- 
-     SwBookmark( const SwPosition& aPos,
-                 const KeyCode& rCode,
-@@ -170,7 +170,7 @@ public:
-     SwFieldBookmark(const SwPosition& aPos,
-            const KeyCode& rCode,
-            const String& rName, const String& rShortName,
--           IDocumentBookmarkAccess::BookmarkType eMark);
-+           IDocumentMarkAccess::BookmarkType eMark);
- 
-     void SetFieldType(int fftype);
-     int GetFieldType();
-diff --git sw/inc/crsrsh.hxx sw/inc/crsrsh.hxx
-index 692184b..186f94f 100644
---- sw/inc/crsrsh.hxx
-+++ sw/inc/crsrsh.hxx
+diff -urN '--exclude=unxlngi6.pro' '--exclude=*.orig' sw/inc/crsrsh.hxx sw/inc/crsrsh.hxx
+--- sw/inc/crsrsh.hxx	2009-09-09 11:44:12.000000000 +0200
++++ sw/inc/crsrsh.hxx	2009-10-09 10:53:45.000000000 +0200
 @@ -45,6 +45,7 @@
  #include <node.hxx>
  #include <tblsel.hxx>
@@ -156,7 +129,7 @@ index 692184b..186f94f 100644
  
  
  // einige Forward Deklarationen
-@@ -110,7 +111,8 @@ struct SwContentAtPos
+@@ -110,7 +111,8 @@
          SW_REFMARK          = 0x0100,
          SW_NUMLABEL         = 0x0200, // #i23726#
          SW_CONTENT_CHECK    = 0x0400, // --> FME 2005-05-13 #i43742# <--
@@ -166,7 +139,7 @@ index 692184b..186f94f 100644
  #ifndef PRODUCT
          ,SW_CURR_ATTRS 		= 0x4000		// nur zum Debuggen
          ,SW_TABLEBOXVALUE	= 0x8000		// nur zum Debuggen
-@@ -122,6 +124,7 @@ struct SwContentAtPos
+@@ -122,6 +124,7 @@
          const SfxPoolItem* pAttr;
          const SwRedline* pRedl;
          SwCntntNode * pNode; // #i23726#
@@ -174,11 +147,9 @@ index 692184b..186f94f 100644
      } aFnd;
  
      int nDist; // #i23726#
-diff --git sw/inc/ecmaflds.hxx sw/inc/ecmaflds.hxx
-new file mode 100644
-index 0000000..23276b1
---- /dev/null
-+++ sw/inc/ecmaflds.hxx
+diff -urN '--exclude=unxlngi6.pro' '--exclude=*.orig' sw/inc/ecmaflds.hxx sw/inc/ecmaflds.hxx
+--- sw/inc/ecmaflds.hxx	1970-01-01 01:00:00.000000000 +0100
++++ sw/inc/ecmaflds.hxx	2009-10-09 10:53:45.000000000 +0200
 @@ -0,0 +1,68 @@
 +/*************************************************************************
 + *
@@ -248,10 +219,9 @@ index 0000000..23276b1
 +#define ECMA_PAGEREF "ecma.office-open-xml.field.PAGEREF"
 +
 +#endif /*  _ECMAFLDS_HXX */
-diff --git sw/inc/editsh.hxx sw/inc/editsh.hxx
-index 8109e6f..be3dbe7 100644
---- sw/inc/editsh.hxx
-+++ sw/inc/editsh.hxx
+diff -urN '--exclude=unxlngi6.pro' '--exclude=*.orig' sw/inc/editsh.hxx sw/inc/editsh.hxx
+--- sw/inc/editsh.hxx	2009-10-07 17:44:55.000000000 +0200
++++ sw/inc/editsh.hxx	2009-10-09 10:53:45.000000000 +0200
 @@ -44,6 +44,7 @@
  #include <com/sun/star/linguistic2/ProofreadingResult.hpp>
  #include <fldupde.hxx>
@@ -260,7 +230,7 @@ index 8109e6f..be3dbe7 100644
  
  #include <vector>
  #include <swundo.hxx>
-@@ -415,6 +416,9 @@ public:
+@@ -415,6 +416,9 @@
      const SwTOXType* 	GetTOXType(TOXTypes eTyp, USHORT nId) const;
      void			 	InsertTOXType(const SwTOXType& rTyp);
  
@@ -270,10 +240,9 @@ index 8109e6f..be3dbe7 100644
      //AutoMark file
      const String&	GetTOIAutoMarkURL() const;
      void			SetTOIAutoMarkURL(const String& rSet);
-diff --git sw/inc/hintids.hxx sw/inc/hintids.hxx
-index 1ab379d..180f3ee 100644
---- sw/inc/hintids.hxx
-+++ sw/inc/hintids.hxx
+diff -urN '--exclude=unxlngi6.pro' '--exclude=*.orig' sw/inc/hintids.hxx sw/inc/hintids.hxx
+--- sw/inc/hintids.hxx	2009-10-07 17:44:55.000000000 +0200
++++ sw/inc/hintids.hxx	2009-10-09 10:53:45.000000000 +0200
 @@ -44,12 +44,8 @@
  #define CH_TXT_ATR_FIELDEND ((sal_Unicode)0x05)
  #define CH_TXT_ATR_SUBST_FIELDSTART ("[")
@@ -288,11 +257,10 @@ index 1ab379d..180f3ee 100644
  /*
   * Hier kommen erst mal die enums fuer die Hints
   */
-diff --git sw/inc/pam.hxx sw/inc/pam.hxx
-index 1a1cb98..3042786 100644
---- sw/inc/pam.hxx
-+++ sw/inc/pam.hxx
-@@ -272,6 +272,7 @@ public:
+diff -urN '--exclude=unxlngi6.pro' '--exclude=*.orig' sw/inc/pam.hxx sw/inc/pam.hxx
+--- sw/inc/pam.hxx	2009-08-13 16:14:38.000000000 +0200
++++ sw/inc/pam.hxx	2009-10-09 10:53:45.000000000 +0200
+@@ -272,6 +272,7 @@
      DECL_FIXEDMEMPOOL_NEWDEL(SwPaM);
  
      String GetTxt() const;
@@ -300,26 +268,22 @@ index 1a1cb98..3042786 100644
  };
  
  
-diff --git sw/inc/unoobj.hxx sw/inc/unoobj.hxx
-index 43dbfff..e74aa50 100644
---- sw/inc/unoobj.hxx
-+++ sw/inc/unoobj.hxx
-@@ -650,6 +650,7 @@ class SwXFieldmark : public SwXFieldmark_BASE
+diff -urN '--exclude=unxlngi6.pro' '--exclude=*.orig' sw/inc/unoobj.hxx sw/inc/unoobj.hxx
+--- sw/inc/unoobj.hxx	2009-10-09 14:56:15.000000000 +0200
++++ sw/inc/unoobj.hxx	2009-10-09 15:15:42.000000000 +0200
+@@ -675,13 +675,13 @@
          SwXFieldmark(bool isReplacementObject, ::sw::mark::IMark* pBkm = 0, SwDoc* pDoc = 0);
  
          virtual void attachToRange(const ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange > & xTextRange) throw( ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException );
-+#if 0
-         virtual ::rtl::OUString SAL_CALL getDescription(void) throw( ::com::sun::star::uno::RuntimeException );
-         virtual ::sal_Int16 SAL_CALL getType(  ) throw (::com::sun::star::uno::RuntimeException);
-         virtual ::sal_Int16 SAL_CALL getRes(  ) throw (::com::sun::star::uno::RuntimeException);
-@@ -657,6 +658,14 @@ class SwXFieldmark : public SwXFieldmark_BASE
-         virtual void SAL_CALL setType( ::sal_Int16 fieldType ) throw (::com::sun::star::uno::RuntimeException);
-         virtual void SAL_CALL setRes( ::sal_Int16 res ) throw (::com::sun::star::uno::RuntimeException);
-         virtual void SAL_CALL setDescription( const ::rtl::OUString& description ) throw (::com::sun::star::uno::RuntimeException);
-+#endif
+-        virtual ::rtl::OUString SAL_CALL getDescription(void) throw( ::com::sun::star::uno::RuntimeException );
+-        virtual ::sal_Int16 SAL_CALL getType(  ) throw (::com::sun::star::uno::RuntimeException);
+-        virtual ::sal_Int16 SAL_CALL getRes(  ) throw (::com::sun::star::uno::RuntimeException);
 +        virtual ::rtl::OUString SAL_CALL getFieldType(void)  throw( ::com::sun::star::uno::RuntimeException );
 +        virtual void SAL_CALL setFieldType( const ::rtl::OUString& description ) throw (::com::sun::star::uno::RuntimeException);
-+
+ 
+-        virtual void SAL_CALL setType( ::sal_Int16 fieldType ) throw (::com::sun::star::uno::RuntimeException);
+-        virtual void SAL_CALL setRes( ::sal_Int16 res ) throw (::com::sun::star::uno::RuntimeException);
+-        virtual void SAL_CALL setDescription( const ::rtl::OUString& description ) throw (::com::sun::star::uno::RuntimeException);
 +        virtual ::sal_Int16 SAL_CALL getParamCount(  ) throw (::com::sun::star::uno::RuntimeException);
 +        virtual ::rtl::OUString SAL_CALL getParamName(::sal_Int16 i)  throw( ::com::sun::star::uno::RuntimeException );
 +        virtual ::rtl::OUString SAL_CALL getParamValue(::sal_Int16 i)  throw( ::com::sun::star::uno::RuntimeException );
@@ -327,11 +291,10 @@ index 43dbfff..e74aa50 100644
  };
  
  /*-----------------23.02.98 10:45-------------------
-diff --git sw/source/core/crsr/bookmrk.cxx sw/source/core/crsr/bookmrk.cxx
-index 5e9c7aa..5658e41 100644
---- sw/source/core/crsr/bookmrk.cxx
-+++ sw/source/core/crsr/bookmrk.cxx
-@@ -75,19 +75,23 @@ namespace
+diff -urN '--exclude=unxlngi6.pro' '--exclude=*.orig' sw/source/core/crsr/bookmrk.cxx sw/source/core/crsr/bookmrk.cxx
+--- sw/source/core/crsr/bookmrk.cxx	2009-10-07 17:44:56.000000000 +0200
++++ sw/source/core/crsr/bookmrk.cxx	2009-10-09 10:57:57.000000000 +0200
+@@ -77,20 +77,20 @@
          const sal_Unicode aStartMark,
          const sal_Unicode aEndMark)
      {
@@ -349,18 +312,15 @@ index 5e9c7aa..5658e41 100644
 +        SwPaM aEndPaM(rEnd);
          io_pDoc->StartUndo(UNDO_UI_REPLACE, NULL);
          if(ch_start != aStartMark)
-+        {
-             io_pDoc->Insert(aStartPaM, aStartMark);
+         {
+             io_pDoc->InsertString(aStartPaM, aStartMark);
+         }
 -        if(aEndMark && ch_end != aEndMark)
-+        }
-+        if(aEndMark && ( ch_end != aEndMark ) && ( rStart != rEnd ) )
-+        {
-             io_pDoc->Insert(aEndPaM, aEndMark);
-+        }
-         io_pDoc->EndUndo(UNDO_UI_REPLACE, NULL);
-     };
- }
-@@ -108,6 +112,11 @@ namespace sw { namespace mark
++        if ( aEndMark && ( ch_end != aEndMark ) && ( rStart != rEnd ) )
+         {
+             io_pDoc->InsertString(aEndPaM, aEndMark);
+         }
+@@ -114,6 +114,11 @@
          }
      }
  
@@ -372,7 +332,7 @@ index 5e9c7aa..5658e41 100644
      void MarkBase::SetMarkPos(const SwPosition& rNewPos)
      {
          ::boost::scoped_ptr<SwPosition>(new SwPosition(rNewPos)).swap(m_pPos1);
-@@ -120,6 +129,17 @@ namespace sw { namespace mark
+@@ -126,6 +131,17 @@
          //lcl_FixPosition(*m_pPos2);
      }
  
@@ -390,7 +350,7 @@ index 5e9c7aa..5658e41 100644
      MarkBase::~MarkBase()
      { }
  
-@@ -212,6 +232,96 @@ namespace sw { namespace mark
+@@ -267,6 +283,96 @@
          if(!IsExpanded())
              SetOtherMarkPos(GetMarkPos());
      }
@@ -487,7 +447,7 @@ index 5e9c7aa..5658e41 100644
  
      const ::rtl::OUString Fieldmark::our_sNamePrefix = ::rtl::OUString::createFromAscii("__Fieldmark__");
  
-@@ -230,7 +340,11 @@ namespace sw { namespace mark
+@@ -285,7 +391,11 @@
  
      void CheckboxFieldmark::InitDoc(SwDoc* const io_pDoc)
      {
@@ -500,11 +460,10 @@ index 5e9c7aa..5658e41 100644
      }
  
      void CheckboxFieldmark::SetChecked(bool checked)
-diff --git sw/source/core/crsr/crossrefbookmark.cxx sw/source/core/crsr/crossrefbookmark.cxx
-index 8ae112a..0a8929d 100644
---- sw/source/core/crsr/crossrefbookmark.cxx
-+++ sw/source/core/crsr/crossrefbookmark.cxx
-@@ -67,7 +67,7 @@ namespace sw { namespace mark
+diff -urN '--exclude=unxlngi6.pro' '--exclude=*.orig' sw/source/core/crsr/crossrefbookmark.cxx sw/source/core/crsr/crossrefbookmark.cxx
+--- sw/source/core/crsr/crossrefbookmark.cxx	2009-09-09 11:44:12.000000000 +0200
++++ sw/source/core/crsr/crossrefbookmark.cxx	2009-10-09 10:53:45.000000000 +0200
+@@ -67,7 +67,7 @@
          MarkBase::SetMarkPos(rNewPos);
      }
  
@@ -513,11 +472,10 @@ index 8ae112a..0a8929d 100644
      {
          OSL_PRECOND(false,
              "<SwCrossRefBookmark::GetOtherMarkPos(..)>"
-diff --git sw/source/core/crsr/crstrvl.cxx sw/source/core/crsr/crstrvl.cxx
-index 0504672..9ff996a 100644
---- sw/source/core/crsr/crstrvl.cxx
-+++ sw/source/core/crsr/crstrvl.cxx
-@@ -1175,6 +1175,17 @@ BOOL SwCrsrShell::GetContentAtPos( const Point& rPt,
+diff -urN '--exclude=unxlngi6.pro' '--exclude=*.orig' sw/source/core/crsr/crstrvl.cxx sw/source/core/crsr/crstrvl.cxx
+--- sw/source/core/crsr/crstrvl.cxx	2009-10-07 17:44:56.000000000 +0200
++++ sw/source/core/crsr/crstrvl.cxx	2009-10-09 10:53:45.000000000 +0200
+@@ -1175,6 +1175,17 @@
                      }
                  }
  
@@ -535,10 +493,9 @@ index 0504672..9ff996a 100644
                  if( !bRet && SwContentAtPos::SW_FTN & rCntntAtPos.eCntntAtPos )
                  {
                      if( aTmpState.bFtnNoInfo )
-diff --git sw/source/core/crsr/pam.cxx sw/source/core/crsr/pam.cxx
-index 7a8a83e..c5a7344 100644
---- sw/source/core/crsr/pam.cxx
-+++ sw/source/core/crsr/pam.cxx
+diff -urN '--exclude=unxlngi6.pro' '--exclude=*.orig' sw/source/core/crsr/pam.cxx sw/source/core/crsr/pam.cxx
+--- sw/source/core/crsr/pam.cxx	2009-10-07 17:44:56.000000000 +0200
++++ sw/source/core/crsr/pam.cxx	2009-10-09 10:53:45.000000000 +0200
 @@ -56,6 +56,7 @@
  #include <ndtxt.hxx> // #111827#
  
@@ -547,7 +504,7 @@ index 7a8a83e..c5a7344 100644
  
  // fuer den dummen ?MSC-? Compiler
  inline xub_StrLen GetSttOrEnd( BOOL bCondition, const SwCntntNode& rNd )
-@@ -817,16 +818,21 @@ BOOL SwPaM::HasReadonlySel( bool bFormView ) const
+@@ -827,16 +828,21 @@
      }
      //FIXME FieldBk
      // TODO: Form Protection when Enhanced Fields are enabled
@@ -579,7 +536,7 @@ index 7a8a83e..c5a7344 100644
      return bRet;
  }
  
-@@ -1213,6 +1219,18 @@ BOOL SwPaM::Overlap(const SwPaM & a, const SwPaM & b)
+@@ -1223,6 +1229,18 @@
      return !(*b.End() <= *a.Start() || *a.End() <= *b.End());
  }
  
@@ -598,10 +555,9 @@ index 7a8a83e..c5a7344 100644
  BOOL SwPaM::LessThan(const SwPaM & a, const SwPaM & b)
  {
      return (*a.Start() < *b.Start()) || (*a.Start() == *b.Start() && *a.End() < *b.End()); 
-diff --git sw/source/core/doc/docbm.cxx sw/source/core/doc/docbm.cxx
-index 836cbf0..752b58c 100644
---- sw/source/core/doc/docbm.cxx
-+++ sw/source/core/doc/docbm.cxx
+diff -urN '--exclude=unxlngi6.pro' '--exclude=*.orig' sw/source/core/doc/docbm.cxx sw/source/core/doc/docbm.cxx
+--- sw/source/core/doc/docbm.cxx	2009-10-07 17:44:56.000000000 +0200
++++ sw/source/core/doc/docbm.cxx	2009-10-09 10:53:45.000000000 +0200
 @@ -41,6 +41,7 @@
  #include <dcontact.hxx>
  #include <doc.hxx>
@@ -634,7 +590,7 @@ index 836cbf0..752b58c 100644
  
  using namespace ::std;
  using namespace ::boost;
-@@ -309,6 +327,17 @@ namespace sw { namespace mark
+@@ -309,6 +327,17 @@
          : m_pDoc(&rDoc)
      { }
  
@@ -652,7 +608,7 @@ index 836cbf0..752b58c 100644
      ::sw::mark::IMark* MarkManager::makeMark(const SwPaM& rPaM,
          const ::rtl::OUString& rName,
          const IDocumentMarkAccess::MarkType eType)
-@@ -414,6 +443,30 @@ namespace sw { namespace mark
+@@ -414,6 +443,30 @@
          return pMark.get();
      }
  
@@ -683,7 +639,7 @@ index 836cbf0..752b58c 100644
      ::sw::mark::IMark* MarkManager::getMarkForTxtNode(const SwTxtNode& rTxtNode,
          const IDocumentMarkAccess::MarkType eType)
      {
-@@ -767,12 +820,7 @@ namespace sw { namespace mark
+@@ -767,12 +820,7 @@
      {
          const_iterator_t pFieldmark = find_if(
              m_vFieldmarks.begin(),
@@ -697,10 +653,9 @@ index 836cbf0..752b58c 100644
              bind(&IMark::IsCoveringPosition, _1, rPos));
          if(pFieldmark == m_vFieldmarks.end()) return NULL;
          return dynamic_cast<IFieldmark*>(pFieldmark->get());
-diff --git sw/source/core/edit/edtox.cxx sw/source/core/edit/edtox.cxx
-index 0b72c6f..76e9e32 100644
---- sw/source/core/edit/edtox.cxx
-+++ sw/source/core/edit/edtox.cxx
+diff -urN '--exclude=unxlngi6.pro' '--exclude=*.orig' sw/source/core/edit/edtox.cxx sw/source/core/edit/edtox.cxx
+--- sw/source/core/edit/edtox.cxx	2009-10-07 17:44:57.000000000 +0200
++++ sw/source/core/edit/edtox.cxx	2009-10-09 12:06:44.000000000 +0200
 @@ -60,6 +60,9 @@
  #ifndef _STATSTR_HRC
  #include <statstr.hrc>
@@ -711,7 +666,7 @@ index 0b72c6f..76e9e32 100644
  
  using namespace ::com::sun::star;
  using namespace ::com::sun::star::i18n;
-@@ -232,6 +235,25 @@ BOOL SwEditShell::UpdateTableOf( const SwTOXBase& rTOX, const SfxItemSet* pSet )
+@@ -235,6 +238,25 @@
      return bRet;
  }
  
@@ -727,8 +682,8 @@ index 0b72c6f..76e9e32 100644
 +        aEndPos.nContent--;
 +
 +    	SwPaM aPaM( aSttPos, aEndPos );
-+	    pDoc->Delete(aPaM);
-+        pDoc->Insert(aPaM, String::CreateFromAscii("Implement me ;-)"), false);
++	    pDoc->DeleteRange(aPaM);
++        pDoc->InsertString(aPaM, String::CreateFromAscii("Implement me ;-)") );
 +    }
 +    return TRUE;
 +}
@@ -737,11 +692,10 @@ index 0b72c6f..76e9e32 100644
  /*--------------------------------------------------------------------
       Beschreibung: Aktuelles Verzeichnis vor oder in dem der Cursor
                                     steht
-diff --git sw/source/core/inc/MarkManager.hxx sw/source/core/inc/MarkManager.hxx
-index 605b15d..fd20406 100644
---- sw/source/core/inc/MarkManager.hxx
-+++ sw/source/core/inc/MarkManager.hxx
-@@ -43,8 +43,18 @@ namespace sw { namespace mark
+diff -urN '--exclude=unxlngi6.pro' '--exclude=*.orig' sw/source/core/inc/MarkManager.hxx sw/source/core/inc/MarkManager.hxx
+--- sw/source/core/inc/MarkManager.hxx	2009-08-13 16:14:40.000000000 +0200
++++ sw/source/core/inc/MarkManager.hxx	2009-10-09 10:53:45.000000000 +0200
+@@ -43,8 +43,18 @@
          public:
              MarkManager(/*[in/out]*/ SwDoc& rDoc);
  
@@ -760,11 +714,10 @@ index 605b15d..fd20406 100644
              virtual ::sw::mark::IMark* getMarkForTxtNode(const SwTxtNode& rTxtNode, IDocumentMarkAccess::MarkType eMark);
  
              virtual void repositionMark(::sw::mark::IMark* io_pMark, const SwPaM& rPaM);
-diff --git sw/source/core/inc/bookmrk.hxx sw/source/core/inc/bookmrk.hxx
-index ef1cc12..bd62abe 100644
---- sw/source/core/inc/bookmrk.hxx
-+++ sw/source/core/inc/bookmrk.hxx
-@@ -46,26 +46,31 @@ namespace sw { namespace mark
+diff -urN '--exclude=unxlngi6.pro' '--exclude=*.orig' sw/source/core/inc/bookmrk.hxx sw/source/core/inc/bookmrk.hxx
+--- sw/source/core/inc/bookmrk.hxx	2009-10-07 17:44:57.000000000 +0200
++++ sw/source/core/inc/bookmrk.hxx	2009-10-09 10:53:45.000000000 +0200
+@@ -48,26 +48,31 @@
      {
          public:
              //getters
@@ -806,7 +759,7 @@ index ef1cc12..bd62abe 100644
              }
              virtual bool IsExpanded() const
                  { return m_pPos2; }
-@@ -78,6 +83,8 @@ namespace sw { namespace mark
+@@ -80,6 +85,8 @@
              virtual void ClearOtherMarkPos()
                  { m_pPos2.reset(); }
  
@@ -815,7 +768,7 @@ index ef1cc12..bd62abe 100644
              virtual void Swap()
              {
                  if(m_pPos2)
-@@ -171,18 +178,30 @@ namespace sw { namespace mark
+@@ -183,18 +190,30 @@
      {
          public:
              Fieldmark(const SwPaM& rPaM);
@@ -847,7 +800,7 @@ index ef1cc12..bd62abe 100644
          private:
              //int fftype; // Type: 0 = Text, 1 = Check Box, 2 = List
              //bool ffprot;
-@@ -190,7 +209,7 @@ namespace sw { namespace mark
+@@ -202,7 +221,7 @@
              ::rtl::OUString m_aFieldname;
              ::rtl::OUString m_aFieldHelptext;
              static const ::rtl::OUString our_sNamePrefix;
@@ -856,11 +809,10 @@ index ef1cc12..bd62abe 100644
      };
  
      class TextFieldmark
-diff --git sw/source/core/inc/crossrefbookmark.hxx sw/source/core/inc/crossrefbookmark.hxx
-index d175b21..e560a29 100644
---- sw/source/core/inc/crossrefbookmark.hxx
-+++ sw/source/core/inc/crossrefbookmark.hxx
-@@ -48,10 +48,10 @@ namespace sw { namespace mark
+diff -urN '--exclude=unxlngi6.pro' '--exclude=*.orig' sw/source/core/inc/crossrefbookmark.hxx sw/source/core/inc/crossrefbookmark.hxx
+--- sw/source/core/inc/crossrefbookmark.hxx	2009-09-09 11:44:13.000000000 +0200
++++ sw/source/core/inc/crossrefbookmark.hxx	2009-10-09 10:53:45.000000000 +0200
+@@ -48,10 +48,10 @@
                  const ::rtl::OUString& rPrefix);
  
              // getters
@@ -874,11 +826,10 @@ index d175b21..e560a29 100644
                  { return *m_pPos1; }
              virtual bool IsExpanded() const
                  { return false; }
-diff --git sw/source/core/text/inftxt.cxx sw/source/core/text/inftxt.cxx
-index 13a05d1..1838124 100644
---- sw/source/core/text/inftxt.cxx
-+++ sw/source/core/text/inftxt.cxx
-@@ -1145,27 +1145,30 @@ void SwTxtPaintInfo::DrawCheckBox( const SwFieldFormPortion &rPor, bool checked)
+diff -urN '--exclude=unxlngi6.pro' '--exclude=*.orig' sw/source/core/text/inftxt.cxx sw/source/core/text/inftxt.cxx
+--- sw/source/core/text/inftxt.cxx	2009-10-07 17:44:57.000000000 +0200
++++ sw/source/core/text/inftxt.cxx	2009-10-09 10:53:45.000000000 +0200
+@@ -1145,27 +1145,30 @@
  {
      SwRect aIntersect;
      CalcRect( rPor, &aIntersect, 0 );
@@ -928,7 +879,7 @@ index 13a05d1..1838124 100644
  }
  
  /*************************************************************************
-@@ -1219,14 +1222,22 @@ void SwTxtPaintInfo::_DrawBackBrush( const SwLinePortion &rPor ) const
+@@ -1219,14 +1222,22 @@
                  }
              }
              bool bIsStartMark=(1==GetLen() && CH_TXT_ATR_FIELDSTART==GetTxt().GetChar(GetIdx()));
@@ -955,10 +906,9 @@ index 13a05d1..1838124 100644
                  pOutDev->DrawRect( aIntersect.SVRect() );
                  pOutDev->Pop();
              }
-diff --git sw/source/core/text/portxt.cxx sw/source/core/text/portxt.cxx
-index 6eeb549..9b24e31 100644
---- sw/source/core/text/portxt.cxx
-+++ sw/source/core/text/portxt.cxx
+diff -urN '--exclude=unxlngi6.pro' '--exclude=*.orig' sw/source/core/text/portxt.cxx sw/source/core/text/portxt.cxx
+--- sw/source/core/text/portxt.cxx	2009-09-14 10:18:22.000000000 +0200
++++ sw/source/core/text/portxt.cxx	2009-10-09 10:53:45.000000000 +0200
 @@ -55,11 +55,13 @@
  #include <IMark.hxx>
  #include <pam.hxx>
@@ -973,7 +923,7 @@ index 6eeb549..9b24e31 100644
  using namespace ::com::sun::star;
  using namespace ::com::sun::star::i18n::ScriptType;
  
-@@ -769,9 +771,10 @@ void SwHolePortion::HandlePortion( SwPortionHandler& rPH ) const
+@@ -769,9 +771,10 @@
      rPH.Text( GetLen(), GetWhichPor() );
  }
  
@@ -986,7 +936,7 @@ index 6eeb549..9b24e31 100644
  }
  
  sal_Bool SwFieldMarkPortion::Format( SwTxtFormatInfo & )
-@@ -781,38 +784,95 @@ sal_Bool SwFieldMarkPortion::Format( SwTxtFormatInfo & )
+@@ -781,38 +784,95 @@
      return ret;
  }
  
@@ -1027,33 +977,19 @@ index 6eeb549..9b24e31 100644
 -//    OSL_ENSURE(pMark,
 -//        "SwFieldFormPortion::Paint(..)"
 -//        " - Where is my form field bookmark???");
--
--//    bool checked=(pBM!=NULL?pBM->IsChecked():false);
--//    rInf.DrawCheckBox(*this , checked);
--}
 +    SwTxtNode* pNd = const_cast<SwTxtNode*>(rInf.GetTxtFrm()->GetTxtNode());
 +    const SwDoc *doc=pNd->GetDoc();
 +    SwIndex aIndex( pNd, rInf.GetIdx() );
 +    SwPosition aPosition(*pNd, aIndex);
- 
--sal_Bool SwFieldFormPortion::Format( SwTxtFormatInfo &rInf )
--{
--    sal_Bool ret=0;
--//	ret=SwTxtPortion::Format(rInf);
++
 +    IFieldmark* pBM = doc->getIDocumentMarkAccess( )->getFieldmarkFor( aPosition );
- 
--    Width(rInf.GetTxtHeight());
--    Height(rInf.GetTxtHeight());
--    SetAscent(rInf.GetAscent());
--    //int h=rInf.GetTxtHeight();
++
 +    OSL_ENSURE( pBM,
 +        "SwFieldFormPortion::Paint(..)"
 +        " - Where is my form field bookmark???");
  
--/*
--    Height(100);
--    SetAscent(100);
--*/
+-//    bool checked=(pBM!=NULL?pBM->IsChecked():false);
+-//    rInf.DrawCheckBox(*this , checked);
 +    if ( pBM != NULL ) 
 +    {
 +        if ( pBM->GetFieldname( ).equalsAscii( ECMA_FORMCHECKBOX ) )
@@ -1072,10 +1008,23 @@ index 6eeb549..9b24e31 100644
 +         	assert(0); // unknown type...
 +        }
 +    }
-+}
-+
+ }
+ 
+-sal_Bool SwFieldFormPortion::Format( SwTxtFormatInfo &rInf )
 +sal_Bool SwFieldFormPortion::Format( SwTxtFormatInfo & rInf )
-+{
+ {
+-    sal_Bool ret=0;
+-//	ret=SwTxtPortion::Format(rInf);
+-
+-    Width(rInf.GetTxtHeight());
+-    Height(rInf.GetTxtHeight());
+-    SetAscent(rInf.GetAscent());
+-    //int h=rInf.GetTxtHeight();
+-
+-/*
+-    Height(100);
+-    SetAscent(100);
+-*/
 +    sal_Bool ret = 0;
 +    SwTxtNode *pNd = const_cast < SwTxtNode * >( rInf.GetTxtFrm(  )->GetTxtNode(  ) );
 +    const SwDoc *doc = pNd->GetDoc(  );
@@ -1108,10 +1057,9 @@ index 6eeb549..9b24e31 100644
      return ret;
  }
  
-diff --git sw/source/core/unocore/unobkm.cxx sw/source/core/unocore/unobkm.cxx
-index ca27062..519f70d 100644
---- sw/source/core/unocore/unobkm.cxx
-+++ sw/source/core/unocore/unobkm.cxx
+diff -urN '--exclude=unxlngi6.pro' '--exclude=*.orig' sw/source/core/unocore/unobkm.cxx sw/source/core/unocore/unobkm.cxx
+--- sw/source/core/unocore/unobkm.cxx	2009-10-07 17:44:57.000000000 +0200
++++ sw/source/core/unocore/unobkm.cxx	2009-10-09 10:53:45.000000000 +0200
 @@ -7,7 +7,7 @@
   * OpenOffice.org - a multi-platform office productivity suite
   *
@@ -1121,15 +1069,15 @@ index ca27062..519f70d 100644
   *
   * This file is part of OpenOffice.org.
   *
-@@ -47,6 +47,7 @@
- #endif
- #include <undobj.hxx>
+@@ -49,6 +49,7 @@
+ #include <docsh.hxx>
+ 
  
 +using namespace ::sw::mark;
  using namespace ::com::sun::star;
  using namespace ::com::sun::star::lang;
  using namespace ::com::sun::star::uno;
-@@ -338,66 +339,85 @@ SwXFieldmark::SwXFieldmark(bool _isReplacementObject, ::sw::mark::IMark* pBkm, S
+@@ -357,66 +358,85 @@
      , isReplacementObject(_isReplacementObject)
  { }
  
@@ -1235,16 +1183,17 @@ index ca27062..519f70d 100644
  
 -void SAL_CALL SwXFieldmark::setDescription( const ::rtl::OUString& description )
 -    throw (::com::sun::star::uno::RuntimeException)
-+void SwXFieldmark::addParam( const ::rtl::OUString & name,
-+                             const ::rtl::OUString & value,
-+                             sal_Bool replaceExisting ) 
-+    throw( ::com::sun::star::uno::RuntimeException )
- {
+-{
 -    vos::OGuard aGuard(Application::GetSolarMutex());
 -    const ::sw::mark::IFieldmark* pMark =
 -        dynamic_cast<const ::sw::mark::IFieldmark*>(GetBookmark());
 -    if(pMark)
 -        const_cast< ::sw::mark::IFieldmark*>(pMark)->SetFieldHelptext(description);
++void SwXFieldmark::addParam( const ::rtl::OUString & name,
++                             const ::rtl::OUString & value,
++                             sal_Bool replaceExisting ) 
++    throw( ::com::sun::star::uno::RuntimeException )
++{
 +    vos::OGuard aGuard( Application::GetSolarMutex(  ) );
 +    IMark* pMark = const_cast< IMark* >( GetBookmark( ) );
 +    IFieldmark *pBkm = dynamic_cast< IFieldmark* >( pMark );
@@ -1256,11 +1205,10 @@ index ca27062..519f70d 100644
 -        throw uno::RuntimeException();
 +        throw uno::RuntimeException(  );
  }
-diff --git sw/source/filter/ww8/wrtw8nds.cxx sw/source/filter/ww8/wrtw8nds.cxx
-index 1d36d8e..fd65fac 100644
---- sw/source/filter/ww8/wrtw8nds.cxx
-+++ sw/source/filter/ww8/wrtw8nds.cxx
-@@ -110,8 +110,48 @@ using namespace ::com::sun::star;
+diff -urN '--exclude=unxlngi6.pro' '--exclude=*.orig' sw/source/filter/ww8/wrtw8nds.cxx sw/source/filter/ww8/wrtw8nds.cxx
+--- sw/source/filter/ww8/wrtw8nds.cxx	2009-10-09 14:55:24.000000000 +0200
++++ sw/source/filter/ww8/wrtw8nds.cxx	2009-10-09 10:53:45.000000000 +0200
+@@ -110,8 +110,48 @@
  using namespace ::com::sun::star::i18n;
  using namespace sw::util;
  using namespace sw::types;
@@ -1309,7 +1257,7 @@ index 1d36d8e..fd65fac 100644
  /*  */
  
  MSWordAttrIter::MSWordAttrIter( MSWordExportBase& rExport )
-@@ -266,19 +306,17 @@ xub_StrLen SwAttrIter::SearchNext( xub_StrLen nStartPos )
+@@ -266,19 +306,17 @@
  {
      xub_StrLen nPos;
      xub_StrLen nMinPos = STRING_MAXLEN;
@@ -1336,7 +1284,7 @@ index 1d36d8e..fd65fac 100644
      // first the redline, then the attributes
      if( pCurRedline )
      {
-@@ -1704,12 +1742,14 @@ void MSWordExportBase::OutputTextNode( const SwTxtNode& rNode )
+@@ -1704,12 +1742,14 @@
                  ::sw::mark::IFieldmark const * const pFieldmark = pMarkAccess->getFieldmarkFor( aPosition );
                  OSL_ENSURE( pFieldmark, "Looks like this doc is broken...; where is the Fieldmark for the FIELDSTART??" );
  
@@ -1356,7 +1304,7 @@ index 1d36d8e..fd65fac 100644
              }
              else if ( ch == CH_TXT_ATR_FIELDEND )
              {
-@@ -1717,8 +1757,8 @@ void MSWordExportBase::OutputTextNode( const SwTxtNode& rNode )
+@@ -1717,8 +1757,8 @@
                  ::sw::mark::IFieldmark const * const pFieldmark = pMarkAccess->getFieldmarkFor( aPosition );
                  OSL_ENSURE( pFieldmark, "Looks like this doc is broken...; where is the Fieldmark for the FIELDSTART??" );
  
@@ -1367,7 +1315,7 @@ index 1d36d8e..fd65fac 100644
                      AppendBookmark( pFieldmark->GetName(), false );
              }
              else if ( ch == CH_TXT_ATR_FORMELEMENT )
-@@ -1727,13 +1767,18 @@ void MSWordExportBase::OutputTextNode( const SwTxtNode& rNode )
+@@ -1727,13 +1767,18 @@
                  ::sw::mark::IFieldmark const * const pFieldmark = pMarkAccess->getFieldmarkFor( aPosition );
                  OSL_ENSURE( pFieldmark, "Looks like this doc is broken...; where is the Fieldmark for the FIELDSTART??" );
  
@@ -1392,10 +1340,9 @@ index 1d36d8e..fd65fac 100644
                      AppendBookmark( pFieldmark->GetName(), false );
              }
              nLen -= static_cast< USHORT >( ofs );
-diff --git sw/source/filter/ww8/wrtww8.cxx sw/source/filter/ww8/wrtww8.cxx
-index adbe1db..42934c8 100644
---- sw/source/filter/ww8/wrtww8.cxx
-+++ sw/source/filter/ww8/wrtww8.cxx
+diff -urN '--exclude=unxlngi6.pro' '--exclude=*.orig' sw/source/filter/ww8/wrtww8.cxx sw/source/filter/ww8/wrtww8.cxx
+--- sw/source/filter/ww8/wrtww8.cxx	2009-10-07 17:45:00.000000000 +0200
++++ sw/source/filter/ww8/wrtww8.cxx	2009-10-09 10:53:45.000000000 +0200
 @@ -105,6 +105,7 @@
  #include "ww8attributeoutput.hxx"
  
@@ -1404,7 +1351,7 @@ index adbe1db..42934c8 100644
  
  #include <com/sun/star/document/XDocumentPropertiesSupplier.hpp>
  #include <com/sun/star/document/XDocumentProperties.hpp>
-@@ -3437,11 +3438,20 @@ void WW8Export::WriteFormData( const ::sw::mark::IFieldmark& rFieldmark )
+@@ -3435,11 +3436,20 @@
      const ::sw::mark::IFieldmark* pFieldmark = &rFieldmark;
      const ::sw::mark::ICheckboxFieldmark* pAsCheckbox = dynamic_cast< const ::sw::mark::ICheckboxFieldmark* >( pFieldmark );
  
@@ -1426,7 +1373,7 @@ index adbe1db..42934c8 100644
  
      ULONG nDataStt = pDataStrm->Tell();
      pChpPlc->AppendFkpEntry(Strm().Tell());
-@@ -3463,14 +3473,27 @@ void WW8Export::WriteFormData( const ::sw::mark::IFieldmark& rFieldmark )
+@@ -3461,14 +3471,27 @@
      sal_uInt8 aFldHeader[] = 
      {
          0xFF, 0xFF, 0xFF, 0xFF, // Unicode Marker...
@@ -1455,7 +1402,7 @@ index adbe1db..42934c8 100644
  
      const ::rtl::OUString ffdeftext;
      const ::rtl::OUString ffformat;
-@@ -3479,6 +3502,7 @@ void WW8Export::WriteFormData( const ::sw::mark::IFieldmark& rFieldmark )
+@@ -3477,6 +3500,7 @@
      const ::rtl::OUString ffentrymcr;
      const ::rtl::OUString ffexitmcr;
  
@@ -1463,7 +1410,7 @@ index adbe1db..42934c8 100644
      const sal_uInt8 aFldData[] =
      {
          0,0,0,0,        // len of struct
-@@ -3491,13 +3515,22 @@ void WW8Export::WriteFormData( const ::sw::mark::IFieldmark& rFieldmark )
+@@ -3489,13 +3513,22 @@
      };
      int slen = sizeof( aFldData )
          + sizeof( aFldHeader )
@@ -1487,7 +1434,7 @@ index adbe1db..42934c8 100644
  #ifdef OSL_BIGENDIAN
      slen = SWAPLONG( slen );
  #endif // OSL_BIGENDIAN
-@@ -3508,6 +3541,7 @@ void WW8Export::WriteFormData( const ::sw::mark::IFieldmark& rFieldmark )
+@@ -3506,6 +3539,7 @@
  
      len = sizeof( aFldHeader );
      OSL_ENSURE( len == 8, "SwWW8Writer::WriteFormData(..) - wrong aFldHeader length" );
@@ -1495,7 +1442,7 @@ index adbe1db..42934c8 100644
      pDataStrm->Write( aFldHeader, len );
  
      SwWW8Writer::WriteString_xstz( *pDataStrm, ffname, true ); // Form field name
-@@ -3522,11 +3556,20 @@ void WW8Export::WriteFormData( const ::sw::mark::IFieldmark& rFieldmark )
+@@ -3520,11 +3554,20 @@
      SwWW8Writer::WriteString_xstz( *pDataStrm, String( ffstattext ), true );
      SwWW8Writer::WriteString_xstz( *pDataStrm, String( ffentrymcr ), true );
      SwWW8Writer::WriteString_xstz( *pDataStrm, String( ffexitmcr ), true );
@@ -1521,11 +1468,10 @@ index adbe1db..42934c8 100644
  }
  
  void WW8AttributeOutput::TableNodeInfoInner( ww8::WW8TableNodeInfoInner::Pointer_t pNodeInfoInner )
-diff --git sw/source/filter/ww8/wrtww8.hxx sw/source/filter/ww8/wrtww8.hxx
-index a96a2e5..1f3e9f2 100644
---- sw/source/filter/ww8/wrtww8.hxx
-+++ sw/source/filter/ww8/wrtww8.hxx
-@@ -709,6 +709,7 @@ public:
+diff -urN '--exclude=unxlngi6.pro' '--exclude=*.orig' sw/source/filter/ww8/wrtww8.hxx sw/source/filter/ww8/wrtww8.hxx
+--- sw/source/filter/ww8/wrtww8.hxx	2009-09-09 11:44:15.000000000 +0200
++++ sw/source/filter/ww8/wrtww8.hxx	2009-10-09 10:53:45.000000000 +0200
+@@ -709,6 +709,7 @@
  
      /// Write the data of the form field
      virtual void WriteFormData( const ::sw::mark::IFieldmark& rFieldmark ) = 0;
@@ -1533,7 +1479,7 @@ index a96a2e5..1f3e9f2 100644
      
      virtual void DoComboBox(const rtl::OUString &rName,
                      const rtl::OUString &rHelp,
-@@ -1076,6 +1077,7 @@ public:
+@@ -1076,6 +1077,7 @@
  
      /// Write the data of the form field
      virtual void WriteFormData( const ::sw::mark::IFieldmark& rFieldmark );
@@ -1541,11 +1487,10 @@ index a96a2e5..1f3e9f2 100644
  
      /// Fields.
      WW8_WrPlcFld* CurrentFieldPlc() const;
-diff --git sw/source/filter/ww8/ww8par.cxx sw/source/filter/ww8/ww8par.cxx
-index 2a0dc6d..cb1a3c2 100644
---- sw/source/filter/ww8/ww8par.cxx
-+++ sw/source/filter/ww8/ww8par.cxx
-@@ -1663,7 +1663,6 @@ WW8ReaderSave::WW8ReaderSave(SwWW8ImplReader* pRdr ,WW8_CP nStartCp) :
+diff -urN '--exclude=unxlngi6.pro' '--exclude=*.orig' sw/source/filter/ww8/ww8par.cxx sw/source/filter/ww8/ww8par.cxx
+--- sw/source/filter/ww8/ww8par.cxx	2009-10-09 14:56:40.000000000 +0200
++++ sw/source/filter/ww8/ww8par.cxx	2009-10-09 10:53:45.000000000 +0200
+@@ -1664,7 +1664,6 @@
      maOldApos.push_back(false);
      maOldApos.swap(pRdr->maApos);
      maOldFieldStack.swap(pRdr->maFieldStack);
@@ -1553,7 +1498,7 @@ index 2a0dc6d..cb1a3c2 100644
  }
  
  void WW8ReaderSave::Restore( SwWW8ImplReader* pRdr )
-@@ -1710,7 +1709,6 @@ void WW8ReaderSave::Restore( SwWW8ImplReader* pRdr )
+@@ -1711,7 +1710,6 @@
          pRdr->pPlcxMan->RestoreAllPLCFx(maPLCFxSave);
      pRdr->maApos.swap(maOldApos);
      pRdr->maFieldStack.swap(maOldFieldStack);
@@ -1561,7 +1506,7 @@ index 2a0dc6d..cb1a3c2 100644
  }
  
  void SwWW8ImplReader::Read_HdFtFtnText( const SwNodeIndex* pSttIdx,
-@@ -2766,29 +2764,6 @@ bool SwWW8ImplReader::ReadChar(long nPosCp, long nCpOfs)
+@@ -2830,29 +2828,6 @@
          case 0x15:
              if( !bSpec )        // Juristenparagraph
                  cInsert = '\xa7';
@@ -1591,7 +1536,7 @@ index 2a0dc6d..cb1a3c2 100644
              break;
          case 0x9:
              cInsert = '\x9';    // Tab
-@@ -3599,7 +3574,14 @@ void wwSectionManager::InsertSegments()
+@@ -3664,7 +3639,14 @@
  
          bool bInsertSection = (aIter != aStart) ? (aIter->IsContinous() &&  bThisAndPreviousAreCompatible): false;
          bool bInsertPageDesc = !bInsertSection;
@@ -1607,10 +1552,9 @@ index 2a0dc6d..cb1a3c2 100644
          if (bInsertPageDesc)
          {
              /*
-diff --git sw/source/filter/ww8/ww8par.hxx sw/source/filter/ww8/ww8par.hxx
-index 525deb7..dfd6842 100644
---- sw/source/filter/ww8/ww8par.hxx
-+++ sw/source/filter/ww8/ww8par.hxx
+diff -urN '--exclude=unxlngi6.pro' '--exclude=*.orig' sw/source/filter/ww8/ww8par.hxx sw/source/filter/ww8/ww8par.hxx
+--- sw/source/filter/ww8/ww8par.hxx	2009-10-09 14:56:35.000000000 +0200
++++ sw/source/filter/ww8/ww8par.hxx	2009-10-09 10:53:45.000000000 +0200
 @@ -60,6 +60,8 @@
  #include "ww8glsy.hxx"
  #include "wrtww8.hxx"
@@ -1620,7 +1564,7 @@ index 525deb7..dfd6842 100644
  
  class SwDoc;
  class SwPaM;
-@@ -362,6 +364,8 @@ namespace sw
+@@ -362,6 +364,8 @@
              Position(const SwPosition &rPos);
              Position(const Position &rPos);
              operator SwPosition() const;
@@ -1629,7 +1573,7 @@ index 525deb7..dfd6842 100644
          };
      }
  }
-@@ -369,36 +373,30 @@ namespace sw
+@@ -369,36 +373,30 @@
  class FieldEntry
  {
  public:
@@ -1680,7 +1624,7 @@ index 525deb7..dfd6842 100644
  };
  
  
-@@ -434,7 +432,6 @@ private:
+@@ -434,7 +432,6 @@
      bool mbWasParaEnd;
      bool mbHasBorder;
      bool mbFirstPara;
@@ -1688,7 +1632,7 @@ index 525deb7..dfd6842 100644
  public:
      WW8ReaderSave(SwWW8ImplReader* pRdr, WW8_CP nStart=-1);
      void Restore(SwWW8ImplReader* pRdr);
-@@ -889,9 +886,6 @@ private:
+@@ -889,9 +886,6 @@
      std::deque<FieldEntry> maFieldStack;
      typedef std::deque<FieldEntry>::const_iterator mycFieldIter;
  
@@ -1698,10 +1642,9 @@ index 525deb7..dfd6842 100644
      /*
      A stack of open footnotes. Should only be one in it at any time.
      */
-diff --git sw/source/filter/ww8/ww8par3.cxx sw/source/filter/ww8/ww8par3.cxx
-index 7b9945a..bc24b73 100644
---- sw/source/filter/ww8/ww8par3.cxx
-+++ sw/source/filter/ww8/ww8par3.cxx
+diff -urN '--exclude=unxlngi6.pro' '--exclude=*.orig' sw/source/filter/ww8/ww8par3.cxx sw/source/filter/ww8/ww8par3.cxx
+--- sw/source/filter/ww8/ww8par3.cxx	2009-10-09 16:13:55.000000000 +0200
++++ sw/source/filter/ww8/ww8par3.cxx	2009-10-09 16:30:58.000000000 +0200
 @@ -96,66 +96,14 @@
  
  #include <IMark.hxx>
@@ -1771,7 +1714,7 @@ index 7b9945a..bc24b73 100644
  
  //-----------------------------------------
  //            UNO-Controls
-@@ -233,10 +181,10 @@ eF_ResT SwWW8ImplReader::Read_F_FormTextBox( WW8FieldDesc* pF, String& rStr )
+@@ -233,10 +181,10 @@
  
  
      if (aBookmarkName.Len()>0) {
@@ -1786,7 +1729,7 @@ index 7b9945a..bc24b73 100644
      }
      return FLD_TEXT;
      }
-@@ -279,19 +227,22 @@ eF_ResT SwWW8ImplReader::Read_F_FormCheckBox( WW8FieldDesc* pF, String& rStr )
+@@ -279,19 +227,22 @@
          aBookmarkName=pB->GetUniqueBookmarkName(aFormula.sTitle);
      }
  
@@ -1822,95 +1765,95 @@ index 7b9945a..bc24b73 100644
              // set field data here...
          }
      }
-@@ -306,24 +257,73 @@ eF_ResT SwWW8ImplReader::Read_F_FormListBox( WW8FieldDesc* pF, String& rStr)
+@@ -306,24 +257,74 @@
      if (0x01 == rStr.GetChar(writer_cast<xub_StrLen>(pF->nLCode-1)))
          ImportFormulaControl(aFormula,pF->nSCode+pF->nLCode-1, WW8_CT_DROPDOWN);
  
 -    SwDropDownField aFld(
 -        (SwDropDownFieldType*)rDoc.GetSysFldType(RES_DROPDOWN));
--
++    const SvtFilterOptions* pOpt = SvtFilterOptions::Get();
++    sal_Bool bUseEnhFields=(pOpt && pOpt->IsUseEnhancedFields());
++  
++    if (!bUseEnhFields) 
++    {
++        SwDropDownField aFld((SwDropDownFieldType*)rDoc.GetSysFldType(RES_DROPDOWN));
+ 
 -    aFld.SetName(aFormula.sTitle);
 -    aFld.SetHelp(aFormula.sHelp);
 -    aFld.SetToolTip(aFormula.sToolTip);
-+    const SvtFilterOptions* pOpt = SvtFilterOptions::Get();
-+    sal_Bool bUseEnhFields=(pOpt && pOpt->IsUseEnhancedFields());
++        aFld.SetName(aFormula.sTitle);
++        aFld.SetHelp(aFormula.sHelp);
++        aFld.SetToolTip(aFormula.sToolTip);
++
++        if (!aFormula.maListEntries.empty())
++        {
++            aFld.SetItems(aFormula.maListEntries);
++            int nIndex = aFormula.fDropdownIndex  < aFormula.maListEntries.size() ? aFormula.fDropdownIndex : 0;
++            aFld.SetSelectedItem(aFormula.maListEntries[nIndex]);
++        }
  
 -    if (!aFormula.maListEntries.empty())
-+    if (!bUseEnhFields) {
-+	SwDropDownField aFld(
-+	    (SwDropDownFieldType*)rDoc.GetSysFldType(RES_DROPDOWN));
-+
-+	aFld.SetName(aFormula.sTitle);
-+	aFld.SetHelp(aFormula.sHelp);
-+	aFld.SetToolTip(aFormula.sToolTip);
-+	
-+	if (!aFormula.maListEntries.empty())
-+	{
-+	    aFld.SetItems(aFormula.maListEntries);
-+	    int nIndex = aFormula.fDropdownIndex  < aFormula.maListEntries.size()
-+		? aFormula.fDropdownIndex : 0;
-+	    aFld.SetSelectedItem(aFormula.maListEntries[nIndex]);
-+	}
-+	
-+	rDoc.Insert(*pPaM, SwFmtFld(aFld), 0);
-+	return FLD_OK;
-+    } else {
-+	//@TODO fix: copy pasting here!!!!!!!!!!!!!!
-+	//REVIEW: don't let this throught.... sometime I forget to get rid of my proof of concept stuff. Please kindly remind me!!!!!
-+
-+	String aBookmarkName;
-+	WW8PLCFx_Book* pB = pPlcxMan->GetBook();
-+	if (pB!=NULL) {
-+		WW8_CP currentCP=pF->nSCode;
-+		WW8_CP currentLen=pF->nLen;
-+
-+		USHORT bkmFindIdx;
-+		String aBookmarkFind=pB->GetBookmark(currentCP-1, currentCP+currentLen-1, bkmFindIdx);
-+
-+		if (aBookmarkFind.Len()>0) { 
-+			pB->SetStatus(bkmFindIdx, BOOK_FIELD); // mark as consumed by field
-+			if (aBookmarkFind.Len()>0) {
-+				aBookmarkName=aBookmarkFind;
-+			}
-+		}
-+	}
-+
-+	if (pB!=NULL && aBookmarkName.Len()==0) {
-+		aBookmarkName=pB->GetUniqueBookmarkName(aFormula.sTitle);
-+	}
-+
-+	if (aBookmarkName.Len()>0) 
++        rDoc.InsertPoolItem(*pPaM, SwFmtFld(aFld), 0);
++        return FLD_OK;
++    else
      {
 -        aFld.SetItems(aFormula.maListEntries);
 -        int nIndex = aFormula.fDropdownIndex  < aFormula.maListEntries.size()
 -            ? aFormula.fDropdownIndex : 0;
 -        aFld.SetSelectedItem(aFormula.maListEntries[nIndex]);
 -    }
-+        IDocumentMarkAccess* pMarksAccess = rDoc.getIDocumentMarkAccess( );
-+	    IFieldmark *pFieldmark = dynamic_cast<IFieldmark*>( pMarksAccess->makeNoTextFieldBookmark(
-+                    *pPaM, aBookmarkName, ::rtl::OUString::createFromAscii( ECMA_FORMDROPDOWN ) ) );
-+	    ASSERT(pFieldmark!=NULL, "hmmm; why was the bookmark not created?");
-+	    if ( pFieldmark != NULL ) {
-+    		rtl::OUString sListEntry=rtl::OUString::createFromAscii( ECMA_FORMDROPDOWN_LISTENTRY );
-+	    	std::vector<String>::iterator it = aFormula.maListEntries.begin();
-+		    for( ; it != aFormula.maListEntries.end(); it++ )
-+		        pFieldmark->addParam(sListEntry, *it, false);
- 
--    rDoc.Insert(*pPaM, SwFmtFld(aFld), 0);
-+	    	int nIndex = aFormula.fDropdownIndex  < aFormula.maListEntries.size() ? aFormula.fDropdownIndex : 0;
-+		    pFieldmark->addParam(ECMA_FORMDROPDOWN_RESULT, nIndex);
-+    		// set field data here...
-+	    }
-+	}
-+
-+	return FLD_OK;
-+    }
++        //@TODO fix: copy pasting here!!!!!!!!!!!!!!
++        //REVIEW: don't let this throught.... sometime I forget to get rid of my proof of concept stuff. Please kindly remind me!!!!!
++  
++        String aBookmarkName;
++        WW8PLCFx_Book* pB = pPlcxMan->GetBook();
++        if (pB!=NULL) 
++        {
++            WW8_CP currentCP=pF->nSCode;
++            WW8_CP currentLen=pF->nLen;
++  
++            USHORT bkmFindIdx;
++            String aBookmarkFind=pB->GetBookmark(currentCP-1, currentCP+currentLen-1, bkmFindIdx);
+ 
+-    rDoc.InsertPoolItem(*pPaM, SwFmtFld(aFld), 0);
++            if (aBookmarkFind.Len()>0)
++            {
++                pB->SetStatus(bkmFindIdx, BOOK_FIELD); // mark as consumed by field
++                if (aBookmarkFind.Len()>0)
++                    aBookmarkName=aBookmarkFind;
++            }
++        }
  
 -    return FLD_OK;
++        if (pB!=NULL && aBookmarkName.Len()==0)
++            aBookmarkName=pB->GetUniqueBookmarkName(aFormula.sTitle);
++
++        if (aBookmarkName.Len()>0)
++        {
++            IDocumentMarkAccess* pMarksAccess = rDoc.getIDocumentMarkAccess( );
++            IFieldmark *pFieldmark = dynamic_cast<IFieldmark*>( 
++                    pMarksAccess->makeNoTextFieldBookmark( *pPaM, aBookmarkName,
++                           ::rtl::OUString::createFromAscii( ECMA_FORMDROPDOWN ) ) );
++            ASSERT(pFieldmark!=NULL, "hmmm; why was the bookmark not created?");
++            if ( pFieldmark != NULL )
++            {
++                rtl::OUString sListEntry=rtl::OUString::createFromAscii( ECMA_FORMDROPDOWN_LISTENTRY );
++                std::vector<String>::iterator it = aFormula.maListEntries.begin();
++                for( ; it != aFormula.maListEntries.end(); it++ )
++                    pFieldmark->addParam(sListEntry, *it, false);
++
++                int nIndex = aFormula.fDropdownIndex  < aFormula.maListEntries.size() ? aFormula.fDropdownIndex : 0;
++                pFieldmark->addParam(ECMA_FORMDROPDOWN_RESULT, nIndex);
++                // set field data here...
++            }
++        }
++
++        return FLD_OK;
++    }
  }
  
- eF_ResT SwWW8ImplReader::Read_F_HTMLControl( WW8FieldDesc* pF, String& rStr)
-@@ -2148,11 +2148,18 @@ bool SwWW8ImplReader::ImportFormulaControl(WW8FormulaControl &aFormula,
+ void SwWW8ImplReader::DeleteFormImpl()
+@@ -2140,11 +2141,18 @@
  
      if((aPic.lcb > 0x3A) && !pDataStream->GetError() )
      {
@@ -1930,11 +1873,10 @@ index 7b9945a..bc24b73 100644
          aFormula.FormulaRead(nWhich,pDataStream);
          bRet = true;
      }
-diff --git sw/source/filter/ww8/ww8par5.cxx sw/source/filter/ww8/ww8par5.cxx
-index 2cc2fd4..95cafa0 100644
---- sw/source/filter/ww8/ww8par5.cxx
-+++ sw/source/filter/ww8/ww8par5.cxx
-@@ -89,22 +89,26 @@
+diff -urN '--exclude=unxlngi6.pro' '--exclude=*.orig' sw/source/filter/ww8/ww8par5.cxx sw/source/filter/ww8/ww8par5.cxx
+--- sw/source/filter/ww8/ww8par5.cxx	2009-10-09 14:56:35.000000000 +0200
++++ sw/source/filter/ww8/ww8par5.cxx	2009-10-09 10:53:45.000000000 +0200
+@@ -88,22 +88,26 @@
  #include <fmtclds.hxx>
  #include <pagedesc.hxx>
  #include <SwStyleNameMapper.hxx>
@@ -1962,7 +1904,7 @@ index 2cc2fd4..95cafa0 100644
  using namespace std; // #i24377#
  using namespace nsSwDocInfoSubType;
  
-@@ -329,9 +333,11 @@ long SwWW8ImplReader::Read_Book(WW8PLCFManResult*)
+@@ -328,9 +332,11 @@
  
      //"_Toc*" and "_Hlt*" are unnecessary
      const String* pName = pB->GetName();
@@ -1974,7 +1916,7 @@ index 2cc2fd4..95cafa0 100644
  
      //JP 16.11.98: ToUpper darf auf keinen Fall gemacht werden, weil der
      //Bookmark- name ein Hyperlink-Ziel sein kann!
-@@ -673,6 +679,9 @@ sal_uInt16 SwWW8ImplReader::End_Field()
+@@ -672,6 +678,9 @@
      if (!pF || !pF->EndPosIsFieldEnd())
          return nRet;
  
@@ -1984,7 +1926,7 @@ index 2cc2fd4..95cafa0 100644
      ASSERT(!maFieldStack.empty(), "Empty field stack\n");
      if (!maFieldStack.empty())
      {
-@@ -684,9 +693,40 @@ sal_uInt16 SwWW8ImplReader::End_Field()
+@@ -683,9 +692,40 @@
          nRet = maFieldStack.back().mnFieldId;
          switch (nRet)
          {
@@ -2025,7 +1967,7 @@ index 2cc2fd4..95cafa0 100644
              case 36:
              case 68:
                  //Move outside the section associated with this type of field
-@@ -704,6 +744,10 @@ bool AcceptableNestedField(sal_uInt16 nFieldCode)
+@@ -703,6 +743,10 @@
  {
      switch (nFieldCode)
      {
@@ -2036,7 +1978,7 @@ index 2cc2fd4..95cafa0 100644
          case 36:
          case 68:
          case 79:
-@@ -742,6 +786,36 @@ FieldEntry &FieldEntry::operator=(const FieldEntry &rOther) throw()
+@@ -741,6 +785,36 @@
      return *this;
  }
  
@@ -2073,7 +2015,7 @@ index 2cc2fd4..95cafa0 100644
  // Read_Field liest ein Feld ein oder, wenn es nicht gelesen werden kann,
  // wird 0 zurueckgegeben, so dass das Feld vom Aufrufer textuell gelesen wird.
  // Returnwert: Gesamtlaenge des Feldes ( zum UEberlesen )
-@@ -2069,6 +2143,17 @@ eF_ResT SwWW8ImplReader::Read_F_PgRef( WW8FieldDesc*, String& rStr )
+@@ -2073,6 +2147,17 @@
  
      String sName(GetMappedBookmark(sOrigName));
  
@@ -2091,7 +2033,7 @@ index 2cc2fd4..95cafa0 100644
      SwGetRefField aFld(
          (SwGetRefFieldType*)rDoc.GetSysFldType( RES_GETREFFLD ), sName,
          REF_BOOKMARK, 0, REF_PAGE );
-@@ -2767,6 +2852,16 @@ USHORT lcl_GetMaxValidWordTOCLevel(const SwForm &rForm)
+@@ -2771,6 +2856,16 @@
  
  eF_ResT SwWW8ImplReader::Read_F_Tox( WW8FieldDesc* pF, String& rStr )
  {
@@ -2108,7 +2050,7 @@ index 2cc2fd4..95cafa0 100644
      if (pF->nLRes < 3)
          return FLD_TEXT;      // ignore (#i25440#)
  
-@@ -3285,6 +3380,16 @@ eF_ResT SwWW8ImplReader::Read_F_Shape(WW8FieldDesc* /*pF*/, String& /*rStr*/)
+@@ -3289,6 +3384,16 @@
  
  eF_ResT SwWW8ImplReader::Read_F_Hyperlink( WW8FieldDesc* /*pF*/, String& rStr )
  {
@@ -2125,10 +2067,9 @@ index 2cc2fd4..95cafa0 100644
      String sURL, sTarget, sMark;
      bool bDataImport = false;
      //HYPERLINk "filename" [switches]
-diff --git sw/source/ui/docvw/edtwin.cxx sw/source/ui/docvw/edtwin.cxx
-index 2306214..6baa2d6 100644
---- sw/source/ui/docvw/edtwin.cxx
-+++ sw/source/ui/docvw/edtwin.cxx
+diff -urN '--exclude=unxlngi6.pro' '--exclude=*.orig' sw/source/ui/docvw/edtwin.cxx sw/source/ui/docvw/edtwin.cxx
+--- sw/source/ui/docvw/edtwin.cxx	2009-10-09 14:56:43.000000000 +0200
++++ sw/source/ui/docvw/edtwin.cxx	2009-10-09 10:53:45.000000000 +0200
 @@ -152,6 +152,7 @@
  
  #include <IMark.hxx>
@@ -2145,7 +2086,7 @@ index 2306214..6baa2d6 100644
  using namespace ::com::sun::star;
  
  /*--------------------------------------------------------------------
-@@ -4199,7 +4201,7 @@ void SwEditWin::MouseButtonUp(const MouseEvent& rMEvt)
+@@ -4199,7 +4201,7 @@
  
                          SwContentAtPos aCntntAtPos( SwContentAtPos::SW_CLICKFIELD |
                                                      SwContentAtPos::SW_INETATTR |
@@ -2154,7 +2095,7 @@ index 2306214..6baa2d6 100644
  
                          if( rSh.GetContentAtPos( aDocPt, aCntntAtPos, TRUE ) )
                          {
-@@ -4220,7 +4222,33 @@ void SwEditWin::MouseButtonUp(const MouseEvent& rMEvt)
+@@ -4220,7 +4222,33 @@
                                      if ( bExecSmarttags && SwSmartTagMgr::Get().IsSmartTagsEnabled() )
                                          rView.ExecSmartTagPopup( aDocPt );
                              }
@@ -2189,10 +2130,9 @@ index 2306214..6baa2d6 100644
                              {
                                  if ( bExecHyperlinks )
                                      rSh.ClickToINetAttr( *(SwFmtINetFmt*)aCntntAtPos.aFnd.pAttr, nFilter );
-diff --git sw/source/ui/inc/view.hxx sw/source/ui/inc/view.hxx
-index 459346d..75e5b6e 100644
---- sw/source/ui/inc/view.hxx
-+++ sw/source/ui/inc/view.hxx
+diff -urN '--exclude=unxlngi6.pro' '--exclude=*.orig' sw/source/ui/inc/view.hxx sw/source/ui/inc/view.hxx
+--- sw/source/ui/inc/view.hxx	2009-08-13 16:14:46.000000000 +0200
++++ sw/source/ui/inc/view.hxx	2009-10-09 10:53:45.000000000 +0200
 @@ -42,6 +42,7 @@
  #include <swtypes.hxx>
  #include <shellid.hxx>
@@ -2201,7 +2141,7 @@ index 459346d..75e5b6e 100644
  
  class SwBaseShell;
  class Button;
-@@ -94,6 +95,7 @@ struct SwConversionArgs;
+@@ -94,6 +95,7 @@
  class Graphic;
  class GraphicFilter;
  class SwPostItMgr;
@@ -2209,7 +2149,7 @@ index 459346d..75e5b6e 100644
  
  namespace com{ namespace sun { namespace star {
      namespace view{ class XSelectionSupplier; }
-@@ -465,7 +467,7 @@ public:
+@@ -465,7 +467,7 @@
  
      DECL_LINK( SpellError, LanguageType * );
      BOOL 			ExecSpellPopup( const Point& rPt );
@@ -2218,10 +2158,9 @@ index 459346d..75e5b6e 100644
      // SMARTTAGS
      BOOL            ExecSmartTagPopup( const Point& rPt );
  
-diff --git sw/source/ui/inc/wrtsh.hxx sw/source/ui/inc/wrtsh.hxx
-index f9d49cd..b68e16d 100644
---- sw/source/ui/inc/wrtsh.hxx
-+++ sw/source/ui/inc/wrtsh.hxx
+diff -urN '--exclude=unxlngi6.pro' '--exclude=*.orig' sw/source/ui/inc/wrtsh.hxx sw/source/ui/inc/wrtsh.hxx
+--- sw/source/ui/inc/wrtsh.hxx	2009-10-07 17:45:01.000000000 +0200
++++ sw/source/ui/inc/wrtsh.hxx	2009-10-09 10:53:45.000000000 +0200
 @@ -35,6 +35,7 @@
  #include <fesh.hxx>
  #include <sortopt.hxx>
@@ -2230,7 +2169,7 @@ index f9d49cd..b68e16d 100644
  
  class Window;
  class OutputDevice;
-@@ -320,6 +321,9 @@ typedef BOOL (SwWrtShell:: *FNSimpleMove)();
+@@ -322,6 +323,9 @@
      void	InsertTableOf(const SwTOXBase& rTOX, const SfxItemSet* pSet = 0);
      BOOL	UpdateTableOf(const SwTOXBase& rTOX, const SfxItemSet* pSet = 0);
  
@@ -2240,10 +2179,9 @@ index f9d49cd..b68e16d 100644
      // Numerierung und Bullets
      /**
         Turns on numbering or bullets.
-diff --git sw/source/ui/uiview/viewling.cxx sw/source/ui/uiview/viewling.cxx
-index 304457a..39d1595 100644
---- sw/source/ui/uiview/viewling.cxx
-+++ sw/source/ui/uiview/viewling.cxx
+diff -urN '--exclude=unxlngi6.pro' '--exclude=*.orig' sw/source/ui/uiview/viewling.cxx sw/source/ui/uiview/viewling.cxx
+--- sw/source/ui/uiview/viewling.cxx	2009-08-04 15:48:03.000000000 +0200
++++ sw/source/ui/uiview/viewling.cxx	2009-10-09 10:53:45.000000000 +0200
 @@ -114,9 +114,12 @@
  #include <svx/dialogs.hrc>
  
@@ -2257,10 +2195,14 @@ index 304457a..39d1595 100644
  using ::rtl::OUString;
  using namespace ::com::sun::star;
  using namespace ::com::sun::star::beans;
-@@ -931,3 +934,136 @@ sal_Bool SwView::ExecSmartTagPopup( const Point& rPt )
-     return bRet;
- }
+@@ -927,6 +930,139 @@
  
+     pWrtShell->Pop( sal_False );
+     pWrtShell->LockView( bOldViewLock );
++
++    return bRet;
++}
++
 +
 +
 +class SwFieldPopup : public PopupMenu
@@ -2390,15 +2332,13 @@ index 304457a..39d1595 100644
 +
 +    pWrtShell->Pop( sal_False );
 +    pWrtShell->LockView( bOldViewLock );
-+
-+    return bRet;
-+}
-+
-diff --git sw/source/ui/wrtsh/wrtsh1.cxx sw/source/ui/wrtsh/wrtsh1.cxx
-index 75a0bd1..3b9e43b 100644
---- sw/source/ui/wrtsh/wrtsh1.cxx
-+++ sw/source/ui/wrtsh/wrtsh1.cxx
-@@ -113,6 +113,7 @@
+ 
+     return bRet;
+ }
+diff -urN '--exclude=unxlngi6.pro' '--exclude=*.orig' sw/source/ui/wrtsh/wrtsh1.cxx sw/source/ui/wrtsh/wrtsh1.cxx
+--- sw/source/ui/wrtsh/wrtsh1.cxx	2009-10-09 14:56:41.000000000 +0200
++++ sw/source/ui/wrtsh/wrtsh1.cxx	2009-10-09 10:53:45.000000000 +0200
+@@ -112,6 +112,7 @@
  #include <paratr.hxx>
  #include <ndtxt.hxx>
  #include <svx/acorrcfg.hxx>
@@ -2406,7 +2346,7 @@ index 75a0bd1..3b9e43b 100644
  
  // -> #111827#
  #include <SwRewriter.hxx>
-@@ -127,6 +128,7 @@
+@@ -126,6 +127,7 @@
  
  #include "PostItMgr.hxx"
  
@@ -2414,7 +2354,7 @@ index 75a0bd1..3b9e43b 100644
  using namespace com::sun::star;
  
  #define COMMON_INI_LIST \
-@@ -1755,6 +1757,12 @@ SwWrtShell::SwWrtShell( SwWrtShell& rSh, Window *_pWin, SwView &rShell )
+@@ -1756,6 +1758,12 @@
  
      SetSfxViewShell( (SfxViewShell *)&rShell );
      SetFlyMacroLnk( LINK(this, SwWrtShell, ExecFlyMac) );
@@ -2427,11 +2367,10 @@ index 75a0bd1..3b9e43b 100644
  }
  
  
-diff --git sw/source/ui/wrtsh/wrtsh2.cxx sw/source/ui/wrtsh/wrtsh2.cxx
-index 28fd1b6..093f084 100644
---- sw/source/ui/wrtsh/wrtsh2.cxx
-+++ sw/source/ui/wrtsh/wrtsh2.cxx
-@@ -239,6 +239,13 @@ BOOL SwWrtShell::UpdateTableOf(const SwTOXBase& rTOX, const SfxItemSet* pSet)
+diff -urN '--exclude=unxlngi6.pro' '--exclude=*.orig' sw/source/ui/wrtsh/wrtsh2.cxx sw/source/ui/wrtsh/wrtsh2.cxx
+--- sw/source/ui/wrtsh/wrtsh2.cxx	2009-10-07 17:45:01.000000000 +0200
++++ sw/source/ui/wrtsh/wrtsh2.cxx	2009-10-09 10:53:45.000000000 +0200
+@@ -242,6 +242,13 @@
      return bResult;
  }
  
@@ -2445,11 +2384,9 @@ index 28fd1b6..093f084 100644
      // ein Klick aus das angegebene Feld. Der Cursor steht auf diesem.
      // Fuehre die vor definierten Aktionen aus.
  
-diff --git xmloff/inc/xmloff/ecmaflds.hxx xmloff/inc/xmloff/ecmaflds.hxx
-new file mode 100644
-index 0000000..23276b1
---- /dev/null
-+++ xmloff/inc/xmloff/ecmaflds.hxx
+diff -urN '--exclude=unxlngi6.pro' '--exclude=*.orig' xmloff/inc/xmloff/ecmaflds.hxx xmloff/inc/xmloff/ecmaflds.hxx
+--- xmloff/inc/xmloff/ecmaflds.hxx	1970-01-01 01:00:00.000000000 +0100
++++ xmloff/inc/xmloff/ecmaflds.hxx	2009-10-09 10:53:45.000000000 +0200
 @@ -0,0 +1,68 @@
 +/*************************************************************************
 + *
@@ -2519,10 +2456,9 @@ index 0000000..23276b1
 +#define ECMA_PAGEREF "ecma.office-open-xml.field.PAGEREF"
 +
 +#endif /*  _ECMAFLDS_HXX */
-diff --git xmloff/source/text/XMLTextMarkImportContext.cxx xmloff/source/text/XMLTextMarkImportContext.cxx
-index 75bc4c8..6d1b7fe 100644
---- xmloff/source/text/XMLTextMarkImportContext.cxx
-+++ xmloff/source/text/XMLTextMarkImportContext.cxx
+diff -urN '--exclude=unxlngi6.pro' '--exclude=*.orig' xmloff/source/text/XMLTextMarkImportContext.cxx xmloff/source/text/XMLTextMarkImportContext.cxx
+--- xmloff/source/text/XMLTextMarkImportContext.cxx	2009-10-07 17:47:24.000000000 +0200
++++ xmloff/source/text/XMLTextMarkImportContext.cxx	2009-10-09 11:41:16.000000000 +0200
 @@ -41,6 +41,7 @@
  #include <xmloff/xmltoken.hxx>
  #include <xmloff/xmlimp.hxx>
@@ -2531,7 +2467,7 @@ index 75bc4c8..6d1b7fe 100644
  #include "xmlnmspe.hxx"
  #include <com/sun/star/xml/sax/XAttributeList.hpp>
  #include <com/sun/star/text/XTextContent.hpp>
-@@ -136,6 +137,33 @@ static SvXMLEnumMapEntry __READONLY_DATA lcl_aMarkTypeMap[] =
+@@ -138,6 +139,33 @@
      { XML_TOKEN_INVALID,    		0 },
  };
  
@@ -2565,60 +2501,59 @@ index 75bc4c8..6d1b7fe 100644
  void XMLTextMarkImportContext::StartElement(
      const Reference<XAttributeList> & xAttrList)
  {
-@@ -187,7 +215,8 @@ void XMLTextMarkImportContext::EndElement()
+@@ -194,7 +222,8 @@
                  case TypeFieldmark:
                  case TypeBookmark:
                      {
--                        bool bImportAsField=((lcl_MarkType)nTmp==TypeFieldmark && sFieldName.compareToAscii("msoffice.field.FORMCHECKBOX")==0); // for now only import FORMCHECKBOX boxes
-+					        const char *formFieldmarkName=lcl_getFormFieldmarkName(sFieldName);
-+						bool bImportAsField=((lcl_MarkType)nTmp==TypeFieldmark && formFieldmarkName!=NULL); //@TODO handle abbreviation cases..
+-                        bool bImportAsField=((lcl_MarkType)nTmp==TypeFieldmark && m_sFieldName.compareToAscii("msoffice.field.FORMCHECKBOX")==0); // for now only import FORMCHECKBOX boxes
++                        const char *formFieldmarkName=lcl_getFormFieldmarkName(m_sFieldName);
++                        bool bImportAsField=((lcl_MarkType)nTmp==TypeFieldmark && formFieldmarkName!=NULL); //@TODO handle abbreviation cases..
                          // export point bookmark
-                         Reference<XInterface> xIfc=CreateAndInsertMark(GetImport(),
-                                         (bImportAsField?sAPI_formfieldmark:sAPI_bookmark),
-@@ -198,10 +227,8 @@ void XMLTextMarkImportContext::EndElement()
-                             if (xIfc.is() && bImportAsField) {
+                         const Reference<XInterface> xContent(
+                             CreateAndInsertMark(GetImport(),
+@@ -213,10 +242,8 @@
+                             if (xContent.is() && bImportAsField) {
                                  // setup fieldmark...
-                                 Reference< ::com::sun::star::text::XFormField> xFormField(xIfc, UNO_QUERY);
+                                 Reference< ::com::sun::star::text::XFormField> xFormField(xContent, UNO_QUERY);
 -                                xFormField->setType(1); // Checkbox...
-+								xFormField->setFieldType(rtl::OUString::createFromAscii(formFieldmarkName)); 
-                                 if (xFormField.is() && rHelper.hasCurrentFieldCtx()) {
++                                xFormField->setFieldType(rtl::OUString::createFromAscii(formFieldmarkName));
+                                 if (xFormField.is() && m_rHelper.hasCurrentFieldCtx()) {
 -//									xFormField->setDescription(::rtl::OUString::createFromAscii("HELLO CHECKBOX"));
 -//									xFormField->setRes(1); 
-                                     rHelper.setCurrentFieldParamsTo(xFormField);
+                                     m_rHelper.setCurrentFieldParamsTo(xFormField);
                                  }
                              }
-@@ -248,10 +275,6 @@ void XMLTextMarkImportContext::EndElement()
+@@ -263,11 +290,6 @@
                                  xInsertionCursor, UNO_QUERY);
  
-                             bool bImportAsField=((lcl_MarkType)nTmp==TypeFieldmarkEnd && rHelper.hasCurrentFieldCtx());
+                             bool bImportAsField=((lcl_MarkType)nTmp==TypeFieldmarkEnd && m_rHelper.hasCurrentFieldCtx());
 -                            if (bImportAsField) {
--                                ::rtl::OUString currentFieldType=rHelper.getCurrentFieldType();
+-                                ::rtl::OUString currentFieldType =
+-                                    m_rHelper.getCurrentFieldType();
 -                                bImportAsField=currentFieldType.compareToAscii("msoffice.field.FORMTEXT")==0; // for now only import FORMTEXT boxes
 -                            }
  
                              // insert reference
-                             Reference<XInterface> xIfc=CreateAndInsertMark(GetImport(),
-@@ -264,10 +287,12 @@ void XMLTextMarkImportContext::EndElement()
-                                 if (xIfc.is() && bImportAsField) {
+                             const Reference<XInterface> xContent(
+@@ -288,10 +310,12 @@
+                                 if (xContent.is() && bImportAsField) {
                                      // setup fieldmark...
-                                     Reference< ::com::sun::star::text::XFormField> xFormField(xIfc, UNO_QUERY);
+                                     Reference< ::com::sun::star::text::XFormField> xFormField(xContent, UNO_QUERY);
 -                                    xFormField->setType(0); // Text
-                                     if (xFormField.is() && rHelper.hasCurrentFieldCtx()) {
--                                        rHelper.setCurrentFieldParamsTo(xFormField);
+                                     if (xFormField.is() && m_rHelper.hasCurrentFieldCtx()) {
++                                        rtl::OUString givenTypeName=m_rHelper.getCurrentFieldType();
++                                        rtl::OUString fieldmarkTypeName=lcl_getFieldmarkName(givenTypeName);
++
++                                        xFormField->setFieldType(fieldmarkTypeName);
+                                         m_rHelper.setCurrentFieldParamsTo(xFormField);
 -//									xFormField->setDescription(::rtl::OUString::createFromAscii("HELLO"));
-+									    rtl::OUString givenTypeName=rHelper.getCurrentFieldType();
-+									    rtl::OUString fieldmarkTypeName=lcl_getFieldmarkName(givenTypeName);
-+									    
-+									    xFormField->setFieldType(fieldmarkTypeName); 
-+									    rHelper.setCurrentFieldParamsTo(xFormField);
                                      }
                                  }
-                                 rHelper.popFieldCtx();
-diff --git xmloff/source/text/txtimp.cxx xmloff/source/text/txtimp.cxx
-index 2c214fc..18f7e55 100644
---- xmloff/source/text/txtimp.cxx
-+++ xmloff/source/text/txtimp.cxx
-@@ -2310,14 +2310,10 @@ void XMLTextImportHelper::setCurrentFieldParamsTo(::com::sun::star::uno::Referen
+                                 m_rHelper.popFieldCtx();
+diff -urN '--exclude=unxlngi6.pro' '--exclude=*.orig' xmloff/source/text/txtimp.cxx xmloff/source/text/txtimp.cxx
+--- xmloff/source/text/txtimp.cxx	2009-10-09 14:56:37.000000000 +0200
++++ xmloff/source/text/txtimp.cxx	2009-10-09 10:53:45.000000000 +0200
+@@ -2310,14 +2310,10 @@
      if (!aFieldStack.empty() && xFormField.is()) {
          field_params_t &params=aFieldStack.top().second;
          for (field_params_t::iterator i=params.begin();i!=params.end();i++) {
@@ -2637,11 +2572,10 @@ index 2c214fc..18f7e55 100644
          }
      }
  }
-diff --git xmloff/source/text/txtparae.cxx xmloff/source/text/txtparae.cxx
-index 3fe4ffd..85ade59 100644
---- xmloff/source/text/txtparae.cxx
-+++ xmloff/source/text/txtparae.cxx
-@@ -2239,14 +2239,16 @@ void XMLTextParagraphExport::exportTextRangeEnumeration(
+diff -urN '--exclude=unxlngi6.pro' '--exclude=*.orig' xmloff/source/text/txtparae.cxx xmloff/source/text/txtparae.cxx
+--- xmloff/source/text/txtparae.cxx	2009-10-09 14:56:45.000000000 +0200
++++ xmloff/source/text/txtparae.cxx	2009-10-09 10:53:45.000000000 +0200
+@@ -2242,14 +2242,16 @@
                  }
                  Reference< ::com::sun::star::text::XFormField > xFormField(xPropSet->getPropertyValue(sBookmark), UNO_QUERY);
                  if (xFormField.is()) {
@@ -2661,7 +2595,7 @@ index 3fe4ffd..85ade59 100644
                  }
                  GetExport().EndElement(XML_NAMESPACE_FIELD, XML_FIELDMARK_START, sal_False);
              }
-@@ -2263,27 +2265,16 @@ void XMLTextParagraphExport::exportTextRangeEnumeration(
+@@ -2266,27 +2268,16 @@
                  }
                  Reference< ::com::sun::star::text::XFormField > xFormField(xPropSet->getPropertyValue(sBookmark), UNO_QUERY);
                  if (xFormField.is()) {
commit 65a968f42ab13824f15a00f0f7fed6f7ada34476
Author: Cédric Bosdonnat <cedricbosdo at openoffice.org>
Date:   Fri Oct 9 10:36:27 2009 +0200

    Removed oox-fix-abs-relations.diff
    
    * patches/dev300/apply:
    * patches/dev300/oox-fix-abs-relations.diff:
        this patch is no longer needed: fixed upstream

diff --git a/patches/dev300/apply b/patches/dev300/apply
index 64b18c5..b9da83f 100644
--- a/patches/dev300/apply
+++ b/patches/dev300/apply
@@ -2789,9 +2789,6 @@ fix-ppt-linespacing-import-export.diff, n#355302, rodo
 
 sw-allow-negative-spacing.diff, n#364534, freuter
 
-# FIXME: 2009-08-13: Does not apply, huh? --tml
-# oox-fix-abs-relations.diff, n#493528, freuter
-
 # FIXME: These patches no longer apply against dev300-m60.
 #field-patch.diff, n#248354, freuter
 #field-patch-uno-fix.diff, cbosdo
diff --git a/patches/dev300/oox-fix-abs-relations.diff b/patches/dev300/oox-fix-abs-relations.diff
deleted file mode 100644
index e0b139c..0000000
--- a/patches/dev300/oox-fix-abs-relations.diff
+++ /dev/null
@@ -1,11 +0,0 @@
---- /home/freuter/t35/ooo-build/build/ooo310-m7/oox/source/core/relations.cxx	2008-04-10 17:13:28.000000000 +0200
-+++ oox/source/core/relations.cxx	2009-04-09 10:50:20.000000000 +0200
-@@ -90,7 +90,7 @@
- 
-     // absolute target, or empty fragment path -> return target
-     if( (rTarget[ 0 ] == cDirSep) || (maBasePath.getLength() == 0) )
--        return rTarget;
-+        return rTarget.copy(1);
- 
-     sal_Int32 nLastSepPos = maBasePath.lastIndexOf( cDirSep );
-     OUString aPath = (nLastSepPos < 0) ? maBasePath : maBasePath.copy( 0, nLastSepPos );


More information about the ooo-build-commit mailing list