sc/inc/CommonProperties.hxx           |   14 ++++++++
 sc/inc/unonames.hxx                   |    5 +++
 sc/qa/extras/scstyleobj.cxx           |    4 ++
 sc/qa/extras/sctablecolumnobj.cxx     |    4 ++
 sc/qa/extras/sctablerowobj.cxx        |    4 ++
 sc/source/filter/inc/stylesbuffer.hxx |    4 ++
 sc/source/filter/oox/stylesbuffer.cxx |   11 ++++++
 sc/source/ui/unoobj/cellsuno.cxx      |   54 +++-------------------------------
 sc/source/ui/unoobj/styleuno.cxx      |    9 -----
 9 files changed, 52 insertions(+), 57 deletions(-)

New commits:
commit 9c53f40983377228f3abf9a5fc2fc2a562e7332b
Author:     Tomaž Vajngerl <tomaz.vajng...@collabora.co.uk>
AuthorDate: Fri Jun 23 20:03:27 2023 +0900
Commit:     Miklos Vajna <vmik...@collabora.com>
CommitDate: Fri Aug 25 08:20:38 2023 +0200

    sc: import and prop. theme color support for cell borders
    
    Adds import for theme colors for cell borders and UNO properties
    for the cell border theme (complex) colors.
    
    Change-Id: I9d8dd7e71f74a623f916e19d59964058f43440bd
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153502
    Tested-by: Jenkins
    Reviewed-by: Tomaž Vajngerl <qui...@gmail.com>
    (cherry picked from commit 28e9f2bc390e10339859306ad5f733d377134ca8)
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/156063
    Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoff...@gmail.com>
    Reviewed-by: Miklos Vajna <vmik...@collabora.com>

diff --git a/sc/inc/CommonProperties.hxx b/sc/inc/CommonProperties.hxx
index 2c7d1e0a080b..4a2931753c79 100644
--- a/sc/inc/CommonProperties.hxx
+++ b/sc/inc/CommonProperties.hxx
@@ -17,4 +17,18 @@
     { SC_UNONAME_CCOLOR, ATTR_FONT_COLOR, cppu::UnoType<sal_Int32>::get(), 0, 
MID_COLOR_RGB }, \
     { SC_UNONAME_CHAR_COMPLEX_COLOR, ATTR_FONT_COLOR, 
cppu::UnoType<css::util::XComplexColor>::get(), 0, MID_COMPLEX_COLOR }, \
 
+#define CELL_BORDER_PROPERTIES \
+    { SC_UNONAME_BOTTBORDER, ATTR_BORDER, 
cppu::UnoType<table::BorderLine>::get(), 0, BOTTOM_BORDER | CONVERT_TWIPS }, \
+    { SC_UNONAME_BOTTBORDER2, ATTR_BORDER, 
cppu::UnoType<table::BorderLine2>::get(), 0, BOTTOM_BORDER | CONVERT_TWIPS }, \
+    { SC_UNONAME_LEFTBORDER, ATTR_BORDER, 
cppu::UnoType<table::BorderLine>::get(), 0, LEFT_BORDER | CONVERT_TWIPS }, \
+    { SC_UNONAME_LEFTBORDER2, ATTR_BORDER, 
cppu::UnoType<table::BorderLine2>::get(), 0, LEFT_BORDER | CONVERT_TWIPS }, \
+    { SC_UNONAME_RIGHTBORDER, ATTR_BORDER, 
cppu::UnoType<table::BorderLine>::get(), 0, RIGHT_BORDER | CONVERT_TWIPS }, \
+    { SC_UNONAME_RIGHTBORDER2, ATTR_BORDER, 
cppu::UnoType<table::BorderLine2>::get(), 0, RIGHT_BORDER | CONVERT_TWIPS }, \
+    { SC_UNONAME_TOPBORDER, ATTR_BORDER, 
cppu::UnoType<table::BorderLine>::get(), 0, TOP_BORDER | CONVERT_TWIPS }, \
+    { SC_UNONAME_TOPBORDER2, ATTR_BORDER, 
cppu::UnoType<table::BorderLine2>::get(), 0, TOP_BORDER | CONVERT_TWIPS }, \
+    { SC_UNONAME_BOTTOM_BORDER_COMPLEX_COLOR, ATTR_BORDER, 
cppu::UnoType<util::XComplexColor>::get(), 0, MID_BORDER_BOTTOM_COLOR }, \
+    { SC_UNONAME_LEFT_BORDER_COMPLEX_COLOR, ATTR_BORDER, 
cppu::UnoType<util::XComplexColor>::get(), 0, MID_BORDER_LEFT_COLOR }, \
+    { SC_UNONAME_RIGHT_BORDER_COMPLEX_COLOR, ATTR_BORDER, 
cppu::UnoType<util::XComplexColor>::get(), 0, MID_BORDER_RIGHT_COLOR }, \
+    { SC_UNONAME_TOP_BORDER_COMPLEX_COLOR, ATTR_BORDER, 
cppu::UnoType<util::XComplexColor>::get(), 0, MID_BORDER_TOP_COLOR }, \
+
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/sc/inc/unonames.hxx b/sc/inc/unonames.hxx
index 550817c62790..c644dc32391a 100644
--- a/sc/inc/unonames.hxx
+++ b/sc/inc/unonames.hxx
@@ -133,6 +133,11 @@ inline constexpr OUStringLiteral SC_UNONAME_LEFTBORDER2    
  = u"LeftBorder2";
 inline constexpr OUStringLiteral SC_UNONAME_RIGHTBORDER2     = u"RightBorder2";
 inline constexpr OUStringLiteral SC_UNONAME_TOPBORDER2       = u"TopBorder2";
 
+inline constexpr OUStringLiteral SC_UNONAME_BOTTOM_BORDER_COMPLEX_COLOR = 
u"BottomBorderComplexColor";
+inline constexpr OUStringLiteral SC_UNONAME_LEFT_BORDER_COMPLEX_COLOR = 
u"LeftBorderComplexColor";
+inline constexpr OUStringLiteral SC_UNONAME_RIGHT_BORDER_COMPLEX_COLOR = 
u"RightBorderComplexColor";
+inline constexpr OUStringLiteral SC_UNONAME_TOP_BORDER_COMPLEX_COLOR = 
u"TopBorderComplexColor";
+
 inline constexpr OUStringLiteral SC_UNONAME_DIAGONAL_TLBR    = u"DiagonalTLBR";
 inline constexpr OUStringLiteral SC_UNONAME_DIAGONAL_BLTR    = u"DiagonalBLTR";
 
diff --git a/sc/qa/extras/scstyleobj.cxx b/sc/qa/extras/scstyleobj.cxx
index 813a59db944b..12b3b0ebde8d 100644
--- a/sc/qa/extras/scstyleobj.cxx
+++ b/sc/qa/extras/scstyleobj.cxx
@@ -61,6 +61,7 @@ ScStyleObj::ScStyleObj()
     , XNamed("ScStyleObj")
     , XPropertySet({ "BottomBorder",
                      "BottomBorder2",
+                     "BottomBorderComplexColor",
                      "CellProtection",
                      "CharLocale",
                      "CharLocaleAsian",
@@ -75,14 +76,17 @@ ScStyleObj::ScStyleObj()
                      "HoriJustify",
                      "LeftBorder",
                      "LeftBorder2",
+                     "LeftBorderComplexColor",
                      "NumberFormat",
                      "Orientation",
                      "RightBorder",
                      "RightBorder2",
+                     "RightBorderComplexColor",
                      "ShadowFormat",
                      "TableBorder",
                      "TopBorder",
                      "TopBorder2",
+                     "TopBorderComplexColor",
                      "UserDefinedAttributes",
                      "CellBackgroundComplexColor" })
 {
diff --git a/sc/qa/extras/sctablecolumnobj.cxx 
b/sc/qa/extras/sctablecolumnobj.cxx
index 1216079d98bf..fffc29518daf 100644
--- a/sc/qa/extras/sctablecolumnobj.cxx
+++ b/sc/qa/extras/sctablecolumnobj.cxx
@@ -79,6 +79,7 @@ ScTableColumnObj::ScTableColumnObj()
     , XPropertySet({
           "BottomBorder",
           "BottomBorder2",
+          "BottomBorderComplexColor",
           "CellProtection",
           "CharLocale",
           "CharLocaleAsian",
@@ -96,15 +97,18 @@ ScTableColumnObj::ScTableColumnObj()
           "HoriJustify",
           "LeftBorder",
           "LeftBorder2",
+          "LeftBorderComplexColor",
           "NumberingRules",
           "Orientation",
           "RightBorder",
           "RightBorder2",
+          "RightBorderComplexColor",
           "ShadowFormat",
           "TableBorder",
           "TableBorder2",
           "TopBorder",
           "TopBorder2",
+          "TopBorderComplexColor",
           "UserDefinedAttributes",
           "Validation",
           "ValidationLocal",
diff --git a/sc/qa/extras/sctablerowobj.cxx b/sc/qa/extras/sctablerowobj.cxx
index d1f4d1fb05c4..4f03cde4ddf6 100644
--- a/sc/qa/extras/sctablerowobj.cxx
+++ b/sc/qa/extras/sctablerowobj.cxx
@@ -70,6 +70,7 @@ ScTableRowObj::ScTableRowObj()
     , XCellRange("A7:A7")
     , XPropertySet({ "BottomBorder",
                      "BottomBorder2",
+                     "BottomBorderComplexColor",
                      "CellProtection",
                      "CharLocale",
                      "CharLocaleAsian",
@@ -87,15 +88,18 @@ ScTableRowObj::ScTableRowObj()
                      "HoriJustify",
                      "LeftBorder",
                      "LeftBorder2",
+                     "LeftBorderComplexColor",
                      "NumberingRules",
                      "Orientation",
                      "RightBorder",
                      "RightBorder2",
+                     "RightBorderComplexColor",
                      "ShadowFormat",
                      "TableBorder",
                      "TableBorder2",
                      "TopBorder",
                      "TopBorder2",
+                     "TopBorderComplexColor",
                      "UserDefinedAttributes",
                      "Validation",
                      "ValidationLocal",
diff --git a/sc/source/filter/inc/stylesbuffer.hxx 
b/sc/source/filter/inc/stylesbuffer.hxx
index 713b5a2f25b8..b454f8bb3f39 100644
--- a/sc/source/filter/inc/stylesbuffer.hxx
+++ b/sc/source/filter/inc/stylesbuffer.hxx
@@ -413,6 +413,10 @@ struct ApiBorderData
     ApiBorderLine       maRight;            /// Right line format
     ApiBorderLine       maTop;              /// Top line format
     ApiBorderLine       maBottom;           /// Bottom line format
+    model::ComplexColor maComplexColorLeft;
+    model::ComplexColor maComplexColorRight;
+    model::ComplexColor maComplexColorTop;
+    model::ComplexColor maComplexColorBottom;
     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.
diff --git a/sc/source/filter/oox/stylesbuffer.cxx 
b/sc/source/filter/oox/stylesbuffer.cxx
index 47dd75f34425..f48c45d8277b 100644
--- a/sc/source/filter/oox/stylesbuffer.cxx
+++ b/sc/source/filter/oox/stylesbuffer.cxx
@@ -1520,6 +1520,11 @@ void Border::finalizeImport( bool bRTL )
     convertBorderLine( maApiData.maTop,    maModel.maTop );
     convertBorderLine( maApiData.maBottom, maModel.maBottom );
 
+    maApiData.maComplexColorLeft = 
maModel.maLeft.maColor.createComplexColor(getBaseFilter().getGraphicHelper(), 
-1);
+    maApiData.maComplexColorRight = 
maModel.maRight.maColor.createComplexColor(getBaseFilter().getGraphicHelper(), 
-1);
+    maApiData.maComplexColorTop = 
maModel.maTop.maColor.createComplexColor(getBaseFilter().getGraphicHelper(), 
-1);
+    maApiData.maComplexColorBottom = 
maModel.maBottom.maColor.createComplexColor(getBaseFilter().getGraphicHelper(), 
-1);
+
     if( maModel.mbDiagTLtoBR )
         convertBorderLine( maApiData.maTLtoBR, maModel.maDiagonal );
     if( maModel.mbDiagBLtoTR )
@@ -1531,22 +1536,26 @@ void Border::fillToItemSet( SfxItemSet& rItemSet, bool 
bSkipPoolDefs ) const
     if( maApiData.mbBorderUsed )
     {
          SvxBoxItem aBoxItem( ATTR_BORDER );
-         ::editeng::SvxBorderLine aLine;
+         editeng::SvxBorderLine aLine;
 
          if (SvxBoxItem::LineToSvxLine(maApiData.maLeft, aLine, false))
          {
+             aLine.setComplexColor(maApiData.maComplexColorLeft);
              aBoxItem.SetLine( &aLine, SvxBoxItemLine::LEFT );
          }
          if (SvxBoxItem::LineToSvxLine(maApiData.maRight, aLine, false))
          {
+             aLine.setComplexColor(maApiData.maComplexColorRight);
              aBoxItem.SetLine( &aLine, SvxBoxItemLine::RIGHT );
          }
          if (SvxBoxItem::LineToSvxLine(maApiData.maTop, aLine, false))
          {
+             aLine.setComplexColor(maApiData.maComplexColorTop);
              aBoxItem.SetLine( &aLine, SvxBoxItemLine::TOP );
          }
          if (SvxBoxItem::LineToSvxLine(maApiData.maBottom, aLine, false))
          {
+             aLine.setComplexColor(maApiData.maComplexColorBottom);
              aBoxItem.SetLine( &aLine, SvxBoxItemLine::BOTTOM );
          }
          ScfTools::PutItem( rItemSet, aBoxItem, bSkipPoolDefs );
diff --git a/sc/source/ui/unoobj/cellsuno.cxx b/sc/source/ui/unoobj/cellsuno.cxx
index 77ed135154a5..7bc07f9fdebe 100644
--- a/sc/source/ui/unoobj/cellsuno.cxx
+++ b/sc/source/ui/unoobj/cellsuno.cxx
@@ -155,8 +155,7 @@ static const SfxItemPropertySet* lcl_GetCellsPropertySet()
     {
         { SC_UNONAME_ABSNAME,  SC_WID_UNO_ABSNAME, 
cppu::UnoType<OUString>::get(),        0 | beans::PropertyAttribute::READONLY, 
0 },
         { SC_UNONAME_ASIANVERT,ATTR_VERTICAL_ASIAN,cppu::UnoType<bool>::get(), 
                 0, 0 },
-        { SC_UNONAME_BOTTBORDER,ATTR_BORDER,       
::cppu::UnoType<table::BorderLine>::get(), 0, BOTTOM_BORDER | CONVERT_TWIPS },
-        { SC_UNONAME_BOTTBORDER2,ATTR_BORDER,      
::cppu::UnoType<table::BorderLine2>::get(), 0, BOTTOM_BORDER | CONVERT_TWIPS },
+        CELL_BORDER_PROPERTIES
         CELL_BACKGROUND_COLOR_PROPERTIES
         { SC_UNONAME_CELLPRO,  ATTR_PROTECTION,    
cppu::UnoType<util::CellProtection>::get(), 0, 0 },
         { SC_UNONAME_CELLSTYL, 
SC_WID_UNO_CELLSTYL,cppu::UnoType<OUString>::get(),        0, 0 },
@@ -215,8 +214,6 @@ static const SfxItemPropertySet* lcl_GetCellsPropertySet()
         { SC_UNONAME_CELLHJUS_METHOD, ATTR_HOR_JUSTIFY_METHOD, 
::cppu::UnoType<sal_Int32>::get(),   0, 0 },
         { SC_UNONAME_CELLTRAN, ATTR_BACKGROUND,    cppu::UnoType<bool>::get(), 
                 0, MID_GRAPHIC_TRANSPARENT },
         { SC_UNONAME_WRAP,     ATTR_LINEBREAK,     cppu::UnoType<bool>::get(), 
                 0, 0 },
-        { SC_UNONAME_LEFTBORDER,ATTR_BORDER,       
::cppu::UnoType<table::BorderLine>::get(), 0, LEFT_BORDER | CONVERT_TWIPS },
-        { SC_UNONAME_LEFTBORDER2,ATTR_BORDER,      
::cppu::UnoType<table::BorderLine2>::get(), 0, LEFT_BORDER | CONVERT_TWIPS },
         { SC_UNONAME_NUMFMT,   ATTR_VALUE_FORMAT,  
cppu::UnoType<sal_Int32>::get(),            0, 0 },
         { SC_UNONAME_NUMRULES, 
SC_WID_UNO_NUMRULES,cppu::UnoType<container::XIndexReplace>::get(), 0, 0 },
         { SC_UNONAME_CELLORI,  ATTR_STACKED,       
cppu::UnoType<table::CellOrientation>::get(), 0, 0 },
@@ -231,16 +228,12 @@ static const SfxItemPropertySet* lcl_GetCellsPropertySet()
         { SC_UNONAME_PLMARGIN, ATTR_MARGIN,        
cppu::UnoType<sal_Int32>::get(),            0, MID_MARGIN_L_MARGIN  | 
CONVERT_TWIPS },
         { SC_UNONAME_PRMARGIN, ATTR_MARGIN,        
cppu::UnoType<sal_Int32>::get(),            0, MID_MARGIN_R_MARGIN  | 
CONVERT_TWIPS },
         { SC_UNONAME_PTMARGIN, ATTR_MARGIN,        
cppu::UnoType<sal_Int32>::get(),            0, MID_MARGIN_UP_MARGIN | 
CONVERT_TWIPS },
-        { SC_UNONAME_RIGHTBORDER,ATTR_BORDER,      
::cppu::UnoType<table::BorderLine>::get(), 0, RIGHT_BORDER | CONVERT_TWIPS },
-        { SC_UNONAME_RIGHTBORDER2,ATTR_BORDER,     
::cppu::UnoType<table::BorderLine2>::get(), 0, RIGHT_BORDER | CONVERT_TWIPS },
         { SC_UNONAME_ROTANG,   ATTR_ROTATE_VALUE,  
cppu::UnoType<sal_Int32>::get(),            0, 0 },
         { SC_UNONAME_ROTREF,   ATTR_ROTATE_MODE,   
cppu::UnoType<sal_Int32>::get(), 0, 0 },
         { SC_UNONAME_SHADOW,   ATTR_SHADOW,        
cppu::UnoType<table::ShadowFormat>::get(),  0, 0 | CONVERT_TWIPS },
         { SC_UNONAME_SHRINK_TO_FIT, ATTR_SHRINKTOFIT, 
cppu::UnoType<bool>::get(),               0, 0 },
         { SC_UNONAME_TBLBORD,  SC_WID_UNO_TBLBORD, 
cppu::UnoType<table::TableBorder>::get(),   0, 0 | CONVERT_TWIPS },
         { SC_UNONAME_TBLBORD2,  SC_WID_UNO_TBLBORD2, 
cppu::UnoType<table::TableBorder2>::get(),   0, 0 | CONVERT_TWIPS },
-        { SC_UNONAME_TOPBORDER,ATTR_BORDER,        
::cppu::UnoType<table::BorderLine>::get(), 0, TOP_BORDER | CONVERT_TWIPS },
-        { SC_UNONAME_TOPBORDER2,ATTR_BORDER,       
::cppu::UnoType<table::BorderLine2>::get(), 0, TOP_BORDER | CONVERT_TWIPS },
         { SC_UNONAME_USERDEF,  ATTR_USERDEF,       
cppu::UnoType<container::XNameContainer>::get(), 0, 0 },
         { SC_UNONAME_VALIDAT,  SC_WID_UNO_VALIDAT, 
cppu::UnoType<beans::XPropertySet>::get(), 0, 0 },
         { SC_UNONAME_VALILOC,  SC_WID_UNO_VALILOC, 
cppu::UnoType<beans::XPropertySet>::get(), 0, 0 },
@@ -264,8 +257,7 @@ static const SfxItemPropertySet* lcl_GetRangePropertySet()
     {
         { SC_UNONAME_ABSNAME,  SC_WID_UNO_ABSNAME, 
cppu::UnoType<OUString>::get(),        0 | beans::PropertyAttribute::READONLY, 
0 },
         { SC_UNONAME_ASIANVERT,ATTR_VERTICAL_ASIAN,cppu::UnoType<bool>::get(), 
                 0, 0 },
-        { SC_UNONAME_BOTTBORDER,ATTR_BORDER,       
::cppu::UnoType<table::BorderLine>::get(), 0, BOTTOM_BORDER | CONVERT_TWIPS },
-        { SC_UNONAME_BOTTBORDER2,ATTR_BORDER,      
::cppu::UnoType<table::BorderLine2>::get(), 0, BOTTOM_BORDER | CONVERT_TWIPS },
+        CELL_BORDER_PROPERTIES
         CELL_BACKGROUND_COLOR_PROPERTIES
         { SC_UNONAME_CELLPRO,  ATTR_PROTECTION,    
cppu::UnoType<util::CellProtection>::get(), 0, 0 },
         { SC_UNONAME_CELLSTYL, 
SC_WID_UNO_CELLSTYL,cppu::UnoType<OUString>::get(),        0, 0 },
@@ -324,8 +316,6 @@ static const SfxItemPropertySet* lcl_GetRangePropertySet()
         { SC_UNONAME_CELLHJUS_METHOD, ATTR_HOR_JUSTIFY_METHOD, 
::cppu::UnoType<sal_Int32>::get(),   0, 0 },
         { SC_UNONAME_CELLTRAN, ATTR_BACKGROUND,    cppu::UnoType<bool>::get(), 
                 0, MID_GRAPHIC_TRANSPARENT },
         { SC_UNONAME_WRAP,     ATTR_LINEBREAK,     cppu::UnoType<bool>::get(), 
                 0, 0 },
-        { SC_UNONAME_LEFTBORDER,ATTR_BORDER,       
::cppu::UnoType<table::BorderLine>::get(), 0, LEFT_BORDER | CONVERT_TWIPS },
-        { SC_UNONAME_LEFTBORDER2,ATTR_BORDER,      
::cppu::UnoType<table::BorderLine2>::get(), 0, LEFT_BORDER | CONVERT_TWIPS },
         { SC_UNONAME_NUMFMT,   ATTR_VALUE_FORMAT,  
cppu::UnoType<sal_Int32>::get(),            0, 0 },
         { SC_UNONAME_NUMRULES, 
SC_WID_UNO_NUMRULES,cppu::UnoType<container::XIndexReplace>::get(), 0, 0 },
         { SC_UNONAME_CELLORI,  ATTR_STACKED,       
cppu::UnoType<table::CellOrientation>::get(), 0, 0 },
@@ -341,8 +331,6 @@ static const SfxItemPropertySet* lcl_GetRangePropertySet()
         { SC_UNONAME_PRMARGIN, ATTR_MARGIN,        
cppu::UnoType<sal_Int32>::get(),            0, MID_MARGIN_R_MARGIN  | 
CONVERT_TWIPS },
         { SC_UNONAME_PTMARGIN, ATTR_MARGIN,        
cppu::UnoType<sal_Int32>::get(),            0, MID_MARGIN_UP_MARGIN | 
CONVERT_TWIPS },
         { SC_UNONAME_POS,      SC_WID_UNO_POS,     
cppu::UnoType<awt::Point>::get(),           0 | 
beans::PropertyAttribute::READONLY, 0 },
-        { SC_UNONAME_RIGHTBORDER,ATTR_BORDER,      
::cppu::UnoType<table::BorderLine>::get(), 0, RIGHT_BORDER | CONVERT_TWIPS },
-        { SC_UNONAME_RIGHTBORDER2,ATTR_BORDER,     
::cppu::UnoType<table::BorderLine2>::get(), 0, RIGHT_BORDER | CONVERT_TWIPS },
         { SC_UNONAME_ROTANG,   ATTR_ROTATE_VALUE,  
cppu::UnoType<sal_Int32>::get(),            0, 0 },
         { SC_UNONAME_ROTREF,   ATTR_ROTATE_MODE,   
cppu::UnoType<sal_Int32>::get(), 0, 0 },
         { SC_UNONAME_SHADOW,   ATTR_SHADOW,        
cppu::UnoType<table::ShadowFormat>::get(),  0, 0 | CONVERT_TWIPS },
@@ -350,8 +338,6 @@ static const SfxItemPropertySet* lcl_GetRangePropertySet()
         { SC_UNONAME_SIZE,     SC_WID_UNO_SIZE,    
cppu::UnoType<awt::Size>::get(),            0 | 
beans::PropertyAttribute::READONLY, 0 },
         { SC_UNONAME_TBLBORD,  SC_WID_UNO_TBLBORD, 
cppu::UnoType<table::TableBorder>::get(),   0, 0 | CONVERT_TWIPS },
         { SC_UNONAME_TBLBORD2,  SC_WID_UNO_TBLBORD2, 
cppu::UnoType<table::TableBorder2>::get(),   0, 0 | CONVERT_TWIPS },
-        { SC_UNONAME_TOPBORDER,ATTR_BORDER,        
::cppu::UnoType<table::BorderLine>::get(), 0, TOP_BORDER | CONVERT_TWIPS },
-        { SC_UNONAME_TOPBORDER2,ATTR_BORDER,       
::cppu::UnoType<table::BorderLine2>::get(), 0, TOP_BORDER | CONVERT_TWIPS },
         { SC_UNONAME_USERDEF,  ATTR_USERDEF,       
cppu::UnoType<container::XNameContainer>::get(), 0, 0 },
         { SC_UNONAME_VALIDAT,  SC_WID_UNO_VALIDAT, 
cppu::UnoType<beans::XPropertySet>::get(), 0, 0 },
         { SC_UNONAME_VALILOC,  SC_WID_UNO_VALILOC, 
cppu::UnoType<beans::XPropertySet>::get(), 0, 0 },
@@ -374,8 +360,7 @@ static const SfxItemPropertySet* lcl_GetCellPropertySet()
     {
         { SC_UNONAME_ABSNAME,  SC_WID_UNO_ABSNAME, 
cppu::UnoType<OUString>::get(),        0 | beans::PropertyAttribute::READONLY, 
0 },
         { SC_UNONAME_ASIANVERT,ATTR_VERTICAL_ASIAN,cppu::UnoType<bool>::get(), 
                 0, 0 },
-        { SC_UNONAME_BOTTBORDER,ATTR_BORDER,       
::cppu::UnoType<table::BorderLine>::get(), 0, BOTTOM_BORDER | CONVERT_TWIPS },
-        { SC_UNONAME_BOTTBORDER2,ATTR_BORDER,      
::cppu::UnoType<table::BorderLine2>::get(), 0, BOTTOM_BORDER | CONVERT_TWIPS },
+        CELL_BORDER_PROPERTIES
         CELL_BACKGROUND_COLOR_PROPERTIES
         { SC_UNONAME_CELLPRO,  ATTR_PROTECTION,    
cppu::UnoType<util::CellProtection>::get(), 0, 0 },
         { SC_UNONAME_CELLSTYL, 
SC_WID_UNO_CELLSTYL,cppu::UnoType<OUString>::get(),        0, 0 },
@@ -438,8 +423,6 @@ static const SfxItemPropertySet* lcl_GetCellPropertySet()
         { SC_UNONAME_CELLHJUS_METHOD, ATTR_HOR_JUSTIFY_METHOD, 
::cppu::UnoType<sal_Int32>::get(),   0, 0 },
         { SC_UNONAME_CELLTRAN, ATTR_BACKGROUND,    cppu::UnoType<bool>::get(), 
                 0, MID_GRAPHIC_TRANSPARENT },
         { SC_UNONAME_WRAP,     ATTR_LINEBREAK,     cppu::UnoType<bool>::get(), 
                 0, 0 },
-        { SC_UNONAME_LEFTBORDER,ATTR_BORDER,       
::cppu::UnoType<table::BorderLine>::get(), 0, LEFT_BORDER | CONVERT_TWIPS },
-        { SC_UNONAME_LEFTBORDER2,ATTR_BORDER,      
::cppu::UnoType<table::BorderLine2>::get(), 0, LEFT_BORDER | CONVERT_TWIPS },
         { SC_UNONAME_NUMFMT,   ATTR_VALUE_FORMAT,  
cppu::UnoType<sal_Int32>::get(),            0, 0 },
         { SC_UNONAME_NUMRULES, 
SC_WID_UNO_NUMRULES,cppu::UnoType<container::XIndexReplace>::get(), 0, 0 },
         { SC_UNONAME_CELLORI,  ATTR_STACKED,       
cppu::UnoType<table::CellOrientation>::get(), 0, 0 },
@@ -455,8 +438,6 @@ static const SfxItemPropertySet* lcl_GetCellPropertySet()
         { SC_UNONAME_PRMARGIN, ATTR_MARGIN,        
cppu::UnoType<sal_Int32>::get(),            0, MID_MARGIN_R_MARGIN  | 
CONVERT_TWIPS },
         { SC_UNONAME_PTMARGIN, ATTR_MARGIN,        
cppu::UnoType<sal_Int32>::get(),            0, MID_MARGIN_UP_MARGIN | 
CONVERT_TWIPS },
         { SC_UNONAME_POS,      SC_WID_UNO_POS,     
cppu::UnoType<awt::Point>::get(),           0 | 
beans::PropertyAttribute::READONLY, 0 },
-        { SC_UNONAME_RIGHTBORDER,ATTR_BORDER,      
::cppu::UnoType<table::BorderLine>::get(), 0, RIGHT_BORDER | CONVERT_TWIPS },
-        { SC_UNONAME_RIGHTBORDER2,ATTR_BORDER,     
::cppu::UnoType<table::BorderLine2>::get(), 0, RIGHT_BORDER | CONVERT_TWIPS },
         { SC_UNONAME_ROTANG,   ATTR_ROTATE_VALUE,  
cppu::UnoType<sal_Int32>::get(),            0, 0 },
         { SC_UNONAME_ROTREF,   ATTR_ROTATE_MODE,   
cppu::UnoType<sal_Int32>::get(), 0, 0 },
         { SC_UNONAME_SHADOW,   ATTR_SHADOW,        
cppu::UnoType<table::ShadowFormat>::get(),  0, 0 | CONVERT_TWIPS },
@@ -464,8 +445,6 @@ static const SfxItemPropertySet* lcl_GetCellPropertySet()
         { SC_UNONAME_SIZE,     SC_WID_UNO_SIZE,    
cppu::UnoType<awt::Size>::get(),            0 | 
beans::PropertyAttribute::READONLY, 0 },
         { SC_UNONAME_TBLBORD,  SC_WID_UNO_TBLBORD, 
cppu::UnoType<table::TableBorder>::get(),   0, 0 | CONVERT_TWIPS },
         { SC_UNONAME_TBLBORD2,  SC_WID_UNO_TBLBORD2, 
cppu::UnoType<table::TableBorder2>::get(),   0, 0 | CONVERT_TWIPS },
-        { SC_UNONAME_TOPBORDER,ATTR_BORDER,        
::cppu::UnoType<table::BorderLine>::get(), 0, TOP_BORDER | CONVERT_TWIPS },
-        { SC_UNONAME_TOPBORDER2,ATTR_BORDER,       
::cppu::UnoType<table::BorderLine2>::get(), 0, TOP_BORDER | CONVERT_TWIPS },
         { SC_UNONAME_USERDEF,  ATTR_USERDEF,       
cppu::UnoType<container::XNameContainer>::get(), 0, 0 },
         { SC_UNONAME_VALIDAT,  SC_WID_UNO_VALIDAT, 
cppu::UnoType<beans::XPropertySet>::get(), 0, 0 },
         { SC_UNONAME_VALILOC,  SC_WID_UNO_VALILOC, 
cppu::UnoType<beans::XPropertySet>::get(), 0, 0 },
@@ -490,8 +469,7 @@ static const SfxItemPropertySet* lcl_GetColumnPropertySet()
     {
         { SC_UNONAME_ABSNAME,  SC_WID_UNO_ABSNAME, 
cppu::UnoType<OUString>::get(),        0 | beans::PropertyAttribute::READONLY, 
0 },
         { SC_UNONAME_ASIANVERT,ATTR_VERTICAL_ASIAN,cppu::UnoType<bool>::get(), 
                 0, 0 },
-        { SC_UNONAME_BOTTBORDER,ATTR_BORDER,       
::cppu::UnoType<table::BorderLine>::get(), 0, BOTTOM_BORDER | CONVERT_TWIPS },
-        { SC_UNONAME_BOTTBORDER2,ATTR_BORDER,      
::cppu::UnoType<table::BorderLine2>::get(), 0, BOTTOM_BORDER | CONVERT_TWIPS },
+        CELL_BORDER_PROPERTIES
         CELL_BACKGROUND_COLOR_PROPERTIES
         { SC_UNONAME_CELLPRO,  ATTR_PROTECTION,    
cppu::UnoType<util::CellProtection>::get(), 0, 0 },
         { SC_UNONAME_CELLSTYL, 
SC_WID_UNO_CELLSTYL,cppu::UnoType<OUString>::get(),        0, 0 },
@@ -553,8 +531,6 @@ static const SfxItemPropertySet* lcl_GetColumnPropertySet()
         { SC_UNONAME_NEWPAGE,  SC_WID_UNO_NEWPAGE, cppu::UnoType<bool>::get(), 
                 0, 0 },
         { SC_UNONAME_WRAP,     ATTR_LINEBREAK,     cppu::UnoType<bool>::get(), 
                 0, 0 },
         { SC_UNONAME_CELLVIS,  SC_WID_UNO_CELLVIS, cppu::UnoType<bool>::get(), 
                 0, 0 },
-        { SC_UNONAME_LEFTBORDER,ATTR_BORDER,       
::cppu::UnoType<table::BorderLine>::get(), 0, LEFT_BORDER | CONVERT_TWIPS },
-        { SC_UNONAME_LEFTBORDER2,ATTR_BORDER,      
::cppu::UnoType<table::BorderLine2>::get(), 0, LEFT_BORDER | CONVERT_TWIPS },
         { SC_UNONAME_NUMFMT,   ATTR_VALUE_FORMAT,  
cppu::UnoType<sal_Int32>::get(),            0, 0 },
         { SC_UNONAME_NUMRULES, 
SC_WID_UNO_NUMRULES,cppu::UnoType<container::XIndexReplace>::get(), 0, 0 },
         { SC_UNONAME_OWIDTH,   SC_WID_UNO_OWIDTH,  cppu::UnoType<bool>::get(), 
                 0, 0 },
@@ -571,8 +547,6 @@ static const SfxItemPropertySet* lcl_GetColumnPropertySet()
         { SC_UNONAME_PRMARGIN, ATTR_MARGIN,        
cppu::UnoType<sal_Int32>::get(),            0, MID_MARGIN_R_MARGIN  | 
CONVERT_TWIPS },
         { SC_UNONAME_PTMARGIN, ATTR_MARGIN,        
cppu::UnoType<sal_Int32>::get(),            0, MID_MARGIN_UP_MARGIN | 
CONVERT_TWIPS },
         { SC_UNONAME_POS,      SC_WID_UNO_POS,     
cppu::UnoType<awt::Point>::get(),           0 | 
beans::PropertyAttribute::READONLY, 0 },
-        { SC_UNONAME_RIGHTBORDER,ATTR_BORDER,      
::cppu::UnoType<table::BorderLine>::get(), 0, RIGHT_BORDER | CONVERT_TWIPS },
-        { SC_UNONAME_RIGHTBORDER2,ATTR_BORDER,      
::cppu::UnoType<table::BorderLine2>::get(), 0, RIGHT_BORDER | CONVERT_TWIPS },
         { SC_UNONAME_ROTANG,   ATTR_ROTATE_VALUE,  
cppu::UnoType<sal_Int32>::get(),            0, 0 },
         { SC_UNONAME_ROTREF,   ATTR_ROTATE_MODE,   
cppu::UnoType<sal_Int32>::get(), 0, 0 },
         { SC_UNONAME_SHADOW,   ATTR_SHADOW,        
cppu::UnoType<table::ShadowFormat>::get(),  0, 0 | CONVERT_TWIPS },
@@ -580,8 +554,6 @@ static const SfxItemPropertySet* lcl_GetColumnPropertySet()
         { SC_UNONAME_SIZE,     SC_WID_UNO_SIZE,    
cppu::UnoType<awt::Size>::get(),            0 | 
beans::PropertyAttribute::READONLY, 0 },
         { SC_UNONAME_TBLBORD,  SC_WID_UNO_TBLBORD, 
cppu::UnoType<table::TableBorder>::get(),   0, 0 | CONVERT_TWIPS },
         { SC_UNONAME_TBLBORD2,  SC_WID_UNO_TBLBORD2, 
cppu::UnoType<table::TableBorder2>::get(),   0, 0 | CONVERT_TWIPS },
-        { SC_UNONAME_TOPBORDER,ATTR_BORDER,        
::cppu::UnoType<table::BorderLine>::get(), 0, TOP_BORDER | CONVERT_TWIPS },
-        { SC_UNONAME_TOPBORDER2,ATTR_BORDER,       
::cppu::UnoType<table::BorderLine2>::get(), 0, TOP_BORDER | CONVERT_TWIPS },
         { SC_UNONAME_USERDEF,  ATTR_USERDEF,       
cppu::UnoType<container::XNameContainer>::get(), 0, 0 },
         { SC_UNONAME_VALIDAT,  SC_WID_UNO_VALIDAT, 
cppu::UnoType<beans::XPropertySet>::get(), 0, 0 },
         { SC_UNONAME_VALILOC,  SC_WID_UNO_VALILOC, 
cppu::UnoType<beans::XPropertySet>::get(), 0, 0 },
@@ -601,8 +573,7 @@ static const SfxItemPropertySet* lcl_GetRowPropertySet()
     {
         { SC_UNONAME_ABSNAME,  SC_WID_UNO_ABSNAME, 
cppu::UnoType<OUString>::get(),        0 | beans::PropertyAttribute::READONLY, 
0 },
         { SC_UNONAME_ASIANVERT,ATTR_VERTICAL_ASIAN,cppu::UnoType<bool>::get(), 
                 0, 0 },
-        { SC_UNONAME_BOTTBORDER,ATTR_BORDER,       
::cppu::UnoType<table::BorderLine>::get(), 0, BOTTOM_BORDER | CONVERT_TWIPS },
-        { SC_UNONAME_BOTTBORDER2,ATTR_BORDER,      
::cppu::UnoType<table::BorderLine2>::get(), 0, BOTTOM_BORDER | CONVERT_TWIPS },
+        CELL_BORDER_PROPERTIES
         CELL_BACKGROUND_COLOR_PROPERTIES
         { SC_UNONAME_CELLPRO,  ATTR_PROTECTION,    
cppu::UnoType<util::CellProtection>::get(), 0, 0 },
         { SC_UNONAME_CELLSTYL, 
SC_WID_UNO_CELLSTYL,cppu::UnoType<OUString>::get(),        0, 0 },
@@ -666,8 +637,6 @@ static const SfxItemPropertySet* lcl_GetRowPropertySet()
         { SC_UNONAME_NEWPAGE,  SC_WID_UNO_NEWPAGE, cppu::UnoType<bool>::get(), 
                 0, 0 },
         { SC_UNONAME_WRAP,     ATTR_LINEBREAK,     cppu::UnoType<bool>::get(), 
                 0, 0 },
         { SC_UNONAME_CELLVIS,  SC_WID_UNO_CELLVIS, cppu::UnoType<bool>::get(), 
                 0, 0 },
-        { SC_UNONAME_LEFTBORDER,ATTR_BORDER,       
::cppu::UnoType<table::BorderLine>::get(), 0, LEFT_BORDER | CONVERT_TWIPS },
-        { SC_UNONAME_LEFTBORDER2,ATTR_BORDER,      
::cppu::UnoType<table::BorderLine2>::get(), 0, LEFT_BORDER | CONVERT_TWIPS },
         { SC_UNONAME_NUMFMT,   ATTR_VALUE_FORMAT,  
cppu::UnoType<sal_Int32>::get(),            0, 0 },
         { SC_UNONAME_NUMRULES, 
SC_WID_UNO_NUMRULES,cppu::UnoType<container::XIndexReplace>::get(), 0, 0 },
         { SC_UNONAME_OHEIGHT,  SC_WID_UNO_OHEIGHT, cppu::UnoType<bool>::get(), 
                 0, 0 },
@@ -684,8 +653,6 @@ static const SfxItemPropertySet* lcl_GetRowPropertySet()
         { SC_UNONAME_PRMARGIN, ATTR_MARGIN,        
cppu::UnoType<sal_Int32>::get(),            0, MID_MARGIN_R_MARGIN  | 
CONVERT_TWIPS },
         { SC_UNONAME_PTMARGIN, ATTR_MARGIN,        
cppu::UnoType<sal_Int32>::get(),            0, MID_MARGIN_UP_MARGIN | 
CONVERT_TWIPS },
         { SC_UNONAME_POS,      SC_WID_UNO_POS,     
cppu::UnoType<awt::Point>::get(),           0 | 
beans::PropertyAttribute::READONLY, 0 },
-        { SC_UNONAME_RIGHTBORDER,ATTR_BORDER,      
::cppu::UnoType<table::BorderLine>::get(), 0, RIGHT_BORDER | CONVERT_TWIPS },
-        { SC_UNONAME_RIGHTBORDER2,ATTR_BORDER,     
::cppu::UnoType<table::BorderLine2>::get(), 0, RIGHT_BORDER | CONVERT_TWIPS },
         { SC_UNONAME_ROTANG,   ATTR_ROTATE_VALUE,  
cppu::UnoType<sal_Int32>::get(),            0, 0 },
         { SC_UNONAME_ROTREF,   ATTR_ROTATE_MODE,   
cppu::UnoType<sal_Int32>::get(), 0, 0 },
         { SC_UNONAME_SHADOW,   ATTR_SHADOW,        
cppu::UnoType<table::ShadowFormat>::get(),  0, 0 | CONVERT_TWIPS },
@@ -693,8 +660,6 @@ static const SfxItemPropertySet* lcl_GetRowPropertySet()
         { SC_UNONAME_SIZE,     SC_WID_UNO_SIZE,    
cppu::UnoType<awt::Size>::get(),            0 | 
beans::PropertyAttribute::READONLY, 0 },
         { SC_UNONAME_TBLBORD,  SC_WID_UNO_TBLBORD, 
cppu::UnoType<table::TableBorder>::get(),   0, 0 | CONVERT_TWIPS },
         { SC_UNONAME_TBLBORD2,  SC_WID_UNO_TBLBORD2, 
cppu::UnoType<table::TableBorder2>::get(),   0, 0 | CONVERT_TWIPS },
-        { SC_UNONAME_TOPBORDER,ATTR_BORDER,        
::cppu::UnoType<table::BorderLine>::get(), 0, TOP_BORDER | CONVERT_TWIPS },
-        { SC_UNONAME_TOPBORDER2,ATTR_BORDER,       
::cppu::UnoType<table::BorderLine2>::get(), 0, TOP_BORDER | CONVERT_TWIPS },
         { SC_UNONAME_USERDEF,  ATTR_USERDEF,       
cppu::UnoType<container::XNameContainer>::get(), 0, 0 },
         { SC_UNONAME_VALIDAT,  SC_WID_UNO_VALIDAT, 
cppu::UnoType<beans::XPropertySet>::get(), 0, 0 },
         { SC_UNONAME_VALILOC,  SC_WID_UNO_VALILOC, 
cppu::UnoType<beans::XPropertySet>::get(), 0, 0 },
@@ -715,8 +680,7 @@ static const SfxItemPropertySet* lcl_GetSheetPropertySet()
         { SC_UNONAME_ASIANVERT,ATTR_VERTICAL_ASIAN,cppu::UnoType<bool>::get(), 
                 0, 0 },
         { 
SC_UNONAME_AUTOPRINT,SC_WID_UNO_AUTOPRINT,cppu::UnoType<bool>::get(),           
      0, 0 },
         { SC_UNONAME_BORDCOL,  SC_WID_UNO_BORDCOL, 
cppu::UnoType<sal_Int32>::get(),            0, 0 },
-        { SC_UNONAME_BOTTBORDER,ATTR_BORDER,       
::cppu::UnoType<table::BorderLine>::get(), 0, BOTTOM_BORDER | CONVERT_TWIPS },
-        { SC_UNONAME_BOTTBORDER2,ATTR_BORDER,      
::cppu::UnoType<table::BorderLine2>::get(), 0, BOTTOM_BORDER | CONVERT_TWIPS },
+        CELL_BORDER_PROPERTIES
         CELL_BACKGROUND_COLOR_PROPERTIES
         { SC_UNONAME_CELLPRO,  ATTR_PROTECTION,    
cppu::UnoType<util::CellProtection>::get(), 0, 0 },
         { SC_UNONAME_CELLSTYL, 
SC_WID_UNO_CELLSTYL,cppu::UnoType<OUString>::get(),        0, 0 },
@@ -780,8 +744,6 @@ static const SfxItemPropertySet* lcl_GetSheetPropertySet()
         { SC_UNONAME_CELLTRAN, ATTR_BACKGROUND,    cppu::UnoType<bool>::get(), 
                 0, MID_GRAPHIC_TRANSPARENT },
         { SC_UNONAME_WRAP,     ATTR_LINEBREAK,     cppu::UnoType<bool>::get(), 
                 0, 0 },
         { SC_UNONAME_CELLVIS,  SC_WID_UNO_CELLVIS, cppu::UnoType<bool>::get(), 
                 0, 0 },
-        { SC_UNONAME_LEFTBORDER,ATTR_BORDER,       
::cppu::UnoType<table::BorderLine>::get(), 0, LEFT_BORDER | CONVERT_TWIPS },
-        { SC_UNONAME_LEFTBORDER2,ATTR_BORDER,      
::cppu::UnoType<table::BorderLine2>::get(), 0, LEFT_BORDER | CONVERT_TWIPS },
         { SC_UNO_LINKDISPBIT,  
SC_WID_UNO_LINKDISPBIT,cppu::UnoType<awt::XBitmap>::get(), 0 | 
beans::PropertyAttribute::READONLY, 0 },
         { SC_UNO_LINKDISPNAME, 
SC_WID_UNO_LINKDISPNAME,cppu::UnoType<OUString>::get(),    0 | 
beans::PropertyAttribute::READONLY, 0 },
         { SC_UNONAME_NUMFMT,   ATTR_VALUE_FORMAT,  
cppu::UnoType<sal_Int32>::get(),            0, 0 },
@@ -802,8 +764,6 @@ static const SfxItemPropertySet* lcl_GetSheetPropertySet()
         { SC_UNONAME_POS,      SC_WID_UNO_POS,     
cppu::UnoType<awt::Point>::get(),           0 | 
beans::PropertyAttribute::READONLY, 0 },
         { 
SC_UNONAME_PRINTBORD,SC_WID_UNO_PRINTBORD,cppu::UnoType<bool>::get(),           
      0, 0 },
         { SC_UNONAME_PROTECT,  SC_WID_UNO_PROTECT, cppu::UnoType<bool>::get(), 
                 0, 0 },
-        { SC_UNONAME_RIGHTBORDER,ATTR_BORDER,      
::cppu::UnoType<table::BorderLine>::get(), 0, RIGHT_BORDER | CONVERT_TWIPS },
-        { SC_UNONAME_RIGHTBORDER2,ATTR_BORDER,     
::cppu::UnoType<table::BorderLine2>::get(), 0, RIGHT_BORDER | CONVERT_TWIPS },
         { SC_UNONAME_ROTANG,   ATTR_ROTATE_VALUE,  
cppu::UnoType<sal_Int32>::get(),            0, 0 },
         { SC_UNONAME_ROTREF,   ATTR_ROTATE_MODE,   
cppu::UnoType<sal_Int32>::get(), 0, 0 },
         { SC_UNONAME_SHADOW,   ATTR_SHADOW,        
cppu::UnoType<table::ShadowFormat>::get(),  0, 0 | CONVERT_TWIPS },
@@ -814,8 +774,6 @@ static const SfxItemPropertySet* lcl_GetSheetPropertySet()
         { SC_UNONAME_TBLBORD2,  SC_WID_UNO_TBLBORD2, 
cppu::UnoType<table::TableBorder2>::get(),   0, 0 | CONVERT_TWIPS },
         { 
SC_UNONAME_TABLAYOUT,SC_WID_UNO_TABLAYOUT,cppu::UnoType<sal_Int16>::get(),      
     0, 0 },
         { SC_UNONAME_CONDFORMAT, SC_WID_UNO_CONDFORMAT, 
cppu::UnoType<sheet::XConditionalFormats>::get(), 0, 0},
-        { SC_UNONAME_TOPBORDER,ATTR_BORDER,        
::cppu::UnoType<table::BorderLine>::get(), 0, TOP_BORDER | CONVERT_TWIPS },
-        { SC_UNONAME_TOPBORDER2,ATTR_BORDER,       
::cppu::UnoType<table::BorderLine2>::get(), 0, TOP_BORDER | CONVERT_TWIPS },
         { SC_UNONAME_USERDEF,  ATTR_USERDEF,       
cppu::UnoType<container::XNameContainer>::get(), 0, 0 },
         { SC_UNONAME_VALIDAT,  SC_WID_UNO_VALIDAT, 
cppu::UnoType<beans::XPropertySet>::get(), 0, 0 },
         { SC_UNONAME_VALILOC,  SC_WID_UNO_VALILOC, 
cppu::UnoType<beans::XPropertySet>::get(), 0, 0 },
diff --git a/sc/source/ui/unoobj/styleuno.cxx b/sc/source/ui/unoobj/styleuno.cxx
index 021af1257b79..e840d2237c4e 100644
--- a/sc/source/ui/unoobj/styleuno.cxx
+++ b/sc/source/ui/unoobj/styleuno.cxx
@@ -85,8 +85,7 @@ static const SfxItemPropertySet* lcl_GetCellStyleSet()
     static const SfxItemPropertyMapEntry aCellStyleMap_Impl[] =
     {
         {SC_UNONAME_ASIANVERT,ATTR_VERTICAL_ASIAN,cppu::UnoType<bool>::get(),  
                0, 0 },
-        {SC_UNONAME_BOTTBORDER,ATTR_BORDER,       
::cppu::UnoType<table::BorderLine>::get(),        0, BOTTOM_BORDER | 
CONVERT_TWIPS },
-        {SC_UNONAME_BOTTBORDER2,ATTR_BORDER,       
::cppu::UnoType<table::BorderLine2>::get(),        0, BOTTOM_BORDER | 
CONVERT_TWIPS },
+        CELL_BORDER_PROPERTIES
         CELL_BACKGROUND_COLOR_PROPERTIES
         {SC_UNONAME_CELLPRO,  ATTR_PROTECTION,    
::cppu::UnoType<util::CellProtection>::get(), 0, 0 },
         CHAR_COLOR_PROPERTIES
@@ -140,8 +139,6 @@ static const SfxItemPropertySet* lcl_GetCellStyleSet()
         {SC_UNONAME_CELLHJUS_METHOD, ATTR_HOR_JUSTIFY_METHOD, 
::cppu::UnoType<sal_Int32>::get(),   0, 0 },
         {SC_UNONAME_CELLTRAN, ATTR_BACKGROUND,    cppu::UnoType<bool>::get(),  
          0, MID_GRAPHIC_TRANSPARENT },
         {SC_UNONAME_WRAP,     ATTR_LINEBREAK,     cppu::UnoType<bool>::get(),  
          0, 0 },
-        {SC_UNONAME_LEFTBORDER,ATTR_BORDER,       
::cppu::UnoType<table::BorderLine>::get(),        0, LEFT_BORDER | 
CONVERT_TWIPS },
-        {SC_UNONAME_LEFTBORDER2,ATTR_BORDER,       
::cppu::UnoType<table::BorderLine2>::get(),        0, LEFT_BORDER | 
CONVERT_TWIPS },
         {SC_UNONAME_NUMFMT,   ATTR_VALUE_FORMAT,  
::cppu::UnoType<sal_Int32>::get(),            0, 0 },
 //      {SC_UNONAME_NUMRULES, 
SC_WID_UNO_NUMRULES,cppu::UnoType<container::XIndexReplace>::get(), 0, 0 },
         {SC_UNONAME_CELLORI,  ATTR_STACKED,       
::cppu::UnoType<table::CellOrientation>::get(),   0, 0 },
@@ -156,16 +153,12 @@ static const SfxItemPropertySet* lcl_GetCellStyleSet()
         {SC_UNONAME_PLMARGIN, ATTR_MARGIN,        
::cppu::UnoType<sal_Int32>::get(),            0, MID_MARGIN_L_MARGIN  | 
CONVERT_TWIPS },
         {SC_UNONAME_PRMARGIN, ATTR_MARGIN,        
::cppu::UnoType<sal_Int32>::get(),            0, MID_MARGIN_R_MARGIN  | 
CONVERT_TWIPS },
         {SC_UNONAME_PTMARGIN, ATTR_MARGIN,        
::cppu::UnoType<sal_Int32>::get(),            0, MID_MARGIN_UP_MARGIN | 
CONVERT_TWIPS },
-        {SC_UNONAME_RIGHTBORDER,ATTR_BORDER,      
::cppu::UnoType<table::BorderLine>::get(),        0, RIGHT_BORDER | 
CONVERT_TWIPS },
-        {SC_UNONAME_RIGHTBORDER2,ATTR_BORDER,      
::cppu::UnoType<table::BorderLine2>::get(),        0, RIGHT_BORDER | 
CONVERT_TWIPS },
         {SC_UNONAME_ROTANG,   ATTR_ROTATE_VALUE,  
::cppu::UnoType<sal_Int32>::get(),            0, 0 },
         {SC_UNONAME_ROTREF,   ATTR_ROTATE_MODE,   
::cppu::UnoType<sal_Int32>::get(),    0, 0 },
         {SC_UNONAME_SHADOW,   ATTR_SHADOW,        
::cppu::UnoType<table::ShadowFormat>::get(),  0, 0 | CONVERT_TWIPS },
         {SC_UNONAME_SHRINK_TO_FIT, ATTR_SHRINKTOFIT, 
cppu::UnoType<bool>::get(),               0, 0 },
         {SC_UNONAME_TBLBORD,  SC_WID_UNO_TBLBORD, 
::cppu::UnoType<table::TableBorder>::get(),       0, 0 | CONVERT_TWIPS },
         {SC_UNONAME_TBLBORD,  SC_WID_UNO_TBLBORD2, 
::cppu::UnoType<table::TableBorder2>::get(),       0, 0 | CONVERT_TWIPS },
-        {SC_UNONAME_TOPBORDER,ATTR_BORDER,        
::cppu::UnoType<table::BorderLine>::get(),        0, TOP_BORDER | CONVERT_TWIPS 
},
-        {SC_UNONAME_TOPBORDER2,ATTR_BORDER,        
::cppu::UnoType<table::BorderLine2>::get(),        0, TOP_BORDER | 
CONVERT_TWIPS },
         {SC_UNONAME_USERDEF,  ATTR_USERDEF,       
cppu::UnoType<container::XNameContainer>::get(), 0, 0 },
         {SC_UNONAME_CELLVJUS, ATTR_VER_JUSTIFY,   
::cppu::UnoType<sal_Int32>::get(),    0, 0 },
         {SC_UNONAME_CELLVJUS_METHOD, ATTR_VER_JUSTIFY_METHOD, 
::cppu::UnoType<sal_Int32>::get(),   0, 0 },

Reply via email to