[ooo-build-commit] .: patches/dev300

Cédric Bosdonnat cbosdo at kemper.freedesktop.org
Mon May 31 04:43:43 PDT 2010


 patches/dev300/apply                           |    2 
 patches/dev300/border-types-dotted-dashed.diff | 1654 +++++++++++--------------
 2 files changed, 783 insertions(+), 873 deletions(-)

New commits:
commit 1d05510ae91bd599fbe418bc2d28c48354ad7664
Author: Cédric Bosdonnat <cedricbosdo at openoffice.org>
Date:   Mon May 31 13:36:05 2010 +0200

    Updated the dotted/dashed borders patch to DEV300
    
    * patches/dev300/apply:
    * patches/dev300/border-types-dotted-dashed.diff:

diff --git a/patches/dev300/apply b/patches/dev300/apply
index b9b4b01..8c68437 100644
--- a/patches/dev300/apply
+++ b/patches/dev300/apply
@@ -3720,7 +3720,7 @@ toolbar-decorations-svx-undo-redo.diff
 SectionOwner => cbosdo
 
 #Only adds the dotted / dashed lines
-# FIXME dev300-m77 border-types-dotted-dashed.diff, fate#307731, fate 307730 # needs update
+border-types-dotted-dashed.diff, fate#307731, fate 307730
 
 
 #Adds some more types, and more of unifying the drawing methods
diff --git a/patches/dev300/border-types-dotted-dashed.diff b/patches/dev300/border-types-dotted-dashed.diff
index b021e5c..879d2dd 100644
--- a/patches/dev300/border-types-dotted-dashed.diff
+++ b/patches/dev300/border-types-dotted-dashed.diff
@@ -1,109 +1,75 @@
-From 1350615617dfe6c2ab0ea07d4aeb2b02e844dabb Mon Sep 17 00:00:00 2001
-From: Jan Holesovsky <kendy at suse.cz>
-Date: Fri, 14 May 2010 17:09:29 +0200
-Subject: [PATCH 871/878] border-types-dotted-dashed.diff
-
----
- .../primitive2d/borderlineprimitive2d.hxx          |    7 +-
- .../source/primitive2d/borderlineprimitive2d.cxx   |   35 ++++-
- .../source/xslt/export/uof/odf2uof_spreadsheet.xsl |    8 +-
- filter/source/xslt/export/uof/odf2uof_text.xsl     |    8 +-
- offapi/com/sun/star/table/BorderLine.idl           |    1 -
- offapi/com/sun/star/table/BorderLine2.idl          |   55 +++++++
- offapi/com/sun/star/table/BorderLineStyle.idl      |   63 ++++++++
- offapi/com/sun/star/table/makefile.mk              |    2 +
- oox/inc/oox/helper/helper.hxx                      |    4 +
- oox/inc/oox/xls/stylesbuffer.hxx                   |   12 +-
- oox/source/drawingml/table/tablecell.cxx           |    6 +-
- oox/source/drawingml/table/tableproperties.cxx     |    2 +-
- oox/source/drawingml/table/tablerow.cxx            |    2 +-
- oox/source/xls/stylesbuffer.cxx                    |   55 ++++---
- sc/source/filter/excel/xestyle.cxx                 |   20 +++
- sc/source/filter/excel/xistyle.cxx                 |   33 ++--
- sc/source/filter/html/htmlexp.cxx                  |    9 +-
- sc/source/filter/inc/xlstyle.hxx                   |    3 +
- sc/source/ui/unoobj/cellsuno.cxx                   |   73 +++++-----
- sc/source/ui/view/formatsh.cxx                     |    1 +
- sc/source/ui/view/viewfun2.cxx                     |    2 +
- svtools/inc/borderhelper.hxx                       |   49 ++++++
- svtools/inc/ctrlbox.hxx                            |   39 ++++-
- svtools/prj/d.lst                                  |    1 +
- svtools/source/control/ctrlbox.cxx                 |  147 ++++++++++++++++--
- svtools/source/svrtf/rtfkeywd.hxx                  |    2 +
- svtools/util/makefile.mk                           |    3 +-
- svx/inc/svx/borderline.hxx                         |   14 ++-
- svx/inc/svx/framelink.hxx                          |   25 ++--
- svx/inc/svx/frmsel.hxx                             |    7 +-
- svx/inc/svx/msdffimp.hxx                           |    1 +
- svx/inc/svx/svxids.hrc                             |    2 +
- svx/source/cui/border.cxx                          |   27 +++-
- svx/source/dialog/framelink.cxx                    |  163 ++++++-------------
- svx/source/dialog/frmsel.cxx                       |   39 ++++-
- svx/source/items/frmitems.cxx                      |   34 +++--
- svx/source/msfilter/msdffimp.cxx                   |    6 +
- svx/source/svrtf/rtfitem.cxx                       |    9 +-
- svx/source/table/cell.cxx                          |    3 +-
- svx/source/table/viewcontactoftableobj.cxx         |   12 +-
- svx/source/tbxctrls/tbcontrl.cxx                   |   30 ++++-
- sw/source/core/inc/frame.hxx                       |    3 +-
- sw/source/core/layout/paintfrm.cxx                 |  107 ++++++++++----
- sw/source/filter/html/css1atr.cxx                  |   27 +++-
- sw/source/filter/html/htmltabw.cxx                 |   18 +--
- sw/source/filter/html/svxcss1.cxx                  |   12 +-
- sw/source/filter/html/wrthtml.hxx                  |    1 +
- sw/source/filter/rtf/rtfatr.cxx                    |   27 +++-
- sw/source/filter/rtf/swparrtf.cxx                  |    4 +
- sw/source/filter/rtf/wrtrtf.cxx                    |   15 ++-
- sw/source/filter/ww1/w1sprm.cxx                    |   10 ++
- sw/source/filter/ww8/docxattributeoutput.cxx       |   14 ++
- sw/source/filter/ww8/wrtw8esh.cxx                  |   15 ++
- sw/source/filter/ww8/ww8atr.cxx                    |   20 +++
- sw/source/filter/ww8/ww8graf.cxx                   |   60 +++++---
- sw/source/filter/ww8/ww8graf2.cxx                  |    4 +-
- sw/source/filter/ww8/ww8par.cxx                    |    4 +-
- sw/source/filter/ww8/ww8par.hxx                    |    4 +-
- sw/source/filter/ww8/ww8par6.cxx                   |   11 +-
- sw/source/filter/ww8/ww8scan.cxx                   |    2 +-
- sw/source/filter/ww8/ww8struc.hxx                  |    4 +
- sw/source/filter/xml/xmlexpit.cxx                  |   14 ++-
- sw/source/filter/xml/xmlithlp.cxx                  |   25 +++-
- writerfilter/source/dmapper/BorderHandler.cxx      |    6 +-
- writerfilter/source/dmapper/BorderHandler.hxx      |    6 +-
- writerfilter/source/dmapper/CellColorHandler.hxx   |    2 -
- writerfilter/source/dmapper/ConversionHelper.cxx   |   61 +++++---
- writerfilter/source/dmapper/ConversionHelper.hxx   |    7 +-
- writerfilter/source/dmapper/DomainMapper.cxx       |   10 +-
- .../source/dmapper/DomainMapperTableHandler.cxx    |    3 +-
- writerfilter/source/dmapper/DomainMapper_Impl.cxx  |    4 +-
- writerfilter/source/dmapper/GraphicImport.cxx      |    4 +-
- writerfilter/source/dmapper/PageBordersHandler.hxx |    4 +-
- writerfilter/source/dmapper/PropertyMap.cxx        |    6 +-
- writerfilter/source/dmapper/PropertyMap.hxx        |    6 +-
- writerfilter/source/dmapper/TDefTableHandler.cxx   |    4 +-
- writerfilter/source/dmapper/TDefTableHandler.hxx   |   19 +--
- xmloff/source/style/PageMasterExportPropMapper.cxx |   11 +-
- xmloff/source/style/PageMasterImportPropMapper.cxx |   14 +-
- xmloff/source/style/bordrhdl.cxx                   |   54 ++++++-
- xmloff/source/text/txtexppr.cxx                    |   16 ++-
- xmloff/source/text/txtimppr.cxx                    |   10 +-
- 82 files changed, 1188 insertions(+), 474 deletions(-)
- create mode 100644 offapi/com/sun/star/table/BorderLine2.idl
- create mode 100644 offapi/com/sun/star/table/BorderLineStyle.idl
- create mode 100644 svtools/inc/borderhelper.hxx
-
-diff --git a/drawinglayer/inc/drawinglayer/primitive2d/borderlineprimitive2d.hxx b/drawinglayer/inc/drawinglayer/primitive2d/borderlineprimitive2d.hxx
-index d3d7553..bea1ca3 100644
---- a/drawinglayer/inc/drawinglayer/primitive2d/borderlineprimitive2d.hxx
-+++ b/drawinglayer/inc/drawinglayer/primitive2d/borderlineprimitive2d.hxx
-@@ -51,6 +51,7 @@ namespace drawinglayer
-             double											mfExtendOuterStart;
-             double											mfExtendOuterEnd;
+diff --git cui/source/tabpages/border.cxx cui/source/tabpages/border.cxx
+index 48aac82..e1ac8fc 100644
+--- cui/source/tabpages/border.cxx
++++ cui/source/tabpages/border.cxx
+@@ -565,9 +565,10 @@ void SvxBorderTabPage::Reset( const SfxItemSet& rSet )
+     {
+         // Do all visible lines show the same line widths?
+         USHORT nPrim, nDist, nSecn;
+-        bool bWidthEq = aFrameSel.GetVisibleWidth( nPrim, nDist, nSecn );
++        SvxBorderStyle nStyle;
++        bool bWidthEq = aFrameSel.GetVisibleWidth( nPrim, nDist, nSecn, nStyle );
+         if( bWidthEq )
+-            aLbLineStyle.SelectEntry( nPrim * 100, nSecn * 100, nDist * 100 );
++            aLbLineStyle.SelectEntry( nPrim * 100, nSecn * 100, nDist * 100, nStyle );
+         else
+             aLbLineStyle.SelectEntryPos( 1 );
+ 
+@@ -932,13 +933,31 @@ IMPL_LINK( SvxBorderTabPage, SelColHdl_Impl, ListBox *, pLb )
+ 
+ // -----------------------------------------------------------------------
+ 
++SvxBorderStyle lcl_getBorderStyle( USHORT nStyle )
++{
++    SvxBorderStyle nResult = SOLID;
++    switch ( nStyle )
++    {
++        case STYLE_DOTTED:
++            nResult = DOTTED;
++            break;
++        case STYLE_DASHED:
++            nResult = DASHED;
++            break;
++        default:
++            nResult = SOLID;
++    }
++    return nResult;
++}
++
+ IMPL_LINK( SvxBorderTabPage, SelStyleHdl_Impl, ListBox *, pLb )
+ {
+     if ( pLb == &aLbLineStyle )
+         aFrameSel.SetStyleToSelection(
+             static_cast< USHORT >( aLbLineStyle.GetSelectEntryLine1() / 100 ),
+             static_cast< USHORT >( aLbLineStyle.GetSelectEntryDistance() / 100 ),
+-            static_cast< USHORT >( aLbLineStyle.GetSelectEntryLine2() / 100 ) );
++            static_cast< USHORT >( aLbLineStyle.GetSelectEntryLine2() / 100 ),
++            lcl_getBorderStyle( aLbLineStyle.GetSelectEntryStyle() ) );
+ 
+     return 0;
+ }
+@@ -1102,6 +1121,8 @@ void SvxBorderTabPage::FillLineListBox_Impl()
+ 
+     aLbLineStyle.InsertEntry( LINE_WIDTH0 );
+     aLbLineStyle.InsertEntry( LINE_WIDTH5 );
++    aLbLineStyle.InsertEntry( LINE_WIDTH5, 0, 0, STYLE_DOTTED );
++    aLbLineStyle.InsertEntry( LINE_WIDTH5, 0, 0, STYLE_DASHED );
+     aLbLineStyle.InsertEntry( LINE_WIDTH1 );
+     aLbLineStyle.InsertEntry( LINE_WIDTH2 );
+     aLbLineStyle.InsertEntry( LINE_WIDTH3 );
+diff --git drawinglayer/inc/drawinglayer/primitive2d/borderlineprimitive2d.hxx drawinglayer/inc/drawinglayer/primitive2d/borderlineprimitive2d.hxx
+index 07a1f8b..8a13430 100644
+--- drawinglayer/inc/drawinglayer/primitive2d/borderlineprimitive2d.hxx
++++ drawinglayer/inc/drawinglayer/primitive2d/borderlineprimitive2d.hxx
+@@ -66,6 +66,7 @@ namespace drawinglayer
+ 
+             /// the line color
              basegfx::BColor									maRGBColor;
 +            short                                           mnStyle;
  
-             // bitfield
-             unsigned										mbCreateInside : 1;
-@@ -114,7 +115,8 @@ namespace drawinglayer
+             /// bitfield
+             /// flags to influence inside/outside creation
+@@ -131,7 +132,8 @@ namespace drawinglayer
                  double fExtendOuterEnd,
                  bool bCreateInside,
                  bool bCreateOutside,
@@ -111,9 +77,9 @@ index d3d7553..bea1ca3 100644
 +                const basegfx::BColor& rRGBColor,
 +                const short nStyle );
  
-             // get data
+             /// data read access
              const basegfx::B2DPoint& getStart() const { return maStart; }
-@@ -128,7 +130,8 @@ namespace drawinglayer
+@@ -145,7 +147,8 @@ namespace drawinglayer
              double getExtendOuterEnd() const { return mfExtendOuterEnd; }
              bool getCreateInside() const { return mbCreateInside; }
              bool getCreateOutside() const { return mbCreateOutside; }
@@ -121,12 +87,12 @@ index d3d7553..bea1ca3 100644
 +            const basegfx::BColor& getRGBColor () const { return maRGBColor; }
 +            short getStyle () const { return mnStyle; }
  
-             // compare operator
+             /// compare operator
              virtual bool operator==(const BasePrimitive2D& rPrimitive) const;
-diff --git a/drawinglayer/source/primitive2d/borderlineprimitive2d.cxx b/drawinglayer/source/primitive2d/borderlineprimitive2d.cxx
-index ed308db..72fe19e 100644
---- a/drawinglayer/source/primitive2d/borderlineprimitive2d.cxx
-+++ b/drawinglayer/source/primitive2d/borderlineprimitive2d.cxx
+diff --git drawinglayer/source/primitive2d/borderlineprimitive2d.cxx drawinglayer/source/primitive2d/borderlineprimitive2d.cxx
+index 088f9bb..5dafced 100644
+--- drawinglayer/source/primitive2d/borderlineprimitive2d.cxx
++++ drawinglayer/source/primitive2d/borderlineprimitive2d.cxx
 @@ -33,6 +33,7 @@
  #include <basegfx/polygon/b2dpolygon.hxx>
  #include <drawinglayer/primitive2d/polygonprimitive2d.hxx>
@@ -177,8 +143,8 @@ index ed308db..72fe19e 100644
              bool bCreateOutside,
 -            const basegfx::BColor& rRGBColor)
 +            const basegfx::BColor& rRGBColor,
-+            short nStyle)
-         :	BasePrimitive2D(),
++            const short nStyle)
+         :	BufferedDecompositionPrimitive2D(),
              maStart(rStart),
              maEnd(rEnd),
 @@ -197,6 +214,7 @@ namespace drawinglayer
@@ -199,10 +165,244 @@ index ed308db..72fe19e 100644
              }
  
              return false;
-diff --git a/filter/source/xslt/export/uof/odf2uof_spreadsheet.xsl b/filter/source/xslt/export/uof/odf2uof_spreadsheet.xsl
+diff --git editeng/inc/editeng/borderline.hxx editeng/inc/editeng/borderline.hxx
+index 78d173b..88458fa 100644
+--- editeng/inc/editeng/borderline.hxx
++++ editeng/inc/editeng/borderline.hxx
+@@ -90,6 +90,13 @@
+ 
+ // ============================================================================
+ 
++enum SvxBorderStyle
++{
++    SOLID,
++    DOTTED,
++    DASHED
++};
++
+ class EDITENG_DLLPUBLIC SvxBorderLine
+ {
+ protected:
+@@ -97,9 +104,11 @@ protected:
+     USHORT nOutWidth;
+     USHORT nInWidth;
+     USHORT nDistance;
++    SvxBorderStyle   m_nStyle;
+ 
+ public:
+-    SvxBorderLine( const Color *pCol = 0, USHORT nOut = 0, USHORT nIn = 0, USHORT nDist = 0 );
++    SvxBorderLine( const Color *pCol = 0, USHORT nOut = 0, USHORT nIn = 0, USHORT nDist = 0,
++           SvxBorderStyle nStyle = SOLID );
+     SvxBorderLine( const SvxBorderLine& r );
+ 
+     SvxBorderLine& operator=( const SvxBorderLine& r );
+@@ -109,10 +118,13 @@ public:
+     USHORT 			GetInWidth() const { return nInWidth; }
+     USHORT 			GetDistance() const { return nDistance; }
+ 
++    SvxBorderStyle  GetStyle() const { return m_nStyle; }
++
+     void 			SetColor( const Color &rColor ) { aColor = rColor; }
+     void			SetOutWidth( USHORT nNew ) { nOutWidth = nNew; }
+     void			SetInWidth( USHORT nNew ) { nInWidth = nNew;  }
+     void			SetDistance( USHORT nNew ) { nDistance = nNew; }
++    void            SetStyle( SvxBorderStyle nNew ) { m_nStyle = nNew; }
+     void			ScaleMetrics( long nMult, long nDiv );
+ 
+     BOOL			operator==( const SvxBorderLine &rCmp ) const;
+diff --git editeng/inc/editeng/boxitem.hxx editeng/inc/editeng/boxitem.hxx
+index d85f7c2..03671cd 100644
+--- editeng/inc/editeng/boxitem.hxx
++++ editeng/inc/editeng/boxitem.hxx
+@@ -30,7 +30,7 @@
+ #include <svl/poolitem.hxx>
+ #include <editeng/borderline.hxx>
+ #include <editeng/editengdllapi.h>
+-#include <com/sun/star/table/BorderLine.hpp>
++#include <com/sun/star/table/BorderLine2.hpp>
+ 
+ namespace rtl { class OUString; }
+ 
+@@ -106,7 +106,7 @@ public:
+         //JP 09.06.99: bIgnoreLine = TRUE -> Distance auch returnen, wenn
+         //							keine Line gesetzt ist
+     USHORT 	CalcLineSpace( USHORT nLine, BOOL bIgnoreLine = FALSE ) const;
+-    static com::sun::star::table::BorderLine SvxLineToLine( const SvxBorderLine* pLine, sal_Bool bConvert );
++    static com::sun::star::table::BorderLine2 SvxLineToLine( const SvxBorderLine* pLine, sal_Bool bConvert );
+     static sal_Bool LineToSvxLine(const ::com::sun::star::table::BorderLine& rLine, SvxBorderLine& rSvxLine, sal_Bool bConvert);
+ };
+ 
+diff --git editeng/inc/editeng/memberids.hrc editeng/inc/editeng/memberids.hrc
+index e9cb0b5..0a4ac48 100644
+--- editeng/inc/editeng/memberids.hrc
++++ editeng/inc/editeng/memberids.hrc
+@@ -41,6 +41,8 @@
+ #define MID_OUTER_WIDTH         0x41
+ #define MID_INNER_WIDTH         0x35
+ #define MID_LINESPACE           0x3b
++#define MID_LINE_STYLE          0x90
++
+ 
+ //NameOrIndex
+ #define MID_NAME				16
+diff --git editeng/source/items/frmitems.cxx editeng/source/items/frmitems.cxx
+index 00a7cfb..b335b0a 100644
+--- editeng/source/items/frmitems.cxx
++++ editeng/source/items/frmitems.cxx
+@@ -40,6 +40,7 @@
+ #include <com/sun/star/table/TableOrientation.hpp>
+ #include <com/sun/star/util/SortField.hpp>
+ #include <com/sun/star/util/SortFieldType.hpp>
++#include <com/sun/star/table/BorderLine2.hpp>
+ #include <com/sun/star/table/CellOrientation.hpp>
+ #include <com/sun/star/table/CellAddress.hpp>
+ #include <com/sun/star/style/PageStyleLayout.hpp>
+@@ -1565,10 +1566,12 @@ void SvxShadowItem::SetEnumValue( sal_uInt16 nVal )
+ 
+ // class SvxBorderLine  --------------------------------------------------
+ 
+-SvxBorderLine::SvxBorderLine( const Color *pCol, sal_uInt16 nOut, sal_uInt16 nIn, sal_uInt16 nDist )
++SvxBorderLine::SvxBorderLine( const Color *pCol, sal_uInt16 nOut, sal_uInt16 nIn, sal_uInt16 nDist,
++       SvxBorderStyle nStyle )
+ : nOutWidth( nOut )
+ , nInWidth ( nIn )
+ , nDistance( nDist )
++, m_nStyle( nStyle )
+ {
+     if ( pCol )
+         aColor = *pCol;
+@@ -1589,6 +1592,7 @@ SvxBorderLine& SvxBorderLine::operator=( const SvxBorderLine& r )
+     nOutWidth = r.nOutWidth;
+     nInWidth = r.nInWidth;
+     nDistance = r.nDistance;
++    m_nStyle = r.m_nStyle;
+     return *this;
+ }
+ 
+@@ -1608,7 +1612,8 @@ sal_Bool SvxBorderLine::operator==( const SvxBorderLine& rCmp ) const
+     return ( ( aColor    == rCmp.GetColor() ) 	 &&
+              ( nInWidth  == rCmp.GetInWidth() )  &&
+              ( nOutWidth == rCmp.GetOutWidth() ) &&
+-             ( nDistance == rCmp.GetDistance() ) );
++             ( nDistance == rCmp.GetDistance() ) &&
++             ( m_nStyle == rCmp.GetStyle() ) );
+ }
+ 
+ // -----------------------------------------------------------------------
+@@ -1825,15 +1830,16 @@ int SvxBoxItem::operator==( const SfxPoolItem& rAttr ) const
+ }
+ 
+ // -----------------------------------------------------------------------
+-table::BorderLine SvxBoxItem::SvxLineToLine(const SvxBorderLine* pLine, sal_Bool bConvert)
++table::BorderLine2 SvxBoxItem::SvxLineToLine(const SvxBorderLine* pLine, sal_Bool bConvert)
+ {
+-    table::BorderLine aLine;
++    table::BorderLine2 aLine;
+     if(pLine)
+     {
+         aLine.Color			 = pLine->GetColor().GetColor() ;
+         aLine.InnerLineWidth = sal_uInt16( bConvert ? TWIP_TO_MM100_UNSIGNED(pLine->GetInWidth() ): pLine->GetInWidth() );
+         aLine.OuterLineWidth = sal_uInt16( bConvert ? TWIP_TO_MM100_UNSIGNED(pLine->GetOutWidth()): pLine->GetOutWidth() );
+         aLine.LineDistance   = sal_uInt16( bConvert ? TWIP_TO_MM100_UNSIGNED(pLine->GetDistance()): pLine->GetDistance() );
++        aLine.LineStyle      = pLine->GetStyle( );
+     }
+     else
+         aLine.Color			 = aLine.InnerLineWidth = aLine.OuterLineWidth = aLine.LineDistance	 = 0;
+@@ -1843,7 +1849,7 @@ table::BorderLine SvxBoxItem::SvxLineToLine(const SvxBorderLine* pLine, sal_Bool
+ sal_Bool SvxBoxItem::QueryValue( uno::Any& rVal, BYTE nMemberId  ) const
+ {
+     sal_Bool bConvert = 0!=(nMemberId&CONVERT_TWIPS);
+-    table::BorderLine aRetLine;
++    table::BorderLine2 aRetLine;
+     sal_uInt16 nDist = 0;
+     sal_Bool bDistMember = sal_False;
+     nMemberId &= ~CONVERT_TWIPS;
+@@ -2780,7 +2786,7 @@ void SvxBoxInfoItem::ResetFlags()
+ sal_Bool SvxBoxInfoItem::QueryValue( uno::Any& rVal, BYTE nMemberId  ) const
+ {
+     sal_Bool bConvert = 0!=(nMemberId&CONVERT_TWIPS);
+-    table::BorderLine aRetLine;
++    table::BorderLine2 aRetLine;
+     sal_Int16 nVal=0;
+     sal_Bool bIntMember = sal_False;
+     nMemberId &= ~CONVERT_TWIPS;
+@@ -3321,6 +3327,7 @@ sal_Bool SvxLineItem::PutValue( const uno::Any& rVal, BYTE nMemId )
+             case MID_OUTER_WIDTH:   pLine->SetOutWidth((USHORT)nVal);   break;
+             case MID_INNER_WIDTH:   pLine->SetInWidth((USHORT)nVal);   break;
+             case MID_DISTANCE:      pLine->SetDistance((USHORT)nVal);   break;
++            case MID_LINE_STYLE:    pLine->SetStyle((SvxBorderStyle)nVal); break;
+             default:
+                 DBG_ERROR( "Wrong MemberId" );
+                 return sal_False;
+diff --git editeng/source/rtf/rtfitem.cxx editeng/source/rtf/rtfitem.cxx
+index ce2adc3..4334b0f 100644
+--- editeng/source/rtf/rtfitem.cxx
++++ editeng/source/rtf/rtfitem.cxx
+@@ -1627,10 +1627,15 @@ case RTF_BRDRBAR:			break;
+             }
+             goto SETBORDERLINE;
+ 
+-        case RTF_BRDRS:
+         case RTF_BRDRDOT:
+-        case RTF_BRDRHAIR:
++            aBrd.SetStyle( DOTTED );
++            break;
+         case RTF_BRDRDASH:
++            aBrd.SetStyle( DASHED );
++            break;
++        case RTF_BRDRS:
++        case RTF_BRDRHAIR:
++            aBrd.SetStyle( SOLID );
+ SETBORDERLINE:
+             SetBorderLine( nBorderTyp, aAttr, aBrd );
+             break;
+diff --git filter/inc/filter/msfilter/msdffimp.hxx filter/inc/filter/msfilter/msdffimp.hxx
+index 67571fb..9d2026e 100644
+--- filter/inc/filter/msfilter/msdffimp.hxx
++++ filter/inc/filter/msfilter/msdffimp.hxx
+@@ -289,6 +289,7 @@ struct MSFILTER_DLLPUBLIC SvxMSDffImportRec
+     ULONG		nShapeId;
+     MSO_SPT		eShapeType;
+     MSO_LineStyle eLineStyle;	// Umrandungs-Arten
++    MSO_LineDashing eLineDashing;
+     BOOL		bDrawHell		:1;
+     BOOL		bHidden			:1;
+     BOOL		bReplaceByFly	:1;
+diff --git filter/source/msfilter/msdffimp.cxx filter/source/msfilter/msdffimp.cxx
+index 1c4b59c..dcc37a0 100644
+--- filter/source/msfilter/msdffimp.cxx
++++ filter/source/msfilter/msdffimp.cxx
+@@ -6023,6 +6023,10 @@ SdrObject* SvxMSDffManager::ProcessObj(SvStream& rSt,
+                             : (MSO_LineStyle)USHRT_MAX;
+         pTextImpRec->eLineStyle = pImpRec->eLineStyle;
+ 
++        pImpRec->eLineDashing = (MSO_LineDashing)GetPropertyValue(
++                DFF_Prop_lineDashing, mso_lineSolid );
++        pTextImpRec->eLineDashing = pImpRec->eLineDashing;
++
+         if( pImpRec->nShapeId )
+         {
+             // Import-Record-Liste ergaenzen
+@@ -8062,6 +8066,7 @@ SvxMSDffImportRec::SvxMSDffImportRec()
+       eShapeType( mso_sptNil )
+ {
+       eLineStyle      = mso_lineSimple; // GPF-Bug #66227#
++      eLineDashing    = mso_lineSolid;
+       bDrawHell       = FALSE;
+       bHidden         = FALSE;
+ //	  bInGroup		  = FALSE;
+@@ -8109,6 +8114,7 @@ SvxMSDffImportRec::SvxMSDffImportRec(const SvxMSDffImportRec& rCopy)
+        *pYRelTo = *(rCopy.pYRelTo);
+     }
+     eLineStyle       = rCopy.eLineStyle; // GPF-Bug #66227#
++    eLineDashing     = rCopy.eLineDashing;
+     bDrawHell        = rCopy.bDrawHell;
+     bHidden          = rCopy.bHidden;
+ //			bInGroup		 = rCopy.bInGroup;
+diff --git filter/source/xslt/export/uof/odf2uof_spreadsheet.xsl filter/source/xslt/export/uof/odf2uof_spreadsheet.xsl
 index 1507305..78a37f9 100644
---- a/filter/source/xslt/export/uof/odf2uof_spreadsheet.xsl
-+++ b/filter/source/xslt/export/uof/odf2uof_spreadsheet.xsl
+--- filter/source/xslt/export/uof/odf2uof_spreadsheet.xsl
++++ filter/source/xslt/export/uof/odf2uof_spreadsheet.xsl
 @@ -4262,7 +4262,7 @@
  				<xsl:element name="uof:å·¦">
  					<xsl:attribute name="uof:locID">u0057</xsl:attribute>
@@ -239,10 +439,10 @@ index 1507305..78a37f9 100644
  					<xsl:if test="$border!='none'">
  						<xsl:attribute name="uof:宽度"><xsl:value-of select="substring-before(substring-before($border,' '),$uofUnit)"/></xsl:attribute>
  						<xsl:attribute name="uof:颜色"><xsl:value-of select="substring-after(substring-after($border,' '),' ')"/></xsl:attribute>
-diff --git a/filter/source/xslt/export/uof/odf2uof_text.xsl b/filter/source/xslt/export/uof/odf2uof_text.xsl
+diff --git filter/source/xslt/export/uof/odf2uof_text.xsl filter/source/xslt/export/uof/odf2uof_text.xsl
 index cea93c8..04596c4 100644
---- a/filter/source/xslt/export/uof/odf2uof_text.xsl
-+++ b/filter/source/xslt/export/uof/odf2uof_text.xsl
+--- filter/source/xslt/export/uof/odf2uof_text.xsl
++++ filter/source/xslt/export/uof/odf2uof_text.xsl
 @@ -3248,7 +3248,7 @@
  		<xsl:element name="uof:å·¦">
  			<xsl:attribute name="uof:locID">u0057</xsl:attribute>
@@ -279,10 +479,10 @@ index cea93c8..04596c4 100644
  			<xsl:if test="$border!='none'">
  				<xsl:attribute name="uof:宽度"><xsl:value-of select="substring-before(substring-before($border,' '),substring($ooUnit,1,2))"/></xsl:attribute>
  				<xsl:attribute name="uof:颜色"><xsl:value-of select="substring-after(substring-after($border,' '),' ')"/></xsl:attribute>
-diff --git a/offapi/com/sun/star/table/BorderLine.idl b/offapi/com/sun/star/table/BorderLine.idl
-index 81e71b4..c40a416 100644
---- a/offapi/com/sun/star/table/BorderLine.idl
-+++ b/offapi/com/sun/star/table/BorderLine.idl
+diff --git offapi/com/sun/star/table/BorderLine.idl offapi/com/sun/star/table/BorderLine.idl
+index 96d1a68..0ecd6da 100644
+--- offapi/com/sun/star/table/BorderLine.idl
++++ offapi/com/sun/star/table/BorderLine.idl
 @@ -71,7 +71,6 @@ published struct BorderLine
          double line (in 1/100 mm).
       */
@@ -291,11 +491,11 @@ index 81e71b4..c40a416 100644
  };
  
  //=============================================================================
-diff --git a/offapi/com/sun/star/table/BorderLine2.idl b/offapi/com/sun/star/table/BorderLine2.idl
+diff --git offapi/com/sun/star/table/BorderLine2.idl offapi/com/sun/star/table/BorderLine2.idl
 new file mode 100644
 index 0000000..4627305
 --- /dev/null
-+++ b/offapi/com/sun/star/table/BorderLine2.idl
++++ offapi/com/sun/star/table/BorderLine2.idl
 @@ -0,0 +1,55 @@
 +/*************************************************************************
 + *
@@ -352,11 +552,11 @@ index 0000000..4627305
 +}; }; }; };
 +
 +#endif
-diff --git a/offapi/com/sun/star/table/BorderLineStyle.idl b/offapi/com/sun/star/table/BorderLineStyle.idl
+diff --git offapi/com/sun/star/table/BorderLineStyle.idl offapi/com/sun/star/table/BorderLineStyle.idl
 new file mode 100644
 index 0000000..1914373
 --- /dev/null
-+++ b/offapi/com/sun/star/table/BorderLineStyle.idl
++++ offapi/com/sun/star/table/BorderLineStyle.idl
 @@ -0,0 +1,63 @@
 +/*************************************************************************
 + *
@@ -421,10 +621,10 @@ index 0000000..1914373
 +}; }; }; };
 +
 +#endif
-diff --git a/offapi/com/sun/star/table/makefile.mk b/offapi/com/sun/star/table/makefile.mk
-index b9ceafe..53151a8 100644
---- a/offapi/com/sun/star/table/makefile.mk
-+++ b/offapi/com/sun/star/table/makefile.mk
+diff --git offapi/com/sun/star/table/makefile.mk offapi/com/sun/star/table/makefile.mk
+index 605a7a9..9b7e185 100644
+--- offapi/com/sun/star/table/makefile.mk
++++ offapi/com/sun/star/table/makefile.mk
 @@ -41,6 +41,8 @@ IDLFILES=\
      AccessibleCellView.idl      \
      AccessibleTableView.idl	\
@@ -434,10 +634,10 @@ index b9ceafe..53151a8 100644
      Cell.idl\
      CellAddress.idl\
      CellContentType.idl\
-diff --git a/oox/inc/oox/helper/helper.hxx b/oox/inc/oox/helper/helper.hxx
-index f090fbe..dcd7f2d 100644
---- a/oox/inc/oox/helper/helper.hxx
-+++ b/oox/inc/oox/helper/helper.hxx
+diff --git oox/inc/oox/helper/helper.hxx oox/inc/oox/helper/helper.hxx
+index 1baceb1..c3b4c38 100644
+--- oox/inc/oox/helper/helper.hxx
++++ oox/inc/oox/helper/helper.hxx
 @@ -75,6 +75,10 @@ const sal_Int32 API_RGB_TRANSPARENT         = -1;       /// Transparent color fo
  const sal_Int32 API_RGB_BLACK               = 0x000000;  /// Black color for API calls.
  const sal_Int32 API_RGB_WHITE               = 0xFFFFFF;  /// White color for API calls.
@@ -449,10 +649,10 @@ index f090fbe..dcd7f2d 100644
  const sal_Int16 API_LINE_NONE               = 0;
  const sal_Int16 API_LINE_HAIR               = 2;
  const sal_Int16 API_LINE_THIN               = 35;
-diff --git a/oox/inc/oox/xls/stylesbuffer.hxx b/oox/inc/oox/xls/stylesbuffer.hxx
-index b66b45a..4a581cf 100644
---- a/oox/inc/oox/xls/stylesbuffer.hxx
-+++ b/oox/inc/oox/xls/stylesbuffer.hxx
+diff --git oox/inc/oox/xls/stylesbuffer.hxx oox/inc/oox/xls/stylesbuffer.hxx
+index fed1a93..fb36a5a 100644
+--- oox/inc/oox/xls/stylesbuffer.hxx
++++ oox/inc/oox/xls/stylesbuffer.hxx
 @@ -33,7 +33,7 @@
  #include <com/sun/star/table/CellHoriJustify.hpp>
  #include <com/sun/star/table/CellOrientation.hpp>
@@ -478,7 +678,7 @@ index b66b45a..4a581cf 100644
      ApiBorderLine       maTLtoBR;           /// Diagonal top-left to bottom-right line format.
      ApiBorderLine       maBLtoTR;           /// Diagonal bottom-left to top-right line format.
      bool                mbBorderUsed;       /// True = left/right/top/bottom line format used.
-@@ -556,7 +558,7 @@ private:
+@@ -566,7 +568,7 @@ private:
  
      /** Converts border line data to an API struct, returns true, if the line is marked as used. */
      bool                convertBorderLine(
@@ -487,10 +687,10 @@ index b66b45a..4a581cf 100644
                              const BorderLineModel& rModel );
  
  private:
-diff --git a/oox/source/drawingml/table/tablecell.cxx b/oox/source/drawingml/table/tablecell.cxx
-index ea0e40a..1f5cec6 100644
---- a/oox/source/drawingml/table/tablecell.cxx
-+++ b/oox/source/drawingml/table/tablecell.cxx
+diff --git oox/source/drawingml/table/tablecell.cxx oox/source/drawingml/table/tablecell.cxx
+index 117acb8..5c625f4 100644
+--- oox/source/drawingml/table/tablecell.cxx
++++ oox/source/drawingml/table/tablecell.cxx
 @@ -37,7 +37,7 @@
  #include <com/sun/star/beans/XMultiPropertySet.hpp>
  #include <com/sun/star/table/XTable.hpp>
@@ -518,10 +718,10 @@ index ea0e40a..1f5cec6 100644
      if( rLineProperties.maLineFill.moFillType.differsFrom( XML_noFill ) )
      {
          Color aColor = rLineProperties.maLineFill.getBestSolidColor();
-diff --git a/oox/source/drawingml/table/tableproperties.cxx b/oox/source/drawingml/table/tableproperties.cxx
-index 1241655..6651254 100644
---- a/oox/source/drawingml/table/tableproperties.cxx
-+++ b/oox/source/drawingml/table/tableproperties.cxx
+diff --git oox/source/drawingml/table/tableproperties.cxx oox/source/drawingml/table/tableproperties.cxx
+index 5c0af81..9357c9f 100644
+--- oox/source/drawingml/table/tableproperties.cxx
++++ oox/source/drawingml/table/tableproperties.cxx
 @@ -32,7 +32,7 @@
  #include <com/sun/star/beans/XMultiPropertySet.hpp>
  #include <com/sun/star/lang/XMultiServiceFactory.hpp>
@@ -531,10 +731,10 @@ index 1241655..6651254 100644
  #include "oox/core/namespaces.hxx"
  #include "oox/core/xmlfilterbase.hxx"
  #include "oox/helper/propertyset.hxx"
-diff --git a/oox/source/drawingml/table/tablerow.cxx b/oox/source/drawingml/table/tablerow.cxx
-index 8986a6e..a8c1b25 100644
---- a/oox/source/drawingml/table/tablerow.cxx
-+++ b/oox/source/drawingml/table/tablerow.cxx
+diff --git oox/source/drawingml/table/tablerow.cxx oox/source/drawingml/table/tablerow.cxx
+index af53830..0184a7e 100644
+--- oox/source/drawingml/table/tablerow.cxx
++++ oox/source/drawingml/table/tablerow.cxx
 @@ -34,7 +34,7 @@
  #include "oox/helper/propertyset.hxx"
  #include <com/sun/star/table/XTable.hpp>
@@ -544,19 +744,70 @@ index 8986a6e..a8c1b25 100644
  
  using rtl::OUString;
  using namespace ::oox::core;
-diff --git a/oox/source/xls/stylesbuffer.cxx b/oox/source/xls/stylesbuffer.cxx
-index 4c28fb5..50281e9 100644
---- a/oox/source/xls/stylesbuffer.cxx
-+++ b/oox/source/xls/stylesbuffer.cxx
-@@ -71,6 +71,7 @@ using ::com::sun::star::awt::FontDescriptor;
+diff --git oox/source/xls/stylesbuffer.cxx oox/source/xls/stylesbuffer.cxx
+index 931ed96..abb5f9c 100644
+--- oox/source/xls/stylesbuffer.cxx
++++ oox/source/xls/stylesbuffer.cxx
+@@ -43,6 +43,7 @@
+ #include <com/sun/star/text/XText.hpp>
+ #include <com/sun/star/table/CellVertJustify2.hpp>
+ #include <com/sun/star/table/CellJustifyMethod.hpp>
++#include <com/sun/star/table/TableBorder.hpp>
+ #include <rtl/tencinfo.h>
+ #include <rtl/ustrbuf.hxx>
+ #include "properties.hxx"
+@@ -71,6 +72,7 @@ using ::com::sun::star::awt::FontDescriptor;
  using ::com::sun::star::awt::XDevice;
  using ::com::sun::star::awt::XFont2;
  using ::com::sun::star::table::BorderLine;
 +using ::com::sun::star::table::BorderLine2;
+ using ::com::sun::star::table::TableBorder;
  using ::com::sun::star::text::XText;
  using ::com::sun::star::style::XStyle;
- using ::oox::core::FilterBase;
-@@ -1548,7 +1549,7 @@ inline sal_Int32 lclGetBorderLineWidth( const BorderLine& rBorderLine )
+@@ -1487,6 +1489,15 @@ void Protection::writeToPropertyMap( PropertyMap& rPropMap ) const
+ 
+ // ============================================================================
+ 
++namespace {
++
++bool lcl_isBorder(const ::com::sun::star::table::BorderLine& rBorder)
++{
++    return (rBorder.InnerLineWidth > 0) || (rBorder.OuterLineWidth > 0);
++}
++
++}
++
+ BorderLineModel::BorderLineModel( bool bDxf ) :
+     mnStyle( XML_none ),
+     mbUsed( !bDxf )
+@@ -1534,10 +1545,10 @@ ApiBorderData::ApiBorderData() :
+ bool ApiBorderData::hasAnyOuterBorder() const
+ {
+     return
+-        (maBorder.IsTopLineValid    && (maBorder.TopLine.OuterLineWidth > 0)) ||
+-        (maBorder.IsBottomLineValid && (maBorder.BottomLine.OuterLineWidth > 0)) ||
+-        (maBorder.IsLeftLineValid   && (maBorder.LeftLine.OuterLineWidth > 0)) ||
+-        (maBorder.IsRightLineValid  && (maBorder.RightLine.OuterLineWidth > 0));
++        ( ( lcl_isBorder( maTop ) &&  maTop.OuterLineWidth > 0 ) ) ||
++        ( ( lcl_isBorder( maBottom ) && maBottom.OuterLineWidth > 0 ) ) ||
++        ( ( lcl_isBorder( maLeft ) && maLeft.OuterLineWidth > 0 ) ) ||
++        ( ( lcl_isBorder( maRight ) && maRight.OuterLineWidth > 0 ) );
+ }
+ 
+ namespace {
+@@ -1575,7 +1586,10 @@ bool operator==( const TableBorder& rLeft, const TableBorder& rRight )
+ bool operator==( const ApiBorderData& rLeft, const ApiBorderData& rRight )
+ {
+     return
+-        (rLeft.maBorder     == rRight.maBorder) &&
++        (rLeft.maLeft       == rRight.maLeft)   &&
++        (rLeft.maRight      == rRight.maRight)  &&
++        (rLeft.maTop        == rRight.maTop)    &&
++        (rLeft.maBottom     == rRight.maBottom) &&
+         (rLeft.maTLtoBR     == rRight.maTLtoBR) &&
+         (rLeft.maBLtoTR     == rRight.maBLtoTR) &&
+         (rLeft.mbBorderUsed == rRight.mbBorderUsed) &&
+@@ -1599,7 +1613,7 @@ inline sal_Int32 lclGetBorderLineWidth( const BorderLine& rBorderLine )
      return rBorderLine.OuterLineWidth + rBorderLine.LineDistance + rBorderLine.InnerLineWidth;
  }
  
@@ -565,7 +816,7 @@ index 4c28fb5..50281e9 100644
  {
      if( bValid1 && bValid2 )
          return (lclGetBorderLineWidth( rBorderLine1 ) < lclGetBorderLineWidth( rBorderLine2 )) ? &rBorderLine2 : &rBorderLine1;
-@@ -1686,21 +1687,10 @@ void Border::finalizeImport()
+@@ -1737,21 +1751,10 @@ void Border::finalizeImport()
      maApiData.mbBorderUsed = maModel.maLeft.mbUsed || maModel.maRight.mbUsed || maModel.maTop.mbUsed || maModel.maBottom.mbUsed;
      maApiData.mbDiagUsed   = maModel.maDiagonal.mbUsed;
  
@@ -591,7 +842,7 @@ index 4c28fb5..50281e9 100644
  
      if( maModel.mbDiagTLtoBR )
          convertBorderLine( maApiData.maTLtoBR, maModel.maDiagonal );
-@@ -1711,7 +1701,12 @@ void Border::finalizeImport()
+@@ -1762,7 +1765,12 @@ void Border::finalizeImport()
  void Border::writeToPropertyMap( PropertyMap& rPropMap ) const
  {
      if( maApiData.mbBorderUsed )
@@ -605,8 +856,19 @@ index 4c28fb5..50281e9 100644
      if( maApiData.mbDiagUsed )
      {
          rPropMap[ PROP_DiagonalTLBR ] <<= maApiData.maTLtoBR;
-@@ -1730,18 +1725,16 @@ bool lcl_isBorder(const ::com::sun::star::table::BorderLine& rBorder)
+@@ -1770,29 +1778,18 @@ void Border::writeToPropertyMap( PropertyMap& rPropMap ) const
+     }
+ }
  
+-namespace {
+-
+-bool lcl_isBorder(const ::com::sun::star::table::BorderLine& rBorder)
+-{
+-    return (rBorder.InnerLineWidth > 0) || (rBorder.OuterLineWidth > 0);
+-}
+-
+-}
+-
  bool Border::hasBorder() const
  {
 -    const ApiBorderData::ApiTableBorder& rTabBorder = maApiData.maBorder;
@@ -628,7 +890,7 @@ index 4c28fb5..50281e9 100644
          return true;
  
      return false;
-@@ -1760,15 +1753,25 @@ BorderLineModel* Border::getBorderLine( sal_Int32 nElement )
+@@ -1811,15 +1808,25 @@ BorderLineModel* Border::getBorderLine( sal_Int32 nElement )
      return 0;
  }
  
@@ -657,11 +919,11 @@ index 4c28fb5..50281e9 100644
          case XML_double:            lclSetBorderLineWidth( rBorderLine, API_LINE_THIN, API_LINE_THIN, API_LINE_THIN ); break;
          case XML_hair:              lclSetBorderLineWidth( rBorderLine, API_LINE_HAIR );    break;
          case XML_medium:            lclSetBorderLineWidth( rBorderLine, API_LINE_MEDIUM );  break;
-diff --git a/sc/source/filter/excel/xestyle.cxx b/sc/source/filter/excel/xestyle.cxx
-index cf81e56..7b39f77 100644
---- a/sc/source/filter/excel/xestyle.cxx
-+++ b/sc/source/filter/excel/xestyle.cxx
-@@ -1569,9 +1569,26 @@ void lclGetBorderLine(
+diff --git sc/source/filter/excel/xestyle.cxx sc/source/filter/excel/xestyle.cxx
+index 3f99147..55dac60 100644
+--- sc/source/filter/excel/xestyle.cxx
++++ sc/source/filter/excel/xestyle.cxx
+@@ -1570,9 +1570,26 @@ void lclGetBorderLine(
          else if( nOuterWidth > DEF_LINE_WIDTH_2 )
              rnXclLine = EXC_LINE_THICK;
          else if( nOuterWidth > DEF_LINE_WIDTH_1 )
@@ -688,7 +950,7 @@ index cf81e56..7b39f77 100644
          else if( nOuterWidth > 0 )
              rnXclLine = EXC_LINE_HAIR;
          else
-@@ -1737,6 +1754,9 @@ static const char* ToLineStyle( sal_uInt8 nLineStyle )
+@@ -1738,6 +1755,9 @@ static const char* ToLineStyle( sal_uInt8 nLineStyle )
          case EXC_LINE_THICK:    return "thick";
          case EXC_LINE_DOUBLE:   return "double";
          case EXC_LINE_HAIR:     return "hair";
@@ -698,11 +960,11 @@ index cf81e56..7b39f77 100644
      }
      return "*unknown*";
  }
-diff --git a/sc/source/filter/excel/xistyle.cxx b/sc/source/filter/excel/xistyle.cxx
-index 2cb7a22..36d962b 100644
---- a/sc/source/filter/excel/xistyle.cxx
-+++ b/sc/source/filter/excel/xistyle.cxx
-@@ -881,23 +881,23 @@ namespace {
+diff --git sc/source/filter/excel/xistyle.cxx sc/source/filter/excel/xistyle.cxx
+index 8824e2f..7c9d7c3 100644
+--- sc/source/filter/excel/xistyle.cxx
++++ sc/source/filter/excel/xistyle.cxx
+@@ -821,23 +821,23 @@ namespace {
  /** Converts the passed line style to a SvxBorderLine, or returns false, if style is "no line". */
  bool lclConvertBorderLine( SvxBorderLine& rLine, const XclImpPalette& rPalette, sal_uInt8 nXclLine, sal_uInt16 nXclColor )
  {
@@ -742,7 +1004,7 @@ index 2cb7a22..36d962b 100644
      };
  
      if( nXclLine == EXC_LINE_NONE )
-@@ -909,6 +909,7 @@ bool lclConvertBorderLine( SvxBorderLine& rLine, const XclImpPalette& rPalette,
+@@ -849,6 +849,7 @@ bool lclConvertBorderLine( SvxBorderLine& rLine, const XclImpPalette& rPalette,
      rLine.SetOutWidth( ppnLineParam[ nXclLine ][ 0 ] );
      rLine.SetInWidth(  ppnLineParam[ nXclLine ][ 1 ] );
      rLine.SetDistance( ppnLineParam[ nXclLine ][ 2 ] );
@@ -750,11 +1012,11 @@ index 2cb7a22..36d962b 100644
      return true;
  }
  
-diff --git a/sc/source/filter/html/htmlexp.cxx b/sc/source/filter/html/htmlexp.cxx
-index 2471486..7fe0e10 100644
---- a/sc/source/filter/html/htmlexp.cxx
-+++ b/sc/source/filter/html/htmlexp.cxx
-@@ -555,7 +555,14 @@ void ScHTMLExport::BorderToStyle( ByteString& rOut, const char* pBorderName,
+diff --git sc/source/filter/html/htmlexp.cxx sc/source/filter/html/htmlexp.cxx
+index 1bf5131..98a9242 100644
+--- sc/source/filter/html/htmlexp.cxx
++++ sc/source/filter/html/htmlexp.cxx
+@@ -556,7 +556,14 @@ void ScHTMLExport::BorderToStyle( ByteString& rOut, const char* pBorderName,
          // thickness
          int nWidth = pLine->GetOutWidth();
          int nPxWidth = ( nWidth > 0 )? std::max( int( nWidth / TWIPS_PER_PIXEL ), 1 ): 0;
@@ -770,10 +1032,10 @@ index 2471486..7fe0e10 100644
  
          // color
          char hex[7];
-diff --git a/sc/source/filter/inc/xlstyle.hxx b/sc/source/filter/inc/xlstyle.hxx
-index e4f53ff..39b2bbd 100644
---- a/sc/source/filter/inc/xlstyle.hxx
-+++ b/sc/source/filter/inc/xlstyle.hxx
+diff --git sc/source/filter/inc/xlstyle.hxx sc/source/filter/inc/xlstyle.hxx
+index 6216165..0b98a8c 100644
+--- sc/source/filter/inc/xlstyle.hxx
++++ sc/source/filter/inc/xlstyle.hxx
 @@ -48,9 +48,12 @@ class XclRoot;
  const sal_uInt8 EXC_LINE_NONE               = 0x00;
  const sal_uInt8 EXC_LINE_THIN               = 0x01;
@@ -787,11 +1049,11 @@ index e4f53ff..39b2bbd 100644
  
  // Background patterns --------------------------------------------------------
  
-diff --git a/sc/source/ui/unoobj/cellsuno.cxx b/sc/source/ui/unoobj/cellsuno.cxx
-index a22fa4d..604bf88 100644
---- a/sc/source/ui/unoobj/cellsuno.cxx
-+++ b/sc/source/ui/unoobj/cellsuno.cxx
-@@ -59,6 +59,7 @@
+diff --git sc/source/ui/unoobj/cellsuno.cxx sc/source/ui/unoobj/cellsuno.cxx
+index cfe9b9d..8930328 100644
+--- sc/source/ui/unoobj/cellsuno.cxx
++++ sc/source/ui/unoobj/cellsuno.cxx
+@@ -60,6 +60,7 @@
  #include <com/sun/star/table/CellVertJustify2.hpp>
  #include <com/sun/star/table/ShadowFormat.hpp>
  #include <com/sun/star/table/TableBorder.hpp>
@@ -799,7 +1061,7 @@ index a22fa4d..604bf88 100644
  #include <com/sun/star/sheet/CellFlags.hpp>
  #include <com/sun/star/sheet/FormulaResult.hpp>
  #include <com/sun/star/beans/PropertyAttribute.hpp>
-@@ -159,7 +160,7 @@ const SfxItemPropertySet* lcl_GetCellsPropertySet()
+@@ -160,7 +161,7 @@ const SfxItemPropertySet* lcl_GetCellsPropertySet()
      {
          {MAP_CHAR_LEN(SC_UNONAME_ABSNAME),	SC_WID_UNO_ABSNAME,	&getCppuType((rtl::OUString*)0),		0 | beans::PropertyAttribute::READONLY, 0 },
          {MAP_CHAR_LEN(SC_UNONAME_ASIANVERT),ATTR_VERTICAL_ASIAN,&getBooleanCppuType(),					0, 0 },
@@ -808,7 +1070,7 @@ index a22fa4d..604bf88 100644
          {MAP_CHAR_LEN(SC_UNONAME_CELLBACK),	ATTR_BACKGROUND,	&getCppuType((sal_Int32*)0),			0, MID_BACK_COLOR },
          {MAP_CHAR_LEN(SC_UNONAME_CELLPRO),	ATTR_PROTECTION,	&getCppuType((util::CellProtection*)0),	0, 0 },
          {MAP_CHAR_LEN(SC_UNONAME_CELLSTYL),	SC_WID_UNO_CELLSTYL,&getCppuType((rtl::OUString*)0),		0, 0 },
-@@ -210,13 +211,13 @@ const SfxItemPropertySet* lcl_GetCellsPropertySet()
+@@ -211,13 +212,13 @@ const SfxItemPropertySet* lcl_GetCellsPropertySet()
          {MAP_CHAR_LEN(SC_UNONAME_CONDFMT),	SC_WID_UNO_CONDFMT,	&getCppuType((uno::Reference<sheet::XSheetConditionalEntries>*)0), 0, 0 },
          {MAP_CHAR_LEN(SC_UNONAME_CONDLOC),	SC_WID_UNO_CONDLOC,	&getCppuType((uno::Reference<sheet::XSheetConditionalEntries>*)0), 0, 0 },
          {MAP_CHAR_LEN(SC_UNONAME_CONDXML),	SC_WID_UNO_CONDXML,	&getCppuType((uno::Reference<sheet::XSheetConditionalEntries>*)0), 0, 0 },
@@ -825,7 +1087,7 @@ index a22fa4d..604bf88 100644
          {MAP_CHAR_LEN(SC_UNONAME_NUMFMT),	ATTR_VALUE_FORMAT,	&getCppuType((sal_Int32*)0),			0, 0 },
          {MAP_CHAR_LEN(SC_UNONAME_NUMRULES),	SC_WID_UNO_NUMRULES,&getCppuType((const uno::Reference<container::XIndexReplace>*)0), 0, 0 },
          {MAP_CHAR_LEN(SC_UNONAME_CELLORI),  ATTR_STACKED,       &getCppuType((table::CellOrientation*)0), 0, 0 },
-@@ -231,13 +232,13 @@ const SfxItemPropertySet* lcl_GetCellsPropertySet()
+@@ -232,13 +233,13 @@ const SfxItemPropertySet* lcl_GetCellsPropertySet()
          {MAP_CHAR_LEN(SC_UNONAME_PLMARGIN),	ATTR_MARGIN,		&getCppuType((sal_Int32*)0),			0, MID_MARGIN_L_MARGIN  | CONVERT_TWIPS },
          {MAP_CHAR_LEN(SC_UNONAME_PRMARGIN),	ATTR_MARGIN,		&getCppuType((sal_Int32*)0),			0, MID_MARGIN_R_MARGIN  | CONVERT_TWIPS },
          {MAP_CHAR_LEN(SC_UNONAME_PTMARGIN),	ATTR_MARGIN,		&getCppuType((sal_Int32*)0),			0, MID_MARGIN_UP_MARGIN | CONVERT_TWIPS },
@@ -841,7 +1103,7 @@ index a22fa4d..604bf88 100644
          {MAP_CHAR_LEN(SC_UNONAME_USERDEF),	ATTR_USERDEF,		&getCppuType((uno::Reference<container::XNameContainer>*)0), 0, 0 },
          {MAP_CHAR_LEN(SC_UNONAME_VALIDAT),	SC_WID_UNO_VALIDAT,	&getCppuType((uno::Reference<beans::XPropertySet>*)0), 0, 0 },
          {MAP_CHAR_LEN(SC_UNONAME_VALILOC),	SC_WID_UNO_VALILOC,	&getCppuType((uno::Reference<beans::XPropertySet>*)0), 0, 0 },
-@@ -260,7 +261,7 @@ const SfxItemPropertySet* lcl_GetRangePropertySet()
+@@ -261,7 +262,7 @@ const SfxItemPropertySet* lcl_GetRangePropertySet()
      {
          {MAP_CHAR_LEN(SC_UNONAME_ABSNAME),	SC_WID_UNO_ABSNAME,	&getCppuType((rtl::OUString*)0),		0 | beans::PropertyAttribute::READONLY, 0 },
          {MAP_CHAR_LEN(SC_UNONAME_ASIANVERT),ATTR_VERTICAL_ASIAN,&getBooleanCppuType(),					0, 0 },
@@ -850,7 +1112,7 @@ index a22fa4d..604bf88 100644
          {MAP_CHAR_LEN(SC_UNONAME_CELLBACK),	ATTR_BACKGROUND,	&getCppuType((sal_Int32*)0),			0, MID_BACK_COLOR },
          {MAP_CHAR_LEN(SC_UNONAME_CELLPRO),	ATTR_PROTECTION,	&getCppuType((util::CellProtection*)0),	0, 0 },
          {MAP_CHAR_LEN(SC_UNONAME_CELLSTYL),	SC_WID_UNO_CELLSTYL,&getCppuType((rtl::OUString*)0),		0, 0 },
-@@ -311,13 +312,13 @@ const SfxItemPropertySet* lcl_GetRangePropertySet()
+@@ -312,13 +313,13 @@ const SfxItemPropertySet* lcl_GetRangePropertySet()
          {MAP_CHAR_LEN(SC_UNONAME_CONDFMT),	SC_WID_UNO_CONDFMT,	&getCppuType((uno::Reference<sheet::XSheetConditionalEntries>*)0), 0, 0 },
          {MAP_CHAR_LEN(SC_UNONAME_CONDLOC),	SC_WID_UNO_CONDLOC,	&getCppuType((uno::Reference<sheet::XSheetConditionalEntries>*)0), 0, 0 },
          {MAP_CHAR_LEN(SC_UNONAME_CONDXML),	SC_WID_UNO_CONDXML,	&getCppuType((uno::Reference<sheet::XSheetConditionalEntries>*)0), 0, 0 },
@@ -867,7 +1129,7 @@ index a22fa4d..604bf88 100644
          {MAP_CHAR_LEN(SC_UNONAME_NUMFMT),	ATTR_VALUE_FORMAT,	&getCppuType((sal_Int32*)0),			0, 0 },
          {MAP_CHAR_LEN(SC_UNONAME_NUMRULES),	SC_WID_UNO_NUMRULES,&getCppuType((const uno::Reference<container::XIndexReplace>*)0), 0, 0 },
          {MAP_CHAR_LEN(SC_UNONAME_CELLORI),  ATTR_STACKED,       &getCppuType((table::CellOrientation*)0), 0, 0 },
-@@ -333,14 +334,14 @@ const SfxItemPropertySet* lcl_GetRangePropertySet()
+@@ -334,14 +335,14 @@ const SfxItemPropertySet* lcl_GetRangePropertySet()
          {MAP_CHAR_LEN(SC_UNONAME_PRMARGIN),	ATTR_MARGIN,		&getCppuType((sal_Int32*)0),			0, MID_MARGIN_R_MARGIN  | CONVERT_TWIPS },
          {MAP_CHAR_LEN(SC_UNONAME_PTMARGIN),	ATTR_MARGIN,		&getCppuType((sal_Int32*)0),			0, MID_MARGIN_UP_MARGIN | CONVERT_TWIPS },
          {MAP_CHAR_LEN(SC_UNONAME_POS),		SC_WID_UNO_POS,		&getCppuType((awt::Point*)0),			0 | beans::PropertyAttribute::READONLY, 0 },
@@ -884,7 +1146,7 @@ index a22fa4d..604bf88 100644
          {MAP_CHAR_LEN(SC_UNONAME_USERDEF),	ATTR_USERDEF,		&getCppuType((uno::Reference<container::XNameContainer>*)0), 0, 0 },
          {MAP_CHAR_LEN(SC_UNONAME_VALIDAT),	SC_WID_UNO_VALIDAT,	&getCppuType((uno::Reference<beans::XPropertySet>*)0), 0, 0 },
          {MAP_CHAR_LEN(SC_UNONAME_VALILOC),	SC_WID_UNO_VALILOC,	&getCppuType((uno::Reference<beans::XPropertySet>*)0), 0, 0 },
-@@ -363,7 +364,7 @@ const SfxItemPropertySet* lcl_GetCellPropertySet()
+@@ -364,7 +365,7 @@ const SfxItemPropertySet* lcl_GetCellPropertySet()
      {
          {MAP_CHAR_LEN(SC_UNONAME_ABSNAME),	SC_WID_UNO_ABSNAME,	&getCppuType((rtl::OUString*)0),		0 | beans::PropertyAttribute::READONLY, 0 },
          {MAP_CHAR_LEN(SC_UNONAME_ASIANVERT),ATTR_VERTICAL_ASIAN,&getBooleanCppuType(),					0, 0 },
@@ -893,7 +1155,7 @@ index a22fa4d..604bf88 100644
          {MAP_CHAR_LEN(SC_UNONAME_CELLBACK),	ATTR_BACKGROUND,	&getCppuType((sal_Int32*)0),			0, MID_BACK_COLOR },
          {MAP_CHAR_LEN(SC_UNONAME_CELLPRO),	ATTR_PROTECTION,	&getCppuType((util::CellProtection*)0),	0, 0 },
          {MAP_CHAR_LEN(SC_UNONAME_CELLSTYL),	SC_WID_UNO_CELLSTYL,&getCppuType((rtl::OUString*)0),		0, 0 },
-@@ -414,15 +415,15 @@ const SfxItemPropertySet* lcl_GetCellPropertySet()
+@@ -415,15 +416,15 @@ const SfxItemPropertySet* lcl_GetCellPropertySet()
          {MAP_CHAR_LEN(SC_UNONAME_CONDFMT),	SC_WID_UNO_CONDFMT,	&getCppuType((uno::Reference<sheet::XSheetConditionalEntries>*)0), 0, 0 },
          {MAP_CHAR_LEN(SC_UNONAME_CONDLOC),	SC_WID_UNO_CONDLOC,	&getCppuType((uno::Reference<sheet::XSheetConditionalEntries>*)0), 0, 0 },
          {MAP_CHAR_LEN(SC_UNONAME_CONDXML),	SC_WID_UNO_CONDXML,	&getCppuType((uno::Reference<sheet::XSheetConditionalEntries>*)0), 0, 0 },
@@ -912,7 +1174,7 @@ index a22fa4d..604bf88 100644
          {MAP_CHAR_LEN(SC_UNONAME_NUMFMT),	ATTR_VALUE_FORMAT,	&getCppuType((sal_Int32*)0),			0, 0 },
          {MAP_CHAR_LEN(SC_UNONAME_NUMRULES),	SC_WID_UNO_NUMRULES,&getCppuType((const uno::Reference<container::XIndexReplace>*)0), 0, 0 },
          {MAP_CHAR_LEN(SC_UNONAME_CELLORI),  ATTR_STACKED,       &getCppuType((table::CellOrientation*)0), 0, 0 },
-@@ -438,14 +439,14 @@ const SfxItemPropertySet* lcl_GetCellPropertySet()
+@@ -439,14 +440,14 @@ const SfxItemPropertySet* lcl_GetCellPropertySet()
          {MAP_CHAR_LEN(SC_UNONAME_PRMARGIN),	ATTR_MARGIN,		&getCppuType((sal_Int32*)0),			0, MID_MARGIN_R_MARGIN  | CONVERT_TWIPS },
          {MAP_CHAR_LEN(SC_UNONAME_PTMARGIN),	ATTR_MARGIN,		&getCppuType((sal_Int32*)0),			0, MID_MARGIN_UP_MARGIN | CONVERT_TWIPS },
          {MAP_CHAR_LEN(SC_UNONAME_POS),		SC_WID_UNO_POS,		&getCppuType((awt::Point*)0),			0 | beans::PropertyAttribute::READONLY, 0 },
@@ -929,7 +1191,7 @@ index a22fa4d..604bf88 100644
          {MAP_CHAR_LEN(SC_UNONAME_USERDEF),	ATTR_USERDEF,		&getCppuType((uno::Reference<container::XNameContainer>*)0), 0, 0 },
          {MAP_CHAR_LEN(SC_UNONAME_VALIDAT),	SC_WID_UNO_VALIDAT,	&getCppuType((uno::Reference<beans::XPropertySet>*)0), 0, 0 },
          {MAP_CHAR_LEN(SC_UNONAME_VALILOC),	SC_WID_UNO_VALILOC,	&getCppuType((uno::Reference<beans::XPropertySet>*)0), 0, 0 },
-@@ -468,7 +469,7 @@ const SfxItemPropertySet* lcl_GetColumnPropertySet()
+@@ -469,7 +470,7 @@ const SfxItemPropertySet* lcl_GetColumnPropertySet()
      {
          {MAP_CHAR_LEN(SC_UNONAME_ABSNAME),	SC_WID_UNO_ABSNAME,	&getCppuType((rtl::OUString*)0),		0 | beans::PropertyAttribute::READONLY, 0 },
          {MAP_CHAR_LEN(SC_UNONAME_ASIANVERT),ATTR_VERTICAL_ASIAN,&getBooleanCppuType(),					0, 0 },
@@ -938,7 +1200,7 @@ index a22fa4d..604bf88 100644
          {MAP_CHAR_LEN(SC_UNONAME_CELLBACK),	ATTR_BACKGROUND,	&getCppuType((sal_Int32*)0),			0, MID_BACK_COLOR },
          {MAP_CHAR_LEN(SC_UNONAME_CELLPRO),	ATTR_PROTECTION,	&getCppuType((util::CellProtection*)0),	0, 0 },
          {MAP_CHAR_LEN(SC_UNONAME_CELLSTYL),	SC_WID_UNO_CELLSTYL,&getCppuType((rtl::OUString*)0),		0, 0 },
-@@ -519,8 +520,8 @@ const SfxItemPropertySet* lcl_GetColumnPropertySet()
+@@ -520,8 +521,8 @@ const SfxItemPropertySet* lcl_GetColumnPropertySet()
          {MAP_CHAR_LEN(SC_UNONAME_CONDFMT),	SC_WID_UNO_CONDFMT,	&getCppuType((uno::Reference<sheet::XSheetConditionalEntries>*)0), 0, 0 },
          {MAP_CHAR_LEN(SC_UNONAME_CONDLOC),	SC_WID_UNO_CONDLOC,	&getCppuType((uno::Reference<sheet::XSheetConditionalEntries>*)0), 0, 0 },
          {MAP_CHAR_LEN(SC_UNONAME_CONDXML),	SC_WID_UNO_CONDXML,	&getCppuType((uno::Reference<sheet::XSheetConditionalEntries>*)0), 0, 0 },
@@ -949,7 +1211,7 @@ index a22fa4d..604bf88 100644
          {MAP_CHAR_LEN(SC_UNONAME_CELLHJUS),	ATTR_HOR_JUSTIFY,	&getCppuType((table::CellHoriJustify*)0), 0, MID_HORJUST_HORJUST },
          {MAP_CHAR_LEN(SC_UNONAME_CELLHJUS_METHOD), ATTR_HOR_JUSTIFY_METHOD, &::getCppuType((const sal_Int32*)0),   0, 0 },
          {MAP_CHAR_LEN(SC_UNONAME_CELLTRAN),	ATTR_BACKGROUND,	&getBooleanCppuType(),					0, MID_GRAPHIC_TRANSPARENT },
-@@ -529,7 +530,7 @@ const SfxItemPropertySet* lcl_GetColumnPropertySet()
+@@ -530,7 +531,7 @@ const SfxItemPropertySet* lcl_GetColumnPropertySet()
          {MAP_CHAR_LEN(SC_UNONAME_NEWPAGE),	SC_WID_UNO_NEWPAGE,	&getBooleanCppuType(),					0, 0 },
          {MAP_CHAR_LEN(SC_UNONAME_WRAP),		ATTR_LINEBREAK,		&getBooleanCppuType(),					0, 0 },
          {MAP_CHAR_LEN(SC_UNONAME_CELLVIS),	SC_WID_UNO_CELLVIS,	&getBooleanCppuType(),					0, 0 },
@@ -958,7 +1220,7 @@ index a22fa4d..604bf88 100644
          {MAP_CHAR_LEN(SC_UNONAME_NUMFMT),	ATTR_VALUE_FORMAT,	&getCppuType((sal_Int32*)0),			0, 0 },
          {MAP_CHAR_LEN(SC_UNONAME_NUMRULES),	SC_WID_UNO_NUMRULES,&getCppuType((const uno::Reference<container::XIndexReplace>*)0), 0, 0 },
          {MAP_CHAR_LEN(SC_UNONAME_OWIDTH),	SC_WID_UNO_OWIDTH,	&getBooleanCppuType(),					0, 0 },
-@@ -546,14 +547,14 @@ const SfxItemPropertySet* lcl_GetColumnPropertySet()
+@@ -547,14 +548,14 @@ const SfxItemPropertySet* lcl_GetColumnPropertySet()
          {MAP_CHAR_LEN(SC_UNONAME_PRMARGIN),	ATTR_MARGIN,		&getCppuType((sal_Int32*)0),			0, MID_MARGIN_R_MARGIN  | CONVERT_TWIPS },
          {MAP_CHAR_LEN(SC_UNONAME_PTMARGIN),	ATTR_MARGIN,		&getCppuType((sal_Int32*)0),			0, MID_MARGIN_UP_MARGIN | CONVERT_TWIPS },
          {MAP_CHAR_LEN(SC_UNONAME_POS),		SC_WID_UNO_POS,		&getCppuType((awt::Point*)0),			0 | beans::PropertyAttribute::READONLY, 0 },
@@ -975,7 +1237,7 @@ index a22fa4d..604bf88 100644
          {MAP_CHAR_LEN(SC_UNONAME_USERDEF),	ATTR_USERDEF,		&getCppuType((uno::Reference<container::XNameContainer>*)0), 0, 0 },
          {MAP_CHAR_LEN(SC_UNONAME_VALIDAT),	SC_WID_UNO_VALIDAT,	&getCppuType((uno::Reference<beans::XPropertySet>*)0), 0, 0 },
          {MAP_CHAR_LEN(SC_UNONAME_VALILOC),	SC_WID_UNO_VALILOC,	&getCppuType((uno::Reference<beans::XPropertySet>*)0), 0, 0 },
-@@ -574,7 +575,7 @@ const SfxItemPropertySet* lcl_GetRowPropertySet()
+@@ -575,7 +576,7 @@ const SfxItemPropertySet* lcl_GetRowPropertySet()
      {
          {MAP_CHAR_LEN(SC_UNONAME_ABSNAME),	SC_WID_UNO_ABSNAME,	&getCppuType((rtl::OUString*)0),		0 | beans::PropertyAttribute::READONLY, 0 },
          {MAP_CHAR_LEN(SC_UNONAME_ASIANVERT),ATTR_VERTICAL_ASIAN,&getBooleanCppuType(),					0, 0 },
@@ -984,7 +1246,7 @@ index a22fa4d..604bf88 100644
          {MAP_CHAR_LEN(SC_UNONAME_CELLBACK),	ATTR_BACKGROUND,	&getCppuType((sal_Int32*)0),			0, MID_BACK_COLOR },
          {MAP_CHAR_LEN(SC_UNONAME_CELLPRO),	ATTR_PROTECTION,	&getCppuType((util::CellProtection*)0),	0, 0 },
          {MAP_CHAR_LEN(SC_UNONAME_CELLSTYL),	SC_WID_UNO_CELLSTYL,&getCppuType((rtl::OUString*)0),		0, 0 },
-@@ -625,8 +626,8 @@ const SfxItemPropertySet* lcl_GetRowPropertySet()
+@@ -626,8 +627,8 @@ const SfxItemPropertySet* lcl_GetRowPropertySet()
          {MAP_CHAR_LEN(SC_UNONAME_CONDFMT),	SC_WID_UNO_CONDFMT,	&getCppuType((uno::Reference<sheet::XSheetConditionalEntries>*)0), 0, 0 },
          {MAP_CHAR_LEN(SC_UNONAME_CONDLOC),	SC_WID_UNO_CONDLOC,	&getCppuType((uno::Reference<sheet::XSheetConditionalEntries>*)0), 0, 0 },
          {MAP_CHAR_LEN(SC_UNONAME_CONDXML),	SC_WID_UNO_CONDXML,	&getCppuType((uno::Reference<sheet::XSheetConditionalEntries>*)0), 0, 0 },
@@ -995,7 +1257,7 @@ index a22fa4d..604bf88 100644
          {MAP_CHAR_LEN(SC_UNONAME_CELLHGT),	SC_WID_UNO_CELLHGT,	&getCppuType((sal_Int32*)0),			0, 0 },
          {MAP_CHAR_LEN(SC_UNONAME_CELLHJUS),	ATTR_HOR_JUSTIFY,	&getCppuType((table::CellHoriJustify*)0), 0, MID_HORJUST_HORJUST },
          {MAP_CHAR_LEN(SC_UNONAME_CELLHJUS_METHOD), ATTR_HOR_JUSTIFY_METHOD, &::getCppuType((const sal_Int32*)0),   0, 0 },
-@@ -636,7 +637,7 @@ const SfxItemPropertySet* lcl_GetRowPropertySet()
+@@ -637,7 +638,7 @@ const SfxItemPropertySet* lcl_GetRowPropertySet()
          {MAP_CHAR_LEN(SC_UNONAME_NEWPAGE),	SC_WID_UNO_NEWPAGE,	&getBooleanCppuType(),					0, 0 },
          {MAP_CHAR_LEN(SC_UNONAME_WRAP),		ATTR_LINEBREAK,		&getBooleanCppuType(),					0, 0 },
          {MAP_CHAR_LEN(SC_UNONAME_CELLVIS),	SC_WID_UNO_CELLVIS,	&getBooleanCppuType(),					0, 0 },
@@ -1004,7 +1266,7 @@ index a22fa4d..604bf88 100644
          {MAP_CHAR_LEN(SC_UNONAME_NUMFMT),	ATTR_VALUE_FORMAT,	&getCppuType((sal_Int32*)0),			0, 0 },
          {MAP_CHAR_LEN(SC_UNONAME_NUMRULES),	SC_WID_UNO_NUMRULES,&getCppuType((const uno::Reference<container::XIndexReplace>*)0), 0, 0 },
          {MAP_CHAR_LEN(SC_UNONAME_OHEIGHT),	SC_WID_UNO_OHEIGHT,	&getBooleanCppuType(),					0, 0 },
-@@ -653,14 +654,14 @@ const SfxItemPropertySet* lcl_GetRowPropertySet()
+@@ -654,14 +655,14 @@ const SfxItemPropertySet* lcl_GetRowPropertySet()
          {MAP_CHAR_LEN(SC_UNONAME_PRMARGIN),	ATTR_MARGIN,		&getCppuType((sal_Int32*)0),			0, MID_MARGIN_R_MARGIN  | CONVERT_TWIPS },
          {MAP_CHAR_LEN(SC_UNONAME_PTMARGIN),	ATTR_MARGIN,		&getCppuType((sal_Int32*)0),			0, MID_MARGIN_UP_MARGIN | CONVERT_TWIPS },
          {MAP_CHAR_LEN(SC_UNONAME_POS),		SC_WID_UNO_POS,		&getCppuType((awt::Point*)0),			0 | beans::PropertyAttribute::READONLY, 0 },
@@ -1021,7 +1283,7 @@ index a22fa4d..604bf88 100644
          {MAP_CHAR_LEN(SC_UNONAME_USERDEF),	ATTR_USERDEF,		&getCppuType((uno::Reference<container::XNameContainer>*)0), 0, 0 },
          {MAP_CHAR_LEN(SC_UNONAME_VALIDAT),	SC_WID_UNO_VALIDAT,	&getCppuType((uno::Reference<beans::XPropertySet>*)0), 0, 0 },
          {MAP_CHAR_LEN(SC_UNONAME_VALILOC),	SC_WID_UNO_VALILOC,	&getCppuType((uno::Reference<beans::XPropertySet>*)0), 0, 0 },
-@@ -682,7 +683,7 @@ const SfxItemPropertySet* lcl_GetSheetPropertySet()
+@@ -683,7 +684,7 @@ const SfxItemPropertySet* lcl_GetSheetPropertySet()
          {MAP_CHAR_LEN(SC_UNONAME_ASIANVERT),ATTR_VERTICAL_ASIAN,&getBooleanCppuType(),					0, 0 },
          {MAP_CHAR_LEN(SC_UNONAME_AUTOPRINT),SC_WID_UNO_AUTOPRINT,&getBooleanCppuType(),					0, 0 },
          {MAP_CHAR_LEN(SC_UNONAME_BORDCOL),  SC_WID_UNO_BORDCOL, &getCppuType((sal_Int32*)0),			0, 0 },
@@ -1030,7 +1292,7 @@ index a22fa4d..604bf88 100644
          {MAP_CHAR_LEN(SC_UNONAME_CELLBACK),	ATTR_BACKGROUND,	&getCppuType((sal_Int32*)0),			0, MID_BACK_COLOR },
          {MAP_CHAR_LEN(SC_UNONAME_CELLPRO),	ATTR_PROTECTION,	&getCppuType((util::CellProtection*)0),	0, 0 },
          {MAP_CHAR_LEN(SC_UNONAME_CELLSTYL),	SC_WID_UNO_CELLSTYL,&getCppuType((rtl::OUString*)0),		0, 0 },
-@@ -736,15 +737,15 @@ const SfxItemPropertySet* lcl_GetSheetPropertySet()
+@@ -737,15 +738,15 @@ const SfxItemPropertySet* lcl_GetSheetPropertySet()
          {MAP_CHAR_LEN(SC_UNONAME_COPYBACK),	SC_WID_UNO_COPYBACK,&getBooleanCppuType(),					0, 0 },
          {MAP_CHAR_LEN(SC_UNONAME_COPYFORM),	SC_WID_UNO_COPYFORM,&getBooleanCppuType(),					0, 0 },
          {MAP_CHAR_LEN(SC_UNONAME_COPYSTYL),	SC_WID_UNO_COPYSTYL,&getBooleanCppuType(),					0, 0 },
@@ -1049,7 +1311,7 @@ index a22fa4d..604bf88 100644
          {MAP_CHAR_LEN(SC_UNO_LINKDISPBIT),	SC_WID_UNO_LINKDISPBIT,&getCppuType((uno::Reference<awt::XBitmap>*)0), 0 | beans::PropertyAttribute::READONLY, 0 },
          {MAP_CHAR_LEN(SC_UNO_LINKDISPNAME),	SC_WID_UNO_LINKDISPNAME,&getCppuType((rtl::OUString*)0),	0 | beans::PropertyAttribute::READONLY, 0 },
          {MAP_CHAR_LEN(SC_UNONAME_NUMFMT),	ATTR_VALUE_FORMAT,	&getCppuType((sal_Int32*)0),			0, 0 },
-@@ -765,7 +766,7 @@ const SfxItemPropertySet* lcl_GetSheetPropertySet()
+@@ -766,7 +767,7 @@ const SfxItemPropertySet* lcl_GetSheetPropertySet()
          {MAP_CHAR_LEN(SC_UNONAME_POS),		SC_WID_UNO_POS,		&getCppuType((awt::Point*)0),			0 | beans::PropertyAttribute::READONLY, 0 },
          {MAP_CHAR_LEN(SC_UNONAME_PRINTBORD),SC_WID_UNO_PRINTBORD,&getBooleanCppuType(),					0, 0 },
          {MAP_CHAR_LEN(SC_UNONAME_PROTECT),  SC_WID_UNO_PROTECT,	&getBooleanCppuType(),					0, 0 },
@@ -1058,7 +1320,7 @@ index a22fa4d..604bf88 100644
          {MAP_CHAR_LEN(SC_UNONAME_ROTANG),	ATTR_ROTATE_VALUE,	&getCppuType((sal_Int32*)0),			0, 0 },
          {MAP_CHAR_LEN(SC_UNONAME_ROTREF),	ATTR_ROTATE_MODE,	&getCppuType((sal_Int32*)0), 0, 0 },
          {MAP_CHAR_LEN(SC_UNONAME_SHADOW),	ATTR_SHADOW,		&getCppuType((table::ShadowFormat*)0),	0, 0 | CONVERT_TWIPS },
-@@ -774,7 +775,7 @@ const SfxItemPropertySet* lcl_GetSheetPropertySet()
+@@ -775,7 +776,7 @@ const SfxItemPropertySet* lcl_GetSheetPropertySet()
          {MAP_CHAR_LEN(SC_UNONAME_SIZE),		SC_WID_UNO_SIZE,	&getCppuType((awt::Size*)0),			0 | beans::PropertyAttribute::READONLY, 0 },
          {MAP_CHAR_LEN(SC_UNONAME_TBLBORD),	SC_WID_UNO_TBLBORD,	&getCppuType((table::TableBorder*)0),	0, 0 | CONVERT_TWIPS },
          {MAP_CHAR_LEN(SC_UNONAME_TABLAYOUT),SC_WID_UNO_TABLAYOUT,&getCppuType((sal_Int16*)0),			0, 0 },
@@ -1067,11 +1329,11 @@ index a22fa4d..604bf88 100644
          {MAP_CHAR_LEN(SC_UNONAME_USERDEF),	ATTR_USERDEF,		&getCppuType((uno::Reference<container::XNameContainer>*)0), 0, 0 },
          {MAP_CHAR_LEN(SC_UNONAME_VALIDAT),	SC_WID_UNO_VALIDAT,	&getCppuType((uno::Reference<beans::XPropertySet>*)0), 0, 0 },
          {MAP_CHAR_LEN(SC_UNONAME_VALILOC),	SC_WID_UNO_VALILOC,	&getCppuType((uno::Reference<beans::XPropertySet>*)0), 0, 0 },
-diff --git a/sc/source/ui/view/formatsh.cxx b/sc/source/ui/view/formatsh.cxx
-index 683c225..4a3de95 100644
---- a/sc/source/ui/view/formatsh.cxx
-+++ b/sc/source/ui/view/formatsh.cxx
-@@ -1533,6 +1533,7 @@ void ScFormatShell::ExecuteAttr( SfxRequest& rReq )
+diff --git sc/source/ui/view/formatsh.cxx sc/source/ui/view/formatsh.cxx
+index 5d2a946..b52d5bb 100644
+--- sc/source/ui/view/formatsh.cxx
++++ sc/source/ui/view/formatsh.cxx
+@@ -1534,6 +1534,7 @@ void ScFormatShell::ExecuteAttr( SfxRequest& rReq )
                              pDefLine->SetOutWidth( pLine->GetOutWidth() );
                              pDefLine->SetInWidth ( pLine->GetInWidth() );
                              pDefLine->SetDistance( pLine->GetDistance() );
@@ -1079,11 +1341,11 @@ index 683c225..4a3de95 100644
                              pTabViewShell->SetSelectionFrameLines( pDefLine, FALSE );
                          }
                          else
-diff --git a/sc/source/ui/view/viewfun2.cxx b/sc/source/ui/view/viewfun2.cxx
-index b9a6d76..bbd54fe 100644
---- a/sc/source/ui/view/viewfun2.cxx
-+++ b/sc/source/ui/view/viewfun2.cxx
-@@ -3010,6 +3010,7 @@ void ScViewFunc::UpdateLineAttrs( SvxBorderLine&	   rLine,
+diff --git sc/source/ui/view/viewfun2.cxx sc/source/ui/view/viewfun2.cxx
+index 0e5979b..5beb081 100644
+--- sc/source/ui/view/viewfun2.cxx
++++ sc/source/ui/view/viewfun2.cxx
+@@ -2993,6 +2993,7 @@ void ScViewFunc::UpdateLineAttrs( SvxBorderLine&	   rLine,
              rLine.SetOutWidth	( pDestLine->GetOutWidth() );
              rLine.SetInWidth	( pDestLine->GetInWidth() );
              rLine.SetDistance	( pDestLine->GetDistance() );
@@ -1091,7 +1353,7 @@ index b9a6d76..bbd54fe 100644
          }
          else
          {
-@@ -3017,6 +3018,7 @@ void ScViewFunc::UpdateLineAttrs( SvxBorderLine&	   rLine,
+@@ -3000,6 +3001,7 @@ void ScViewFunc::UpdateLineAttrs( SvxBorderLine&	   rLine,
              rLine.SetOutWidth	( pSrcLine->GetOutWidth() );
              rLine.SetInWidth	( pSrcLine->GetInWidth() );
              rLine.SetDistance	( pSrcLine->GetDistance() );
@@ -1099,11 +1361,11 @@ index b9a6d76..bbd54fe 100644
          }
      }
  }
-diff --git a/svtools/inc/borderhelper.hxx b/svtools/inc/borderhelper.hxx
+diff --git svtools/inc/borderhelper.hxx svtools/inc/borderhelper.hxx
 new file mode 100644
 index 0000000..6e9864a
 --- /dev/null
-+++ b/svtools/inc/borderhelper.hxx
++++ svtools/inc/borderhelper.hxx
 @@ -0,0 +1,49 @@
 +/*************************************************************************
 + *
@@ -1154,10 +1416,10 @@ index 0000000..6e9864a
 +}
 +
 +#endif
-diff --git a/svtools/inc/ctrlbox.hxx b/svtools/inc/ctrlbox.hxx
-index 64d38e4..ba23e7c 100644
---- a/svtools/inc/ctrlbox.hxx
-+++ b/svtools/inc/ctrlbox.hxx
+diff --git svtools/inc/ctrlbox.hxx svtools/inc/ctrlbox.hxx
+index c53e36a..76baa23 100644
+--- svtools/inc/ctrlbox.hxx
++++ svtools/inc/ctrlbox.hxx
 @@ -54,6 +54,10 @@ class ImpColorList;
  class ImpLineList;
  class FontList;
@@ -1248,24 +1510,25 @@ index 64d38e4..ba23e7c 100644
      if ( nPos != LISTBOX_ENTRY_NOTFOUND )
          return IsEntryPosSelected( nPos );
      else
-diff --git a/svtools/prj/d.lst b/svtools/prj/d.lst
-index 684c3a1..2e8b5b9 100644
---- a/svtools/prj/d.lst
-+++ b/svtools/prj/d.lst
-@@ -43,6 +43,7 @@ mkdir: %_DEST%\inc%_EXT%\svtools
- ..\inc\cntnrsrt.hxx %_DEST%\inc%_EXT%\svtools\cntnrsrt.hxx
- ..\inc\svtools\colrdlg.hxx %_DEST%\inc%_EXT%\svtools\colrdlg.hxx
- ..\inc\svtools\colctrl.hxx %_DEST%\inc%_EXT%\svtools\colctrl.hxx
-+..\inc\borderhelper.hxx %_DEST%\inc%_EXT%\svtools\borderhelper.hxx
- ..\inc\ctrlbox.hxx %_DEST%\inc%_EXT%\svtools\ctrlbox.hxx
- ..\inc\ctrltool.hxx %_DEST%\inc%_EXT%\svtools\ctrltool.hxx
- ..\inc\collatorres.hxx %_DEST%\inc%_EXT%\svtools\collatorres.hxx
-diff --git a/svtools/source/control/ctrlbox.cxx b/svtools/source/control/ctrlbox.cxx
-index 9a14b6d..5151892 100644
---- a/svtools/source/control/ctrlbox.cxx
-+++ b/svtools/source/control/ctrlbox.cxx
+diff --git svtools/inc/rtfkeywd.hxx svtools/inc/rtfkeywd.hxx
+index 766f41b..feba068 100644
+--- svtools/inc/rtfkeywd.hxx
++++ svtools/inc/rtfkeywd.hxx
+@@ -69,6 +69,8 @@
+ #define OOO_STRING_SVTOOLS_RTF_BRDRCF "\\brdrcf"
+ #define OOO_STRING_SVTOOLS_RTF_BRDRDB "\\brdrdb"
+ #define OOO_STRING_SVTOOLS_RTF_BRDRDOT "\\brdrdot"
++#define OOO_STRING_SVTOOLS_RTF_BRDRDASH "\\brdrdash"
++#define OOO_STRING_SVTOOLS_RTF_BRDRDASHSM "\\brdrdashsm"
+ #define OOO_STRING_SVTOOLS_RTF_BRDRHAIR "\\brdrhair"
+ #define OOO_STRING_SVTOOLS_RTF_BRDRL "\\brdrl"
+ #define OOO_STRING_SVTOOLS_RTF_BRDRR "\\brdrr"
+diff --git svtools/source/control/ctrlbox.cxx svtools/source/control/ctrlbox.cxx
+index 8521ca9..c57f56a 100644
+--- svtools/source/control/ctrlbox.cxx
++++ svtools/source/control/ctrlbox.cxx
 @@ -43,8 +43,11 @@
- #include <svtools/svtools.hrc>
+ #include <svl/svtools.hrc>
  #include <ctrlbox.hxx>
  #include <ctrltool.hxx>
 +#include <borderhelper.hxx>
@@ -1497,24 +1760,11 @@ index 9a14b6d..5151892 100644
                  ListBox::InsertEntry( aStr, aBmp, USHORT( n ) );
              }
          }
-diff --git a/svtools/source/svrtf/rtfkeywd.hxx b/svtools/source/svrtf/rtfkeywd.hxx
-index 5ccd914..bd9aadf 100644
---- a/svtools/source/svrtf/rtfkeywd.hxx
-+++ b/svtools/source/svrtf/rtfkeywd.hxx
-@@ -69,6 +69,8 @@
- #define OOO_STRING_SVTOOLS_RTF_BRDRCF "\\brdrcf"
- #define OOO_STRING_SVTOOLS_RTF_BRDRDB "\\brdrdb"
- #define OOO_STRING_SVTOOLS_RTF_BRDRDOT "\\brdrdot"
-+#define OOO_STRING_SVTOOLS_RTF_BRDRDASH "\\brdrdash"
-+#define OOO_STRING_SVTOOLS_RTF_BRDRDASHSM "\\brdrdashsm"
- #define OOO_STRING_SVTOOLS_RTF_BRDRHAIR "\\brdrhair"
- #define OOO_STRING_SVTOOLS_RTF_BRDRL "\\brdrl"
- #define OOO_STRING_SVTOOLS_RTF_BRDRR "\\brdrr"
-diff --git a/svtools/util/makefile.mk b/svtools/util/makefile.mk
-index 40b1e54..49b3296 100644
---- a/svtools/util/makefile.mk
-+++ b/svtools/util/makefile.mk
-@@ -148,7 +148,8 @@ SHL1STDLIBS+= \
+diff --git svtools/util/makefile.mk svtools/util/makefile.mk
+index ab05fac..677b656 100644
+--- svtools/util/makefile.mk
++++ svtools/util/makefile.mk
+@@ -121,7 +121,8 @@ SHL1STDLIBS+= \
          $(VOSLIB)			\
          $(SALLIB)			\
          $(ICUUCLIB)		\
@@ -1524,61 +1774,16 @@ index 40b1e54..49b3296 100644
  
  .IF "$(OS)"=="MACOSX"
  # static libraries go at end
-diff --git a/svx/inc/svx/borderline.hxx b/svx/inc/svx/borderline.hxx
-index f358aad..3450155 100644
---- a/svx/inc/svx/borderline.hxx
-+++ b/svx/inc/svx/borderline.hxx
-@@ -90,6 +90,13 @@
- 
- // ============================================================================
- 
-+enum SvxBorderStyle
-+{
-+    SOLID,
-+    DOTTED,
-+    DASHED
-+};
-+
- class SVX_DLLPUBLIC SvxBorderLine
- {
- protected:
-@@ -97,9 +104,11 @@ protected:
-     USHORT nOutWidth;
-     USHORT nInWidth;
-     USHORT nDistance;
-+    SvxBorderStyle   m_nStyle;
- 
- public:
--    SvxBorderLine( const Color *pCol = 0, USHORT nOut = 0, USHORT nIn = 0, USHORT nDist = 0 );
-+    SvxBorderLine( const Color *pCol = 0, USHORT nOut = 0, USHORT nIn = 0, USHORT nDist = 0,
-+            SvxBorderStyle nStyle = SOLID );
-     SvxBorderLine( const SvxBorderLine& r );
- 
-     SvxBorderLine& operator=( const SvxBorderLine& r );
-@@ -109,10 +118,13 @@ public:
-     USHORT 			GetInWidth() const { return nInWidth; }
-     USHORT 			GetDistance() const { return nDistance; }
- 
-+    SvxBorderStyle  GetStyle() const { return m_nStyle; }
-+
-     void 			SetColor( const Color &rColor ) { aColor = rColor; }
-     void			SetOutWidth( USHORT nNew ) { nOutWidth = nNew; }
-     void			SetInWidth( USHORT nNew ) { nInWidth = nNew;  }
-     void			SetDistance( USHORT nNew ) { nDistance = nNew; }
-+    void            SetStyle( SvxBorderStyle nNew ) { m_nStyle = nNew; }
-     void			ScaleMetrics( long nMult, long nDiv );
- 
-     BOOL			operator==( const SvxBorderLine &rCmp ) const;
-diff --git a/svx/inc/svx/framelink.hxx b/svx/inc/svx/framelink.hxx
-index 9d5e2cd..1389630 100644
---- a/svx/inc/svx/framelink.hxx
-+++ b/svx/inc/svx/framelink.hxx
+diff --git svx/inc/svx/framelink.hxx svx/inc/svx/framelink.hxx
+index 660fd17..747b6eb 100644
+--- svx/inc/svx/framelink.hxx
++++ svx/inc/svx/framelink.hxx
 @@ -33,9 +33,10 @@
  #include <tools/gen.hxx>
  #include <tools/color.hxx>
  #include "svx/svxdllapi.h"
-+#include "svx/borderline.hxx"
 +#include <vcl/outdev.hxx>
++#include <editeng/borderline.hxx>
  
  class OutputDevice;
 -class SvxBorderLine;
@@ -1650,18 +1855,18 @@ index 9d5e2cd..1389630 100644
  };
  
  bool operator==( const Style& rL, const Style& rR );
-diff --git a/svx/inc/svx/frmsel.hxx b/svx/inc/svx/frmsel.hxx
-index b342c58..a96209c 100644
---- a/svx/inc/svx/frmsel.hxx
-+++ b/svx/inc/svx/frmsel.hxx
-@@ -33,6 +33,7 @@
+diff --git svx/inc/svx/frmsel.hxx svx/inc/svx/frmsel.hxx
+index 22100d3..2706640 100644
+--- svx/inc/svx/frmsel.hxx
++++ svx/inc/svx/frmsel.hxx
+@@ -32,6 +32,7 @@
+ #include <tools/color.hxx>
  #include <vcl/ctrl.hxx>
  #include <vcl/bitmap.hxx>
++#include <editeng/borderline.hxx>
  #include <svx/framebordertype.hxx>
-+#include <svx/borderline.hxx>
  #include "svx/svxdllapi.h"
  
- class SvxBorderLine;
 @@ -128,7 +129,8 @@ public:
      /** Returns true, if all visible frame borders have equal widths.
          @descr  Ignores hidden and "don't care" frame borders. On success,
@@ -1682,98 +1887,14 @@ index b342c58..a96209c 100644
      /** Sets the passed color to all selected frame borders. */
      void                SetColorToSelection( const Color& rColor );
  
-diff --git a/svx/inc/svx/msdffimp.hxx b/svx/inc/svx/msdffimp.hxx
-index 694eb3d..b2cc8bd 100644
---- a/svx/inc/svx/msdffimp.hxx
-+++ b/svx/inc/svx/msdffimp.hxx
-@@ -198,6 +198,7 @@ struct SVX_DLLPUBLIC SvxMSDffImportRec
-     ULONG		nShapeId;
-     MSO_SPT		eShapeType;
-     MSO_LineStyle eLineStyle;	// Umrandungs-Arten
-+    MSO_LineDashing eLineDashing;
-     BOOL		bDrawHell		:1;
-     BOOL		bHidden			:1;
-     BOOL		bReplaceByFly	:1;
-diff --git a/svx/inc/svx/svxids.hrc b/svx/inc/svx/svxids.hrc
-index 0779179..19f5cdc 100644
---- a/svx/inc/svx/svxids.hrc
-+++ b/svx/inc/svx/svxids.hrc
-@@ -140,6 +140,8 @@
- #define MID_ADR_FATHERSNAME     0x80
- #define MID_ADR_APARTMENT       0x81
- 
-+#define MID_LINE_STYLE         0x90
-+
- 
- // --------------------------------------------------------------------------
- // Resource-Id's ? (obsolete??? at least the one beginning with SID???)
-diff --git a/svx/source/cui/border.cxx b/svx/source/cui/border.cxx
-index 100a5c6..ae2d007 100644
---- a/svx/source/cui/border.cxx
-+++ b/svx/source/cui/border.cxx
-@@ -569,9 +569,10 @@ void SvxBorderTabPage::Reset( const SfxItemSet& rSet )
-     {
-         // Do all visible lines show the same line widths?
-         USHORT nPrim, nDist, nSecn;
--        bool bWidthEq = aFrameSel.GetVisibleWidth( nPrim, nDist, nSecn );
-+        SvxBorderStyle nStyle;
-+        bool bWidthEq = aFrameSel.GetVisibleWidth( nPrim, nDist, nSecn, nStyle );
-         if( bWidthEq )
--            aLbLineStyle.SelectEntry( nPrim * 100, nSecn * 100, nDist * 100 );
-+            aLbLineStyle.SelectEntry( nPrim * 100, nSecn * 100, nDist * 100, nStyle );
-         else
-             aLbLineStyle.SelectEntryPos( 1 );
- 
-@@ -936,13 +937,31 @@ IMPL_LINK( SvxBorderTabPage, SelColHdl_Impl, ListBox *, pLb )
- 
- // -----------------------------------------------------------------------
- 
-+SvxBorderStyle lcl_getBorderStyle( USHORT nStyle )
-+{
-+    SvxBorderStyle nResult = SOLID;
-+    switch ( nStyle )
-+    {
-+        case STYLE_DOTTED:
-+            nResult = DOTTED;
-+            break;
-+        case STYLE_DASHED:
-+            nResult = DASHED;
-+            break;
-+        default:
-+            nResult = SOLID;
-+    }
-+    return nResult;
-+}
-+
- IMPL_LINK( SvxBorderTabPage, SelStyleHdl_Impl, ListBox *, pLb )
- {
-     if ( pLb == &aLbLineStyle )
-         aFrameSel.SetStyleToSelection(
-             static_cast< USHORT >( aLbLineStyle.GetSelectEntryLine1() / 100 ),
-             static_cast< USHORT >( aLbLineStyle.GetSelectEntryDistance() / 100 ),
--            static_cast< USHORT >( aLbLineStyle.GetSelectEntryLine2() / 100 ) );
-+            static_cast< USHORT >( aLbLineStyle.GetSelectEntryLine2() / 100 ),
-+            lcl_getBorderStyle( aLbLineStyle.GetSelectEntryStyle() ) );
- 
-     return 0;
- }
-@@ -1106,6 +1125,8 @@ void SvxBorderTabPage::FillLineListBox_Impl()
- 
-     aLbLineStyle.InsertEntry( LINE_WIDTH0 );
-     aLbLineStyle.InsertEntry( LINE_WIDTH5 );
-+    aLbLineStyle.InsertEntry( LINE_WIDTH5, 0, 0, STYLE_DOTTED );
-+    aLbLineStyle.InsertEntry( LINE_WIDTH5, 0, 0, STYLE_DASHED );
-     aLbLineStyle.InsertEntry( LINE_WIDTH1 );
-     aLbLineStyle.InsertEntry( LINE_WIDTH2 );
-     aLbLineStyle.InsertEntry( LINE_WIDTH3 );
-diff --git a/svx/source/dialog/framelink.cxx b/svx/source/dialog/framelink.cxx
-index 0e68b21..cd2c4d5 100644
---- a/svx/source/dialog/framelink.cxx
-+++ b/svx/source/dialog/framelink.cxx
+diff --git svx/source/dialog/framelink.cxx svx/source/dialog/framelink.cxx
+index 06fc478..13c7a4f 100644
+--- svx/source/dialog/framelink.cxx
++++ svx/source/dialog/framelink.cxx
 @@ -32,6 +32,7 @@
  #include <math.h>
  #include <vcl/outdev.hxx>
- #include <svx/borderline.hxx>
+ #include <editeng/borderline.hxx>
 +#include <svtools/borderhelper.hxx>
  
  // ----------------------------------------------------------------------------
@@ -2075,10 +2196,10 @@ index 0e68b21..cd2c4d5 100644
              rDev.Pop(); // colors
          }
      }
-diff --git a/svx/source/dialog/frmsel.cxx b/svx/source/dialog/frmsel.cxx
-index 21923b4..2b6af63 100644
---- a/svx/source/dialog/frmsel.cxx
-+++ b/svx/source/dialog/frmsel.cxx
+diff --git svx/source/dialog/frmsel.cxx svx/source/dialog/frmsel.cxx
+index b562e12..046c416 100644
+--- svx/source/dialog/frmsel.cxx
++++ svx/source/dialog/frmsel.cxx
 @@ -157,7 +157,7 @@ void FrameBorder::SetCoreStyle( const SvxBorderLine* pStyle )
          maCoreStyle = SvxBorderLine();
  
@@ -2165,209 +2286,10 @@ index 21923b4..2b6af63 100644
      for( SelFrameBorderIter aIt( mxImpl->maEnabBorders ); aIt.Is(); ++aIt )
          mxImpl->SetBorderState( **aIt, FRAMESTATE_SHOW );
  }
-diff --git a/svx/source/items/frmitems.cxx b/svx/source/items/frmitems.cxx
-index 728f9fe..ed8d236 100644
---- a/svx/source/items/frmitems.cxx
-+++ b/svx/source/items/frmitems.cxx
-@@ -81,7 +81,7 @@
- #include <svx/dialmgr.hxx>
- #include "svxerr.hxx"
- #include <svx/unoprnms.hxx>
--#include <com/sun/star/table/BorderLine.hpp>
-+#include <com/sun/star/table/BorderLine2.hpp>
- #include <com/sun/star/table/ShadowLocation.hpp>
- #include <com/sun/star/table/TableBorder.hpp>
- #include <com/sun/star/table/ShadowFormat.hpp>
-@@ -1580,10 +1580,12 @@ void SvxShadowItem::SetEnumValue( sal_uInt16 nVal )
- 
- // class SvxBorderLine  --------------------------------------------------
- 
--SvxBorderLine::SvxBorderLine( const Color *pCol, sal_uInt16 nOut, sal_uInt16 nIn, sal_uInt16 nDist )
-+SvxBorderLine::SvxBorderLine( const Color *pCol, sal_uInt16 nOut, sal_uInt16 nIn, sal_uInt16 nDist,
-+       SvxBorderStyle nStyle )
- : nOutWidth( nOut )
- , nInWidth ( nIn )
- , nDistance( nDist )
-+, m_nStyle( nStyle )
- {
-     if ( pCol )
-         aColor = *pCol;
-@@ -1604,6 +1606,7 @@ SvxBorderLine& SvxBorderLine::operator=( const SvxBorderLine& r )
-     nOutWidth = r.nOutWidth;
-     nInWidth = r.nInWidth;
-     nDistance = r.nDistance;
-+    m_nStyle = r.m_nStyle;
-     return *this;
- }
- 
-@@ -1623,7 +1626,8 @@ sal_Bool SvxBorderLine::operator==( const SvxBorderLine& rCmp ) const
-     return ( ( aColor    == rCmp.GetColor() ) 	 &&
-              ( nInWidth  == rCmp.GetInWidth() )  &&
-              ( nOutWidth == rCmp.GetOutWidth() ) &&
--             ( nDistance == rCmp.GetDistance() ) );
-+             ( nDistance == rCmp.GetDistance() ) &&
-+             ( m_nStyle == rCmp.GetStyle() ) );
- }
- 
- // -----------------------------------------------------------------------
-@@ -1840,15 +1844,16 @@ int SvxBoxItem::operator==( const SfxPoolItem& rAttr ) const
- }
- 
- // -----------------------------------------------------------------------
--table::BorderLine lcl_SvxLineToLine(const SvxBorderLine* pLine, sal_Bool bConvert)
-+table::BorderLine2 lcl_SvxLineToLine(const SvxBorderLine* pLine, sal_Bool bConvert)
- {
--    table::BorderLine aLine;
-+    table::BorderLine2 aLine;
-     if(pLine)
-     {
-         aLine.Color			 = pLine->GetColor().GetColor() ;
-         aLine.InnerLineWidth = sal_uInt16( bConvert ? TWIP_TO_MM100_UNSIGNED(pLine->GetInWidth() ): pLine->GetInWidth() );
-         aLine.OuterLineWidth = sal_uInt16( bConvert ? TWIP_TO_MM100_UNSIGNED(pLine->GetOutWidth()): pLine->GetOutWidth() );
-         aLine.LineDistance   = sal_uInt16( bConvert ? TWIP_TO_MM100_UNSIGNED(pLine->GetDistance()): pLine->GetDistance() );
-+        aLine.LineStyle      = pLine->GetStyle( );
-     }
-     else
-         aLine.Color			 = aLine.InnerLineWidth = aLine.OuterLineWidth = aLine.LineDistance	 = 0;
-@@ -1858,7 +1863,7 @@ table::BorderLine lcl_SvxLineToLine(const SvxBorderLine* pLine, sal_Bool bConver
- sal_Bool SvxBoxItem::QueryValue( uno::Any& rVal, BYTE nMemberId  ) const
- {
-     sal_Bool bConvert = 0!=(nMemberId&CONVERT_TWIPS);
--    table::BorderLine aRetLine;
-+    table::BorderLine2 aRetLine;
-     sal_uInt16 nDist = 0;
-     sal_Bool bDistMember = sal_False;
-     nMemberId &= ~CONVERT_TWIPS;
-@@ -1952,6 +1957,10 @@ sal_Bool lcl_LineToSvxLine(const ::com::sun::star::table::BorderLine& rLine, Svx
-     rSvxLine.SetInWidth( sal_uInt16( bConvert ? MM100_TO_TWIP(rLine.InnerLineWidth) : rLine.InnerLineWidth  ));
-     rSvxLine.SetOutWidth( sal_uInt16( bConvert ? MM100_TO_TWIP(rLine.OuterLineWidth) : rLine.OuterLineWidth  ));
-     rSvxLine.SetDistance( sal_uInt16( bConvert ? MM100_TO_TWIP(rLine.LineDistance	)  : rLine.LineDistance	 ));
-+
-+    const table::BorderLine2& rLine2 = static_cast< const table::BorderLine2& >( rLine );
-+    rSvxLine.SetStyle( ( SvxBorderStyle ) rLine2.LineStyle );
-+
-     sal_Bool bRet = rLine.InnerLineWidth > 0 || rLine.OuterLineWidth > 0;
-     return bRet;
- }
-@@ -1974,7 +1983,7 @@ sal_Bool SvxBoxItem::PutValue( const uno::Any& rVal, BYTE nMemberId )
-                 // 4 Borders and 5 distances
-                 sal_Int32 nDist = 0;
-                 SvxBorderLine aLine;
--                table::BorderLine aBorderLine;
-+                table::BorderLine2 aBorderLine;
-                 if ( aSeq[0] >>= aBorderLine )
-                 {
-                     sal_Bool bSet = lcl_LineToSvxLine(aBorderLine, aLine, bConvert);
-@@ -2076,7 +2085,7 @@ sal_Bool SvxBoxItem::PutValue( const uno::Any& rVal, BYTE nMemberId )
-         if( !rVal.hasValue() )
-             return sal_False;
- 
--        table::BorderLine aBorderLine;
-+        table::BorderLine2 aBorderLine;
-         if( rVal >>= aBorderLine )
-         {
-             // usual struct
-@@ -2795,7 +2804,7 @@ void SvxBoxInfoItem::ResetFlags()
- sal_Bool SvxBoxInfoItem::QueryValue( uno::Any& rVal, BYTE nMemberId  ) const
- {
-     sal_Bool bConvert = 0!=(nMemberId&CONVERT_TWIPS);
--    table::BorderLine aRetLine;
-+    table::BorderLine2 aRetLine;
-     sal_Int16 nVal=0;
-     sal_Bool bIntMember = sal_False;
-     nMemberId &= ~CONVERT_TWIPS;
-@@ -2889,7 +2898,7 @@ sal_Bool SvxBoxInfoItem::PutValue( const uno::Any& rVal, BYTE nMemberId )
-             if (( rVal >>= aSeq ) && ( aSeq.getLength() == 5 ))
-             {
-                 // 2 BorderLines, flags, valid flags and distance
--                table::BorderLine aBorderLine;
-+                table::BorderLine2 aBorderLine;
-                 SvxBorderLine aLine;
-                 sal_Int16 nFlags( 0 );
-                 sal_Int32 nVal( 0 );
-@@ -2937,7 +2946,7 @@ sal_Bool SvxBoxInfoItem::PutValue( const uno::Any& rVal, BYTE nMemberId )
-             if( !rVal.hasValue() )
-                 return sal_False;
- 
--            table::BorderLine aBorderLine;
-+            table::BorderLine2 aBorderLine;
-             if( rVal >>= aBorderLine )
-             {
-                 // usual struct
-@@ -3314,7 +3323,7 @@ sal_Bool SvxLineItem::PutValue( const uno::Any& rVal, BYTE nMemId )
-     sal_Int32 nVal = 0;
-     if ( nMemId == 0 )
-     {
--        table::BorderLine aLine;
-+        table::BorderLine2 aLine;
-         if ( rVal >>= aLine )
-         {
-             if ( !pLine )
-@@ -3336,6 +3345,7 @@ sal_Bool SvxLineItem::PutValue( const uno::Any& rVal, BYTE nMemId )
-             case MID_OUTER_WIDTH:   pLine->SetOutWidth((USHORT)nVal);   break;
-             case MID_INNER_WIDTH:   pLine->SetInWidth((USHORT)nVal);   break;
-             case MID_DISTANCE:      pLine->SetDistance((USHORT)nVal);   break;
-+            case MID_LINE_STYLE:         pLine->SetStyle((SvxBorderStyle)nVal);   break;
-             default:
-                 DBG_ERROR( "Wrong MemberId" );
-                 return sal_False;
-diff --git a/svx/source/msfilter/msdffimp.cxx b/svx/source/msfilter/msdffimp.cxx
-index 5d83564..f40e619 100644
---- a/svx/source/msfilter/msdffimp.cxx
-+++ b/svx/source/msfilter/msdffimp.cxx
-@@ -6066,6 +6066,10 @@ SdrObject* SvxMSDffManager::ProcessObj(SvStream& rSt,
-                             : (MSO_LineStyle)USHRT_MAX;
-         pTextImpRec->eLineStyle = pImpRec->eLineStyle;
- 
-+        pImpRec->eLineDashing = (MSO_LineDashing)GetPropertyValue(
-+                DFF_Prop_lineDashing, mso_lineSolid );
-+        pTextImpRec->eLineDashing = pImpRec->eLineDashing;
-+
-         if( pImpRec->nShapeId )
-         {
-             // Import-Record-Liste ergaenzen
-@@ -8105,6 +8109,7 @@ SvxMSDffImportRec::SvxMSDffImportRec()
-       eShapeType( mso_sptNil )
- {
-       eLineStyle      = mso_lineSimple; // GPF-Bug #66227#
-+      eLineDashing    = mso_lineSolid;
-       bDrawHell       = FALSE;
-       bHidden         = FALSE;
- //	  bInGroup		  = FALSE;
-@@ -8152,6 +8157,7 @@ SvxMSDffImportRec::SvxMSDffImportRec(const SvxMSDffImportRec& rCopy)
-        *pYRelTo = *(rCopy.pYRelTo);
-     }
-     eLineStyle       = rCopy.eLineStyle; // GPF-Bug #66227#
-+    eLineDashing     = rCopy.eLineDashing;
-     bDrawHell        = rCopy.bDrawHell;
-     bHidden          = rCopy.bHidden;
- //			bInGroup		 = rCopy.bInGroup;
-diff --git a/svx/source/svrtf/rtfitem.cxx b/svx/source/svrtf/rtfitem.cxx
-index 479c2f0..ec3b3e5 100644
---- a/svx/source/svrtf/rtfitem.cxx
-+++ b/svx/source/svrtf/rtfitem.cxx
-@@ -1629,10 +1629,15 @@ case RTF_BRDRBAR:			break;
-             }
-             goto SETBORDERLINE;
- 
--        case RTF_BRDRS:
-         case RTF_BRDRDOT:
--        case RTF_BRDRHAIR:
-+            aBrd.SetStyle( DOTTED );
-+            break;
-         case RTF_BRDRDASH:
-+            aBrd.SetStyle( DASHED );
-+            break;
-+        case RTF_BRDRS:
-+        case RTF_BRDRHAIR:
-+            aBrd.SetStyle( SOLID );
- SETBORDERLINE:
-             SetBorderLine( nBorderTyp, aAttr, aBrd );
-             break;
-diff --git a/svx/source/table/cell.cxx b/svx/source/table/cell.cxx
-index fe90e3a..4975004 100644
---- a/svx/source/table/cell.cxx
-+++ b/svx/source/table/cell.cxx
+diff --git svx/source/table/cell.cxx svx/source/table/cell.cxx
+index e8ea7c7..8530961 100644
+--- svx/source/table/cell.cxx
++++ svx/source/table/cell.cxx
 @@ -32,6 +32,7 @@
  #include <com/sun/star/style/XStyle.hpp>
  #include <com/sun/star/text/WritingMode.hpp>
@@ -2375,21 +2297,12 @@ index fe90e3a..4975004 100644
 +#include <com/sun/star/table/BorderLine2.hpp>
  
  #include <cppuhelper/typeprovider.hxx>
- #include <svtools/style.hxx>
-@@ -74,7 +75,7 @@ using namespace ::com::sun::star::style;
- using namespace ::com::sun::star::container;
- 
- extern sal_Bool lcl_LineToSvxLine(const BorderLine& rLine, SvxBorderLine& rSvxLine, sal_Bool bConvert);
--extern BorderLine lcl_SvxLineToLine(const SvxBorderLine* pLine, sal_Bool bConvert);
-+extern BorderLine2 lcl_SvxLineToLine(const SvxBorderLine* pLine, sal_Bool bConvert);
- 
- // -----------------------------------------------------------------------------
- 
-diff --git a/svx/source/table/viewcontactoftableobj.cxx b/svx/source/table/viewcontactoftableobj.cxx
-index 6dc73c6..52e7809 100644
---- a/svx/source/table/viewcontactoftableobj.cxx
-+++ b/svx/source/table/viewcontactoftableobj.cxx
-@@ -323,7 +323,8 @@ namespace drawinglayer
+ #include <svl/style.hxx>
+diff --git svx/source/table/viewcontactoftableobj.cxx svx/source/table/viewcontactoftableobj.cxx
+index 5f0af00..482d1ef 100644
+--- svx/source/table/viewcontactoftableobj.cxx
++++ svx/source/table/viewcontactoftableobj.cxx
+@@ -332,7 +332,8 @@ namespace drawinglayer
                          fExtendOE * fTwipsToMM,
                          true,
                          getLeftIsOutside(),
@@ -2399,7 +2312,7 @@ index 6dc73c6..52e7809 100644
                  }
              }
  
-@@ -365,7 +366,8 @@ namespace drawinglayer
+@@ -374,7 +375,8 @@ namespace drawinglayer
                          fExtendOE * fTwipsToMM,
                          true,
                          getBottomIsOutside(),
@@ -2409,7 +2322,7 @@ index 6dc73c6..52e7809 100644
                  }
              }
  
-@@ -407,7 +409,8 @@ namespace drawinglayer
+@@ -416,7 +418,8 @@ namespace drawinglayer
                          fExtendIE * fTwipsToMM,
                          getRightIsOutside(),
                          true,
@@ -2419,7 +2332,7 @@ index 6dc73c6..52e7809 100644
                  }
              }
  
-@@ -449,7 +452,8 @@ namespace drawinglayer
+@@ -458,7 +461,8 @@ namespace drawinglayer
                          fExtendIE * fTwipsToMM,
                          getTopIsOutside(),
                          true,
@@ -2429,26 +2342,26 @@ index 6dc73c6..52e7809 100644
                  }
              }
  
-diff --git a/svx/source/tbxctrls/tbcontrl.cxx b/svx/source/tbxctrls/tbcontrl.cxx
-index 6e70ed2..f29342d 100644
---- a/svx/source/tbxctrls/tbcontrl.cxx
-+++ b/svx/source/tbxctrls/tbcontrl.cxx
-@@ -39,6 +39,7 @@
- #include <vcl/bmpacc.hxx>
- #include <svtools/valueset.hxx>
+diff --git svx/source/tbxctrls/tbcontrl.cxx svx/source/tbxctrls/tbcontrl.cxx
+index 01d02a6..694fa9e 100644
+--- svx/source/tbxctrls/tbcontrl.cxx
++++ svx/source/tbxctrls/tbcontrl.cxx
+@@ -41,6 +41,7 @@
  #include <svtools/ctrlbox.hxx>
-+#include <svtools/borderhelper.hxx>
- #include <svtools/style.hxx>
+ #include <svl/style.hxx>
  #include <svtools/ctrltool.hxx>
- #include <svtools/stritem.hxx>
-@@ -91,6 +92,7 @@
++#include <svtools/borderhelper.hxx>
+ #include <svl/stritem.hxx>
+ #include <unotools/pathoptions.hxx>
+ #include <sfx2/tplpitem.hxx>
+@@ -88,6 +89,7 @@
+ #include "colorwindow.hxx"
  #include <memory>
  
- #include <svx/tbxcolorupdate.hxx>
 +#include <svx/framelink.hxx>
- 
- // ------------------------------------------------------------------------
- 
+ #include <svx/tbxcolorupdate.hxx>
+ #include <editeng/eerdll.hxx>
+ #include <editeng/editrids.hrc>
 @@ -1522,6 +1524,21 @@ void SvxLineWindow_Impl::MakeLineBitmap( USHORT nNo, Bitmap& rBmp, const Size& r
              aVirDev.DrawRect( aRect );
              nLineWidth = (USHORT) (DEF_DOUBLE_LINE6_OUT+DEF_DOUBLE_LINE6_IN+DEF_DOUBLE_LINE6_DIST)/20;
@@ -2512,19 +2425,19 @@ index 6e70ed2..f29342d 100644
      {
          MakeLineBitmap( i, aBmp, aBmpSize, aStr, aLineCol, aBackCol );
          aLineSet.InsertItem( i, aBmp, aStr );
-diff --git a/sw/source/core/inc/frame.hxx b/sw/source/core/inc/frame.hxx
-index 92ea09b..a98b001 100644
---- a/sw/source/core/inc/frame.hxx
-+++ b/sw/source/core/inc/frame.hxx
+diff --git sw/source/core/inc/frame.hxx sw/source/core/inc/frame.hxx
+index 206474a..1db1cc4 100644
+--- sw/source/core/inc/frame.hxx
++++ sw/source/core/inc/frame.hxx
 @@ -27,6 +27,7 @@
  #ifndef _FRAME_HXX
  #define _FRAME_HXX
- #include <svtools/svarray.hxx>
-+#include <svx/borderline.hxx>
+ #include <svl/svarray.hxx>
++#include <editeng/borderline.hxx>
  #include "swtypes.hxx"	// fuer SwTwips
  #include "swrect.hxx"
  #include "calbck.hxx"	// fuer SwClient
-@@ -525,7 +526,7 @@ public:
+@@ -526,7 +527,7 @@ public:
                            const BOOL bLowerMode = FALSE,
                            const BOOL bLowerBorder = FALSE ) const;
      void PaintBorderLine( const SwRect&, const SwRect&, const SwPageFrm*,
@@ -2533,10 +2446,10 @@ index 92ea09b..a98b001 100644
  
      //Retouche, nicht im Bereich des uebergebenen Rect!
      void Retouche( const SwPageFrm *pPage, const SwRect &rRect ) const;
-diff --git a/sw/source/core/layout/paintfrm.cxx b/sw/source/core/layout/paintfrm.cxx
-index 617f03a..8b6a529 100644
---- a/sw/source/core/layout/paintfrm.cxx
-+++ b/sw/source/core/layout/paintfrm.cxx
+diff --git sw/source/core/layout/paintfrm.cxx sw/source/core/layout/paintfrm.cxx
+index bdc3375..8eb891c 100644
+--- sw/source/core/layout/paintfrm.cxx
++++ sw/source/core/layout/paintfrm.cxx
 @@ -119,6 +119,9 @@
  #define COL_NOTES_SIDEPANE_SCROLLAREA		RGB_COLORDATA(230,230,220)
  #include <vcl/svapp.hxx>
@@ -2746,7 +2659,7 @@ index 617f03a..8b6a529 100644
                  rLRect.SetPainted();
              }
          nLastCount = nMinCount;
-@@ -3994,7 +4040,8 @@ void SwFrm::PaintShadow( const SwRect& rRect, SwRect& rOutRect,
+@@ -3992,7 +4038,8 @@ void SwFrm::PaintShadow( const SwRect& rRect, SwRect& rOutRect,
  void SwFrm::PaintBorderLine( const SwRect& rRect,
                               const SwRect& rOutRect,
                               const SwPageFrm *pPage,
@@ -2756,7 +2669,7 @@ index 617f03a..8b6a529 100644
  {
      if ( !rOutRect.IsOver( rRect ) )
          return;
-@@ -4017,10 +4064,10 @@ void SwFrm::PaintBorderLine( const SwRect& rRect,
+@@ -4015,10 +4062,10 @@ void SwFrm::PaintBorderLine( const SwRect& rRect,
          SwRegionRects aRegion( aOut, 4, 1 );
          ::lcl_SubtractFlys( this, pPage, aOut, aRegion );
          for ( USHORT i = 0; i < aRegion.Count(); ++i )
@@ -2769,7 +2682,7 @@ index 617f03a..8b6a529 100644
  }
  
  /*************************************************************************
-@@ -4311,7 +4358,8 @@ void lcl_PaintLeftRightLine( const sal_Bool         _bLeft,
+@@ -4309,7 +4356,8 @@ void lcl_PaintLeftRightLine( const sal_Bool         _bLeft,
                  (aPaintRect.*_rRectFn->fnAddRight)( 1 );
              }
          }
@@ -2779,7 +2692,7 @@ index 617f03a..8b6a529 100644
      }
  
      if ( pLeftRightBorder->GetInWidth() )
-@@ -4351,7 +4399,8 @@ void lcl_PaintLeftRightLine( const sal_Bool         _bLeft,
+@@ -4349,7 +4397,8 @@ void lcl_PaintLeftRightLine( const sal_Bool         _bLeft,
                      (aPaintRect.*_rRectFn->fnAddRight)( 1 );
                  }
              }
@@ -2789,7 +2702,7 @@ index 617f03a..8b6a529 100644
          }
      }
  }
-@@ -4415,7 +4464,8 @@ void lcl_PaintTopBottomLine( const sal_Bool         _bTop,
+@@ -4413,7 +4462,8 @@ void lcl_PaintTopBottomLine( const sal_Bool         _bTop,
                  (aPaintRect.*_rRectFn->fnAddBottom)( 1 );
              }
          }
@@ -2799,7 +2712,7 @@ index 617f03a..8b6a529 100644
      }
  
      if ( pTopBottomBorder->GetInWidth() )
-@@ -4454,7 +4504,8 @@ void lcl_PaintTopBottomLine( const sal_Bool         _bTop,
+@@ -4452,7 +4502,8 @@ void lcl_PaintTopBottomLine( const sal_Bool         _bTop,
                      (aPaintRect.*_rRectFn->fnAddBottom)( 1 );
                  }
              }
@@ -2809,7 +2722,7 @@ index 617f03a..8b6a529 100644
          }
      }
  }
-@@ -4934,7 +4985,7 @@ void SwLayoutFrm::PaintColLines( const SwRect &rRect, const SwFmtCol &rFmtCol,
+@@ -4932,7 +4983,7 @@ void SwLayoutFrm::PaintColLines( const SwRect &rRect, const SwFmtCol &rFmtCol,
          (aLineRect.*fnRect->fnSetPosX)
              ( (pCol->Frm().*fnGetX)() - nPenHalf );
          if ( aRect.IsOver( aLineRect ) )
@@ -2818,7 +2731,7 @@ index 617f03a..8b6a529 100644
          pCol = pCol->GetNext();
      }
  }
-@@ -6082,7 +6133,7 @@ void MA_FASTCALL lcl_RefreshLine( const SwLayoutFrm *pLay,
+@@ -6080,7 +6131,7 @@ void MA_FASTCALL lcl_RefreshLine( const SwLayoutFrm *pLay,
              SwRect aRect( aP1, aP2 );
              // OD 18.11.2002 #99672# - use parameter <_pSubsLines> instead of
              // global variable <pSubsLines>.
@@ -2827,7 +2740,7 @@ index 617f03a..8b6a529 100644
          }
          aP1 = aP2;
          aP1.*pDirPt += 1;
-@@ -6221,13 +6272,13 @@ void SwLayoutFrm::PaintSubsidiaryLines( const SwPageFrm *pPage,
+@@ -6219,13 +6270,13 @@ void SwLayoutFrm::PaintSubsidiaryLines( const SwPageFrm *pPage,
              if ( aOriginal.Left() == aOut.Left() )
              {
                  const SwRect aRect( aOut.Pos(), aLB );
@@ -2843,7 +2756,7 @@ index 617f03a..8b6a529 100644
                          (bBreak && bVert) ? SUBCOL_BREAK : nSubColor );
              }
          }
-@@ -6238,13 +6289,13 @@ void SwLayoutFrm::PaintSubsidiaryLines( const SwPageFrm *pPage,
+@@ -6236,13 +6287,13 @@ void SwLayoutFrm::PaintSubsidiaryLines( const SwPageFrm *pPage,
              {
                  // OD 14.11.2002 #104821# - in horizontal layout set page/column break at top
                  const SwRect aRect( aOut.Pos(), aRT );
@@ -2859,11 +2772,11 @@ index 617f03a..8b6a529 100644
              }
          }
      }
-diff --git a/sw/source/filter/html/css1atr.cxx b/sw/source/filter/html/css1atr.cxx
-index b058394..93f0122 100644
---- a/sw/source/filter/html/css1atr.cxx
-+++ b/sw/source/filter/html/css1atr.cxx
-@@ -178,7 +178,6 @@ static Writer& OutCSS1_SvxULSpace_SvxLRSpace( Writer& rWrt,
+diff --git sw/source/filter/html/css1atr.cxx sw/source/filter/html/css1atr.cxx
+index c584f5c..5258186 100644
+--- sw/source/filter/html/css1atr.cxx
++++ sw/source/filter/html/css1atr.cxx
+@@ -176,7 +176,6 @@ static Writer& OutCSS1_SvxULSpace_SvxLRSpace( Writer& rWrt,
  static Writer& OutCSS1_SvxBrush( Writer& rWrt, const SfxPoolItem& rHt,
                                   USHORT nMode, const String *pGrfName );
  static Writer& OutCSS1_SvxBrush( Writer& rWrt, const SfxPoolItem& rHt );
@@ -2871,7 +2784,7 @@ index b058394..93f0122 100644
  static Writer& OutCSS1_SwFmtFrmSize( Writer& rWrt, const SfxPoolItem& rHt,
                                       USHORT nMode );
  static Writer& OutCSS1_SvxFmtBreak_SwFmtPDesc_SvxFmtKeep( Writer& rWrt,
-@@ -3602,8 +3601,24 @@ static void OutCSS1_SvxBorderLine( SwHTMLWriter& rHTMLWrt,
+@@ -3600,8 +3599,24 @@ static void OutCSS1_SvxBorderLine( SwHTMLWriter& rHTMLWrt,
      }
  
      // Linien-Stil: solid oder double
@@ -2898,7 +2811,7 @@ index b058394..93f0122 100644
  
      // und noch die Farbe
      GetCSS1Color( pLine->GetColor(), sOut );
-@@ -3611,14 +3626,14 @@ static void OutCSS1_SvxBorderLine( SwHTMLWriter& rHTMLWrt,
+@@ -3609,14 +3624,14 @@ static void OutCSS1_SvxBorderLine( SwHTMLWriter& rHTMLWrt,
      rHTMLWrt.OutCSS1_PropertyAscii( pProperty, sOut );
  }
  
@@ -2916,10 +2829,10 @@ index b058394..93f0122 100644
  
      const SvxBoxItem& rBoxItem = (const SvxBoxItem&)rHt;
      const SvxBorderLine *pTop = rBoxItem.GetTop();
-diff --git a/sw/source/filter/html/htmltabw.cxx b/sw/source/filter/html/htmltabw.cxx
-index 2c79ea2..419e699 100644
---- a/sw/source/filter/html/htmltabw.cxx
-+++ b/sw/source/filter/html/htmltabw.cxx
+diff --git sw/source/filter/html/htmltabw.cxx sw/source/filter/html/htmltabw.cxx
+index f7b577c..8ee73ca 100644
+--- sw/source/filter/html/htmltabw.cxx
++++ sw/source/filter/html/htmltabw.cxx
 @@ -437,6 +437,11 @@ void SwHTMLWrtTable::OutTableCell( SwHTMLWriter& rWrt,
              OutCSS1_TableBGStyleOpt( rWrt, *pBrushItem );
      }
@@ -2952,10 +2865,10 @@ index 2c79ea2..419e699 100644
  
      // CELLPADDING ausgeben: Stammt aus Layout oder ist berechnet
      (((sOut += ' ' ) += OOO_STRING_SVTOOLS_HTML_O_cellpadding ) += '=')
-diff --git a/sw/source/filter/html/svxcss1.cxx b/sw/source/filter/html/svxcss1.cxx
-index d48053f..c5ba689 100644
---- a/sw/source/filter/html/svxcss1.cxx
-+++ b/sw/source/filter/html/svxcss1.cxx
+diff --git sw/source/filter/html/svxcss1.cxx sw/source/filter/html/svxcss1.cxx
+index f1bda7d..72c70b6 100644
+--- sw/source/filter/html/svxcss1.cxx
++++ sw/source/filter/html/svxcss1.cxx
 @@ -185,13 +185,13 @@ static CSS1PropertyEnum __READONLY_DATA aBorderWidthTable[] =
      { 0,					0	}
  };
@@ -2986,10 +2899,10 @@ index d48053f..c5ba689 100644
  
      // benannte Breite umrechnenen, wenn keine absolute gegeben ist
      if( nAbsWidth==USHRT_MAX )
-diff --git a/sw/source/filter/html/wrthtml.hxx b/sw/source/filter/html/wrthtml.hxx
-index e54a67d..7bab586 100644
---- a/sw/source/filter/html/wrthtml.hxx
-+++ b/sw/source/filter/html/wrthtml.hxx
+diff --git sw/source/filter/html/wrthtml.hxx sw/source/filter/html/wrthtml.hxx
+index c422bab..a9b5e13 100644
+--- sw/source/filter/html/wrthtml.hxx
++++ sw/source/filter/html/wrthtml.hxx
 @@ -598,6 +598,7 @@ Writer& OutHTML_NumBulListStart( SwHTMLWriter& rWrt,
  Writer& OutHTML_NumBulListEnd( SwHTMLWriter& rWrt,
                                 const SwHTMLNumRuleInfo& rNextInfo );
@@ -2998,11 +2911,11 @@ index e54a67d..7bab586 100644
  
  #endif	//  _WRTHTML_HXX
  
-diff --git a/sw/source/filter/rtf/rtfatr.cxx b/sw/source/filter/rtf/rtfatr.cxx
-index 2e48c5a..6da9f86 100644
---- a/sw/source/filter/rtf/rtfatr.cxx
-+++ b/sw/source/filter/rtf/rtfatr.cxx
-@@ -1730,12 +1730,31 @@ static void OutTBLBorderLine(SwRTFWriter& rWrt, const SvxBorderLine* pLine,
+diff --git sw/source/filter/rtf/rtfatr.cxx sw/source/filter/rtf/rtfatr.cxx
+index 344174b..6756c34 100644
+--- sw/source/filter/rtf/rtfatr.cxx
++++ sw/source/filter/rtf/rtfatr.cxx
+@@ -1720,12 +1720,31 @@ static void OutTBLBorderLine(SwRTFWriter& rWrt, const SvxBorderLine* pLine,
      }
      else
      {
@@ -3038,11 +2951,11 @@ index 2e48c5a..6da9f86 100644
                          ByteString::CreateFromInt32( pLine->GetOutWidth() / 2 );
      }
  
-diff --git a/sw/source/filter/rtf/swparrtf.cxx b/sw/source/filter/rtf/swparrtf.cxx
-index 52a65f1..62ac9df 100644
---- a/sw/source/filter/rtf/swparrtf.cxx
-+++ b/sw/source/filter/rtf/swparrtf.cxx
-@@ -2537,7 +2537,11 @@ void SwRTFParser::SetBorderLine(SvxBoxItem& rBox, sal_uInt16 nLine)
+diff --git sw/source/filter/rtf/swparrtf.cxx sw/source/filter/rtf/swparrtf.cxx
+index 8d88d27..c1ef5d7 100644
+--- sw/source/filter/rtf/swparrtf.cxx
++++ sw/source/filter/rtf/swparrtf.cxx
+@@ -2520,7 +2520,11 @@ void SwRTFParser::SetBorderLine(SvxBoxItem& rBox, sal_uInt16 nLine)
              break;
  
          case RTF_BRDRDOT:           // SO does not have dashed or dotted lines
@@ -3054,11 +2967,11 @@ index 52a65f1..62ac9df 100644
          case RTF_BRDRDASHSM:
          case RTF_BRDRDASHD:
          case RTF_BRDRDASHDD:
-diff --git a/sw/source/filter/rtf/wrtrtf.cxx b/sw/source/filter/rtf/wrtrtf.cxx
-index a6723db..d1b16d7 100644
---- a/sw/source/filter/rtf/wrtrtf.cxx
-+++ b/sw/source/filter/rtf/wrtrtf.cxx
-@@ -1466,7 +1466,20 @@ void SwRTFWriter::OutRTFBorder(const SvxBorderLine* aLine, const USHORT nSpace )
+diff --git sw/source/filter/rtf/wrtrtf.cxx sw/source/filter/rtf/wrtrtf.cxx
+index bf2b81e..62fba7e 100644
+--- sw/source/filter/rtf/wrtrtf.cxx
++++ sw/source/filter/rtf/wrtrtf.cxx
+@@ -1463,7 +1463,20 @@ void SwRTFWriter::OutRTFBorder(const SvxBorderLine* aLine, const USHORT nSpace )
      int nWidth = aLine->GetOutWidth();
  
      if(nDistance == 0)	// Single Line
@@ -3080,11 +2993,11 @@ index a6723db..d1b16d7 100644
      else				// Double Line
      {
          if(nOutWidth == nInWidth)
-diff --git a/sw/source/filter/ww1/w1sprm.cxx b/sw/source/filter/ww1/w1sprm.cxx
-index 11839da..a848298 100644
---- a/sw/source/filter/ww1/w1sprm.cxx
-+++ b/sw/source/filter/ww1/w1sprm.cxx
-@@ -218,6 +218,7 @@ STOP1(Ww1SingleSprmPPageBreakBefore, RES_BREAK)
+diff --git sw/source/filter/ww1/w1sprm.cxx sw/source/filter/ww1/w1sprm.cxx
+index a26fc29..488ca0b 100644
+--- sw/source/filter/ww1/w1sprm.cxx
++++ sw/source/filter/ww1/w1sprm.cxx
+@@ -208,6 +208,7 @@ STOP1(Ww1SingleSprmPPageBreakBefore, RES_BREAK)

... etc. - the rest is truncated


More information about the ooo-build-commit mailing list