From 60f3e4b843da89678e022eed837ee66e726b1920 Mon Sep 17 00:00:00 2001 From: Caolán McNamara Date: Fri, 20 Apr 2018 11:06:07 +0100 Subject: place an intermediate class as parent for SfxTabPages MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit so a SfxTabPage can be parented by a vcl::Window or a welded native notebook tabpage. That ways the same SfxTabPage can be used at the same time in both a native dialog or a vcl dialog. The impl can be changed to the weld api, and when hosted in a native dialog the vcl impl of that will be instantiated, while native otherwise. e.g. print options appearing in print options dialog and general options. This allows incremental changeover. Change-Id: I6f1fed1e8d0898b01853bb878757bad41cbf9bba Reviewed-on: https://gerrit.libreoffice.org/53193 Tested-by: Jenkins Reviewed-by: Caolán McNamara Tested-by: Caolán McNamara --- dbaccess/source/ui/dlg/ConnectionPage.cxx | 4 +-- dbaccess/source/ui/dlg/ConnectionPage.hxx | 2 +- dbaccess/source/ui/dlg/DriverSettings.hxx | 26 ++++++++-------- dbaccess/source/ui/dlg/UserAdmin.cxx | 4 +-- dbaccess/source/ui/dlg/UserAdmin.hxx | 2 +- dbaccess/source/ui/dlg/detailpages.cxx | 50 ++++++++++++++++--------------- 6 files changed, 45 insertions(+), 43 deletions(-) (limited to 'dbaccess/source/ui') diff --git a/dbaccess/source/ui/dlg/ConnectionPage.cxx b/dbaccess/source/ui/dlg/ConnectionPage.cxx index 670c399fa149..75577db17114 100644 --- a/dbaccess/source/ui/dlg/ConnectionPage.cxx +++ b/dbaccess/source/ui/dlg/ConnectionPage.cxx @@ -77,9 +77,9 @@ namespace dbaui using namespace ::dbtools; using namespace ::svt; - VclPtr OConnectionTabPage::Create( vcl::Window* pParent, const SfxItemSet* _rAttrSet ) + VclPtr OConnectionTabPage::Create( TabPageParent pParent, const SfxItemSet* _rAttrSet ) { - return VclPtr::Create( pParent, *_rAttrSet ); + return VclPtr::Create( pParent.pParent, *_rAttrSet ); } // OConnectionTabPage diff --git a/dbaccess/source/ui/dlg/ConnectionPage.hxx b/dbaccess/source/ui/dlg/ConnectionPage.hxx index 7b21837dd1ef..089baf330104 100644 --- a/dbaccess/source/ui/dlg/ConnectionPage.hxx +++ b/dbaccess/source/ui/dlg/ConnectionPage.hxx @@ -58,7 +58,7 @@ namespace dbaui public: virtual ~OConnectionTabPage() override; virtual void dispose() override; - static VclPtr Create( vcl::Window* pParent, const SfxItemSet* _rAttrSet ); + static VclPtr Create( TabPageParent pParent, const SfxItemSet* _rAttrSet ); virtual bool FillItemSet (SfxItemSet* _rCoreAttrs) override; virtual void implInitControls(const SfxItemSet& _rSet, bool _bSaveValue) override; diff --git a/dbaccess/source/ui/dlg/DriverSettings.hxx b/dbaccess/source/ui/dlg/DriverSettings.hxx index 8194bfec03a6..4fa30d49b3a4 100644 --- a/dbaccess/source/ui/dlg/DriverSettings.hxx +++ b/dbaccess/source/ui/dlg/DriverSettings.hxx @@ -20,6 +20,7 @@ #define INCLUDED_DBACCESS_SOURCE_UI_DLG_DRIVERSETTINGS_HXX #include +#include #include #include #include @@ -35,49 +36,48 @@ namespace dbaui /** Creates the detail page for ado */ - static VclPtr CreateDbase( vcl::Window* _pParent, const SfxItemSet* _rAttrSet ); + static VclPtr CreateDbase( TabPageParent _pParent, const SfxItemSet* _rAttrSet ); /** Creates the detail page for ado */ - static VclPtr CreateAdo( vcl::Window* _pParent, const SfxItemSet* _rAttrSet ); + static VclPtr CreateAdo( TabPageParent _pParent, const SfxItemSet* _rAttrSet ); /** Creates the detail page for ODBC */ - static VclPtr CreateODBC( vcl::Window* _pParent, const SfxItemSet* _rAttrSet ); + static VclPtr CreateODBC( TabPageParent _pParent, const SfxItemSet* _rAttrSet ); /** Creates the detail page for user */ - static VclPtr CreateUser( vcl::Window* _pParent, const SfxItemSet* _rAttrSet ); + static VclPtr CreateUser( TabPageParent _pParent, const SfxItemSet* _rAttrSet ); /** Creates the detail page for MySQLODBC */ - static VclPtr CreateMySQLODBC( vcl::Window* _pParent, const SfxItemSet* _rAttrSet ); + static VclPtr CreateMySQLODBC( TabPageParent _pParent, const SfxItemSet* _rAttrSet ); /** Creates the detail page for MySQLJDBC */ - static VclPtr CreateMySQLJDBC( vcl::Window* _pParent, const SfxItemSet* _rAttrSet ); + static VclPtr CreateMySQLJDBC( TabPageParent _pParent, const SfxItemSet* _rAttrSet ); /** Creates the detail page for MySQLNATIVE */ - static VclPtr CreateMySQLNATIVE( vcl::Window* _pParent, const SfxItemSet* _rAttrSet ); + static VclPtr CreateMySQLNATIVE( TabPageParent _pParent, const SfxItemSet* _rAttrSet ); /** Creates the detail page for Oracle JDBC */ - static VclPtr CreateOracleJDBC( vcl::Window* pParent, const SfxItemSet* _rAttrSet ); + static VclPtr CreateOracleJDBC( TabPageParent pParent, const SfxItemSet* _rAttrSet ); /** Creates the detail page for LDAP */ - static VclPtr CreateLDAP( vcl::Window* _pParent, const SfxItemSet* _rAttrSet ); + static VclPtr CreateLDAP( TabPageParent _pParent, const SfxItemSet* _rAttrSet ); /// Creates the detail page for Text - static VclPtr CreateText( vcl::Window* _pParent, const SfxItemSet* _rAttrSet ); - + static VclPtr CreateText( TabPageParent _pParent, const SfxItemSet* _rAttrSet ); /// creates the GeneratedValues page - static VclPtr CreateGeneratedValuesPage( vcl::Window* _pParent, const SfxItemSet* _rAttrSet ); + static VclPtr CreateGeneratedValuesPage( TabPageParent _pParent, const SfxItemSet* _rAttrSet ); /// creates the "Special Settings" page of the "Advanced Settings" dialog - static VclPtr CreateSpecialSettingsPage( vcl::Window* _pParent, const SfxItemSet* _rAttrSet ); + static VclPtr CreateSpecialSettingsPage( TabPageParent _pParent, const SfxItemSet* _rAttrSet ); }; } diff --git a/dbaccess/source/ui/dlg/UserAdmin.cxx b/dbaccess/source/ui/dlg/UserAdmin.cxx index 84869c3f3ee9..0daf9f8f13d9 100644 --- a/dbaccess/source/ui/dlg/UserAdmin.cxx +++ b/dbaccess/source/ui/dlg/UserAdmin.cxx @@ -202,9 +202,9 @@ void OUserAdmin::FillUserNames() } -VclPtr OUserAdmin::Create( vcl::Window* pParent, const SfxItemSet* _rAttrSet ) +VclPtr OUserAdmin::Create( TabPageParent pParent, const SfxItemSet* _rAttrSet ) { - return VclPtr::Create( pParent, *_rAttrSet ); + return VclPtr::Create( pParent.pParent, *_rAttrSet ); } IMPL_LINK( OUserAdmin, UserHdl, Button *, pButton, void ) diff --git a/dbaccess/source/ui/dlg/UserAdmin.hxx b/dbaccess/source/ui/dlg/UserAdmin.hxx index 17fa0bdf5454..c7a1cbb96913 100644 --- a/dbaccess/source/ui/dlg/UserAdmin.hxx +++ b/dbaccess/source/ui/dlg/UserAdmin.hxx @@ -60,7 +60,7 @@ class OUserAdmin final : public OGenericAdministrationPage OUserAdmin( vcl::Window* pParent, const SfxItemSet& _rCoreAttrs); public: - static VclPtr Create( vcl::Window* pParent, const SfxItemSet* _rAttrSet ); + static VclPtr Create( TabPageParent pParent, const SfxItemSet* _rAttrSet ); virtual ~OUserAdmin() override; virtual void dispose() override; diff --git a/dbaccess/source/ui/dlg/detailpages.cxx b/dbaccess/source/ui/dlg/detailpages.cxx index cc3fba28d0ff..67da68cd9834 100644 --- a/dbaccess/source/ui/dlg/detailpages.cxx +++ b/dbaccess/source/ui/dlg/detailpages.cxx @@ -209,9 +209,9 @@ namespace dbaui OCommonBehaviourTabPage::dispose(); } - VclPtr ODriversSettings::CreateDbase( vcl::Window* pParent, const SfxItemSet* _rAttrSet ) + VclPtr ODriversSettings::CreateDbase( TabPageParent pParent, const SfxItemSet* _rAttrSet ) { - return VclPtr::Create( pParent, *_rAttrSet ); + return VclPtr::Create( pParent.pParent, *_rAttrSet ); } void ODbaseDetailsPage::implInitControls(const SfxItemSet& _rSet, bool _bSaveValue) @@ -269,9 +269,9 @@ namespace dbaui } - VclPtr ODriversSettings::CreateAdo( vcl::Window* pParent, const SfxItemSet* _rAttrSet ) + VclPtr ODriversSettings::CreateAdo( TabPageParent pParent, const SfxItemSet* _rAttrSet ) { - return VclPtr::Create( pParent, *_rAttrSet ); + return VclPtr::Create( pParent.pParent, *_rAttrSet ); } // OOdbcDetailsPage @@ -293,9 +293,9 @@ namespace dbaui OCommonBehaviourTabPage::dispose(); } - VclPtr ODriversSettings::CreateODBC( vcl::Window* pParent, const SfxItemSet* _rAttrSet ) + VclPtr ODriversSettings::CreateODBC( TabPageParent pParent, const SfxItemSet* _rAttrSet ) { - return VclPtr::Create( pParent, *_rAttrSet ); + return VclPtr::Create( pParent.pParent, *_rAttrSet ); } bool OOdbcDetailsPage::FillItemSet( SfxItemSet* _rSet ) @@ -346,9 +346,9 @@ namespace dbaui OCommonBehaviourTabPage::dispose(); } - VclPtr ODriversSettings::CreateUser( vcl::Window* pParent, const SfxItemSet* _rAttrSet ) + VclPtr ODriversSettings::CreateUser( TabPageParent pParent, const SfxItemSet* _rAttrSet ) { - return VclPtr::Create( pParent, *_rAttrSet ); + return VclPtr::Create( pParent.pParent, *_rAttrSet ); } bool OUserDriverDetailsPage::FillItemSet( SfxItemSet* _rSet ) @@ -403,9 +403,9 @@ namespace dbaui { } - VclPtr ODriversSettings::CreateMySQLODBC( vcl::Window* pParent, const SfxItemSet* _rAttrSet ) + VclPtr ODriversSettings::CreateMySQLODBC( TabPageParent pParent, const SfxItemSet* _rAttrSet ) { - return VclPtr::Create( pParent, *_rAttrSet ); + return VclPtr::Create( pParent.pParent, *_rAttrSet ); } // OMySQLJDBCDetailsPage @@ -641,18 +641,19 @@ namespace dbaui OCommonBehaviourTabPage::implInitControls(_rSet, _bSaveValue); } - VclPtr ODriversSettings::CreateMySQLJDBC( vcl::Window* pParent, const SfxItemSet* _rAttrSet ) + VclPtr ODriversSettings::CreateMySQLJDBC( TabPageParent pParent, const SfxItemSet* _rAttrSet ) { - return VclPtr::Create( pParent, *_rAttrSet,DSID_MYSQL_PORTNUMBER ); + return VclPtr::Create( pParent.pParent, *_rAttrSet,DSID_MYSQL_PORTNUMBER ); } - VclPtr ODriversSettings::CreateMySQLNATIVE( vcl::Window* pParent, const SfxItemSet* _rAttrSet ) + + VclPtr ODriversSettings::CreateMySQLNATIVE( TabPageParent pParent, const SfxItemSet* _rAttrSet ) { - return VclPtr::Create( pParent, *_rAttrSet ); + return VclPtr::Create( pParent.pParent, *_rAttrSet ); } - VclPtr ODriversSettings::CreateOracleJDBC( vcl::Window* pParent, const SfxItemSet* _rAttrSet ) + VclPtr ODriversSettings::CreateOracleJDBC( TabPageParent pParent, const SfxItemSet* _rAttrSet ) { - return VclPtr::Create( pParent, *_rAttrSet,DSID_ORACLE_PORTNUMBER, false); + return VclPtr::Create( pParent.pParent, *_rAttrSet,DSID_ORACLE_PORTNUMBER, false); } // OLDAPDetailsPage @@ -690,9 +691,9 @@ namespace dbaui OCommonBehaviourTabPage::dispose(); } - VclPtr ODriversSettings::CreateLDAP( vcl::Window* pParent, const SfxItemSet* _rAttrSet ) + VclPtr ODriversSettings::CreateLDAP( TabPageParent pParent, const SfxItemSet* _rAttrSet ) { - return VclPtr::Create( pParent, *_rAttrSet ); + return VclPtr::Create( pParent.pParent, *_rAttrSet ); } bool OLDAPDetailsPage::FillItemSet( SfxItemSet* _rSet ) @@ -764,10 +765,11 @@ namespace dbaui OCommonBehaviourTabPage::dispose(); } - VclPtr ODriversSettings::CreateText( vcl::Window* pParent, const SfxItemSet* _rAttrSet ) + VclPtr ODriversSettings::CreateText( TabPageParent pParent, const SfxItemSet* _rAttrSet ) { - return VclPtr::Create( pParent, *_rAttrSet ); + return VclPtr::Create( pParent.pParent, *_rAttrSet ); } + void OTextDetailsPage::fillControls(std::vector< ISaveValueWrapper* >& _rControlList) { OCommonBehaviourTabPage::fillControls(_rControlList); @@ -802,16 +804,16 @@ namespace dbaui return m_pTextConnectionHelper->prepareLeave(); } - VclPtr ODriversSettings::CreateGeneratedValuesPage( vcl::Window* _pParent, const SfxItemSet* _rAttrSet ) + VclPtr ODriversSettings::CreateGeneratedValuesPage( TabPageParent _pParent, const SfxItemSet* _rAttrSet ) { - return VclPtr::Create( _pParent, *_rAttrSet ); + return VclPtr::Create( _pParent.pParent, *_rAttrSet ); } - VclPtr ODriversSettings::CreateSpecialSettingsPage( vcl::Window* _pParent, const SfxItemSet* _rAttrSet ) + VclPtr ODriversSettings::CreateSpecialSettingsPage( TabPageParent _pParent, const SfxItemSet* _rAttrSet ) { OUString eType = ODbDataSourceAdministrationHelper::getDatasourceType( *_rAttrSet ); DataSourceMetaData aMetaData( eType ); - return VclPtr::Create( _pParent, *_rAttrSet, aMetaData ); + return VclPtr::Create( _pParent.pParent, *_rAttrSet, aMetaData ); } } // namespace dbaui -- cgit