[Libreoffice-commits] core.git: 2 commits - bin/find-unused-defines-in-hrc-files.py cui/source dbaccess/AllLangResTarget_dbu.mk dbaccess/source drawinglayer/qa drawinglayer/source editeng/qa editeng/source include/drawinglayer include/editeng include/svtools include/svx l10ntools/source sc/qa sc/source sd/source svtools/source svx/source sw/inc sw/source writerfilter/source

Noel Grandin noel.grandin at collabora.co.uk
Fri Mar 17 06:04:53 UTC 2017


 bin/find-unused-defines-in-hrc-files.py                           |    2 
 cui/source/inc/border.hxx                                         |    4 
 cui/source/tabpages/border.cxx                                    |   52 -
 dbaccess/AllLangResTarget_dbu.mk                                  |    1 
 dbaccess/source/ext/macromigration/dbmm_global.hrc                |    1 
 dbaccess/source/ext/macromigration/macromigration.src             |    5 
 dbaccess/source/ui/app/app.src                                    |   19 
 dbaccess/source/ui/app/dbu_app.hrc                                |    3 
 dbaccess/source/ui/control/tabletree.src                          |   10 
 dbaccess/source/ui/inc/dbu_control.hrc                            |    2 
 dbaccess/source/ui/inc/dbu_qry.hrc                                |    7 
 dbaccess/source/ui/inc/dbu_resource.hrc                           |   17 
 dbaccess/source/ui/inc/dbu_tbl.hrc                                |    9 
 dbaccess/source/ui/inc/dbu_uno.hrc                                |    1 
 dbaccess/source/ui/inc/sbagrid.hrc                                |   33 -
 dbaccess/source/ui/querydesign/query.src                          |   15 
 dbaccess/source/ui/querydesign/querydlg.src                       |    5 
 dbaccess/source/ui/tabledesign/table.src                          |   50 -
 dbaccess/source/ui/uno/dbinteraction.src                          |   32 -
 drawinglayer/qa/unit/border.cxx                                   |    5 
 drawinglayer/source/primitive2d/borderlineprimitive2d.cxx         |    5 
 drawinglayer/source/primitive2d/clippedborderlineprimitive2d.cxx  |    2 
 drawinglayer/source/processor2d/vclpixelprocessor2d.cxx           |   19 
 editeng/qa/items/borderline_test.cxx                              |   30 
 editeng/source/items/borderline.cxx                               |  214 +++---
 editeng/source/items/frmitems.cxx                                 |   26 
 editeng/source/rtf/rtfitem.cxx                                    |   28 
 include/drawinglayer/primitive2d/borderlineprimitive2d.hxx        |    9 
 include/drawinglayer/primitive2d/clippedborderlineprimitive2d.hxx |    2 
 include/editeng/borderline.hxx                                    |  313 ++++++----
 include/svtools/borderhelper.hxx                                  |   10 
 include/svtools/ctrlbox.hxx                                       |   17 
 include/svx/framelink.hxx                                         |   12 
 include/svx/frmsel.hxx                                            |    4 
 l10ntools/source/gRun.sh                                          |    2 
 sc/qa/unit/subsequent_export-test.cxx                             |   66 +-
 sc/qa/unit/subsequent_filters-test.cxx                            |   47 -
 sc/qa/unit/ucalc.cxx                                              |    2 
 sc/source/core/data/dpoutput.cxx                                  |    2 
 sc/source/filter/excel/xestyle.cxx                                |   16 
 sc/source/filter/excel/xistyle.cxx                                |    2 
 sc/source/filter/html/htmlexp.cxx                                 |   34 -
 sc/source/filter/html/htmlpars.cxx                                |    4 
 sc/source/filter/inc/orcusinterface.hxx                           |    5 
 sc/source/filter/lotus/lotattr.cxx                                |    4 
 sc/source/filter/orcus/interface.cxx                              |   20 
 sc/source/ui/sidebar/CellBorderStyleControl.cxx                   |    4 
 sc/source/ui/sidebar/CellLineStyleControl.cxx                     |   13 
 sc/source/ui/view/formatsh.cxx                                    |    6 
 sc/source/ui/view/tabvwsh4.cxx                                    |    3 
 sd/source/core/drawdoc4.cxx                                       |    2 
 svtools/source/control/ctrlbox.cxx                                |   51 -
 svx/source/dialog/framelink.cxx                                   |   16 
 svx/source/dialog/frmsel.cxx                                      |    6 
 svx/source/tbxctrls/tbcontrl.cxx                                  |   31 
 sw/inc/fmtclds.hxx                                                |    6 
 sw/inc/pagedesc.hxx                                               |    6 
 sw/source/core/doc/DocumentStylePoolManager.cxx                   |    2 
 sw/source/core/docnode/ndtbl.cxx                                  |    2 
 sw/source/core/edit/autofmt.cxx                                   |   12 
 sw/source/core/inc/frame.hxx                                      |    2 
 sw/source/core/layout/atrfrm.cxx                                  |   12 
 sw/source/core/layout/pagedesc.cxx                                |    2 
 sw/source/core/layout/paintfrm.cxx                                |   32 -
 sw/source/core/unocore/unosett.cxx                                |    6 
 sw/source/core/unocore/unotbl.cxx                                 |    2 
 sw/source/filter/html/css1atr.cxx                                 |   28 
 sw/source/filter/html/htmltab.cxx                                 |    9 
 sw/source/filter/html/svxcss1.cxx                                 |   18 
 sw/source/filter/html/swhtml.cxx                                  |    4 
 sw/source/filter/ww8/docxattributeoutput.cxx                      |   40 -
 sw/source/filter/ww8/docxsdrexport.cxx                            |    2 
 sw/source/filter/ww8/rtfattributeoutput.cxx                       |   32 -
 sw/source/filter/ww8/wrtw8esh.cxx                                 |    6 
 sw/source/filter/ww8/ww8atr.cxx                                   |   36 -
 sw/source/filter/ww8/ww8graf.cxx                                  |   18 
 sw/source/filter/ww8/ww8par6.cxx                                  |    6 
 sw/source/filter/xml/xmlexpit.cxx                                 |   50 -
 sw/source/filter/xml/xmlithlp.cxx                                 |    8 
 sw/source/ui/frmdlg/column.cxx                                    |   14 
 sw/source/ui/misc/pgfnote.cxx                                     |   14 
 sw/source/uibase/frmdlg/colmgr.cxx                                |    2 
 sw/source/uibase/inc/colmgr.hxx                                   |    6 
 sw/source/uibase/shells/frmsh.cxx                                 |    2 
 sw/source/uibase/shells/tabsh.cxx                                 |    2 
 sw/source/uibase/utlui/uiitems.cxx                                |   16 
 writerfilter/source/dmapper/ConversionHelper.cxx                  |    6 
 87 files changed, 805 insertions(+), 898 deletions(-)

New commits:
commit 2b06401622f18fc57171978a33c6855461b6e16f
Author: Noel Grandin <noel.grandin at collabora.co.uk>
Date:   Thu Mar 16 15:11:32 2017 +0200

    remove unused defines from HRC files in dbaccess
    
    Change-Id: Ib6ef44769318e133db5744260ff9103d310ff848
    Reviewed-on: https://gerrit.libreoffice.org/35268
    Tested-by: Jenkins <ci at libreoffice.org>
    Reviewed-by: Noel Grandin <noel.grandin at collabora.co.uk>

diff --git a/bin/find-unused-defines-in-hrc-files.py b/bin/find-unused-defines-in-hrc-files.py
index acf51573dd8e..011c62969286 100755
--- a/bin/find-unused-defines-in-hrc-files.py
+++ b/bin/find-unused-defines-in-hrc-files.py
@@ -132,6 +132,8 @@ with a.stdout as txt:
                 if "sw/inc/poolfmt.hrc:" in line2: found_reason_to_exclude = True
                 # not sure about these, looks suspicious
                 if "sd/source/ui/app/strings.src:" in line2 and idName.endswith("_TOOLBOX"): found_reason_to_exclude = True
+                # used via a macro that hides them from search
+                if "dbaccess/" in line2 and idName.startswith("PROPERTY_ID_"): found_reason_to_exclude = True
 
         if not found_reason_to_exclude:
             sys.stdout.write(idName + '\n')
diff --git a/dbaccess/AllLangResTarget_dbu.mk b/dbaccess/AllLangResTarget_dbu.mk
index c04396b4f38f..46bd6d452ee8 100644
--- a/dbaccess/AllLangResTarget_dbu.mk
+++ b/dbaccess/AllLangResTarget_dbu.mk
@@ -47,7 +47,6 @@ $(eval $(call gb_SrsTarget_add_files,dbaccess/dbu,\
     dbaccess/source/ui/relationdesign/relation.src \
     dbaccess/source/ui/tabledesign/table.src \
     dbaccess/source/ui/uno/copytablewizard.src \
-    dbaccess/source/ui/uno/dbinteraction.src \
 ))
 
 $(eval $(call gb_SrsTarget_add_nonlocalizable_files,dbaccess/dbu,\
diff --git a/dbaccess/source/ext/macromigration/dbmm_global.hrc b/dbaccess/source/ext/macromigration/dbmm_global.hrc
index ebf5c27fb25b..9105d11721dc 100644
--- a/dbaccess/source/ext/macromigration/dbmm_global.hrc
+++ b/dbaccess/source/ext/macromigration/dbmm_global.hrc
@@ -48,7 +48,6 @@
 #define STR_STATE_BACKUP_DBDOC      ( RID_DBMM_STRING_START + 21 )
 #define STR_STATE_MIGRATE           ( RID_DBMM_STRING_START + 22 )
 #define STR_STATE_SUMMARY           ( RID_DBMM_STRING_START + 23 )
-#define STR_TITLE_MACRO_MIGRATION   ( RID_DBMM_STRING_START + 24 )
 #define STR_INVALID_BACKUP_LOCATION ( RID_DBMM_STRING_START + 25 )
 
 #endif // DBACCESS_DBMM_GLOBAL_HRC
diff --git a/dbaccess/source/ext/macromigration/macromigration.src b/dbaccess/source/ext/macromigration/macromigration.src
index c0c138201d89..fe5812bfc50c 100644
--- a/dbaccess/source/ext/macromigration/macromigration.src
+++ b/dbaccess/source/ext/macromigration/macromigration.src
@@ -19,11 +19,6 @@
 
 #include "dbmm_global.hrc"
 
-String STR_TITLE_MACRO_MIGRATION
-{
-    Text [ en-US ]  = "Database Document Macro Migration" ;
-};
-
 String STR_STATE_CLOSE_SUB_DOCS
 {
     Text [ en-US ] = "Prepare";
diff --git a/dbaccess/source/ui/app/app.src b/dbaccess/source/ui/app/app.src
index e8a40f49bce4..d42dc79b1e47 100644
--- a/dbaccess/source/ui/app/app.src
+++ b/dbaccess/source/ui/app/app.src
@@ -78,15 +78,6 @@ String RID_STR_REPORTS_CONTAINER
 {
     Text [ en-US ] = "Reports" ;
 };
-String STR_QUERY_DELETE_DATASOURCE
-{
-    Text [ en-US ] = "Do you want to delete the data source '%1'?" ;
-};
-
-String STR_APP_TITLE
-{
-    Text [ en-US ] = " - %PRODUCTNAME Base" ;
-};
 
 String RID_STR_REPORTS_HELP_TEXT_WIZARD
 {
@@ -158,11 +149,6 @@ String STR_PREVIEW
     Text [ en-US ] = "Preview" ;
 };
 
-String STR_DISABLEPREVIEW
-{
-    Text [ en-US ] = "Disable Preview" ;
-};
-
 String STR_QUERY_CLOSEDOCUMENTS
 {
     Text [ en-US ] = "The connection type has been altered.\nFor the changes to take effect, all forms, reports, queries and tables must be closed.\n\nDo you want to close all documents now?" ;
@@ -244,11 +230,6 @@ String STR_TBL_LABEL
     Text [ en-US ] = "~Table Name" ;
 };
 
-String STR_VW_LABEL
-{
-    Text [ en-US ] = "~Name of table view" ;
-};
-
 String STR_QRY_LABEL
 {
     Text [ en-US ] = "~Query name" ;
diff --git a/dbaccess/source/ui/app/dbu_app.hrc b/dbaccess/source/ui/app/dbu_app.hrc
index 9ba7461c4bfb..d3a15355d897 100644
--- a/dbaccess/source/ui/app/dbu_app.hrc
+++ b/dbaccess/source/ui/app/dbu_app.hrc
@@ -30,8 +30,6 @@
 #define RID_STR_NEW_VIEW                    RID_STR_APP_START + 6
 #define RID_STR_NEW_QUERY                   RID_STR_APP_START + 8
 #define RID_STR_NEW_QUERY_AUTO              RID_STR_APP_START + 9
-#define STR_QUERY_DELETE_DATASOURCE         RID_STR_APP_START + 10
-#define STR_APP_TITLE                       RID_STR_APP_START + 11
 #define RID_STR_NEW_QUERY_SQL               RID_STR_APP_START + 12
 #define RID_STR_REPORTS_CONTAINER           RID_STR_APP_START + 13
 #define RID_STR_FORMS_CONTAINER             RID_STR_APP_START + 14
@@ -44,7 +42,6 @@
 #define STR_TASKS                           RID_STR_APP_START + 22
 #define STR_DESCRIPTION                     RID_STR_APP_START + 23
 #define STR_PREVIEW                         RID_STR_APP_START + 24
-#define STR_DISABLEPREVIEW                  RID_STR_APP_START + 25
 #define RID_STR_QUERIES_HELP_TEXT_WIZARD    RID_STR_APP_START + 26
 #define RID_STR_TABLES_HELP_TEXT_DESIGN     RID_STR_APP_START + 27
 #define RID_STR_TABLES_HELP_TEXT_WIZARD     RID_STR_APP_START + 28
diff --git a/dbaccess/source/ui/control/tabletree.src b/dbaccess/source/ui/control/tabletree.src
index fc26f06823ed..6657dd0ef9c9 100644
--- a/dbaccess/source/ui/control/tabletree.src
+++ b/dbaccess/source/ui/control/tabletree.src
@@ -30,16 +30,6 @@ String STR_NOREGISTEREDDRIVER
     Text [ en-US ] = "A driver is not registered for the URL #connurl#.";
 };
 
-String STR_COULDNOTCONNECT
-{
-    Text [ en-US ] = "No connection could be established for the URL #connurl#.";
-};
-
-String STR_COULDNOTCONNECT_PLEASECHECK
-{
-    Text [ en-US ] = "Please check the current settings, for example user name and password.";
-};
-
 String STR_NOTABLEINFO
 {
     Text [ en-US ] = "Successfully connected, but information about database tables is not available.";
diff --git a/dbaccess/source/ui/inc/dbu_control.hrc b/dbaccess/source/ui/inc/dbu_control.hrc
index 46805058a389..b3f80b058aef 100644
--- a/dbaccess/source/ui/inc/dbu_control.hrc
+++ b/dbaccess/source/ui/inc/dbu_control.hrc
@@ -30,8 +30,6 @@
 #define STR_TABLE_PRIV_DROP                 RID_STR_CONTROL_START +  6
 #define STR_TABLE_PRIV_SELECT               RID_STR_CONTROL_START +  7
 #define STR_ALL_TABLES_AND_VIEWS            RID_STR_CONTROL_START +  8
-#define STR_COULDNOTCONNECT                 RID_STR_CONTROL_START +  9
-#define STR_COULDNOTCONNECT_PLEASECHECK     RID_STR_CONTROL_START + 10
 #define STR_NOTABLEINFO                     RID_STR_CONTROL_START + 11
 #define STR_ALL_TABLES                      RID_STR_CONTROL_START + 12
 #define STR_ALL_VIEWS                       RID_STR_CONTROL_START + 13
diff --git a/dbaccess/source/ui/inc/dbu_qry.hrc b/dbaccess/source/ui/inc/dbu_qry.hrc
index 4c87a882916c..306fd9fb6057 100644
--- a/dbaccess/source/ui/inc/dbu_qry.hrc
+++ b/dbaccess/source/ui/inc/dbu_qry.hrc
@@ -59,20 +59,17 @@
 #define STR_QRY_NATIVE                      RID_STR_QRY_START + 39
 #define STR_QRY_TOO_MANY_TABLES             RID_STR_QRY_START + 40
 // empty
-#define STR_QUERYDESIGN                     RID_STR_QRY_START + 42
-#define STR_VIEWDESIGN                      RID_STR_QRY_START + 43
 #define STR_JOIN_TYPE_HINT                  RID_STR_QRY_START + 44
 #define STR_QUERY_SAVEMODIFIED              RID_STR_QRY_START + 45
 #define STR_ERROR_PARSING_STATEMENT         RID_STR_QRY_START + 46
 #define STR_INFO_OPENING_IN_SQL_VIEW        RID_STR_QRY_START + 47
 #define STR_STATEMENT_WITHOUT_RESULT_SET    RID_STR_QRY_START + 48
-#define STR_NO_DATASOURCE_OR_CONNECTION     RID_STR_QRY_START + 49
+// empty
 #define STR_NO_ALTER_VIEW_SUPPORT           RID_STR_QRY_START + 50
 #define STR_QUERY_CROSS_JOIN                RID_STR_QRY_START + 51
-#define STR_QUERY_NATURAL_JOIN              RID_STR_QRY_START + 52
     // please adjust checking when inserting new strings
 
-#if STR_QUERY_NATURAL_JOIN > RID_STR_QRY_END
+#if STR_QUERY_CROSS_JOIN > RID_STR_QRY_END
 #error resource id overflow in #file, #line
 #endif
 
diff --git a/dbaccess/source/ui/inc/dbu_resource.hrc b/dbaccess/source/ui/inc/dbu_resource.hrc
index 169e026779d6..0f539d9e194a 100644
--- a/dbaccess/source/ui/inc/dbu_resource.hrc
+++ b/dbaccess/source/ui/inc/dbu_resource.hrc
@@ -139,18 +139,16 @@
 #define STR_NAME_ALREADY_EXISTS             RID_STR_GEN_START + 3
 #define STR_PAGETITLE_GENERAL               RID_STR_GEN_START + 4
 #define STR_TITLE_CONFIRM_DELETION          RID_STR_GEN_START + 5
-#define STR_STAT_WARNING                    RID_STR_GEN_START + 6
 #define STR_TABLEDESIGN_DATASOURCE_DELETED  RID_STR_GEN_START + 7
 #define STR_TABLEDESIGN_DBFIELDTYPES        RID_STR_GEN_START + 8
 #define STR_QRY_CONTINUE                    RID_STR_GEN_START + 9
 #define STR_COLUMN_NAME                     RID_STR_GEN_START + 10
-#define STR_ERROR_OCCURRED_WHILE_COPYING        RID_STR_GEN_START + 11
+#define STR_ERROR_OCCURRED_WHILE_COPYING    RID_STR_GEN_START + 11
 #define STR_MISSING_TABLES_XDROP            RID_STR_GEN_START + 12
 #define STR_QUERY_DELETE_TABLE              RID_STR_GEN_START + 13
 #define STR_BUTTON_TEXT_ALL                 RID_STR_GEN_START + 14
 #define STR_COULDNOTCREATE_DRIVERMANAGER    RID_STR_GEN_START + 15
 #define STR_UNEXPECTED_ERROR                RID_STR_GEN_START + 16
-#define STR_REMEMBERPASSWORD_SESSION        RID_STR_GEN_START + 17
 #define STR_ENTER_CONNECTION_PASSWORD       RID_STR_GEN_START + 18
 #define STR_NOREGISTEREDDRIVER              RID_STR_GEN_START + 19
 #define STR_DATASOURCE_DELETED              RID_STR_GEN_START + 20
@@ -176,16 +174,15 @@
 #define RID_STR_EXTENSION_NOT_PRESENT       RID_STR_GEN_START + 40
 #define STR_PAGETITLE_CONNECTION            RID_STR_GEN_START + 41
 #define STR_TBL_LABEL                       RID_STR_GEN_START + 42
-#define STR_VW_LABEL                        RID_STR_GEN_START + 43
 #define STR_QRY_LABEL                       RID_STR_GEN_START + 44
 #define STR_TITLE_RENAME                    RID_STR_GEN_START + 45
 #define STR_TITLE_PASTE_AS                  RID_STR_GEN_START + 46
-#define STR_AUTOFIELDSEPARATORLIST      RID_STR_GEN_START + 47
-#define STR_AUTOTEXTSEPARATORLIST       RID_STR_GEN_START + 48
-#define STR_AUTOTEXT_FIELD_SEP_NONE     RID_STR_GEN_START + 49
-#define STR_AUTODELIMITER_MISSING       RID_STR_GEN_START + 50
-#define STR_AUTODELIMITER_MUST_DIFFER   RID_STR_GEN_START + 51
-#define STR_AUTONO_WILDCARDS            RID_STR_GEN_START + 52
+#define STR_AUTOFIELDSEPARATORLIST          RID_STR_GEN_START + 47
+#define STR_AUTOTEXTSEPARATORLIST           RID_STR_GEN_START + 48
+#define STR_AUTOTEXT_FIELD_SEP_NONE         RID_STR_GEN_START + 49
+#define STR_AUTODELIMITER_MISSING           RID_STR_GEN_START + 50
+#define STR_AUTODELIMITER_MUST_DIFFER       RID_STR_GEN_START + 51
+#define STR_AUTONO_WILDCARDS                RID_STR_GEN_START + 52
 #define STR_SPREADSHEET_HEADERTEXT          RID_STR_GEN_START + 53
 #define STR_SPREADSHEET_HELPTEXT            RID_STR_GEN_START + 54
 #define STR_SPREADSHEETPATH                 RID_STR_GEN_START + 55
diff --git a/dbaccess/source/ui/inc/dbu_tbl.hrc b/dbaccess/source/ui/inc/dbu_tbl.hrc
index edcf7fc1b7c5..352ded3719c7 100644
--- a/dbaccess/source/ui/inc/dbu_tbl.hrc
+++ b/dbaccess/source/ui/inc/dbu_tbl.hrc
@@ -25,24 +25,16 @@
 #define STR_TABLEDESIGN_UNDO_PRIMKEY        RID_STR_TBL_START + 1
 #define STR_VALUE_YES                       RID_STR_TBL_START + 2
 #define STR_VALUE_NO                        RID_STR_TBL_START + 3
-#define STR_VALUE_ASC                       RID_STR_TBL_START + 4
-#define STR_VALUE_DESC                      RID_STR_TBL_START + 5
 #define STR_VALUE_NONE                      RID_STR_TBL_START + 6
 #define STR_TAB_FIELD_NAME                  RID_STR_TBL_START + 7
 #define STR_TAB_FIELD_DATATYPE              RID_STR_TBL_START + 8
-#define STR_TAB_FIELD_LENGTH                RID_STR_TBL_START + 9
 #define STR_TAB_HELP_TEXT                   RID_STR_TBL_START + 10
-#define STR_TAB_FIELD_NULLABLE              RID_STR_TBL_START + 11
 #define STR_FIELD_AUTOINCREMENT             RID_STR_TBL_START + 12
 #define STR_TAB_PROPERTIES                  RID_STR_TBL_START + 13
-#define STR_TABPAGE_GENERAL                 RID_STR_TBL_START + 14
-#define STR_TAB_TABLE_DESCRIPTION           RID_STR_TBL_START + 15
-#define STR_TAB_TABLE_PROPERTIES            RID_STR_TBL_START + 16
 #define STR_TABED_UNDO_TYPE_CHANGED         RID_STR_TBL_START + 17
 #define STR_TABED_UNDO_ROWDELETED           RID_STR_TBL_START + 18
 #define STR_TABED_UNDO_ROWINSERTED          RID_STR_TBL_START + 19
 #define STR_TABED_UNDO_NEWROWINSERTED       RID_STR_TBL_START + 20
-#define STR_TABED_UNDO_PRIMKEY              RID_STR_TBL_START + 21
 #define STR_HELP_AUTOINCREMENT              RID_STR_TBL_START + 22
 #define STR_HELP_FORMAT_CODE                RID_STR_TBL_START + 23
 #define STR_HELP_SCALE                      RID_STR_TBL_START + 24
@@ -68,7 +60,6 @@
 #define STR_HELP_FORMAT_BUTTON              RID_STR_TBL_START + 44
 #define STR_TABLEDESIGN_CONNECTION_MISSING  RID_STR_TBL_START + 45
 #define STR_TAB_FIELD_COLUMN_DATATYPE       RID_STR_TBL_START + 46
-#define STR_TABLEDESIGN_TITLE               RID_STR_TBL_START + 47
 #define STR_NO_TYPE_INFO_AVAILABLE          RID_STR_TBL_START + 48
 #define STR_CHANGE_COLUMN_NAME              RID_STR_TBL_START + 49
 #define STR_CHANGE_COLUMN_TYPE              RID_STR_TBL_START + 50
diff --git a/dbaccess/source/ui/inc/dbu_uno.hrc b/dbaccess/source/ui/inc/dbu_uno.hrc
index a968abe4aff9..923828ac871d 100644
--- a/dbaccess/source/ui/inc/dbu_uno.hrc
+++ b/dbaccess/source/ui/inc/dbu_uno.hrc
@@ -21,7 +21,6 @@
 
 #include "dbu_resource.hrc"
 
-#define STR_REMEMBERPASSWORD_PERSISTENT         ( RID_STR_UNO_START +  0 )
 #define STR_CTW_NO_VIEWS_SUPPORT                ( RID_STR_UNO_START +  1 )
 #define STR_CTW_NO_PRIMARY_KEY_SUPPORT          ( RID_STR_UNO_START +  2 )
 #define STR_CTW_INVALID_DATA_ACCESS_DESCRIPTOR  ( RID_STR_UNO_START +  3 )
diff --git a/dbaccess/source/ui/inc/sbagrid.hrc b/dbaccess/source/ui/inc/sbagrid.hrc
index 72fcdc430071..4940044f6e20 100644
--- a/dbaccess/source/ui/inc/sbagrid.hrc
+++ b/dbaccess/source/ui/inc/sbagrid.hrc
@@ -32,39 +32,6 @@
 // Ausrichtung
 #define SBA_ATTR_ALIGN_HOR_JUSTIFY  (SBA_WHICHID_START + 145) //  SvxHorJustifyItem
 
-// Spaltenbreite
-#define SBA_DEF_FLTCOLWIDTH         (SBA_WHICHID_START + 146) // SbaColRowSizeItem
-// FieldType
-#define SBA_DEF_FLTTYPE             (SBA_WHICHID_START + 147) // DataFieldTypeItem
-// Feldlänge
-#define SBA_DEF_FLTLENGTH           (SBA_WHICHID_START + 148) // SfxUInt32Item
-// Eingabe erforderlich
-#define SBA_DEF_FLTREQUIRED         (SBA_WHICHID_START + 149) // SfxBoolItem
-// Position in der Tabelle, Abfrage
-#define SBA_DEF_FLTPOS              (SBA_WHICHID_START + 150) // SfxUInt16Item
-// Name der zugehoerigen Tabelle
-#define SBA_DEF_FLTTABLE            (SBA_WHICHID_START + 151) // SfxStringItem
-// Spalte ausblenden
-#define SBA_DEF_FLTHIDE             (SBA_WHICHID_START + 152) // SfxBoolItem
-
-// Ausrichtung
-#define SBA_ATTR_ALIGN_HOR_JUSTIFY  (SBA_WHICHID_START + 145) //  SvxHorJustifyItem
-
-// Spaltenbreite
-#define SBA_DEF_FLTCOLWIDTH         (SBA_WHICHID_START + 146) // SbaColRowSizeItem
-// Feldtyp
-#define SBA_DEF_FLTTYPE             (SBA_WHICHID_START + 147) // DataFieldTypeItem
-// Feldlänge
-#define SBA_DEF_FLTLENGTH           (SBA_WHICHID_START + 148) // SfxUInt32Item
-// Eingabe erforderlich
-#define SBA_DEF_FLTREQUIRED         (SBA_WHICHID_START + 149) // SfxBoolItem
-// Position in der Tabelle, Abfrage
-#define SBA_DEF_FLTPOS              (SBA_WHICHID_START + 150) // SfxUInt16Item
-// Name der zugehoerigen Tabelle
-#define SBA_DEF_FLTTABLE            (SBA_WHICHID_START + 151) // SfxStringItem
-// Spalte ausblenden
-#define SBA_DEF_FLTHIDE             (SBA_WHICHID_START + 152) // SfxBoolItem
-
 #endif // DBACCESS_SBA_GRID_HRC
 
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/dbaccess/source/ui/querydesign/query.src b/dbaccess/source/ui/querydesign/query.src
index 52e55ad62265..7530f5d0948f 100644
--- a/dbaccess/source/ui/querydesign/query.src
+++ b/dbaccess/source/ui/querydesign/query.src
@@ -303,16 +303,6 @@ String STR_QRY_CHECK_CASESENSITIVE
     Text [ en-US ] = "The column could not be found. Please note that the database is case-sensitive.";
 };
 
-String STR_QUERYDESIGN
-{
-    Text [ en-US ] = " - %PRODUCTNAME Base: Query Design";
-};
-
-String STR_VIEWDESIGN
-{
-    Text [ en-US ] = " - %PRODUCTNAME Base: View Design";
-};
-
 String STR_QUERY_SAVEMODIFIED
 {
     Text [ en-US ] = "$object$ has been changed.\nDo you want to save the changes?" ;
@@ -348,9 +338,4 @@ String STR_STATEMENT_WITHOUT_RESULT_SET
     Text [ en-US ] = "The query does not create a result set, and thus cannot be part of another query.";
 };
 
-String STR_NO_DATASOURCE_OR_CONNECTION
-{
-    Text [ en-US ] = "Both the ActiveConnection and the DataSourceName parameter are missing or wrong - cannot initialize the query designer.";
-};
-
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/dbaccess/source/ui/querydesign/querydlg.src b/dbaccess/source/ui/querydesign/querydlg.src
index 14d2718155aa..a7ff1bd957a5 100644
--- a/dbaccess/source/ui/querydesign/querydlg.src
+++ b/dbaccess/source/ui/querydesign/querydlg.src
@@ -44,9 +44,4 @@ String STR_QUERY_CROSS_JOIN
     Text [ en-US ] = "Contains the Cartesian product of ALL records from '%1' and from '%2'.";
 };
 
-String STR_QUERY_NATURAL_JOIN
-{
-    Text [ en-US ] = "Contains only one column for each pair of equally-named columns from '%1' and from '%2'.";
-};
-
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/dbaccess/source/ui/tabledesign/table.src b/dbaccess/source/ui/tabledesign/table.src
index d0dc8eeba6a6..02bf4436e7d2 100644
--- a/dbaccess/source/ui/tabledesign/table.src
+++ b/dbaccess/source/ui/tabledesign/table.src
@@ -42,16 +42,6 @@ String STR_VALUE_NO
     Text [ en-US ] = "No" ;
 };
 
-String STR_VALUE_ASC
-{
-    Text [ en-US ] = "Ascending" ;
-};
-
-String STR_VALUE_DESC
-{
-    Text [ en-US ] = "Descending" ;
-};
-
 String STR_VALUE_NONE
 {
     // Bemerkung : sollte auch in anderen Sprachen irgendwie zum Wort 'Wert' passen : Wert - keiner ....
@@ -78,11 +68,6 @@ String STR_TAB_FIELD_COLUMN_DATATYPE
     Text [ en-US ] = "Field Type" ;
 };
 
-String STR_TAB_FIELD_LENGTH
-{
-    Text [ en-US ] = "Field length" ;
-};
-
 String STR_TAB_HELP_TEXT
 {
     Text [ en-US ] = "Description" ;
@@ -93,11 +78,6 @@ String STR_COLUMN_DESCRIPTION
     Text [ en-US ] = "Column Description" ;
 };
 
-String STR_TAB_FIELD_NULLABLE
-{
-    Text [ en-US ] = "Input required" ;
-};
-
 String STR_FIELD_AUTOINCREMENT
 {
     Text [ en-US ] = "~AutoValue";
@@ -108,21 +88,6 @@ String STR_TAB_PROPERTIES
     Text [ en-US ] = "Field Properties" ;
 };
 
-String STR_TABPAGE_GENERAL
-{
-    Text [ en-US ] = "General" ;
-};
-
-String STR_TAB_TABLE_DESCRIPTION
-{
-    Text [ en-US ] = "Description:";
-};
-
-String STR_TAB_TABLE_PROPERTIES
-{
-    Text [ en-US ] = "Table properties";
-};
-
 Menu RID_TABLEDESIGNROWPOPUPMENU
 {
     ItemList =
@@ -196,11 +161,6 @@ String STR_TABED_UNDO_NEWROWINSERTED
     Text [ en-US ] = "Insert new row" ;
 };
 
-String STR_TABED_UNDO_PRIMKEY
-{
-    Text [ en-US ] = "Insert/remove primary key" ;
-};
-
 String STR_DEFAULT_VALUE
 {
     Text [ en-US ] = "~Default value" ;
@@ -316,11 +276,6 @@ String STR_QRY_CONTINUE
     Text [ en-US ] = "Continue anyway?" ;
 };
 
-String STR_STAT_WARNING
-{
-    Text [ en-US ] = "Warning!" ;
-};
-
 String STR_TABLEDESIGN_CONNECTION_MISSING
 {
     Text [ en-US ] = "The table could not be saved due to problems connecting to the database.";
@@ -346,11 +301,6 @@ String STR_TABLEDESIGN_NO_PRIM_KEY
     Text [ en-US ] = "A unique index or primary key is required for data record identification in this database.\nYou can only enter data into this table when one of these two structural conditions has been met.\n\nShould a primary key be created now?" ;
 };
 
-String STR_TABLEDESIGN_TITLE
-{
-    Text [ en-US ] = " - %PRODUCTNAME Base: Table Design";
-};
-
 String STR_TABLEDESIGN_ALTER_ERROR
 {
     Text [ en-US ] = "The column \"$column$\" could not be changed. Should the column instead be deleted and the new format appended?" ;
diff --git a/dbaccess/source/ui/uno/dbinteraction.src b/dbaccess/source/ui/uno/dbinteraction.src
deleted file mode 100644
index 7b345e890201..000000000000
--- a/dbaccess/source/ui/uno/dbinteraction.src
+++ /dev/null
@@ -1,32 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*
- * This file is part of the LibreOffice project.
- *
- * This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/.
- *
- * This file incorporates work covered by the following license notice:
- *
- *   Licensed to the Apache Software Foundation (ASF) under one or more
- *   contributor license agreements. See the NOTICE file distributed
- *   with this work for additional information regarding copyright
- *   ownership. The ASF licenses this file to you under the Apache
- *   License, Version 2.0 (the "License"); you may not use this file
- *   except in compliance with the License. You may obtain a copy of
- *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
- */
-
-#include "dbu_uno.hrc"
-
-String STR_REMEMBERPASSWORD_SESSION
-{
-    Text [ en-US ] = "~Remember password until end of session";
-};
-
-String STR_REMEMBERPASSWORD_PERSISTENT
-{
-    Text [ en-US ] = "~Remember password";
-};
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/l10ntools/source/gRun.sh b/l10ntools/source/gRun.sh
index ed075963bd38..cdee79787edd 100755
--- a/l10ntools/source/gRun.sh
+++ b/l10ntools/source/gRun.sh
@@ -252,7 +252,7 @@ ${MYCMD} --files dbaccess/source/ui/relationdesign/relation.src
 
 ${MYCMD} --files dbaccess/source/ui/tabledesign/table.src
 
-${MYCMD} --base dbaccess/source/ui/uno --files copytablewizard.src dbinteraction.src
+${MYCMD} --base dbaccess/source/ui/uno --files copytablewizard.src
 
 ${MYCMD} --files desktop/source/app/desktop.src
 
commit f2a873cd13adf0b74d18af203676f2de86d1cb2e
Author: Noel Grandin <noel.grandin at collabora.co.uk>
Date:   Thu Mar 16 12:44:19 2017 +0200

    convert SvxBorderStyle to scoped enum
    
    and rename to SvxBorderLineStyle
    
    Change-Id: I19e530f162e4ca6290a0ad076e7fe3d5775ae6bc
    Reviewed-on: https://gerrit.libreoffice.org/35265
    Tested-by: Jenkins <ci at libreoffice.org>
    Reviewed-by: Noel Grandin <noel.grandin at collabora.co.uk>

diff --git a/cui/source/inc/border.hxx b/cui/source/inc/border.hxx
index 081b7d1c529e..7e5d12c596fc 100644
--- a/cui/source/inc/border.hxx
+++ b/cui/source/inc/border.hxx
@@ -117,7 +117,7 @@ private:
     bool                mbRemoveAdjacentCellBorders;
     bool                bIsCalcDoc;
 
-    std::set<sal_Int16> maUsedBorderStyles;
+    std::set<SvxBorderLineStyle> maUsedBorderStyles;
 
     // Handler
     DECL_LINK( SelStyleHdl_Impl, ListBox&, void );
@@ -145,7 +145,7 @@ private:
                                              const editeng::SvxBorderLine* pCurLine,
                                              bool bValid );
 
-    bool IsBorderLineStyleAllowed( sal_Int16 nStyle ) const;
+    bool IsBorderLineStyleAllowed( SvxBorderLineStyle nStyle ) const;
     void UpdateRemoveAdjCellBorderCB( sal_uInt16 nPreset );
 };
 
diff --git a/cui/source/tabpages/border.cxx b/cui/source/tabpages/border.cxx
index c5a08f68428d..0c1a5dbe874f 100644
--- a/cui/source/tabpages/border.cxx
+++ b/cui/source/tabpages/border.cxx
@@ -199,7 +199,7 @@ SvxBorderTabPage::SvxBorderTabPage(vcl::Window* pParent, const SfxItemSet& rCore
         const SfxIntegerListItem* p = static_cast<const SfxIntegerListItem*>(pItem);
         std::vector<sal_Int32> aUsedStyles = p->GetList();
         for (int aUsedStyle : aUsedStyles)
-            maUsedBorderStyles.insert(static_cast<sal_Int16>(aUsedStyle));
+            maUsedBorderStyles.insert(static_cast<SvxBorderLineStyle>(aUsedStyle));
     }
 
     if (rCoreAttrs.HasItem(SID_ATTR_BORDER_DEFAULT_WIDTH, &pItem))
@@ -405,7 +405,7 @@ void SvxBorderTabPage::ResetFrameLine_Impl( svx::FrameBorderType eBorder, const
     }
 }
 
-bool SvxBorderTabPage::IsBorderLineStyleAllowed( sal_Int16 nStyle ) const
+bool SvxBorderTabPage::IsBorderLineStyleAllowed( SvxBorderLineStyle nStyle ) const
 {
     if (maUsedBorderStyles.empty())
         // All border styles are allowed.
@@ -533,7 +533,7 @@ void SvxBorderTabPage::Reset( const SfxItemSet* rSet )
     {
         // Do all visible lines show the same line widths?
         long nWidth;
-        SvxBorderStyle nStyle;
+        SvxBorderLineStyle nStyle;
         bool bWidthEq = m_pFrameSel->GetVisibleWidth( nWidth, nStyle );
         if( bWidthEq )
         {
@@ -912,7 +912,7 @@ IMPL_LINK_NOARG(SvxBorderTabPage, ModifyWidthHdl_Impl, Edit&, void)
     m_pLbLineStyle->SetWidth( nVal );
 
     m_pFrameSel->SetStyleToSelection( nVal,
-        SvxBorderStyle( m_pLbLineStyle->GetSelectEntryStyle() ) );
+        SvxBorderLineStyle( m_pLbLineStyle->GetSelectEntryStyle() ) );
 }
 
 
@@ -925,7 +925,7 @@ IMPL_LINK( SvxBorderTabPage, SelStyleHdl_Impl, ListBox&, rLb, void )
                     m_pLineWidthMF->GetDecimalDigits( ),
                     m_pLineWidthMF->GetUnit(), MapUnit::MapTwip ));
         m_pFrameSel->SetStyleToSelection ( nVal,
-            SvxBorderStyle( m_pLbLineStyle->GetSelectEntryStyle() ) );
+            SvxBorderLineStyle( m_pLbLineStyle->GetSelectEntryStyle() ) );
     }
 }
 
@@ -1057,35 +1057,35 @@ void SvxBorderTabPage::FillLineListBox_Impl()
     using namespace ::com::sun::star::table::BorderLineStyle;
 
     struct {
-        sal_Int16 mnStyle;
+        SvxBorderLineStyle mnStyle;
         long mnMinWidth;
         LineListBox::ColorFunc mpColor1Fn;
         LineListBox::ColorFunc mpColor2Fn;
         LineListBox::ColorDistFunc mpColorDistFn;
     } aLines[] = {
         // Simple lines
-        { SOLID,        0, &sameColor, &sameColor, &sameDistColor },
-        { DOTTED,       0, &sameColor, &sameColor, &sameDistColor },
-        { DASHED,       0, &sameColor, &sameColor, &sameDistColor },
-        { FINE_DASHED,  0, &sameColor, &sameColor, &sameDistColor },
-        { DASH_DOT,     0, &sameColor, &sameColor, &sameDistColor },
-        { DASH_DOT_DOT, 0, &sameColor, &sameColor, &sameDistColor },
+        { SvxBorderLineStyle::SOLID,        0, &sameColor, &sameColor, &sameDistColor },
+        { SvxBorderLineStyle::DOTTED,       0, &sameColor, &sameColor, &sameDistColor },
+        { SvxBorderLineStyle::DASHED,       0, &sameColor, &sameColor, &sameDistColor },
+        { SvxBorderLineStyle::FINE_DASHED,  0, &sameColor, &sameColor, &sameDistColor },
+        { SvxBorderLineStyle::DASH_DOT,     0, &sameColor, &sameColor, &sameDistColor },
+        { SvxBorderLineStyle::DASH_DOT_DOT, 0, &sameColor, &sameColor, &sameDistColor },
 
         // Double lines
-        { DOUBLE,              10, &sameColor, &sameColor, &sameDistColor },
-        { DOUBLE_THIN,         10, &sameColor, &sameColor, &sameDistColor },
-        { THINTHICK_SMALLGAP,  20, &sameColor, &sameColor, &sameDistColor },
-        { THINTHICK_MEDIUMGAP,  0, &sameColor, &sameColor, &sameDistColor },
-        { THINTHICK_LARGEGAP,   0, &sameColor, &sameColor, &sameDistColor },
-        { THICKTHIN_SMALLGAP,  20, &sameColor, &sameColor, &sameDistColor },
-        { THICKTHIN_MEDIUMGAP,  0, &sameColor, &sameColor, &sameDistColor },
-        { THICKTHIN_LARGEGAP,   0, &sameColor, &sameColor, &sameDistColor },
-
-        { EMBOSSED, 15, &SvxBorderLine::threeDLightColor, &SvxBorderLine::threeDDarkColor, &lcl_mediumColor },
-        { ENGRAVED, 15, &SvxBorderLine::threeDDarkColor, &SvxBorderLine::threeDLightColor, &lcl_mediumColor },
-
-        { OUTSET, 10, &SvxBorderLine::lightColor, &SvxBorderLine::darkColor, &sameDistColor },
-        { INSET,  10, &SvxBorderLine::darkColor, &SvxBorderLine::lightColor, &sameDistColor }
+        { SvxBorderLineStyle::DOUBLE,              10, &sameColor, &sameColor, &sameDistColor },
+        { SvxBorderLineStyle::DOUBLE_THIN,         10, &sameColor, &sameColor, &sameDistColor },
+        { SvxBorderLineStyle::THINTHICK_SMALLGAP,  20, &sameColor, &sameColor, &sameDistColor },
+        { SvxBorderLineStyle::THINTHICK_MEDIUMGAP,  0, &sameColor, &sameColor, &sameDistColor },
+        { SvxBorderLineStyle::THINTHICK_LARGEGAP,   0, &sameColor, &sameColor, &sameDistColor },
+        { SvxBorderLineStyle::THICKTHIN_SMALLGAP,  20, &sameColor, &sameColor, &sameDistColor },
+        { SvxBorderLineStyle::THICKTHIN_MEDIUMGAP,  0, &sameColor, &sameColor, &sameDistColor },
+        { SvxBorderLineStyle::THICKTHIN_LARGEGAP,   0, &sameColor, &sameColor, &sameDistColor },
+
+        { SvxBorderLineStyle::EMBOSSED, 15, &SvxBorderLine::threeDLightColor, &SvxBorderLine::threeDDarkColor, &lcl_mediumColor },
+        { SvxBorderLineStyle::ENGRAVED, 15, &SvxBorderLine::threeDDarkColor, &SvxBorderLine::threeDLightColor, &lcl_mediumColor },
+
+        { SvxBorderLineStyle::OUTSET, 10, &SvxBorderLine::lightColor, &SvxBorderLine::darkColor, &sameDistColor },
+        { SvxBorderLineStyle::INSET,  10, &SvxBorderLine::darkColor, &SvxBorderLine::lightColor, &sameDistColor }
     };
 
     m_pLbLineStyle->SetSourceUnit( FUNIT_TWIP );
diff --git a/drawinglayer/qa/unit/border.cxx b/drawinglayer/qa/unit/border.cxx
index 60a698927143..0df10ac5e42b 100644
--- a/drawinglayer/qa/unit/border.cxx
+++ b/drawinglayer/qa/unit/border.cxx
@@ -22,6 +22,7 @@
 #include <test/bootstrapfixture.hxx>
 #include <vcl/vclptr.hxx>
 #include <vcl/virdev.hxx>
+#include <editeng/borderline.hxx>
 
 using namespace com::sun::star;
 
@@ -57,7 +58,7 @@ void DrawinglayerBorderTest::testDoubleDecompositionSolid()
     basegfx::BColor aColorLeft;
     basegfx::BColor aColorGap;
     bool bHasGapColor = false;
-    sal_Int16 nStyle = table::BorderLineStyle::DOUBLE;
+    SvxBorderLineStyle nStyle = SvxBorderLineStyle::DOUBLE;
     rtl::Reference<drawinglayer::primitive2d::BorderLinePrimitive2D> aBorder(new drawinglayer::primitive2d::BorderLinePrimitive2D(aStart, aEnd, fLeftWidth, fDistance, fRightWidth, fExtendLeftStart, fExtendLeftEnd, fExtendRightStart, fExtendRightEnd, aColorRight, aColorLeft, aColorGap, bHasGapColor, nStyle));
 
     // Decompose it into polygons.
@@ -107,7 +108,7 @@ void DrawinglayerBorderTest::testDoublePixelProcessing()
     basegfx::BColor aColorLeft;
     basegfx::BColor aColorGap;
     bool bHasGapColor = false;
-    sal_Int16 nStyle = table::BorderLineStyle::DOUBLE;
+    SvxBorderLineStyle nStyle = SvxBorderLineStyle::DOUBLE;
     rtl::Reference<drawinglayer::primitive2d::BorderLinePrimitive2D> xBorder(new drawinglayer::primitive2d::BorderLinePrimitive2D(aStart, aEnd, fLeftWidth, fDistance, fRightWidth, fExtendLeftStart, fExtendLeftEnd, fExtendRightStart, fExtendRightEnd, aColorRight, aColorLeft, aColorGap, bHasGapColor, nStyle));
     drawinglayer::primitive2d::Primitive2DContainer aPrimitives;
     aPrimitives.push_back(drawinglayer::primitive2d::Primitive2DReference(xBorder.get()));
diff --git a/drawinglayer/source/primitive2d/borderlineprimitive2d.cxx b/drawinglayer/source/primitive2d/borderlineprimitive2d.cxx
index 3db5cb2d799e..c6ea4a5c41f7 100644
--- a/drawinglayer/source/primitive2d/borderlineprimitive2d.cxx
+++ b/drawinglayer/source/primitive2d/borderlineprimitive2d.cxx
@@ -25,6 +25,7 @@
 #include <drawinglayer/primitive2d/polygonprimitive2d.hxx>
 #include <drawinglayer/primitive2d/polypolygonprimitive2d.hxx>
 #include <svtools/borderhelper.hxx>
+#include <editeng/borderline.hxx>
 
 #include <algorithm>
 #include <cmath>
@@ -240,7 +241,7 @@ primitive2d::Primitive2DReference makeSolidLinePrimitive(
                     const basegfx::B2DPoint aTmpEnd(getEnd() + (fExt * aVector));
 
                     // Get which is the line to show
-                    bool bIsSolidline = mnStyle == css::table::BorderLineStyle::SOLID;
+                    bool bIsSolidline = mnStyle == SvxBorderLineStyle::SOLID;
                     double nWidth = getLeftWidth();
                     basegfx::BColor aColor = getRGBColorLeft();
                     if ( basegfx::fTools::equal( 0.0, mfLeftWidth ) )
@@ -333,7 +334,7 @@ primitive2d::Primitive2DReference makeSolidLinePrimitive(
             const basegfx::BColor& rRGBColorLeft,
             const basegfx::BColor& rRGBColorGap,
             bool bHasGapColor,
-            const short nStyle,
+            SvxBorderLineStyle nStyle,
             double fPatternScale)
         :   BufferedDecompositionPrimitive2D(),
             maStart(rStart),
diff --git a/drawinglayer/source/primitive2d/clippedborderlineprimitive2d.cxx b/drawinglayer/source/primitive2d/clippedborderlineprimitive2d.cxx
index 5a19ee88fc5a..ca44a2838909 100644
--- a/drawinglayer/source/primitive2d/clippedborderlineprimitive2d.cxx
+++ b/drawinglayer/source/primitive2d/clippedborderlineprimitive2d.cxx
@@ -33,7 +33,7 @@ namespace drawinglayer
             const basegfx::BColor& rRGBColorLeft,
             const basegfx::BColor& rRGBColorGap,
             bool bHasGapColor,
-            const short nStyle,
+            SvxBorderLineStyle nStyle,
             double fPatternScale)
         :   BorderLinePrimitive2D( rStart, rEnd, fLeftWidth,fDistance, fRightWidth,
                         0.0, 0.0, 0.0, 0.0, rRGBColorRight, rRGBColorLeft,
diff --git a/drawinglayer/source/processor2d/vclpixelprocessor2d.cxx b/drawinglayer/source/processor2d/vclpixelprocessor2d.cxx
index 65b77187b5d0..a212fb8b4460 100644
--- a/drawinglayer/source/processor2d/vclpixelprocessor2d.cxx
+++ b/drawinglayer/source/processor2d/vclpixelprocessor2d.cxx
@@ -53,6 +53,7 @@
 #include <toolkit/helper/vclunohelper.hxx>
 #include <vcl/window.hxx>
 #include <svtools/borderhelper.hxx>
+#include <editeng/borderline.hxx>
 
 #include <com/sun/star/table/BorderLineStyle.hpp>
 
@@ -337,14 +338,14 @@ namespace drawinglayer
 
             switch (rSource.getStyle())
             {
-                case table::BorderLineStyle::SOLID:
-                case table::BorderLineStyle::DOUBLE_THIN:
+                case SvxBorderLineStyle::SOLID:
+                case SvxBorderLineStyle::DOUBLE_THIN:
                 {
                     const basegfx::BColor aLineColor =
                         maBColorModifierStack.getModifiedColor(rSource.getRGBColorLeft());
                     double nThick = rtl::math::round(rSource.getLeftWidth());
 
-                    bool bDouble = rSource.getStyle() == table::BorderLineStyle::DOUBLE_THIN;
+                    bool bDouble = rSource.getStyle() == SvxBorderLineStyle::DOUBLE_THIN;
 
                     basegfx::B2DPolygon aTarget;
 
@@ -441,11 +442,11 @@ namespace drawinglayer
                     return true;
                 }
                 break;
-                case table::BorderLineStyle::DOTTED:
-                case table::BorderLineStyle::DASHED:
-                case table::BorderLineStyle::DASH_DOT:
-                case table::BorderLineStyle::DASH_DOT_DOT:
-                case table::BorderLineStyle::FINE_DASHED:
+                case SvxBorderLineStyle::DOTTED:
+                case SvxBorderLineStyle::DASHED:
+                case SvxBorderLineStyle::DASH_DOT:
+                case SvxBorderLineStyle::DASH_DOT_DOT:
+                case SvxBorderLineStyle::FINE_DASHED:
                 {
                     std::vector<double> aPattern =
                         svtools::GetLineDashing(rSource.getStyle(), rSource.getPatternScale()*10.0);
@@ -1268,7 +1269,7 @@ namespace drawinglayer
 
                     if (!tryDrawBorderLinePrimitive2DDirect(rBorder))
                     {
-                        if (rBorder.getStyle() == table::BorderLineStyle::DOUBLE)
+                        if (rBorder.getStyle() == SvxBorderLineStyle::DOUBLE)
                         {
                             primitive2d::Primitive2DContainer aContainer;
                             rBorder.createDecomposition(aContainer, getViewInformation2D(), true);
diff --git a/editeng/qa/items/borderline_test.cxx b/editeng/qa/items/borderline_test.cxx
index 58a46ffc8b01..a44c2927d4cb 100644
--- a/editeng/qa/items/borderline_test.cxx
+++ b/editeng/qa/items/borderline_test.cxx
@@ -30,14 +30,14 @@ using namespace editeng;
 
 CPPUNIT_NS_BEGIN
 
-template<> struct assertion_traits<SvxBorderStyle>
+template<> struct assertion_traits<SvxBorderLineStyle>
 {
-    static bool equal( SvxBorderStyle x, SvxBorderStyle y )
+    static bool equal( SvxBorderLineStyle x, SvxBorderLineStyle y )
     {
         return x == y;
     }
 
-    static std::string toString( SvxBorderStyle x )
+    static std::string toString( SvxBorderLineStyle x )
     {
         OStringStream ost;
         ost << static_cast<unsigned int>(x);
@@ -75,8 +75,8 @@ void BorderLineTest::testGuessWidthDouble()
 {
     // Normal double case
     SvxBorderLine line;
-    line.GuessLinesWidths( DOUBLE, TEST_WIDTH, TEST_WIDTH, TEST_WIDTH );
-    CPPUNIT_ASSERT_EQUAL( DOUBLE, line.GetBorderLineStyle() );
+    line.GuessLinesWidths( SvxBorderLineStyle::DOUBLE, TEST_WIDTH, TEST_WIDTH, TEST_WIDTH );
+    CPPUNIT_ASSERT_EQUAL( SvxBorderLineStyle::DOUBLE, line.GetBorderLineStyle() );
     CPPUNIT_ASSERT_EQUAL( TEST_WIDTH, static_cast<long>(line.GetOutWidth()) );
     CPPUNIT_ASSERT_EQUAL( TEST_WIDTH, static_cast<long>(line.GetInWidth()) );
     CPPUNIT_ASSERT_EQUAL( TEST_WIDTH, static_cast<long>(line.GetDistance()) );
@@ -86,9 +86,9 @@ void BorderLineTest::testGuessWidthDouble()
 void BorderLineTest::testGuessWidthNoMatch()
 {
     SvxBorderLine line;
-    line.GuessLinesWidths( DOUBLE,
+    line.GuessLinesWidths( SvxBorderLineStyle::DOUBLE,
             TEST_WIDTH + 1, TEST_WIDTH + 2, TEST_WIDTH + 3 );
-    CPPUNIT_ASSERT_EQUAL( DOUBLE, line.GetBorderLineStyle() );
+    CPPUNIT_ASSERT_EQUAL( SvxBorderLineStyle::DOUBLE, line.GetBorderLineStyle() );
     CPPUNIT_ASSERT_EQUAL( TEST_WIDTH+1, static_cast<long>(line.GetOutWidth()) );
     CPPUNIT_ASSERT_EQUAL( TEST_WIDTH+2, static_cast<long>(line.GetInWidth()) );
     CPPUNIT_ASSERT_EQUAL( TEST_WIDTH+3, static_cast<long>(line.GetDistance()));
@@ -98,11 +98,11 @@ void BorderLineTest::testGuessWidthNoMatch()
 void BorderLineTest::testGuessWidthThinthickSmallgap()
 {
     SvxBorderLine line;
-    line.GuessLinesWidths( DOUBLE,
+    line.GuessLinesWidths( SvxBorderLineStyle::DOUBLE,
             THINTHICKSG_OUT_WIDTH,
             THINTHICKSG_IN_WIDTH,
             THINTHICKSG_DIST_WIDTH );
-    CPPUNIT_ASSERT_EQUAL( THINTHICK_SMALLGAP, line.GetBorderLineStyle() );
+    CPPUNIT_ASSERT_EQUAL( SvxBorderLineStyle::THINTHICK_SMALLGAP, line.GetBorderLineStyle() );
     CPPUNIT_ASSERT_EQUAL( THINTHICKSG_OUT_WIDTH,
             static_cast<long>(line.GetOutWidth()) );
     CPPUNIT_ASSERT_EQUAL( THINTHICKSG_IN_WIDTH,
@@ -116,11 +116,11 @@ void BorderLineTest::testGuessWidthThinthickSmallgap()
 void BorderLineTest::testGuessWidthThinthickLargegap()
 {
     SvxBorderLine line;
-    line.GuessLinesWidths( DOUBLE,
+    line.GuessLinesWidths( SvxBorderLineStyle::DOUBLE,
             THINTHICKLG_OUT_WIDTH,
             THINTHICKLG_IN_WIDTH,
             THINTHICKLG_DIST_WIDTH );
-    CPPUNIT_ASSERT_EQUAL( THINTHICK_LARGEGAP, line.GetBorderLineStyle() );
+    CPPUNIT_ASSERT_EQUAL( SvxBorderLineStyle::THINTHICK_LARGEGAP, line.GetBorderLineStyle() );
     CPPUNIT_ASSERT_EQUAL( THINTHICKLG_OUT_WIDTH,
             static_cast<long>(line.GetOutWidth()) );
     CPPUNIT_ASSERT_EQUAL( THINTHICKLG_IN_WIDTH,
@@ -134,11 +134,11 @@ void BorderLineTest::testGuessWidthThinthickLargegap()
 void BorderLineTest::testGuessWidthNostyleDouble()
 {
     SvxBorderLine line;
-    line.GuessLinesWidths( css::table::BorderLineStyle::NONE,
+    line.GuessLinesWidths( SvxBorderLineStyle::NONE,
             THINTHICKLG_OUT_WIDTH,
             THINTHICKLG_IN_WIDTH,
             THINTHICKLG_DIST_WIDTH );
-    CPPUNIT_ASSERT_EQUAL( THINTHICK_LARGEGAP, line.GetBorderLineStyle() );
+    CPPUNIT_ASSERT_EQUAL( SvxBorderLineStyle::THINTHICK_LARGEGAP, line.GetBorderLineStyle() );
     CPPUNIT_ASSERT_EQUAL( THINTHICKLG_OUT_WIDTH,
             static_cast<long>(line.GetOutWidth()) );
     CPPUNIT_ASSERT_EQUAL( THINTHICKLG_IN_WIDTH,
@@ -152,8 +152,8 @@ void BorderLineTest::testGuessWidthNostyleDouble()
 void BorderLineTest::testGuessWidthNostyleSingle()
 {
     SvxBorderLine line;
-    line.GuessLinesWidths( css::table::BorderLineStyle::NONE, TEST_WIDTH );
-    CPPUNIT_ASSERT_EQUAL( SOLID, line.GetBorderLineStyle() );
+    line.GuessLinesWidths( SvxBorderLineStyle::NONE, TEST_WIDTH );
+    CPPUNIT_ASSERT_EQUAL( SvxBorderLineStyle::SOLID, line.GetBorderLineStyle() );
     CPPUNIT_ASSERT_EQUAL( TEST_WIDTH, line.GetWidth() );
 }
 
diff --git a/editeng/source/items/borderline.cxx b/editeng/source/items/borderline.cxx
index 41aaf8f0bbbd..6b766b4b85ab 100644
--- a/editeng/source/items/borderline.cxx
+++ b/editeng/source/items/borderline.cxx
@@ -90,7 +90,7 @@ Color SvxBorderLine::threeDMediumColor( Color aMain )
 }
 
 SvxBorderLine::SvxBorderLine( const Color *pCol, long nWidth,
-       SvxBorderStyle nStyle,
+       SvxBorderLineStyle nStyle,
        Color (*pColorOutFn)( Color ), Color (*pColorInFn)( Color ) )
 : m_nWidth( nWidth )
 , m_bMirrorWidths( false )
@@ -108,7 +108,7 @@ SvxBorderLine::SvxBorderLine( const Color *pCol, long nWidth,
 }
 
 
-SvxBorderStyle
+SvxBorderLineStyle
 ConvertBorderStyleFromWord(int const nWordLineStyle)
 {
     switch (nWordLineStyle)
@@ -119,50 +119,50 @@ ConvertBorderStyleFromWord(int const nWordLineStyle)
         case  5: // hairline
         // and the unsupported special cases which we map to a single line
         case 20:
-            return SOLID;
+            return SvxBorderLineStyle::SOLID;
         case  6:
-            return DOTTED;
+            return SvxBorderLineStyle::DOTTED;
         case  7:
-            return DASHED;
+            return SvxBorderLineStyle::DASHED;
         case 22:
-            return FINE_DASHED;
+            return SvxBorderLineStyle::FINE_DASHED;
         case 8:
-            return DASH_DOT;
+            return SvxBorderLineStyle::DASH_DOT;
         case 9:
-            return DASH_DOT_DOT;
+            return SvxBorderLineStyle::DASH_DOT_DOT;
         // then the shading beams which we represent by a double line
         case 23:
-            return DOUBLE;
+            return SvxBorderLineStyle::DOUBLE;
         // then the double lines, for which we have good matches
         case  3:
         case 10: // Don't have triple so use double
         case 21: // Don't have double wave: use double instead
-            return DOUBLE;
+            return SvxBorderLineStyle::DOUBLE;
         case 11:
-            return THINTHICK_SMALLGAP;
+            return SvxBorderLineStyle::THINTHICK_SMALLGAP;
         case 12:
         case 13: // Don't have thin thick thin, so use thick thin
-            return THICKTHIN_SMALLGAP;
+            return SvxBorderLineStyle::THICKTHIN_SMALLGAP;
         case 14:
-            return THINTHICK_MEDIUMGAP;
+            return SvxBorderLineStyle::THINTHICK_MEDIUMGAP;
         case 15:
         case 16: // Don't have thin thick thin, so use thick thin
-            return THICKTHIN_MEDIUMGAP;
+            return SvxBorderLineStyle::THICKTHIN_MEDIUMGAP;
         case 17:
-            return THINTHICK_LARGEGAP;
+            return SvxBorderLineStyle::THINTHICK_LARGEGAP;
         case 18:
         case 19: // Don't have thin thick thin, so use thick thin
-            return THICKTHIN_LARGEGAP;
+            return SvxBorderLineStyle::THICKTHIN_LARGEGAP;
         case 24:
-            return EMBOSSED;
+            return SvxBorderLineStyle::EMBOSSED;
         case 25:
-            return ENGRAVED;
+            return SvxBorderLineStyle::ENGRAVED;
         case 26:
-            return OUTSET;
+            return SvxBorderLineStyle::OUTSET;
         case 27:
-            return INSET;
+            return SvxBorderLineStyle::INSET;
         default:
-            return css::table::BorderLineStyle::NONE;
+            return SvxBorderLineStyle::NONE;
     }
 }
 
@@ -178,7 +178,7 @@ static const double OUTSET_line1 = 15.0;
 static const double INSET_line2  = 15.0;
 
 double
-ConvertBorderWidthFromWord(SvxBorderStyle const eStyle, double const i_fWidth,
+ConvertBorderWidthFromWord(SvxBorderLineStyle const eStyle, double const i_fWidth,
         int const nWordLineStyle)
 {
     // fdo#68779: at least for RTF, 0.75pt is the default if width is missing
@@ -186,7 +186,7 @@ ConvertBorderWidthFromWord(SvxBorderStyle const eStyle, double const i_fWidth,
     switch (eStyle)
     {
         // Single lines
-        case SOLID:
+        case SvxBorderLineStyle::SOLID:
             switch (nWordLineStyle)
             {
                 case 2:
@@ -198,42 +198,42 @@ ConvertBorderWidthFromWord(SvxBorderStyle const eStyle, double const i_fWidth,
             }
             break;
 
-        case DOTTED:
-        case DASHED:
-        case DASH_DOT:
-        case DASH_DOT_DOT:
+        case SvxBorderLineStyle::DOTTED:
+        case SvxBorderLineStyle::DASHED:
+        case SvxBorderLineStyle::DASH_DOT:
+        case SvxBorderLineStyle::DASH_DOT_DOT:
             return fWidth;
 
         // Display a minimum effective border width of 1pt
-        case FINE_DASHED:
+        case SvxBorderLineStyle::FINE_DASHED:
             return (fWidth > 0 && fWidth < 20) ? 20 : fWidth;
 
         // Double lines
-        case DOUBLE:
+        case SvxBorderLineStyle::DOUBLE:
             return fWidth * 3.0;
 
-        case THINTHICK_MEDIUMGAP:
-        case THICKTHIN_MEDIUMGAP:
-        case EMBOSSED:
-        case ENGRAVED:
+        case SvxBorderLineStyle::THINTHICK_MEDIUMGAP:
+        case SvxBorderLineStyle::THICKTHIN_MEDIUMGAP:
+        case SvxBorderLineStyle::EMBOSSED:
+        case SvxBorderLineStyle::ENGRAVED:
             return fWidth * 2.0;
 
-        case THINTHICK_SMALLGAP:
+        case SvxBorderLineStyle::THINTHICK_SMALLGAP:
             return fWidth + THINTHICK_SMALLGAP_line2 + THINTHICK_SMALLGAP_gap;
 
-        case THINTHICK_LARGEGAP:
+        case SvxBorderLineStyle::THINTHICK_LARGEGAP:
             return fWidth + THINTHICK_LARGEGAP_line1 + THINTHICK_LARGEGAP_line2;
 
-        case THICKTHIN_SMALLGAP:
+        case SvxBorderLineStyle::THICKTHIN_SMALLGAP:
             return fWidth + THICKTHIN_SMALLGAP_line1 + THICKTHIN_SMALLGAP_gap;
 
-        case THICKTHIN_LARGEGAP:
+        case SvxBorderLineStyle::THICKTHIN_LARGEGAP:
             return fWidth + THICKTHIN_LARGEGAP_line1 + THICKTHIN_LARGEGAP_line2;
 
-        case OUTSET:
+        case SvxBorderLineStyle::OUTSET:
             return (fWidth * 2.0) + OUTSET_line1;
 
-        case INSET:
+        case SvxBorderLineStyle::INSET:
             return (fWidth * 2.0) + INSET_line2;
 
         default:
@@ -243,49 +243,49 @@ ConvertBorderWidthFromWord(SvxBorderStyle const eStyle, double const i_fWidth,
 }
 
 double
-ConvertBorderWidthToWord(SvxBorderStyle const eStyle, double const fWidth)
+ConvertBorderWidthToWord(SvxBorderLineStyle const eStyle, double const fWidth)
 {
     switch (eStyle)
     {
         // Single lines
-        case SOLID:
-        case DOTTED:
-        case DASHED:
-        case FINE_DASHED:
-        case DASH_DOT:
-        case DASH_DOT_DOT:
+        case SvxBorderLineStyle::SOLID:
+        case SvxBorderLineStyle::DOTTED:
+        case SvxBorderLineStyle::DASHED:
+        case SvxBorderLineStyle::FINE_DASHED:
+        case SvxBorderLineStyle::DASH_DOT:
+        case SvxBorderLineStyle::DASH_DOT_DOT:
             return fWidth;
 
         // Double lines
-        case DOUBLE:
-        case DOUBLE_THIN:
+        case SvxBorderLineStyle::DOUBLE:
+        case SvxBorderLineStyle::DOUBLE_THIN:
             return fWidth / 3.0;
 
-        case THINTHICK_MEDIUMGAP:
-        case THICKTHIN_MEDIUMGAP:
-        case EMBOSSED:
-        case ENGRAVED:
+        case SvxBorderLineStyle::THINTHICK_MEDIUMGAP:
+        case SvxBorderLineStyle::THICKTHIN_MEDIUMGAP:
+        case SvxBorderLineStyle::EMBOSSED:
+        case SvxBorderLineStyle::ENGRAVED:
             return fWidth / 2.0;
 
-        case THINTHICK_SMALLGAP:
+        case SvxBorderLineStyle::THINTHICK_SMALLGAP:
             return fWidth - THINTHICK_SMALLGAP_line2 - THINTHICK_SMALLGAP_gap;
 
-        case THINTHICK_LARGEGAP:
+        case SvxBorderLineStyle::THINTHICK_LARGEGAP:
             return fWidth - THINTHICK_LARGEGAP_line1 - THINTHICK_LARGEGAP_line2;
 
-        case THICKTHIN_SMALLGAP:
+        case SvxBorderLineStyle::THICKTHIN_SMALLGAP:
             return fWidth - THICKTHIN_SMALLGAP_line1 - THICKTHIN_SMALLGAP_gap;
 
-        case THICKTHIN_LARGEGAP:
+        case SvxBorderLineStyle::THICKTHIN_LARGEGAP:
             return fWidth - THICKTHIN_LARGEGAP_line1 - THICKTHIN_LARGEGAP_line2;
 
-        case OUTSET:
+        case SvxBorderLineStyle::OUTSET:
             return (fWidth - OUTSET_line1) / 2.0;
 
-        case INSET:
+        case SvxBorderLineStyle::INSET:
             return (fWidth - INSET_line2) / 2.0;
 
-        case css::table::BorderLineStyle::NONE:
+        case SvxBorderLineStyle::NONE:
             return 0;
 
         default:
@@ -298,30 +298,30 @@ ConvertBorderWidthToWord(SvxBorderStyle const eStyle, double const fWidth)
     units handled by the resulting object are Twips and the
     BorderWidthImpl::GetLine1() corresponds to the Outer Line.
   */
-BorderWidthImpl SvxBorderLine::getWidthImpl( SvxBorderStyle nStyle )
+BorderWidthImpl SvxBorderLine::getWidthImpl( SvxBorderLineStyle nStyle )
 {
     BorderWidthImpl aImpl;
 
     switch ( nStyle )
     {
         // No line: no width
-        case css::table::BorderLineStyle::NONE:
+        case SvxBorderLineStyle::NONE:
             aImpl = BorderWidthImpl( BorderWidthImplFlags::FIXED, 0.0 );
             break;
 
         // Single lines
-        case SOLID:
-        case DOTTED:
-        case DASHED:
-        case FINE_DASHED:
-        case DASH_DOT:
-        case DASH_DOT_DOT:
+        case SvxBorderLineStyle::SOLID:
+        case SvxBorderLineStyle::DOTTED:
+        case SvxBorderLineStyle::DASHED:
+        case SvxBorderLineStyle::FINE_DASHED:
+        case SvxBorderLineStyle::DASH_DOT:
+        case SvxBorderLineStyle::DASH_DOT_DOT:
             aImpl = BorderWidthImpl( BorderWidthImplFlags::CHANGE_LINE1, 1.0 );
             break;
 
         // Double lines
 
-        case DOUBLE:
+        case SvxBorderLineStyle::DOUBLE:
             aImpl = BorderWidthImpl(
                     BorderWidthImplFlags::CHANGE_LINE1 | BorderWidthImplFlags::CHANGE_LINE2 | BorderWidthImplFlags::CHANGE_DIST,
                     // fdo#46112 fdo#38542 fdo#43249:
@@ -329,38 +329,38 @@ BorderWidthImpl SvxBorderLine::getWidthImpl( SvxBorderStyle nStyle )
                     1.0/3.0, 1.0/3.0, 1.0/3.0 );
             break;
 
-        case DOUBLE_THIN:
+        case SvxBorderLineStyle::DOUBLE_THIN:
             aImpl = BorderWidthImpl(BorderWidthImplFlags::CHANGE_DIST, 10.0, 10.0, 1.0);
             break;
 
-        case THINTHICK_SMALLGAP:
+        case SvxBorderLineStyle::THINTHICK_SMALLGAP:
             aImpl = BorderWidthImpl( BorderWidthImplFlags::CHANGE_LINE1, 1.0,
                     THINTHICK_SMALLGAP_line2, THINTHICK_SMALLGAP_gap );
             break;
 
-        case THINTHICK_MEDIUMGAP:
+        case SvxBorderLineStyle::THINTHICK_MEDIUMGAP:
             aImpl = BorderWidthImpl(
                     BorderWidthImplFlags::CHANGE_LINE1 | BorderWidthImplFlags::CHANGE_LINE2 | BorderWidthImplFlags::CHANGE_DIST,
                     0.5, 0.25, 0.25 );
             break;
 
-        case THINTHICK_LARGEGAP:
+        case SvxBorderLineStyle::THINTHICK_LARGEGAP:
             aImpl = BorderWidthImpl( BorderWidthImplFlags::CHANGE_DIST,
                     THINTHICK_LARGEGAP_line1, THINTHICK_LARGEGAP_line2, 1.0 );
             break;
 
-        case THICKTHIN_SMALLGAP:
+        case SvxBorderLineStyle::THICKTHIN_SMALLGAP:
             aImpl = BorderWidthImpl( BorderWidthImplFlags::CHANGE_LINE2, THICKTHIN_SMALLGAP_line1,
                     1.0, THICKTHIN_SMALLGAP_gap );
             break;
 
-        case THICKTHIN_MEDIUMGAP:
+        case SvxBorderLineStyle::THICKTHIN_MEDIUMGAP:
             aImpl = BorderWidthImpl(
                     BorderWidthImplFlags::CHANGE_LINE1 | BorderWidthImplFlags::CHANGE_LINE2 | BorderWidthImplFlags::CHANGE_DIST,
                     0.25, 0.5, 0.25 );
             break;
 
-        case THICKTHIN_LARGEGAP:
+        case SvxBorderLineStyle::THICKTHIN_LARGEGAP:
             aImpl = BorderWidthImpl( BorderWidthImplFlags::CHANGE_DIST, THICKTHIN_LARGEGAP_line1,
                     THICKTHIN_LARGEGAP_line2, 1.0 );
             break;
@@ -371,8 +371,8 @@ BorderWidthImpl SvxBorderLine::getWidthImpl( SvxBorderStyle nStyle )
          *      0.75pt up to 3pt and then 3pt
          */
 
-        case EMBOSSED:
-        case ENGRAVED:
+        case SvxBorderLineStyle::EMBOSSED:
+        case SvxBorderLineStyle::ENGRAVED:
             aImpl = BorderWidthImpl(
                     BorderWidthImplFlags::CHANGE_LINE1 | BorderWidthImplFlags::CHANGE_LINE2 | BorderWidthImplFlags::CHANGE_DIST,
                     0.25, 0.25, 0.5 );
@@ -383,13 +383,13 @@ BorderWidthImpl SvxBorderLine::getWidthImpl( SvxBorderStyle nStyle )
          * Word compat: the gap width should be measured relatively to the biggest width for the
          *      row or column.
          */
-        case OUTSET:
+        case SvxBorderLineStyle::OUTSET:
             aImpl = BorderWidthImpl(
                     BorderWidthImplFlags::CHANGE_LINE2 | BorderWidthImplFlags::CHANGE_DIST,
                     OUTSET_line1, 0.5, 0.5 );
             break;
 
-        case INSET:
+        case SvxBorderLineStyle::INSET:
             aImpl = BorderWidthImpl(
                     BorderWidthImplFlags::CHANGE_LINE1 | BorderWidthImplFlags::CHANGE_DIST,
                     0.5, INSET_line2, 0.5 );
@@ -429,32 +429,32 @@ void SvxBorderLine::ScaleMetrics( long nMult, long nDiv )
     m_nDiv = nDiv;
 }
 
-void SvxBorderLine::GuessLinesWidths( SvxBorderStyle nStyle, sal_uInt16 nOut, sal_uInt16 nIn, sal_uInt16 nDist )
+void SvxBorderLine::GuessLinesWidths( SvxBorderLineStyle nStyle, sal_uInt16 nOut, sal_uInt16 nIn, sal_uInt16 nDist )
 {
-    if (css::table::BorderLineStyle::NONE == nStyle)
+    if (SvxBorderLineStyle::NONE == nStyle)
     {
-        nStyle = SOLID;
+        nStyle = SvxBorderLineStyle::SOLID;
         if ( nOut > 0 && nIn > 0 )
-            nStyle = DOUBLE;
+            nStyle = SvxBorderLineStyle::DOUBLE;
     }
 
-    if ( nStyle == DOUBLE )
+    if ( nStyle == SvxBorderLineStyle::DOUBLE )
     {
-        static const SvxBorderStyle aDoubleStyles[] =
+        static const SvxBorderLineStyle aDoubleStyles[] =
         {
-            DOUBLE,
-            DOUBLE_THIN,
-            THINTHICK_SMALLGAP,
-            THINTHICK_MEDIUMGAP,
-            THINTHICK_LARGEGAP,
-            THICKTHIN_SMALLGAP,
-            THICKTHIN_MEDIUMGAP,
-            THICKTHIN_LARGEGAP
+            SvxBorderLineStyle::DOUBLE,
+            SvxBorderLineStyle::DOUBLE_THIN,
+            SvxBorderLineStyle::THINTHICK_SMALLGAP,
+            SvxBorderLineStyle::THINTHICK_MEDIUMGAP,
+            SvxBorderLineStyle::THINTHICK_LARGEGAP,
+            SvxBorderLineStyle::THICKTHIN_SMALLGAP,
+            SvxBorderLineStyle::THICKTHIN_MEDIUMGAP,
+            SvxBorderLineStyle::THICKTHIN_LARGEGAP
         };
 
         static size_t const len = SAL_N_ELEMENTS(aDoubleStyles);
         long nWidth = 0;
-        SvxBorderStyle nTestStyle(css::table::BorderLineStyle::NONE);
+        SvxBorderLineStyle nTestStyle(SvxBorderLineStyle::NONE);
         for (size_t i = 0; i < len && nWidth == 0; ++i)
         {
             nTestStyle = aDoubleStyles[i];
@@ -494,12 +494,12 @@ void SvxBorderLine::GuessLinesWidths( SvxBorderStyle nStyle, sal_uInt16 nOut, sa
             // and returns a 0 width.
             switch (nStyle)
             {
-                case SOLID:
-                case DOTTED:
-                case DASHED:
-                case FINE_DASHED:
-                case DASH_DOT:
-                case DASH_DOT_DOT:
+                case SvxBorderLineStyle::SOLID:
+                case SvxBorderLineStyle::DOTTED:
+                case SvxBorderLineStyle::DASHED:
+                case SvxBorderLineStyle::FINE_DASHED:
+                case SvxBorderLineStyle::DASH_DOT:
+                case SvxBorderLineStyle::DASH_DOT_DOT:
                     std::swap( nOut, nIn);
                     break;
                 default:
@@ -545,32 +545,32 @@ bool SvxBorderLine::operator==( const SvxBorderLine& rCmp ) const
              ( m_pColorGapFn == rCmp.m_pColorGapFn ) );
 }
 
-void SvxBorderLine::SetBorderLineStyle( SvxBorderStyle nNew )
+void SvxBorderLine::SetBorderLineStyle( SvxBorderLineStyle nNew )
 {
     m_nStyle = nNew;
     m_aWidthImpl = getWidthImpl( m_nStyle );
 
     switch ( nNew )
     {
-        case EMBOSSED:
+        case SvxBorderLineStyle::EMBOSSED:
             m_pColorOutFn = threeDLightColor;
             m_pColorInFn  = threeDDarkColor;
             m_pColorGapFn = threeDMediumColor;
             m_bUseLeftTop = true;
             break;
-        case ENGRAVED:
+        case SvxBorderLineStyle::ENGRAVED:
             m_pColorOutFn = threeDDarkColor;
             m_pColorInFn  = threeDLightColor;
             m_pColorGapFn = threeDMediumColor;
             m_bUseLeftTop = true;
             break;
-        case OUTSET:
+        case SvxBorderLineStyle::OUTSET:
             m_pColorOutFn = lightColor;
             m_pColorInFn  = darkColor;
             m_bUseLeftTop = true;
             m_pColorGapFn = nullptr;
             break;
-        case INSET:
+        case SvxBorderLineStyle::INSET:
             m_pColorOutFn = darkColor;
             m_pColorInFn  = lightColor;
             m_bUseLeftTop = true;
@@ -660,9 +660,9 @@ OUString SvxBorderLine::GetValueString(MapUnit eSrcUnit,
     };
     OUString aStr = "(" + ::GetColorString( aColor ) + OUString(cpDelim);
 
-    if ( m_nStyle < int(SAL_N_ELEMENTS(aStyleIds)) )
+    if ( (int)m_nStyle < int(SAL_N_ELEMENTS(aStyleIds)) )
     {
-        sal_uInt16 nResId = aStyleIds[m_nStyle];
+        sal_uInt16 nResId = aStyleIds[(int)m_nStyle];
         aStr += EE_RESSTR(nResId);
     }
     else
diff --git a/editeng/source/items/frmitems.cxx b/editeng/source/items/frmitems.cxx
index 88d319099f65..9dd99b8792e5 100644
--- a/editeng/source/items/frmitems.cxx
+++ b/editeng/source/items/frmitems.cxx
@@ -111,7 +111,7 @@ namespace
               .WriteUInt16( l.GetDistance() );
 
         if (version >= BORDER_LINE_WITH_STYLE_VERSION)
-               stream.WriteUInt16( l.GetBorderLineStyle() );
+               stream.WriteUInt16( (sal_uInt16)l.GetBorderLineStyle() );
 
         return stream;
     }
@@ -129,7 +129,7 @@ namespace
             stream.ReadUInt16( nStyle );
 
         SvxBorderLine border(&aColor);
-        border.GuessLinesWidths(nStyle, nOutline, nInline, nDistance);
+        border.GuessLinesWidths((SvxBorderLineStyle)nStyle, nOutline, nInline, nDistance);
         return border;
     }
 
@@ -1671,7 +1671,7 @@ table::BorderLine2 SvxBoxItem::SvxLineToLine(const SvxBorderLine* pLine, bool bC
         aLine.InnerLineWidth = sal_uInt16( bConvert ? convertTwipToMm100(pLine->GetInWidth() ): pLine->GetInWidth() );
         aLine.OuterLineWidth = sal_uInt16( bConvert ? convertTwipToMm100(pLine->GetOutWidth()): pLine->GetOutWidth() );
         aLine.LineDistance   = sal_uInt16( bConvert ? convertTwipToMm100(pLine->GetDistance()): pLine->GetDistance() );
-        aLine.LineStyle      = pLine->GetBorderLineStyle();
+        aLine.LineStyle      = sal_Int16(pLine->GetBorderLineStyle());
         aLine.LineWidth      = sal_uInt32( bConvert ? convertTwipToMm100( pLine->GetWidth( ) ) : pLine->GetWidth( ) );
     }
     else
@@ -1786,10 +1786,10 @@ bool SvxBoxItem::LineToSvxLine(const css::table::BorderLine& rLine, SvxBorderLin
 bool
 SvxBoxItem::LineToSvxLine(const css::table::BorderLine2& rLine, SvxBorderLine& rSvxLine, bool bConvert)
 {
-    SvxBorderStyle const nStyle =
+    SvxBorderLineStyle const nStyle =
         (rLine.LineStyle < 0 || BORDER_LINE_STYLE_MAX < rLine.LineStyle)
-        ? SOLID     // default
-        : rLine.LineStyle;
+        ? SvxBorderLineStyle::SOLID     // default
+        : (SvxBorderLineStyle)rLine.LineStyle;
 
     rSvxLine.SetBorderLineStyle( nStyle );
 
@@ -1799,7 +1799,7 @@ SvxBoxItem::LineToSvxLine(const css::table::BorderLine2& rLine, SvxBorderLine& r
         rSvxLine.SetWidth( bConvert? convertMm100ToTwip( rLine.LineWidth ) : rLine.LineWidth );
         // fdo#46112: double does not necessarily mean symmetric
         // for backwards compatibility
-        bGuessWidth = ((DOUBLE == nStyle || DOUBLE_THIN == nStyle)) &&
+        bGuessWidth = ((SvxBorderLineStyle::DOUBLE == nStyle || SvxBorderLineStyle::DOUBLE_THIN == nStyle)) &&
             (rLine.InnerLineWidth > 0) && (rLine.OuterLineWidth > 0);
     }
 
@@ -1924,17 +1924,17 @@ bool SvxBoxItem::PutValue( const uno::Any& rVal, sal_uInt8 nMemberId )
             {
                 drawing::LineStyle eDrawingStyle;
                 rVal >>= eDrawingStyle;
-                editeng::SvxBorderStyle eBorderStyle = css::table::BorderLineStyle::NONE;
+                SvxBorderLineStyle eBorderStyle = SvxBorderLineStyle::NONE;
                 switch ( eDrawingStyle )
                 {
                     default:
                     case drawing::LineStyle_NONE:
                         break;
                     case drawing::LineStyle_SOLID:
-                        eBorderStyle = SOLID;
+                        eBorderStyle = SvxBorderLineStyle::SOLID;
                         break;
                     case drawing::LineStyle_DASH:
-                        eBorderStyle = DASHED;
+                        eBorderStyle = SvxBorderLineStyle::DASHED;
                         break;
                 }
 
@@ -2669,7 +2669,7 @@ SfxPoolItem* SvxBoxInfoItem::Create( SvStream& rStrm, sal_uInt16 ) const
         Color aColor;
         ReadColor( rStrm, aColor ).ReadInt16( nOutline ).ReadInt16( nInline ).ReadInt16( nDistance );
         SvxBorderLine aBorder( &aColor );
-        aBorder.GuessLinesWidths(css::table::BorderLineStyle::NONE, nOutline, nInline, nDistance);
+        aBorder.GuessLinesWidths(SvxBorderLineStyle::NONE, nOutline, nInline, nDistance);
 
         switch( cLine )
         {
@@ -3166,7 +3166,7 @@ bool SvxLineItem::PutValue( const uno::Any& rVal, sal_uInt8 nMemId )
         {
             case MID_FG_COLOR:      pLine->SetColor( Color(nVal) ); break;
             case MID_LINE_STYLE:
-                pLine->SetBorderLineStyle(static_cast<SvxBorderStyle>(nVal));
+                pLine->SetBorderLineStyle(static_cast<SvxBorderLineStyle>(nVal));
             break;
             default:
                 OSL_FAIL( "Wrong MemberId" );
@@ -3237,7 +3237,7 @@ SfxPoolItem* SvxLineItem::Create( SvStream& rStrm, sal_uInt16 ) const
     if( nOutline )
     {
         SvxBorderLine aLine( &aColor );
-        aLine.GuessLinesWidths(css::table::BorderLineStyle::NONE, nOutline, nInline, nDistance);
+        aLine.GuessLinesWidths(SvxBorderLineStyle::NONE, nOutline, nInline, nDistance);
         _pLine->SetLine( &aLine );
     }
     return _pLine;
diff --git a/editeng/source/rtf/rtfitem.cxx b/editeng/source/rtf/rtfitem.cxx
index f0d9f32ced68..584fc1ddcbdc 100644
--- a/editeng/source/rtf/rtfitem.cxx
+++ b/editeng/source/rtf/rtfitem.cxx
@@ -1453,49 +1453,49 @@ void SvxRTFParser::ReadBorderAttr( int nToken, SfxItemSet& rSet,
             }
 
         case RTF_BRDRDOT:       // dotted border
-            aBrd.SetBorderLineStyle(table::BorderLineStyle::DOTTED);
+            aBrd.SetBorderLineStyle(SvxBorderLineStyle::DOTTED);
             break;
         case RTF_BRDRDASH:      // dashed border
-            aBrd.SetBorderLineStyle(table::BorderLineStyle::DASHED);
+            aBrd.SetBorderLineStyle(SvxBorderLineStyle::DASHED);
             break;
         case RTF_BRDRHAIR:      // hairline border
             {
-                aBrd.SetBorderLineStyle( table::BorderLineStyle::SOLID);
+                aBrd.SetBorderLineStyle( SvxBorderLineStyle::SOLID);
                 aBrd.SetWidth( DEF_LINE_WIDTH_0 );
             }
             break;
         case RTF_BRDRDB:        // Double border
-            aBrd.SetBorderLineStyle(table::BorderLineStyle::DOUBLE);
+            aBrd.SetBorderLineStyle(SvxBorderLineStyle::DOUBLE);
             break;
         case RTF_BRDRINSET:     // inset border
-            aBrd.SetBorderLineStyle(table::BorderLineStyle::INSET);
+            aBrd.SetBorderLineStyle(SvxBorderLineStyle::INSET);
             break;
         case RTF_BRDROUTSET:    // outset border
-            aBrd.SetBorderLineStyle(table::BorderLineStyle::OUTSET);
+            aBrd.SetBorderLineStyle(SvxBorderLineStyle::OUTSET);
             break;
         case RTF_BRDRTNTHSG:    // ThinThick Small gap
-            aBrd.SetBorderLineStyle(table::BorderLineStyle::THINTHICK_SMALLGAP);
+            aBrd.SetBorderLineStyle(SvxBorderLineStyle::THINTHICK_SMALLGAP);
             break;
         case RTF_BRDRTNTHMG:    // ThinThick Medium gap
-            aBrd.SetBorderLineStyle(table::BorderLineStyle::THINTHICK_MEDIUMGAP);
+            aBrd.SetBorderLineStyle(SvxBorderLineStyle::THINTHICK_MEDIUMGAP);
             break;
         case RTF_BRDRTNTHLG:    // ThinThick Large gap
-            aBrd.SetBorderLineStyle(table::BorderLineStyle::THINTHICK_LARGEGAP);
+            aBrd.SetBorderLineStyle(SvxBorderLineStyle::THINTHICK_LARGEGAP);
             break;
         case RTF_BRDRTHTNSG:    // ThickThin Small gap
-            aBrd.SetBorderLineStyle(table::BorderLineStyle::THICKTHIN_SMALLGAP);
+            aBrd.SetBorderLineStyle(SvxBorderLineStyle::THICKTHIN_SMALLGAP);
             break;
         case RTF_BRDRTHTNMG:    // ThickThin Medium gap
-            aBrd.SetBorderLineStyle(table::BorderLineStyle::THICKTHIN_MEDIUMGAP);
+            aBrd.SetBorderLineStyle(SvxBorderLineStyle::THICKTHIN_MEDIUMGAP);
             break;
         case RTF_BRDRTHTNLG:    // ThickThin Large gap
-            aBrd.SetBorderLineStyle(table::BorderLineStyle::THICKTHIN_LARGEGAP);
+            aBrd.SetBorderLineStyle(SvxBorderLineStyle::THICKTHIN_LARGEGAP);
             break;
         case RTF_BRDREMBOSS:    // Embossed border
-            aBrd.SetBorderLineStyle(table::BorderLineStyle::EMBOSSED);
+            aBrd.SetBorderLineStyle(SvxBorderLineStyle::EMBOSSED);
             break;
         case RTF_BRDRENGRAVE:   // Engraved border
-            aBrd.SetBorderLineStyle(table::BorderLineStyle::ENGRAVED);
+            aBrd.SetBorderLineStyle(SvxBorderLineStyle::ENGRAVED);
             break;
 
         case RTF_BRDRS:         // single thickness border
diff --git a/include/drawinglayer/primitive2d/borderlineprimitive2d.hxx b/include/drawinglayer/primitive2d/borderlineprimitive2d.hxx
index bd10add60aa9..4ac0a1045585 100644
--- a/include/drawinglayer/primitive2d/borderlineprimitive2d.hxx
+++ b/include/drawinglayer/primitive2d/borderlineprimitive2d.hxx
@@ -27,8 +27,7 @@
 #include <basegfx/matrix/b2dhommatrix.hxx>
 #include <basegfx/polygon/b2dpolypolygon.hxx>
 
-#include <com/sun/star/table/BorderLineStyle.hpp>
-
+enum class SvxBorderLineStyle : sal_Int16;
 
 namespace drawinglayer
 {
@@ -66,7 +65,7 @@ namespace drawinglayer
             basegfx::BColor                                 maRGBColorGap;
             bool                                            mbHasGapColor;
 
-            short                                           mnStyle;
+            SvxBorderLineStyle                              mnStyle;
 
             double                                          mfPatternScale;
 
@@ -107,7 +106,7 @@ namespace drawinglayer
                 const basegfx::BColor& rRGBColorLeft,
                 const basegfx::BColor& rRGBColorGap,
                 bool bHasGapColor,
-                const short nStyle,
+                SvxBorderLineStyle nStyle,
                 double fPatternScale = 1.0 );
 
             /// data read access
@@ -124,7 +123,7 @@ namespace drawinglayer
             const basegfx::BColor& getRGBColorLeft () const { return maRGBColorLeft; }
             const basegfx::BColor& getRGBColorGap () const { return maRGBColorGap; }
             bool hasGapColor( ) const { return mbHasGapColor; }
-            short getStyle () const { return mnStyle; }
+            SvxBorderLineStyle getStyle () const { return mnStyle; }
             double getPatternScale() const { return mfPatternScale; }
             /// Same as create2DDecomposition(), but can do pixel correction if requested.
             void createDecomposition(Primitive2DContainer& rContainer, const geometry::ViewInformation2D& rViewInformation, bool bPixelCorrection) const;
diff --git a/include/drawinglayer/primitive2d/clippedborderlineprimitive2d.hxx b/include/drawinglayer/primitive2d/clippedborderlineprimitive2d.hxx
index 5b4a1414f747..3fe2813be9a9 100644
--- a/include/drawinglayer/primitive2d/clippedborderlineprimitive2d.hxx
+++ b/include/drawinglayer/primitive2d/clippedborderlineprimitive2d.hxx
@@ -46,7 +46,7 @@ namespace drawinglayer
                 const basegfx::BColor& rRGBColorLeft,
                 const basegfx::BColor& rRGBColorGap,
                 bool bHasGapColor,
-                const short nStyle,
+                SvxBorderLineStyle nStyle,
                 double fPatternScale );
 
             /// compare operator
diff --git a/include/editeng/borderline.hxx b/include/editeng/borderline.hxx
index 98e2245b0729..fd356b489546 100644
--- a/include/editeng/borderline.hxx
+++ b/include/editeng/borderline.hxx
@@ -37,118 +37,206 @@
 #define DEF_LINE_WIDTH_5        10
 
 
-namespace editeng {
-
-    // values from css::table::BorderLineStyle
-    typedef sal_Int16 SvxBorderStyle;
-
-    // convert border style between Word formats and LO
-    SvxBorderStyle EDITENG_DLLPUBLIC ConvertBorderStyleFromWord(int);
-    /// convert border width in twips between Word formats and LO
-    double EDITENG_DLLPUBLIC ConvertBorderWidthToWord(SvxBorderStyle, double);
-    double EDITENG_DLLPUBLIC ConvertBorderWidthFromWord(SvxBorderStyle,
-            double, int);
-
-    class EDITENG_DLLPUBLIC SvxBorderLine
-    {
-    protected:
-        Color  aColor;
-
-        long m_nWidth;
-        bool m_bMirrorWidths;
-        BorderWidthImpl m_aWidthImpl;
-        long m_nMult;
-        long m_nDiv;
-
-        SvxBorderStyle   m_nStyle;
-
-        bool             m_bUseLeftTop;
-        Color            (*m_pColorOutFn)( Color );
-        Color            (*m_pColorInFn)( Color );
-        Color            (*m_pColorGapFn)( Color );
-
-    public:
-        SvxBorderLine( const Color *pCol = nullptr,
-                long nWidth = 0,
-                SvxBorderStyle nStyle = css::table::BorderLineStyle::SOLID,
-                Color (*pColorOutFn)( Color ) = &darkColor,
-                Color (*pColorInFn)( Color ) = &darkColor );
-        SvxBorderLine( const SvxBorderLine& r );
-
-        SvxBorderLine& operator=( const SvxBorderLine& r );
-
-        const Color&    GetColor() const { return aColor; }
-        Color           GetColorOut( bool bLeftOrTop = true ) const;
-        Color           GetColorIn( bool bLeftOrTop = true ) const;
-        bool            HasGapColor() const { return m_pColorGapFn != nullptr; }
-        Color           GetColorGap() const;
-
-        void SetWidth( long nWidth );
-        /** Guess the style and width from the three lines widths values.
-
-            When the value of nStyle is SvxBorderLine::DOUBLE, the style set will be guessed
-            using the three values to match the best possible style among the following:
-                - SvxBorderLine::DOUBLE
-                - SvxBorderLine::THINTHICK_SMALLGAP
-                - SvxBorderLine::THINTHICK_MEDIUMGAP
-                - SvxBorderLine::THINTHICK_LARGEGAP
-                - SvxBorderLine::THICKTHIN_SMALLGAP
-                - SvxBorderLine::THICKTHIN_MEDIUMGAP
-                - SvxBorderLine::THICKTHIN_LARGEGAP
-
-            If no styles matches the width, then the width is set to 0.
-
-            There is one known case that could fit several styles: \a nIn = \a nDist = 0.75 pt,
-            \a nOut = 1.5 pt. This case fits SvxBorderLine::THINTHICK_SMALLGAP and
-            SvxBorderLine::THINTHICK_MEDIUMGAP with a 1.5 pt width and
-            SvxBorderLine::THINTHICK_LARGEGAP with a 0.75 pt width. The same case happens
-            also for thick-thin styles.
-
-            \param nStyle the border style used to guess the width.
-            \param nIn the width of the inner line in 1th pt
-            \param nOut the width of the outer line in 1th pt
-            \param nDist the width of the gap between the lines in 1th pt
-         */
-        void            GuessLinesWidths( SvxBorderStyle nStyle, sal_uInt16 nOut, sal_uInt16 nIn = 0, sal_uInt16 nDist = 0 );
-
-        // TODO Hacky method to mirror lines in only a few cases
-        void            SetMirrorWidths() { m_bMirrorWidths = true; }
-        long            GetWidth( ) const { return m_nWidth; }
-        sal_uInt16      GetOutWidth() const;
-        sal_uInt16      GetInWidth() const;
-        sal_uInt16      GetDistance() const;
-
-        SvxBorderStyle  GetBorderLineStyle() const { return m_nStyle; }
-
-        void            SetColor( const Color &rColor ) { aColor = rColor; }
-        void            SetBorderLineStyle( SvxBorderStyle nNew );
-        void            ScaleMetrics( long nMult, long nDiv );
-
-        bool            operator==( const SvxBorderLine &rCmp ) const;
-
-        OUString        GetValueString( MapUnit eSrcUnit, MapUnit eDestUnit,
-                                        const IntlWrapper* pIntl,
-                                        bool bMetricStr = false ) const;
-
-        bool            HasPriority( const SvxBorderLine& rOtherLine ) const;
-
-        bool isEmpty() const {
-            return m_aWidthImpl.IsEmpty()
-                || m_nStyle == css::table::BorderLineStyle::NONE
-                || m_nWidth == 0;
-        }
-        bool isDouble() const { return m_aWidthImpl.IsDouble(); }
-        sal_uInt16 GetScaledWidth() const { return GetOutWidth() + GetInWidth() + GetDistance(); }
-
-        static Color darkColor( Color aMain );
-        static Color lightColor( Color aMain );
-
-        static Color threeDLightColor( Color aMain );
-        static Color threeDMediumColor( Color aMain );
-        static Color threeDDarkColor( Color aMain );
-
-        static BorderWidthImpl getWidthImpl( SvxBorderStyle nStyle );
-    };
+// Abstracts over values from css::table::BorderLineStyle
+enum class SvxBorderLineStyle : sal_Int16
+{
+    /** No border line
+     */
+    NONE = css::table::BorderLineStyle::NONE,
+
+    /** Solid border line.
+     */
+    SOLID = css::table::BorderLineStyle::SOLID,
+
+    /** Dotted border line.
+     */
+    DOTTED = css::table::BorderLineStyle::DOTTED,
+
+    /** Dashed border line.
+     */
+    DASHED = css::table::BorderLineStyle::DASHED,
+
+    /** Double border line. Widths of the lines and the gap are all equal,
+        and vary equally with the total width.
+     */
+    DOUBLE = css::table::BorderLineStyle::DOUBLE,
+
+    /** Double border line with a thin line outside and a thick line
+        inside separated by a small gap.
+     */
+    THINTHICK_SMALLGAP = css::table::BorderLineStyle::THINTHICK_SMALLGAP,
+
+    /** Double border line with a thin line outside and a thick line
+        inside separated by a medium gap.
+     */
+    THINTHICK_MEDIUMGAP = css::table::BorderLineStyle::THINTHICK_MEDIUMGAP,
+
+    /** Double border line with a thin line outside and a thick line
+        inside separated by a large gap.
+     */
+    THINTHICK_LARGEGAP = css::table::BorderLineStyle::THINTHICK_LARGEGAP,
+
+    /** Double border line with a thick line outside and a thin line
+        inside separated by a small gap.
+     */
+    THICKTHIN_SMALLGAP = css::table::BorderLineStyle::THICKTHIN_SMALLGAP,
+
+    /** Double border line with a thick line outside and a thin line
+        inside separated by a medium gap.
+     */
+    THICKTHIN_MEDIUMGAP = css::table::BorderLineStyle::THICKTHIN_MEDIUMGAP,
+
+    /** Double border line with a thick line outside and a thin line
+        inside separated by a large gap.
+     */
+    THICKTHIN_LARGEGAP = css::table::BorderLineStyle::THICKTHIN_LARGEGAP,
+
+    /** 3D embossed border line.
+     */
+    EMBOSSED = css::table::BorderLineStyle::EMBOSSED,
+
+    /** 3D engraved border line.
+     */
+    ENGRAVED = css::table::BorderLineStyle::ENGRAVED,
+
+    /** Outset border line.
+     */
+    OUTSET = css::table::BorderLineStyle::OUTSET,
+
+    /** Inset border line.
+     */
+    INSET = css::table::BorderLineStyle::INSET,
+
+    /** Finely dashed border line.
+     */
+    FINE_DASHED = css::table::BorderLineStyle::FINE_DASHED,
+
+    /** Double border line consisting of two fixed thin lines separated by a
+        variable gap.
+     */
+    DOUBLE_THIN = css::table::BorderLineStyle::DOUBLE_THIN,
+
+    /** Line consisting of a repetition of one dash and one dot. */
+    DASH_DOT = css::table::BorderLineStyle::DASH_DOT,
+
+    /** Line consisting of a repetition of one dash and 2 dots. */
+    DASH_DOT_DOT = css::table::BorderLineStyle::DASH_DOT_DOT,
+
+    /** Maximum valid border line style value.
+     */
+    BORDER_LINE_STYLE_MAX = css::table::BorderLineStyle::BORDER_LINE_STYLE_MAX,
+};
+
+namespace editeng
+{
+
+// convert border style between Word formats and LO
+SvxBorderLineStyle EDITENG_DLLPUBLIC ConvertBorderStyleFromWord(int);
+/// convert border width in twips between Word formats and LO
+double EDITENG_DLLPUBLIC ConvertBorderWidthToWord(SvxBorderLineStyle, double);
+double EDITENG_DLLPUBLIC ConvertBorderWidthFromWord(SvxBorderLineStyle,
+        double, int);
+
+class EDITENG_DLLPUBLIC SvxBorderLine
+{
+protected:
+    Color  aColor;
+
+    long m_nWidth;
+    bool m_bMirrorWidths;
+    BorderWidthImpl m_aWidthImpl;
+    long m_nMult;
+    long m_nDiv;
+
+    SvxBorderLineStyle   m_nStyle;
+
+    bool             m_bUseLeftTop;
+    Color            (*m_pColorOutFn)( Color );
+    Color            (*m_pColorInFn)( Color );
+    Color            (*m_pColorGapFn)( Color );
+
+public:
+    SvxBorderLine( const Color *pCol = nullptr,
+            long nWidth = 0,
+            SvxBorderLineStyle nStyle = SvxBorderLineStyle::SOLID,
+            Color (*pColorOutFn)( Color ) = &darkColor,
+            Color (*pColorInFn)( Color ) = &darkColor );
+    SvxBorderLine( const SvxBorderLine& r );
+
+    SvxBorderLine& operator=( const SvxBorderLine& r );
+
+    const Color&    GetColor() const { return aColor; }
+    Color           GetColorOut( bool bLeftOrTop = true ) const;
+    Color           GetColorIn( bool bLeftOrTop = true ) const;
+    bool            HasGapColor() const { return m_pColorGapFn != nullptr; }
+    Color           GetColorGap() const;
+
+    void SetWidth( long nWidth );
+    /** Guess the style and width from the three lines widths values.
+
+        When the value of nStyle is SvxBorderLine::DOUBLE, the style set will be guessed
+        using the three values to match the best possible style among the following:
+            - SvxBorderLine::DOUBLE
+            - SvxBorderLine::THINTHICK_SMALLGAP
+            - SvxBorderLine::THINTHICK_MEDIUMGAP
+            - SvxBorderLine::THINTHICK_LARGEGAP
+            - SvxBorderLine::THICKTHIN_SMALLGAP
+            - SvxBorderLine::THICKTHIN_MEDIUMGAP
+            - SvxBorderLine::THICKTHIN_LARGEGAP
+
+        If no styles matches the width, then the width is set to 0.
+
+        There is one known case that could fit several styles: \a nIn = \a nDist = 0.75 pt,
+        \a nOut = 1.5 pt. This case fits SvxBorderLine::THINTHICK_SMALLGAP and
+        SvxBorderLine::THINTHICK_MEDIUMGAP with a 1.5 pt width and
+        SvxBorderLine::THINTHICK_LARGEGAP with a 0.75 pt width. The same case happens
+        also for thick-thin styles.
+
+        \param nStyle the border style used to guess the width.
+        \param nIn the width of the inner line in 1th pt
+        \param nOut the width of the outer line in 1th pt
+        \param nDist the width of the gap between the lines in 1th pt
+     */
+    void            GuessLinesWidths( SvxBorderLineStyle nStyle, sal_uInt16 nOut, sal_uInt16 nIn = 0, sal_uInt16 nDist = 0 );
+
+    // TODO Hacky method to mirror lines in only a few cases
+    void            SetMirrorWidths() { m_bMirrorWidths = true; }
+    long            GetWidth( ) const { return m_nWidth; }
+    sal_uInt16      GetOutWidth() const;
+    sal_uInt16      GetInWidth() const;
+    sal_uInt16      GetDistance() const;
+
+    SvxBorderLineStyle  GetBorderLineStyle() const { return m_nStyle; }
+
+    void            SetColor( const Color &rColor ) { aColor = rColor; }
+    void            SetBorderLineStyle( SvxBorderLineStyle nNew );
+    void            ScaleMetrics( long nMult, long nDiv );
+
+    bool            operator==( const SvxBorderLine &rCmp ) const;
+
+    OUString        GetValueString( MapUnit eSrcUnit, MapUnit eDestUnit,
+                                    const IntlWrapper* pIntl,
+                                    bool bMetricStr = false ) const;
+
+    bool            HasPriority( const SvxBorderLine& rOtherLine ) const;
+
+    bool isEmpty() const {
+        return m_aWidthImpl.IsEmpty()
+            || m_nStyle == SvxBorderLineStyle::NONE
+            || m_nWidth == 0;
+    }
+    bool isDouble() const { return m_aWidthImpl.IsDouble(); }
+    sal_uInt16 GetScaledWidth() const { return GetOutWidth() + GetInWidth() + GetDistance(); }
+
+    static Color darkColor( Color aMain );
+    static Color lightColor( Color aMain );
+
+    static Color threeDLightColor( Color aMain );
+    static Color threeDMediumColor( Color aMain );
+    static Color threeDDarkColor( Color aMain );
+
+    static BorderWidthImpl getWidthImpl( SvxBorderLineStyle nStyle );
+};
 
 EDITENG_DLLPUBLIC bool operator!=( const SvxBorderLine& rLeft, const SvxBorderLine& rRight );
 
@@ -156,4 +244,3 @@ EDITENG_DLLPUBLIC bool operator!=( const SvxBorderLine& rLeft, const SvxBorderLi
 
 #endif
 
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/include/svtools/borderhelper.hxx b/include/svtools/borderhelper.hxx
index 5e4328dfd147..43d757be80b0 100644
--- a/include/svtools/borderhelper.hxx
+++ b/include/svtools/borderhelper.hxx
@@ -27,18 +27,20 @@
 #include <basegfx/point/b2dpoint.hxx>
 #include <vcl/outdev.hxx>
 
+enum class SvxBorderLineStyle : sal_Int16;
+
 namespace svtools {
 
-SVT_DLLPUBLIC std::vector<double> GetLineDashing( sal_uInt16 nDashing, double fScale );
+SVT_DLLPUBLIC std::vector<double> GetLineDashing( SvxBorderLineStyle nDashing, double fScale );
 
 SVT_DLLPUBLIC basegfx::B2DPolyPolygon ApplyLineDashing(
-    const basegfx::B2DPolygon& rPolygon, sal_uInt16 nDashing, double fScale );
+    const basegfx::B2DPolygon& rPolygon, SvxBorderLineStyle nDashing, double fScale );
 
 SVT_DLLPUBLIC void DrawLine( OutputDevice& rDev, const basegfx::B2DPoint& rBeg,
-        const basegfx::B2DPoint& rEnd, sal_uInt32 nWidth, sal_uInt16 nDashing );
+        const basegfx::B2DPoint& rEnd, sal_uInt32 nWidth, SvxBorderLineStyle nDashing );
 
 SVT_DLLPUBLIC void DrawLine( OutputDevice& rDev, const Point& rBeg,
-        const Point& rEnd, sal_uInt32 nWidth, sal_uInt16 nDashing );
+        const Point& rEnd, sal_uInt32 nWidth, SvxBorderLineStyle nDashing );
 }
 
 #endif
diff --git a/include/svtools/ctrlbox.hxx b/include/svtools/ctrlbox.hxx
index b226137f9da3..b2179d4c5b65 100644
--- a/include/svtools/ctrlbox.hxx
+++ b/include/svtools/ctrlbox.hxx
@@ -34,6 +34,7 @@
 
 class FontList;
 class ImpLineListData;
+enum class SvxBorderLineStyle : sal_Int16;
 
 typedef ::std::vector< ImpLineListData*      > ImpLineList;
 typedef ::std::vector< FontMetric         > ImplFontList;
@@ -206,7 +207,7 @@ class SVT_DLLPUBLIC LineListBox : public ListBox
 
     SVT_DLLPRIVATE void         ImpGetLine( long nLine1, long nLine2, long nDistance,
                                     Color nColor1, Color nColor2, Color nColorDist,
-                                    sal_uInt16 nStyle, Bitmap& rBmp );
+                                    SvxBorderLineStyle nStyle, Bitmap& rBmp );
     using Window::ImplInit;
     SVT_DLLPRIVATE void         ImplInit();
     void            UpdatePaintLineColor();       // returns sal_True if maPaintCol has changed
@@ -231,21 +232,21 @@ public:
     using ListBox::InsertEntry;
     /** Insert a listbox entry with all widths in Twips. */
     void            InsertEntry(const BorderWidthImpl& rWidthImpl,
-                        sal_uInt16 nStyle, long nMinWidth = 0,
+                        SvxBorderLineStyle nStyle, long nMinWidth = 0,
                         ColorFunc pColor1Fn = &sameColor,
                         ColorFunc pColor2Fn = &sameColor,
                         ColorDistFunc pColorDistFn = &sameDistColor);
 
     using ListBox::GetEntryPos;
-    sal_Int32       GetEntryPos( sal_uInt16 nStyle ) const;
-    sal_uInt16      GetEntryStyle( sal_Int32  nPos ) const;
+    sal_Int32       GetEntryPos( SvxBorderLineStyle nStyle ) const;
+    SvxBorderLineStyle GetEntryStyle( sal_Int32 nPos ) const;
 
-    void            SelectEntry( sal_uInt16 nStyle, bool bSelect = true );
-    sal_uInt16      GetSelectEntryStyle() const;
+    void            SelectEntry( SvxBorderLineStyle nStyle, bool bSelect = true );
+    SvxBorderLineStyle GetSelectEntryStyle() const;
 
-    void     SetUnit( FieldUnit eNewUnit ) { eUnit = eNewUnit; }
+    void            SetUnit( FieldUnit eNewUnit ) { eUnit = eNewUnit; }
 
-    void     SetSourceUnit( FieldUnit eNewUnit ) { eSourceUnit = eNewUnit; }
+    void            SetSourceUnit( FieldUnit eNewUnit ) { eSourceUnit = eNewUnit; }
 
     void            SetColor( const Color& rColor );
     const Color&    GetColor() const { return aColor; }
diff --git a/include/svx/framelink.hxx b/include/svx/framelink.hxx
index 7520faf6ca21..eacf64633d73 100644
--- a/include/svx/framelink.hxx
+++ b/include/svx/framelink.hxx
@@ -110,10 +110,10 @@ public:
     /** Constructs an invisible frame style. */
     explicit Style();
     /** Constructs a frame style with passed line widths. */
-    explicit Style( double nP, double nD, double nS, editeng::SvxBorderStyle nType );
+    explicit Style( double nP, double nD, double nS, SvxBorderLineStyle nType );
     /** Constructs a frame style with passed color and line widths. */
     explicit Style( const Color& rColorPrim, const Color& rColorSecn, const Color& rColorGap, bool bUseGapColor,
-                    double nP, double nD, double nS, editeng::SvxBorderStyle nType );
+                    double nP, double nD, double nS, SvxBorderLineStyle nType );
     /** Constructs a frame style from the passed SvxBorderLine struct. Clears the style, if pBorder is 0. */
     explicit Style( const editeng::SvxBorderLine* pBorder, double fScale = 1.0 );
 
@@ -127,7 +127,7 @@ public:
     double       Secn() const { return mfSecn; }
     double PatternScale() const { return mfPatternScale;}
     void SetPatternScale( double fScale );
-    editeng::SvxBorderStyle Type() const { return mnType; }
+    SvxBorderLineStyle Type() const { return mnType; }
 
     /** Returns the total width of this frame style. */
     double       GetWidth() const { return mfPrim + mfDist + mfSecn; }
@@ -150,7 +150,7 @@ public:
     void         SetColorPrim( const Color& rColor ) { maColorPrim = rColor; }
     void         SetColorSecn( const Color& rColor ) { maColorSecn = rColor; }
     /** Sets whether to use dotted style for single hair lines. */
-    void         SetType( editeng::SvxBorderStyle nType ) { mnType = nType; }
+    void         SetType( SvxBorderLineStyle nType ) { mnType = nType; }
 
     /** Mirrors this style (exchanges primary and secondary), if it is a double frame style. */
     Style&              MirrorSelf();
@@ -166,8 +166,8 @@ private:
     double              mfPrim;     /// Width of primary (single, left, or top) line.
     double              mfDist;     /// Distance between primary and secondary line.
     double              mfSecn;     /// Width of secondary (right or bottom) line.
-    double mfPatternScale; /// Scale used for line pattern spacing.
-    editeng::SvxBorderStyle      mnType;
+    double              mfPatternScale; /// Scale used for line pattern spacing.
+    SvxBorderLineStyle  mnType;
 };
 
 bool operator==( const Style& rL, const Style& rR );
diff --git a/include/svx/frmsel.hxx b/include/svx/frmsel.hxx
index cbe6f7186bea..3221512f8c44 100644
--- a/include/svx/frmsel.hxx
+++ b/include/svx/frmsel.hxx
@@ -121,7 +121,7 @@ public:
     /** Returns true, if all visible frame borders have equal widths.
         @descr  Ignores hidden and "don't care" frame borders. On success,
         returns the width in the passed parameter. */
-    bool                GetVisibleWidth( long& rnWidth, editeng::SvxBorderStyle& rnStyle ) const;
+    bool                GetVisibleWidth( long& rnWidth, SvxBorderLineStyle& rnStyle ) const;
     /** Returns true, if all visible frame borders have equal color.
         @descr  Ignores hidden and "don't care" frame borders. On success,
         returns the color in the passed parameter. */
@@ -149,7 +149,7 @@ public:
     void                SelectAllVisibleBorders();
 
     /** Sets the passed line widths to all selected frame borders (in twips). */
-    void                SetStyleToSelection( long nWidth, editeng::SvxBorderStyle nStyle );
+    void                SetStyleToSelection( long nWidth, SvxBorderLineStyle nStyle );
     /** Sets the passed color to all selected frame borders. */
     void                SetColorToSelection( const Color& rColor );
 
diff --git a/sc/qa/unit/subsequent_export-test.cxx b/sc/qa/unit/subsequent_export-test.cxx
index ae588cc461bc..ffb3bbf15157 100644
--- a/sc/qa/unit/subsequent_export-test.cxx
+++ b/sc/qa/unit/subsequent_export-test.cxx
@@ -292,6 +292,12 @@ private:
 
 };
 
+std::ostream& operator<<(std::ostream& os, SvxBorderLineStyle n)
+{
+    os << (int)n;
+    return os;
+}
+
 void ScExportTest::registerNamespaces(xmlXPathContextPtr& pXmlXPathCtx)
 {
     struct { xmlChar* pPrefix; xmlChar* pURI; } aNamespaces[] =
@@ -1932,17 +1938,17 @@ void ScExportTest::testSheetProtectionXLSX()
 
 namespace {
 
-const char* toBorderName( sal_Int16 eStyle )
+const char* toBorderName( SvxBorderLineStyle eStyle )
 {
     switch (eStyle)
     {
-        case table::BorderLineStyle::SOLID: return "SOLID";
-        case table::BorderLineStyle::DOTTED: return "DOTTED";
-        case table::BorderLineStyle::DASHED: return "DASHED";
-        case table::BorderLineStyle::DASH_DOT: return "DASH_DOT";
-        case table::BorderLineStyle::DASH_DOT_DOT: return "DASH_DOT_DOT";
-        case table::BorderLineStyle::DOUBLE_THIN: return "DOUBLE_THIN";
-        case table::BorderLineStyle::FINE_DASHED: return "FINE_DASHED";
+        case SvxBorderLineStyle::SOLID: return "SOLID";
+        case SvxBorderLineStyle::DOTTED: return "DOTTED";
+        case SvxBorderLineStyle::DASHED: return "DASHED";
+        case SvxBorderLineStyle::DASH_DOT: return "DASH_DOT";
+        case SvxBorderLineStyle::DASH_DOT_DOT: return "DASH_DOT_DOT";
+        case SvxBorderLineStyle::DOUBLE_THIN: return "DOUBLE_THIN";
+        case SvxBorderLineStyle::FINE_DASHED: return "FINE_DASHED";
         default:
             ;
     }
@@ -1957,21 +1963,21 @@ void ScExportTest::testExcelCellBorders( sal_uLong nFormatType )
     struct
     {
         SCROW mnRow;
-        sal_Int16 mnStyle;
+        SvxBorderLineStyle mnStyle;
         long mnWidth;
     } aChecks[] = {
-        {  1, table::BorderLineStyle::SOLID,         1L }, // hair
-        {  3, table::BorderLineStyle::DOTTED,       15L }, // dotted
-        {  5, table::BorderLineStyle::DASH_DOT_DOT, 15L }, // dash dot dot
-        {  7, table::BorderLineStyle::DASH_DOT,     15L }, // dash dot
-        {  9, table::BorderLineStyle::FINE_DASHED,  15L }, // dashed
-        { 11, table::BorderLineStyle::SOLID,        15L }, // thin
-        { 13, table::BorderLineStyle::DASH_DOT_DOT, 35L }, // medium dash dot dot
-        { 17, table::BorderLineStyle::DASH_DOT,     35L }, // medium dash dot
-        { 19, table::BorderLineStyle::DASHED,       35L }, // medium dashed
-        { 21, table::BorderLineStyle::SOLID,        35L }, // medium
-        { 23, table::BorderLineStyle::SOLID,        50L }, // thick
-        { 25, table::BorderLineStyle::DOUBLE_THIN,  -1L }, // double (don't check width)
+        {  1, SvxBorderLineStyle::SOLID,         1L }, // hair
+        {  3, SvxBorderLineStyle::DOTTED,       15L }, // dotted
+        {  5, SvxBorderLineStyle::DASH_DOT_DOT, 15L }, // dash dot dot
+        {  7, SvxBorderLineStyle::DASH_DOT,     15L }, // dash dot
+        {  9, SvxBorderLineStyle::FINE_DASHED,  15L }, // dashed
+        { 11, SvxBorderLineStyle::SOLID,        15L }, // thin
+        { 13, SvxBorderLineStyle::DASH_DOT_DOT, 35L }, // medium dash dot dot
+        { 17, SvxBorderLineStyle::DASH_DOT,     35L }, // medium dash dot
+        { 19, SvxBorderLineStyle::DASHED,       35L }, // medium dashed
+        { 21, SvxBorderLineStyle::SOLID,        35L }, // medium
+        { 23, SvxBorderLineStyle::SOLID,        50L }, // thick
+        { 25, SvxBorderLineStyle::DOUBLE_THIN,  -1L }, // double (don't check width)
     };
 
     ScDocShellRef xDocSh = loadDoc("cell-borders.", nFormatType);
@@ -2021,21 +2027,21 @@ void ScExportTest::testBordersExchangeXLSX()
     // Document: sc/qa/unit/data/README.cellborders
 
     // short name for the table
-    const ::editeng::SvxBorderStyle None     = table::BorderLineStyle::NONE;
-    const ::editeng::SvxBorderStyle Solid    = table::BorderLineStyle::SOLID;
-    const ::editeng::SvxBorderStyle Dotted   = table::BorderLineStyle::DOTTED;
-    const ::editeng::SvxBorderStyle Dashed   = table::BorderLineStyle::DASHED;
-    const ::editeng::SvxBorderStyle FineDash = table::BorderLineStyle::FINE_DASHED;
-    const ::editeng::SvxBorderStyle DashDot  = table::BorderLineStyle::DASH_DOT;
-    const ::editeng::SvxBorderStyle DashDoDo = table::BorderLineStyle::DASH_DOT_DOT;
-    const ::editeng::SvxBorderStyle DoubThin = table::BorderLineStyle::DOUBLE_THIN;
+    const SvxBorderLineStyle None     = SvxBorderLineStyle::NONE;
+    const SvxBorderLineStyle Solid    = SvxBorderLineStyle::SOLID;
+    const SvxBorderLineStyle Dotted   = SvxBorderLineStyle::DOTTED;
+    const SvxBorderLineStyle Dashed   = SvxBorderLineStyle::DASHED;
+    const SvxBorderLineStyle FineDash = SvxBorderLineStyle::FINE_DASHED;
+    const SvxBorderLineStyle DashDot  = SvxBorderLineStyle::DASH_DOT;
+    const SvxBorderLineStyle DashDoDo = SvxBorderLineStyle::DASH_DOT_DOT;
+    const SvxBorderLineStyle DoubThin = SvxBorderLineStyle::DOUBLE_THIN;
 
     const size_t nMaxCol = 18;
     const size_t nMaxRow = 7;
 
     static struct
     {
-        ::editeng::SvxBorderStyle BorderStyleTop, BorderStyleBottom;
+        SvxBorderLineStyle BorderStyleTop, BorderStyleBottom;
         long                      WidthTop, WidthBottom;
     } aCheckBorderWidth[nMaxCol][nMaxRow] =
     {
diff --git a/sc/qa/unit/subsequent_filters-test.cxx b/sc/qa/unit/subsequent_filters-test.cxx
index a13964349f89..84dec1d0c83f 100644
--- a/sc/qa/unit/subsequent_filters-test.cxx
+++ b/sc/qa/unit/subsequent_filters-test.cxx
@@ -366,6 +366,11 @@ std::ostream& operator<<(std::ostream& rStrm, const SvxCellHorJustify& rCode)
     rStrm << static_cast<int>(rCode);
     return rStrm;
 }
+std::ostream& operator<<(std::ostream& os, SvxBorderLineStyle n)
+{
+    os << (int)n;
+    return os;
+}
 
 bool ScFiltersTest::load(const OUString &rFilter, const OUString &rURL,
     const OUString &rUserData, SfxFilterFlags nFilterFlags,
@@ -936,7 +941,7 @@ void ScFiltersTest::testDoubleThinBorder()
     rDoc.GetBorderLines( 2, 2, 0, &pLeft, &pTop, &pRight, &pBottom );
     CPPUNIT_ASSERT(pTop);
     CPPUNIT_ASSERT(pRight);
-    CPPUNIT_ASSERT_EQUAL( table::BorderLineStyle::DOUBLE_THIN, pRight->GetBorderLineStyle() );
+    CPPUNIT_ASSERT_EQUAL( SvxBorderLineStyle::DOUBLE_THIN, pRight->GetBorderLineStyle() );
     xDocSh->DoClose();
 }
 
@@ -957,8 +962,7 @@ void ScFiltersTest::testBorderODS()
     CPPUNIT_ASSERT(!pTop);
     CPPUNIT_ASSERT(!pBottom);
     CPPUNIT_ASSERT(pRight);
-    CPPUNIT_ASSERT_EQUAL(
-        table::BorderLineStyle::SOLID, pRight->GetBorderLineStyle());
+    CPPUNIT_ASSERT_EQUAL(SvxBorderLineStyle::SOLID, pRight->GetBorderLineStyle());
 
     rDoc.GetBorderLines( 2, 1, 0, &pLeft, &pTop, &pRight, &pBottom );
     CPPUNIT_ASSERT(!pLeft);
@@ -966,8 +970,7 @@ void ScFiltersTest::testBorderODS()
     CPPUNIT_ASSERT(!pBottom);
 
     CPPUNIT_ASSERT(pRight);
-    CPPUNIT_ASSERT_EQUAL(
-        table::BorderLineStyle::SOLID, pRight->GetBorderLineStyle());
+    CPPUNIT_ASSERT_EQUAL(SvxBorderLineStyle::SOLID, pRight->GetBorderLineStyle());
     CPPUNIT_ASSERT_EQUAL(20L, pRight->GetWidth());
 
     rDoc.GetBorderLines( 2, 8, 0, &pLeft, &pTop, &pRight, &pBottom );
@@ -976,8 +979,7 @@ void ScFiltersTest::testBorderODS()
     CPPUNIT_ASSERT(pTop);
     CPPUNIT_ASSERT(pBottom);
     CPPUNIT_ASSERT(pRight);
-    CPPUNIT_ASSERT_EQUAL(
-        table::BorderLineStyle::SOLID, pRight->GetBorderLineStyle());
+    CPPUNIT_ASSERT_EQUAL(SvxBorderLineStyle::SOLID, pRight->GetBorderLineStyle());
     CPPUNIT_ASSERT_EQUAL(5L, pRight->GetWidth());
     CPPUNIT_ASSERT_EQUAL(Color(COL_BLUE), pRight->GetColor());
 
@@ -1004,17 +1006,18 @@ struct Border
     sal_uInt16 bOutWidth;
     sal_uInt16 bInWidth;
     sal_uInt16 bDistance;
-    sal_Int32 lStyle;
-    sal_Int32 tStyle;
-    sal_Int32 rStyle;
-    sal_Int32 bStyle;
+    SvxBorderLineStyle lStyle;
+    SvxBorderLineStyle tStyle;
+    SvxBorderLineStyle rStyle;
+    SvxBorderLineStyle bStyle;
     // that's a monstrum
     Border(sal_Int16 col, sal_Int32 r, sal_Int32 lW, sal_Int32 tW, sal_Int32 rW, sal_Int32 bW, sal_uInt16 lOutW, sal_uInt16 lInW,
         sal_uInt16 lDist, sal_uInt16 tOutW, sal_uInt16 tInW, sal_uInt16 tDist, sal_uInt16 rOutW, sal_uInt16 rInW, sal_uInt16 rDist,
-        sal_uInt16 bOutW, sal_uInt16 bInW, sal_uInt16 bDist, sal_Int32 lSt, sal_Int32 tSt, sal_Int32 rSt, sal_Int32 bSt):
+        sal_uInt16 bOutW, sal_uInt16 bInW, sal_uInt16 bDist, sal_Int16 lSt, sal_Int16 tSt, sal_Int16 rSt, sal_Int16 bSt):
     column(col), row(r), leftWidth(lW), topWidth(tW), rightWidth(rW), bottomWidth(bW), lOutWidth(lOutW), lInWidth(lInW), lDistance(lDist),
     tOutWidth(tOutW), tInWidth(tInW), tDistance(tDist), rOutWidth(rOutW), rInWidth(rInW), rDistance(rDist), bOutWidth(bOutW), bInWidth(bInW),
-    bDistance(bDist), lStyle(lSt), tStyle(tSt), rStyle(rSt), bStyle(bSt) {};
+    bDistance(bDist),
+    lStyle((SvxBorderLineStyle)lSt), tStyle((SvxBorderLineStyle)tSt), rStyle((SvxBorderLineStyle)rSt), bStyle((SvxBorderLineStyle)bSt) {};
 };
 
 void ScFiltersTest::testBordersOoo33()
@@ -1073,7 +1076,7 @@ void ScFiltersTest::testBordersOoo33()
                 CPPUNIT_ASSERT_EQUAL(borders[temp].bOutWidth, pBottom->GetOutWidth());
                 CPPUNIT_ASSERT_EQUAL(borders[temp].bInWidth, pBottom->GetInWidth());

... etc. - the rest is truncated


More information about the Libreoffice-commits mailing list