-rw-r--r-- | noncore/settings/packagemanager/oipkgconfigdlg.cpp | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/noncore/settings/packagemanager/oipkgconfigdlg.cpp b/noncore/settings/packagemanager/oipkgconfigdlg.cpp index 592de3e..74e7137 100644 --- a/noncore/settings/packagemanager/oipkgconfigdlg.cpp +++ b/noncore/settings/packagemanager/oipkgconfigdlg.cpp @@ -78,33 +78,70 @@ OIpkgConfigDlg::OIpkgConfigDlg( OIpkg *ipkg, bool installOptions, QWidget *paren m_tabWidget.addTab( m_proxyWidget, "packagemanager/proxytab", tr( "Proxies" ) ); m_tabWidget.addTab( m_optionsWidget, "exec", tr( "Options" ) ); m_tabWidget.setCurrentTab( tr( "Servers" ) ); } else { m_tabWidget.addTab( m_optionsWidget, "exec", tr( "Options" ) ); } //showMaximized(); } void OIpkgConfigDlg::accept() { // Save server, destination and proxy configuration if ( !m_installOptions ) + { + // Update proxy information before saving settings + OConfItem *confItem = findConfItem( OConfItem::Option, "http_proxy" ); + if ( confItem ) + { + confItem->setValue( m_proxyHttpServer->text() ); + confItem->setActive( m_proxyHttpActive->isChecked() ); + } + else + m_configs->append( new OConfItem( QString::null, OConfItem::Option, "http_proxy", + m_proxyHttpServer->text(), m_proxyHttpActive->isChecked() ) ); + + confItem = findConfItem( OConfItem::Option, "ftp_proxy" ); + if ( confItem ) + { + confItem->setValue( m_proxyFtpServer->text() ); + confItem->setActive( m_proxyFtpActive->isChecked() ); + } + else + m_configs->append( new OConfItem( QString::null, OConfItem::Option, "ftp_proxy", + m_proxyFtpServer->text(), m_proxyFtpActive->isChecked() ) ); + + confItem = findConfItem( OConfItem::Option, "proxy_username" ); + if ( confItem ) + confItem->setValue( m_proxyUsername->text() ); + else + m_configs->append( new OConfItem( QString::null, OConfItem::Option, "proxy_username", + m_proxyUsername->text() ) ); + + confItem = findConfItem( OConfItem::Option, "proxy_password" ); + if ( confItem ) + confItem->setValue( m_proxyPassword->text() ); + else + m_configs->append( new OConfItem( QString::null, OConfItem::Option, "proxy_password", + m_proxyPassword->text() ) ); + m_ipkg->setConfigItems( m_configs ); + } // Save options configuration int options = 0; if ( m_optForceDepends->isChecked() ) options |= FORCE_DEPENDS; if ( m_optForceReinstall->isChecked() ) options |= FORCE_REINSTALL; if ( m_optForceRemove->isChecked() ) options |= FORCE_REMOVE; if ( m_optForceOverwrite->isChecked() ) options |= FORCE_OVERWRITE; m_ipkg->setIpkgExecOptions( options ); m_ipkg->setIpkgExecVerbosity( m_optVerboseIpkg->currentItem() ); QDialog::accept(); } |