dbaccess/source/ui/dlg/DBSetupConnectionPages.cxx | 34 +-- dbaccess/source/ui/dlg/DBSetupConnectionPages.hxx | 11 - dbaccess/source/ui/dlg/admincontrols.cxx | 224 ++-------------------- dbaccess/source/ui/dlg/admincontrols.hxx | 40 --- 4 files changed, 51 insertions(+), 258 deletions(-)
New commits: commit ebca63dc3f1e8a314599d3a9e2739bd6ced9efab Author: Caolán McNamara <caol...@redhat.com> AuthorDate: Fri Aug 2 10:12:33 2019 +0100 Commit: Caolán McNamara <caol...@redhat.com> CommitDate: Fri Aug 2 15:03:54 2019 +0200 drop newly unused MySQLNativeSettings Change-Id: I11801ea43d69b3f79d8fba1305d4d9c8c199d29b Reviewed-on: https://gerrit.libreoffice.org/76845 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caol...@redhat.com> Tested-by: Caolán McNamara <caol...@redhat.com> diff --git a/dbaccess/source/ui/dlg/admincontrols.cxx b/dbaccess/source/ui/dlg/admincontrols.cxx index 5ba2a5b313f3..33bd77cb27c4 100644 --- a/dbaccess/source/ui/dlg/admincontrols.cxx +++ b/dbaccess/source/ui/dlg/admincontrols.cxx @@ -30,204 +30,6 @@ namespace dbaui { // MySQLNativeSettings - MySQLNativeSettings::MySQLNativeSettings( vcl::Window& _rParent, const Link<void*,void>& _rControlModificationLink ) - :TabPage( &_rParent, "MysqlNativeSettings", "dbaccess/ui/mysqlnativesettings.ui" ), - m_aControlModificationLink(_rControlModificationLink) - { - get(m_pDatabaseNameLabel, "dbnamelabel"); - get(m_pDatabaseName, "dbname"); - get(m_pHostPortRadio, "hostport"); - get(m_pSocketRadio, "socketlabel"); - get(m_pNamedPipeRadio, "namedpipelabel"); - get(m_pHostNameLabel, "serverlabel"); - get(m_pHostName, "server"); - get(m_pPortLabel, "portlabel"); - get(m_pPort, "port"); - m_pPort->SetUseThousandSep(false); - get(m_pDefaultPort, "defaultport"); - get(m_pSocket, "socket"); - get(m_pNamedPipe, "namedpipe"); - - m_pHostName->SetText("localhost"); - - m_pDatabaseName->SetModifyHdl( LINK(this, MySQLNativeSettings, EditModifyHdl) ); - m_pHostName->SetModifyHdl( LINK(this, MySQLNativeSettings, EditModifyHdl) ); - m_pPort->SetModifyHdl( LINK(this, MySQLNativeSettings, EditModifyHdl) ); - m_pSocket->SetModifyHdl( LINK(this, MySQLNativeSettings, EditModifyHdl) ); - m_pNamedPipe->SetModifyHdl( LINK(this, MySQLNativeSettings, EditModifyHdl) ); - m_pSocketRadio->SetToggleHdl( LINK(this, MySQLNativeSettings, RadioToggleHdl) ); - m_pNamedPipeRadio->SetToggleHdl( LINK(this, MySQLNativeSettings, RadioToggleHdl) ); - m_pHostPortRadio->SetToggleHdl( LINK(this, MySQLNativeSettings, RadioToggleHdl) ); - - // sockets are available on Unix systems only, named pipes only on Windows -#ifdef UNX - m_pNamedPipeRadio->Hide(); - m_pNamedPipe->Hide(); -#else - m_pSocketRadio->Hide(); - m_pSocket->Hide(); -#endif - } - - IMPL_LINK(MySQLNativeSettings, RadioToggleHdl, RadioButton&, rRadioButton, void) - { - if (&rRadioButton == &*m_pSocketRadio || &rRadioButton == &*m_pNamedPipeRadio) - m_aControlModificationLink.Call(&rRadioButton); - m_pHostNameLabel->Enable(m_pHostPortRadio->IsChecked()); - m_pHostName->Enable(m_pHostPortRadio->IsChecked()); - m_pPortLabel->Enable(m_pHostPortRadio->IsChecked()); - m_pPort->Enable(m_pHostPortRadio->IsChecked()); - m_pDefaultPort->Enable(m_pHostPortRadio->IsChecked()); - m_pSocket->Enable(m_pSocketRadio->IsChecked()); - m_pNamedPipe->Enable(m_pNamedPipeRadio->IsChecked()); - if (&rRadioButton == &*m_pHostPortRadio) - { - if (rRadioButton.IsChecked()) - m_pHostName->SetText(m_sHostNameUserText); - else - m_pHostName->SetText("localhost"); - } - } - - IMPL_LINK(MySQLNativeSettings, EditModifyHdl, Edit&, rEdit, void) - { - m_aControlModificationLink.Call(&rEdit); - - if (&rEdit == m_pHostName.get()) - { - if (m_pHostName->IsEnabled()) - m_sHostNameUserText = m_pHostName->GetText(); - } - } - - MySQLNativeSettings::~MySQLNativeSettings() - { - disposeOnce(); - } - - void MySQLNativeSettings::dispose() - { - m_pDatabaseNameLabel.clear(); - m_pDatabaseName.clear(); - m_pHostPortRadio.clear(); - m_pSocketRadio.clear(); - m_pNamedPipeRadio.clear(); - m_pHostNameLabel.clear(); - m_pHostName.clear(); - m_pPortLabel.clear(); - m_pPort.clear(); - m_pDefaultPort.clear(); - m_pSocket.clear(); - m_pNamedPipe.clear(); - TabPage::dispose(); - } - - void MySQLNativeSettings::fillControls( std::vector< std::unique_ptr<ISaveValueWrapper> >& _rControlList ) - { - _rControlList.emplace_back( new OSaveValueWrapper< Edit >( m_pDatabaseName ) ); - _rControlList.emplace_back( new OSaveValueWrapper< Edit >( m_pHostName ) ); - _rControlList.emplace_back( new OSaveValueWrapper< Edit >( m_pPort ) ); - _rControlList.emplace_back( new OSaveValueWrapper< Edit >( m_pSocket ) ); - _rControlList.emplace_back( new OSaveValueWrapper< Edit >( m_pNamedPipe ) ); - } - - void MySQLNativeSettings::fillWindows( std::vector< std::unique_ptr<ISaveValueWrapper> >& _rControlList ) - { - _rControlList.emplace_back( new ODisableWrapper< FixedText >( m_pDatabaseNameLabel ) ); - _rControlList.emplace_back( new ODisableWrapper< FixedText >( m_pHostNameLabel ) ); - _rControlList.emplace_back( new ODisableWrapper< FixedText >( m_pPortLabel ) ); - _rControlList.emplace_back( new ODisableWrapper< FixedText >( m_pDefaultPort ) ); - _rControlList.emplace_back( new ODisableWrapper< RadioButton >( m_pSocketRadio ) ); - _rControlList.emplace_back( new ODisableWrapper< RadioButton >( m_pNamedPipeRadio ) ); - } - - bool MySQLNativeSettings::FillItemSet( SfxItemSet* _rSet ) - { - bool bChangedSomething = false; - - OGenericAdministrationPage::fillString( *_rSet, m_pHostName, DSID_CONN_HOSTNAME, bChangedSomething ); - OGenericAdministrationPage::fillString( *_rSet, m_pDatabaseName, DSID_DATABASENAME, bChangedSomething ); - OGenericAdministrationPage::fillInt32 ( *_rSet, m_pPort, DSID_MYSQL_PORTNUMBER, bChangedSomething ); -#ifdef UNX - OGenericAdministrationPage::fillString( *_rSet, m_pSocket, DSID_CONN_SOCKET, bChangedSomething ); -#else - OGenericAdministrationPage::fillString( *_rSet, m_pNamedPipe, DSID_NAMED_PIPE, bChangedSomething ); -#endif - - return bChangedSomething; - } - - void MySQLNativeSettings::implInitControls(const SfxItemSet& _rSet ) - { - const SfxBoolItem* pInvalid = _rSet.GetItem<SfxBoolItem>(DSID_INVALID_SELECTION); - bool bValid = !pInvalid || !pInvalid->GetValue(); - if ( !bValid ) - return; - - const SfxStringItem* pDatabaseName = _rSet.GetItem<SfxStringItem>(DSID_DATABASENAME); - const SfxStringItem* pHostName = _rSet.GetItem<SfxStringItem>(DSID_CONN_HOSTNAME); - const SfxInt32Item* pPortNumber = _rSet.GetItem<SfxInt32Item>(DSID_MYSQL_PORTNUMBER); - const SfxStringItem* pSocket = _rSet.GetItem<SfxStringItem>(DSID_CONN_SOCKET); - const SfxStringItem* pNamedPipe = _rSet.GetItem<SfxStringItem>(DSID_NAMED_PIPE); - - m_pDatabaseName->SetText( pDatabaseName->GetValue() ); - m_pDatabaseName->ClearModifyFlag(); - - m_pHostName->SetText( pHostName->GetValue() ); - m_pHostName->ClearModifyFlag(); - - m_pPort->SetValue( pPortNumber->GetValue() ); - m_pPort->ClearModifyFlag(); - - m_pSocket->SetText( pSocket->GetValue() ); - m_pSocket->ClearModifyFlag(); - - m_pNamedPipe->SetText( pNamedPipe->GetValue() ); - m_pNamedPipe->ClearModifyFlag(); - - // if a socket (on Unix) or a pipe name (on Windows) is given, this is preferred over - // the port -#ifdef UNX - RadioButton& rSocketPipeRadio = *m_pSocketRadio; - const SfxStringItem* pSocketPipeItem = pSocket; -#else - RadioButton& rSocketPipeRadio = *m_pNamedPipeRadio; - const SfxStringItem* pSocketPipeItem = pNamedPipe; -#endif - const OUString& sSocketPipe( pSocketPipeItem->GetValue() ); - if ( !sSocketPipe.isEmpty() ) - rSocketPipeRadio.Check(); - else - m_pHostPortRadio->Check(); - } - - bool MySQLNativeSettings::canAdvance() const - { - if ( m_pDatabaseName->GetText().isEmpty() ) - return false; - - if ( m_pHostPortRadio->IsChecked() - && ( ( m_pHostName->GetText().isEmpty() ) - || ( m_pPort->GetText().isEmpty() ) - ) - ) - return false; - -#ifdef UNX - if ( ( m_pSocketRadio->IsChecked() ) - && ( m_pSocket->GetText().isEmpty() ) - ) -#else - if ( ( m_pNamedPipeRadio->IsChecked() ) - && ( m_pNamedPipe->GetText().isEmpty() ) - ) -#endif - return false; - - return true; - } - - // MySQLNativeSettings DBMySQLNativeSettings::DBMySQLNativeSettings(weld::Widget* pParent, const Link<void*,void>& rControlModificationLink) : m_xBuilder(Application::CreateBuilder(pParent, "dbaccess/ui/mysqlnativesettings.ui")) , m_xContainer(m_xBuilder->weld_widget("MysqlNativeSettings")) diff --git a/dbaccess/source/ui/dlg/admincontrols.hxx b/dbaccess/source/ui/dlg/admincontrols.hxx index 775f843d9ad8..0c406498e5dc 100644 --- a/dbaccess/source/ui/dlg/admincontrols.hxx +++ b/dbaccess/source/ui/dlg/admincontrols.hxx @@ -22,48 +22,12 @@ #include "adminpages.hxx" -#include <vcl/edit.hxx> -#include <vcl/field.hxx> -#include <vcl/fixed.hxx> +#include <vcl/weld.hxx> namespace dbaui { // MySQLNativeSettings - class MySQLNativeSettings : public TabPage - { - private: - VclPtr<FixedText> m_pDatabaseNameLabel; - VclPtr<Edit> m_pDatabaseName; - VclPtr<RadioButton> m_pHostPortRadio; - VclPtr<RadioButton> m_pSocketRadio; - VclPtr<RadioButton> m_pNamedPipeRadio; - VclPtr<FixedText> m_pHostNameLabel; - VclPtr<Edit> m_pHostName; - VclPtr<FixedText> m_pPortLabel; - VclPtr<NumericField> m_pPort; - VclPtr<FixedText> m_pDefaultPort; - VclPtr<Edit> m_pSocket; - VclPtr<Edit> m_pNamedPipe; - Link<void*,void> m_aControlModificationLink; - OUString m_sHostNameUserText; - - DECL_LINK(RadioToggleHdl, RadioButton&, void); - DECL_LINK(EditModifyHdl, Edit&, void); - - public: - MySQLNativeSettings( vcl::Window& _rParent, const Link<void*,void>& _rControlModificationLink ); - virtual ~MySQLNativeSettings() override; - virtual void dispose() override; - void fillControls( std::vector< std::unique_ptr<ISaveValueWrapper> >& _rControlList ); - void fillWindows( std::vector< std::unique_ptr<ISaveValueWrapper> >& _rControlList ); - - bool FillItemSet( SfxItemSet* _rCoreAttrs ); - void implInitControls( const SfxItemSet& _rSet ); - - bool canAdvance() const; - }; - class DBMySQLNativeSettings { private: commit 6eda61d6b994b422c988b552b5316a87c9c03654 Author: Caolán McNamara <caol...@redhat.com> AuthorDate: Fri Aug 2 10:10:54 2019 +0100 Commit: Caolán McNamara <caol...@redhat.com> CommitDate: Fri Aug 2 15:03:39 2019 +0200 weld MySQLNativeSetupPage Change-Id: Ie27649de602241936378f1e937100718d0c95d5e Reviewed-on: https://gerrit.libreoffice.org/76844 Reviewed-by: Caolán McNamara <caol...@redhat.com> Tested-by: Caolán McNamara <caol...@redhat.com> diff --git a/dbaccess/source/ui/dlg/DBSetupConnectionPages.cxx b/dbaccess/source/ui/dlg/DBSetupConnectionPages.cxx index 20f9ec53e4cb..2287be7a8934 100644 --- a/dbaccess/source/ui/dlg/DBSetupConnectionPages.cxx +++ b/dbaccess/source/ui/dlg/DBSetupConnectionPages.cxx @@ -294,13 +294,12 @@ using namespace ::com::sun::star; } // MySQLNativeSetupPage - MySQLNativeSetupPage::MySQLNativeSetupPage( vcl::Window* _pParent, const SfxItemSet& _rCoreAttrs ) - :OGenericAdministrationPage( _pParent, "DBWizMysqlNativePage", "dbaccess/ui/dbwizmysqlnativepage.ui", _rCoreAttrs ) - ,m_aMySQLSettings ( VclPtr<MySQLNativeSettings>::Create(*get<VclVBox>("MySQLSettingsContainer"), LINK(this, OGenericAdministrationPage, OnControlModified)) ) + MySQLNativeSetupPage::MySQLNativeSetupPage( TabPageParent pParent, const SfxItemSet& rCoreAttrs ) + : OGenericAdministrationPage(pParent, "dbaccess/ui/dbwizmysqlnativepage.ui", "DBWizMysqlNativePage", rCoreAttrs) + , m_xHelpText(m_xBuilder->weld_label("helptext")) + , m_xSettingsContainer(m_xBuilder->weld_container("MySQLSettingsContainer")) + , m_xMySQLSettings(new DBMySQLNativeSettings(m_xSettingsContainer.get(), LINK(this, OGenericAdministrationPage, OnControlModified))) { - get(m_pHelpText, "helptext"); - m_aMySQLSettings->Show(); - SetRoadmapStateValue(false); } @@ -311,35 +310,34 @@ using namespace ::com::sun::star; void MySQLNativeSetupPage::dispose() { - m_aMySQLSettings.disposeAndClear(); - m_pHelpText.clear(); + m_xMySQLSettings.reset(); OGenericAdministrationPage::dispose(); - } + } - VclPtr<OGenericAdministrationPage> MySQLNativeSetupPage::Create( vcl::Window* pParent, const SfxItemSet& _rAttrSet ) + VclPtr<OGenericAdministrationPage> MySQLNativeSetupPage::Create(TabPageParent pParent, const SfxItemSet& rAttrSet) { - return VclPtr<MySQLNativeSetupPage>::Create( pParent, _rAttrSet ); + return VclPtr<MySQLNativeSetupPage>::Create(pParent, rAttrSet); } void MySQLNativeSetupPage::fillControls( std::vector< std::unique_ptr<ISaveValueWrapper> >& _rControlList ) { - m_aMySQLSettings->fillControls( _rControlList ); + m_xMySQLSettings->fillControls( _rControlList ); } - void MySQLNativeSetupPage::fillWindows( std::vector< std::unique_ptr<ISaveValueWrapper> >& _rControlList ) + void MySQLNativeSetupPage::fillWindows(std::vector<std::unique_ptr<ISaveValueWrapper>>& rControlList) { - _rControlList.emplace_back( new ODisableWrapper< FixedText >( m_pHelpText ) ); - m_aMySQLSettings->fillWindows( _rControlList ); + rControlList.emplace_back(new ODisableWidgetWrapper<weld::Label>(m_xHelpText.get())); + m_xMySQLSettings->fillWindows(rControlList); } bool MySQLNativeSetupPage::FillItemSet( SfxItemSet* _rSet ) { - return m_aMySQLSettings->FillItemSet( _rSet ); + return m_xMySQLSettings->FillItemSet( _rSet ); } void MySQLNativeSetupPage::implInitControls( const SfxItemSet& _rSet, bool _bSaveValue ) { - m_aMySQLSettings->implInitControls( _rSet ); + m_xMySQLSettings->implInitControls( _rSet ); OGenericAdministrationPage::implInitControls( _rSet, _bSaveValue ); @@ -348,7 +346,7 @@ using namespace ::com::sun::star; void MySQLNativeSetupPage::callModifiedHdl(void*) { - SetRoadmapStateValue( m_aMySQLSettings->canAdvance() ); + SetRoadmapStateValue( m_xMySQLSettings->canAdvance() ); OGenericAdministrationPage::callModifiedHdl(); } diff --git a/dbaccess/source/ui/dlg/DBSetupConnectionPages.hxx b/dbaccess/source/ui/dlg/DBSetupConnectionPages.hxx index 02953c0b1a0a..dd0717f47a54 100644 --- a/dbaccess/source/ui/dlg/DBSetupConnectionPages.hxx +++ b/dbaccess/source/ui/dlg/DBSetupConnectionPages.hxx @@ -103,15 +103,16 @@ namespace dbaui class MySQLNativeSetupPage : public OGenericAdministrationPage { private: - VclPtr<FixedText> m_pHelpText; - VclPtr<MySQLNativeSettings> m_aMySQLSettings; + std::unique_ptr<weld::Label> m_xHelpText; + std::unique_ptr<weld::Container> m_xSettingsContainer; + std::unique_ptr<DBMySQLNativeSettings> m_xMySQLSettings; public: - MySQLNativeSetupPage( vcl::Window* _pParent, const SfxItemSet& _rCoreAttrs ); - virtual ~MySQLNativeSetupPage() override; + MySQLNativeSetupPage(TabPageParent pParent, const SfxItemSet& rCoreAttrs); virtual void dispose() override; + virtual ~MySQLNativeSetupPage() override; - static VclPtr<OGenericAdministrationPage> Create( vcl::Window* pParent, const SfxItemSet& _rAttrSet ); + static VclPtr<OGenericAdministrationPage> Create(TabPageParent pParent, const SfxItemSet& rAttrSet); protected: virtual void fillControls( std::vector< std::unique_ptr<ISaveValueWrapper> >& _rControlList ) override; diff --git a/dbaccess/source/ui/dlg/admincontrols.cxx b/dbaccess/source/ui/dlg/admincontrols.cxx index e45e14379351..5ba2a5b313f3 100644 --- a/dbaccess/source/ui/dlg/admincontrols.cxx +++ b/dbaccess/source/ui/dlg/admincontrols.cxx @@ -369,6 +369,32 @@ namespace dbaui m_xHostPortRadio->set_active(true); } + bool DBMySQLNativeSettings::canAdvance() const + { + if (m_xDatabaseName->get_text().isEmpty()) + return false; + + if ( m_xHostPortRadio->get_active() + && ( ( m_xHostName->get_text().isEmpty() ) + || ( m_xPort->get_text().isEmpty() ) + ) + ) + return false; + +#ifdef UNX + if ( ( m_xSocketRadio->get_active() ) + && ( m_xSocket->get_text().isEmpty() ) + ) +#else + if ( ( m_xNamedPipeRadio->get_active() ) + && ( m_xNamedPipe->get_text().isEmpty() ) + ) +#endif + return false; + + return true; + } + } // namespace dbaui /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/dbaccess/source/ui/dlg/admincontrols.hxx b/dbaccess/source/ui/dlg/admincontrols.hxx index 71366a09266f..775f843d9ad8 100644 --- a/dbaccess/source/ui/dlg/admincontrols.hxx +++ b/dbaccess/source/ui/dlg/admincontrols.hxx @@ -93,6 +93,8 @@ namespace dbaui bool FillItemSet( SfxItemSet* rCoreAttrs ); void implInitControls( const SfxItemSet& _rSet ); + + bool canAdvance() const; }; } // namespace dbaui _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits