[Libreoffice-commits] core.git: dbaccess/inc dbaccess/source

Miklos Vajna vmiklos at collabora.co.uk
Tue Jul 18 18:08:50 UTC 2017


 dbaccess/inc/dbaccess_helpid.hrc                  |    1 +
 dbaccess/source/core/misc/dsntypes.cxx            |    4 +++-
 dbaccess/source/inc/dsntypes.hxx                  |    3 ++-
 dbaccess/source/ui/dlg/AutoControls.src           |    5 +++++
 dbaccess/source/ui/dlg/ConnectionHelper.cxx       |   13 ++++++++++++-
 dbaccess/source/ui/dlg/ConnectionPage.cxx         |    4 ++++
 dbaccess/source/ui/dlg/DBSetupConnectionPages.cxx |    2 +-
 dbaccess/source/ui/dlg/DBSetupConnectionPages.hxx |    2 +-
 dbaccess/source/ui/dlg/DbAdminImpl.cxx            |    1 +
 dbaccess/source/ui/dlg/dbadminsetup.src           |    4 ++--
 dbaccess/source/ui/dlg/dbwiz.cxx                  |    1 +
 dbaccess/source/ui/dlg/dbwizsetup.cxx             |   10 +++++-----
 dbaccess/source/ui/inc/dbu_dlg.hrc                |    4 ++--
 dbaccess/source/ui/inc/dbwizsetup.hxx             |    2 +-
 14 files changed, 41 insertions(+), 15 deletions(-)

New commits:
commit 36f2df84fcfc21038b4d20df38a9e5addfcbde3f
Author: Miklos Vajna <vmiklos at collabora.co.uk>
Date:   Tue Jul 18 14:59:18 2017 +0200

    dbaccess: introduce DATASOURCE_TYPE::DST_WRITER
    
    By mostly reusing the spreadsheet code. This way the UI allows creating
    a data source where the backend is a Writer document (containing at
    least one Writer table).
    
    Change-Id: I42186d46aaa86fa96ebae0807c97306d6d00d6d4
    Reviewed-on: https://gerrit.libreoffice.org/40146
    Tested-by: Jenkins <ci at libreoffice.org>
    Reviewed-by: Miklos Vajna <vmiklos at collabora.co.uk>

diff --git a/dbaccess/inc/dbaccess_helpid.hrc b/dbaccess/inc/dbaccess_helpid.hrc
index e24c1cd9ccd0..569f846822fc 100644
--- a/dbaccess/inc/dbaccess_helpid.hrc
+++ b/dbaccess/inc/dbaccess_helpid.hrc
@@ -88,6 +88,7 @@
 #define HID_DSADMIN_MSACCESS_MDB_FILE                     "DBACCESS_HID_DSADMIN_MSACCESS_MDB_FILE"
 #define HID_DSADMIN_FLAT_PATH                             "DBACCESS_HID_DSADMIN_FLAT_PATH"
 #define HID_DSADMIN_CALC_PATH                             "DBACCESS_HID_DSADMIN_CALC_PATH"
+#define HID_DSADMIN_WRITER_PATH                           "DBACCESS_HID_DSADMIN_WRITER_PATH"
 #define HID_DSADMIN_ORACLE_DATABASE                       "DBACCESS_HID_DSADMIN_ORACLE_DATABASE"
 
 #define HID_APP_TABLE_TREE                                "DBACCESS_HID_APP_TABLE_TREE"
diff --git a/dbaccess/source/core/misc/dsntypes.cxx b/dbaccess/source/core/misc/dsntypes.cxx
index 32cda53170c8..2bef7806208e 100644
--- a/dbaccess/source/core/misc/dsntypes.cxx
+++ b/dbaccess/source/core/misc/dsntypes.cxx
@@ -387,6 +387,7 @@ DATASOURCE_TYPE ODsnTypeCollection::determineType(const OUString& _rDsn) const
     const KnownPrefix aKnowPrefixes[] =
     {
         KnownPrefix( "sdbc:calc:",          DST_CALC,               false ),
+        KnownPrefix( "sdbc:writer:",        DST_WRITER,             false ),
         KnownPrefix( "sdbc:flat:",          DST_FLAT,               false ),
         KnownPrefix( "sdbc:odbc:",          DST_ODBC,               false ),
         KnownPrefix( "sdbc:dbase:",         DST_DBASE,              false ),
@@ -435,7 +436,8 @@ void ODsnTypeCollection::fillPageIds(const OUString& _sURL,std::vector<sal_Int16
             _rOutPathIds.push_back(PAGE_DBSETUPWIZARD_TEXT);
             break;
         case DST_CALC:
-            _rOutPathIds.push_back(PAGE_DBSETUPWIZARD_SPREADSHEET);
+        case DST_WRITER:
+            _rOutPathIds.push_back(PAGE_DBSETUPWIZARD_DOCUMENT_OR_SPREADSHEET);
             break;
         case DST_ODBC:
             _rOutPathIds.push_back(PAGE_DBSETUPWIZARD_ODBC);
diff --git a/dbaccess/source/inc/dsntypes.hxx b/dbaccess/source/inc/dsntypes.hxx
index 7b6a5524f562..911d99b367e6 100644
--- a/dbaccess/source/inc/dsntypes.hxx
+++ b/dbaccess/source/inc/dsntypes.hxx
@@ -62,6 +62,7 @@ enum DATASOURCE_TYPE
     DST_FIREBIRD            = 26,
     DST_EMBEDDED_FIREBIRD   = 27,
     DST_POSTGRES            = 28,
+    DST_WRITER              = 29,
 
     DST_USERDEFINE1,    /// first user defined driver
     DST_USERDEFINE2,
@@ -90,7 +91,7 @@ enum DATASOURCE_TYPE
 #define PAGE_DBSETUPWIZARD_JDBC                      10
 #define PAGE_DBSETUPWIZARD_ADO                       11
 #define PAGE_DBSETUPWIZARD_ODBC                      12
-#define PAGE_DBSETUPWIZARD_SPREADSHEET               13
+#define PAGE_DBSETUPWIZARD_DOCUMENT_OR_SPREADSHEET   13
 #define PAGE_DBSETUPWIZARD_AUTHENTIFICATION          14
 #define PAGE_DBSETUPWIZARD_FINAL                     16
 #define PAGE_DBSETUPWIZARD_USERDEFINED               17
diff --git a/dbaccess/source/ui/dlg/AutoControls.src b/dbaccess/source/ui/dlg/AutoControls.src
index 5b0b9687796c..c6539edc6f66 100644
--- a/dbaccess/source/ui/dlg/AutoControls.src
+++ b/dbaccess/source/ui/dlg/AutoControls.src
@@ -34,6 +34,11 @@ String STR_CALC_PATH_OR_FILE
     Text[ en-US ] = "Path to the spreadsheet document";
 };
 
+String STR_WRITER_PATH_OR_FILE
+{
+    Text[ en-US ] = "Path to the Writer document";
+};
+
 String STR_NAME_OF_ODBC_DATASOURCE
 {
     Text[ en-US ] = "Name of the ODBC data source on your system";
diff --git a/dbaccess/source/ui/dlg/ConnectionHelper.cxx b/dbaccess/source/ui/dlg/ConnectionHelper.cxx
index b6fdb4b7eb7c..d6b535a0cd13 100644
--- a/dbaccess/source/ui/dlg/ConnectionHelper.cxx
+++ b/dbaccess/source/ui/dlg/ConnectionHelper.cxx
@@ -224,6 +224,17 @@ namespace dbaui
                 askForFileName(aFileDlg);
             }
             break;
+            case  ::dbaccess::DST_WRITER:
+            {
+                SvtModuleOptions aModule;
+                ::sfx2::FileDialogHelper aFileDlg(
+                    ui::dialogs::TemplateDescription::FILEOPEN_READONLY_VERSION,
+                    FileDialogFlags::NONE,
+                    aModule.GetFactoryEmptyDocumentURL(SvtModuleOptions::EFactory::WRITER)
+                    ,SfxFilterFlags::IMPORT);
+                askForFileName(aFileDlg);
+            }
+            break;
             case  ::dbaccess::DST_MSACCESS:
             {
                 const OUString sExt("*.mdb;*.mde");
@@ -664,7 +675,7 @@ namespace dbaui
 
                 const ::dbaccess::DATASOURCE_TYPE eType = m_pCollection->determineType(m_eType);
 
-                if ( ( ::dbaccess::DST_CALC == eType) || ( ::dbaccess::DST_MSACCESS == eType) || ( ::dbaccess::DST_MSACCESS_2007 == eType) )
+                if ( ( ::dbaccess::DST_CALC == eType) || ( ::dbaccess::DST_WRITER == eType) || ( ::dbaccess::DST_MSACCESS == eType) || ( ::dbaccess::DST_MSACCESS_2007 == eType) )
                 {
                     if( pathExists(sURL, true) == PATH_NOT_EXIST )
                     {
diff --git a/dbaccess/source/ui/dlg/ConnectionPage.cxx b/dbaccess/source/ui/dlg/ConnectionPage.cxx
index 2c44abfc0038..7ca9c7096900 100644
--- a/dbaccess/source/ui/dlg/ConnectionPage.cxx
+++ b/dbaccess/source/ui/dlg/ConnectionPage.cxx
@@ -149,6 +149,10 @@ namespace dbaui
                 m_pFT_Connection->SetText(OUString(ModuleRes(STR_CALC_PATH_OR_FILE)));
                 m_pConnectionURL->SetHelpId(HID_DSADMIN_CALC_PATH);
                 break;
+            case  ::dbaccess::DST_WRITER:
+                m_pFT_Connection->SetText(OUString(ModuleRes(STR_WRITER_PATH_OR_FILE)));
+                m_pConnectionURL->SetHelpId(HID_DSADMIN_WRITER_PATH);
+                break;
             case  ::dbaccess::DST_ADO:
                 m_pFT_Connection->SetText(OUString(ModuleRes(STR_COMMONURL)));
                 break;
diff --git a/dbaccess/source/ui/dlg/DBSetupConnectionPages.cxx b/dbaccess/source/ui/dlg/DBSetupConnectionPages.cxx
index fd126a6c1050..24c5794b6968 100644
--- a/dbaccess/source/ui/dlg/DBSetupConnectionPages.cxx
+++ b/dbaccess/source/ui/dlg/DBSetupConnectionPages.cxx
@@ -689,7 +689,7 @@ using namespace ::com::sun::star;
         callModifiedHdl();
     }
 
-    VclPtr<OGenericAdministrationPage> OSpreadSheetConnectionPageSetup::CreateSpreadSheetTabPage( vcl::Window* pParent, const SfxItemSet& _rAttrSet )
+    VclPtr<OGenericAdministrationPage> OSpreadSheetConnectionPageSetup::CreateDocumentOrSpreadSheetTabPage( vcl::Window* pParent, const SfxItemSet& _rAttrSet )
     {
         return VclPtr<OSpreadSheetConnectionPageSetup>::Create( pParent, _rAttrSet );
     }
diff --git a/dbaccess/source/ui/dlg/DBSetupConnectionPages.hxx b/dbaccess/source/ui/dlg/DBSetupConnectionPages.hxx
index 4e4a223a452a..6c64ee8bd664 100644
--- a/dbaccess/source/ui/dlg/DBSetupConnectionPages.hxx
+++ b/dbaccess/source/ui/dlg/DBSetupConnectionPages.hxx
@@ -40,7 +40,7 @@ namespace dbaui
     {
     public:
         virtual bool        FillItemSet ( SfxItemSet* _rCoreAttrs ) override;
-        static VclPtr<OGenericAdministrationPage> CreateSpreadSheetTabPage( vcl::Window* pParent, const SfxItemSet& _rAttrSet );
+        static VclPtr<OGenericAdministrationPage> CreateDocumentOrSpreadSheetTabPage( vcl::Window* pParent, const SfxItemSet& _rAttrSet );
         OSpreadSheetConnectionPageSetup(vcl::Window* pParent, const SfxItemSet& _rCoreAttrs);
         virtual ~OSpreadSheetConnectionPageSetup() override;
         virtual void dispose() override;
diff --git a/dbaccess/source/ui/dlg/DbAdminImpl.cxx b/dbaccess/source/ui/dlg/DbAdminImpl.cxx
index 9899384304da..848f07bbfaeb 100644
--- a/dbaccess/source/ui/dlg/DbAdminImpl.cxx
+++ b/dbaccess/source/ui/dlg/DbAdminImpl.cxx
@@ -474,6 +474,7 @@ OUString ODbDataSourceAdministrationHelper::getConnectionURL() const
         case  ::dbaccess::DST_DBASE:
         case  ::dbaccess::DST_FLAT:
         case  ::dbaccess::DST_CALC:
+        case  ::dbaccess::DST_WRITER:
             break;
         case  ::dbaccess::DST_MSACCESS:
         case  ::dbaccess::DST_MSACCESS_2007:
diff --git a/dbaccess/source/ui/dlg/dbadminsetup.src b/dbaccess/source/ui/dlg/dbadminsetup.src
index d798978cb21b..a4903c5dc4d1 100644
--- a/dbaccess/source/ui/dlg/dbadminsetup.src
+++ b/dbaccess/source/ui/dlg/dbadminsetup.src
@@ -74,9 +74,9 @@ String STR_PAGETITLE_ODBC
     Text[ en-US ] = "Set up ODBC connection" ;
 };
 
-String STR_PAGETITLE_SPREADSHEET
+String STR_PAGETITLE_DOCUMENT_OR_SPREADSHEET
 {
-    Text[ en-US ] = "Set up Spreadsheet connection" ;
+    Text[ en-US ] = "Set up Writer Document or Spreadsheet connection" ;
 };
 
 String STR_PAGETITLE_AUTHENTIFICATION
diff --git a/dbaccess/source/ui/dlg/dbwiz.cxx b/dbaccess/source/ui/dlg/dbwiz.cxx
index be43ef07a322..f9fabf950e11 100644
--- a/dbaccess/source/ui/dlg/dbwiz.cxx
+++ b/dbaccess/source/ui/dlg/dbwiz.cxx
@@ -156,6 +156,7 @@ WizardTypes::WizardState ODbTypeWizDialog::determineNextState( WizardState _nCur
                 case  ::dbaccess::DST_MSACCESS_2007:
                 case  ::dbaccess::DST_JDBC:
                 case  ::dbaccess::DST_CALC:
+                case  ::dbaccess::DST_WRITER:
                     nNextState = WZS_INVALID_STATE;
                     break;
                 case  ::dbaccess::DST_DBASE:
diff --git a/dbaccess/source/ui/dlg/dbwizsetup.cxx b/dbaccess/source/ui/dlg/dbwizsetup.cxx
index bf1b7c98c2fd..deb931d51327 100644
--- a/dbaccess/source/ui/dlg/dbwizsetup.cxx
+++ b/dbaccess/source/ui/dlg/dbwizsetup.cxx
@@ -120,7 +120,7 @@ ODbTypeWizDialogSetup::ODbTypeWizDialogSetup(vcl::Window* _pParent
     , m_sRM_OracleText( ModuleRes( STR_PAGETITLE_ORACLE ) )
     , m_sRM_MySQLText( ModuleRes( STR_PAGETITLE_MYSQL ) )
     , m_sRM_ODBCText( ModuleRes( STR_PAGETITLE_ODBC ) )
-    , m_sRM_SpreadSheetText( ModuleRes( STR_PAGETITLE_SPREADSHEET ) )
+    , m_sRM_DocumentOrSpreadSheetText( ModuleRes( STR_PAGETITLE_DOCUMENT_OR_SPREADSHEET ) )
     , m_sRM_AuthentificationText( ModuleRes( STR_PAGETITLE_AUTHENTIFICATION ) )
     , m_sRM_FinalText( ModuleRes( STR_PAGETITLE_FINAL ) )
     , m_sWorkPath( SvtPathOptions().GetWorkPath() )
@@ -240,8 +240,8 @@ OUString ODbTypeWizDialogSetup::getStateDisplayName( WizardState _nState ) const
         case PAGE_DBSETUPWIZARD_ODBC:
             sRoadmapItem = m_sRM_ODBCText;
             break;
-        case PAGE_DBSETUPWIZARD_SPREADSHEET:
-            sRoadmapItem = m_sRM_SpreadSheetText;
+        case PAGE_DBSETUPWIZARD_DOCUMENT_OR_SPREADSHEET:
+            sRoadmapItem = m_sRM_DocumentOrSpreadSheetText;
             break;
         case PAGE_DBSETUPWIZARD_AUTHENTIFICATION:
             sRoadmapItem = m_sRM_AuthentificationText;
@@ -520,8 +520,8 @@ VclPtr<TabPage> ODbTypeWizDialogSetup::createPage(WizardState _nState)
             pPage = OLDAPConnectionPageSetup::CreateLDAPTabPage(this,*m_pOutSet);
             break;
 
-        case PAGE_DBSETUPWIZARD_SPREADSHEET:    /// first user defined driver
-            pPage = OSpreadSheetConnectionPageSetup::CreateSpreadSheetTabPage(this,*m_pOutSet);
+        case PAGE_DBSETUPWIZARD_DOCUMENT_OR_SPREADSHEET:
+            pPage = OSpreadSheetConnectionPageSetup::CreateDocumentOrSpreadSheetTabPage(this,*m_pOutSet);
             break;
 
         case PAGE_DBSETUPWIZARD_MSACCESS:
diff --git a/dbaccess/source/ui/inc/dbu_dlg.hrc b/dbaccess/source/ui/inc/dbu_dlg.hrc
index 3fb205315fa8..960c175a3ff6 100644
--- a/dbaccess/source/ui/inc/dbu_dlg.hrc
+++ b/dbaccess/source/ui/inc/dbu_dlg.hrc
@@ -79,7 +79,7 @@
 #define STR_NAME_OF_ODBC_DATASOURCE         RID_STR_DLG_START + 48
 #define STR_MYSQL_DATABASE_NAME             RID_STR_DLG_START + 49
 #define STR_ORACLE_DATABASE_NAME            RID_STR_DLG_START + 50
-    // FREE
+#define STR_WRITER_PATH_OR_FILE             RID_STR_DLG_START + 51
 #define STR_MSACCESS_MDB_FILE               RID_STR_DLG_START + 52
 #define STR_COMMONURL                       RID_STR_DLG_START + 53
 #define STR_DATABASEDEFAULTNAME             RID_STR_DLG_START + 54
@@ -108,7 +108,7 @@
 #define STR_PAGETITLE_ORACLE                RID_STR_DLG_START + 76
 #define STR_PAGETITLE_MYSQL                 RID_STR_DLG_START + 77
 #define STR_PAGETITLE_ODBC                  RID_STR_DLG_START + 78
-#define STR_PAGETITLE_SPREADSHEET           RID_STR_DLG_START + 79
+#define STR_PAGETITLE_DOCUMENT_OR_SPREADSHEET RID_STR_DLG_START + 79
 #define STR_PAGETITLE_AUTHENTIFICATION      RID_STR_DLG_START + 80
 #define STR_PAGETITLE_MYSQL_NATIVE          RID_STR_DLG_START + 81
 #define STR_PAGETITLE_FINAL                 RID_STR_DLG_START + 82
diff --git a/dbaccess/source/ui/inc/dbwizsetup.hxx b/dbaccess/source/ui/inc/dbwizsetup.hxx
index 18cdcb9891c7..b02986503b0d 100644
--- a/dbaccess/source/ui/inc/dbwizsetup.hxx
+++ b/dbaccess/source/ui/inc/dbwizsetup.hxx
@@ -77,7 +77,7 @@ private:
     OUString                m_sRM_OracleText;
     OUString                m_sRM_MySQLText;
     OUString                m_sRM_ODBCText;
-    OUString                m_sRM_SpreadSheetText;
+    OUString                m_sRM_DocumentOrSpreadSheetText;
     OUString                m_sRM_AuthentificationText;
     OUString                m_sRM_FinalText;
     INetURLObject           m_aDocURL;


More information about the Libreoffice-commits mailing list