author | drw <drw> | 2004-04-08 00:22:39 (UTC) |
---|---|---|
committer | drw <drw> | 2004-04-08 00:22:39 (UTC) |
commit | 8c54ad421c7bee65b2a1442ce85c09f2eff3efc6 (patch) (side-by-side diff) | |
tree | 9ed0d01e5afc0ac7ec418b2cf3115d783cc0f186 | |
parent | c968f44205a5da7dc37029e701f527450692e39a (diff) | |
download | opie-8c54ad421c7bee65b2a1442ce85c09f2eff3efc6.zip opie-8c54ad421c7bee65b2a1442ce85c09f2eff3efc6.tar.gz opie-8c54ad421c7bee65b2a1442ce85c09f2eff3efc6.tar.bz2 |
Save proxy information
-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 @@ -46,97 +46,134 @@ using namespace Opie::Ui; OIpkgConfigDlg::OIpkgConfigDlg( OIpkg *ipkg, bool installOptions, QWidget *parent ) : QDialog( parent, QString::null, true ) , m_ipkg( ipkg ) , m_configs( 0x0 ) , m_installOptions( installOptions ) , m_serverNew( false ) , m_serverCurrent( -1 ) , m_destNew( false ) , m_destCurrent( -1 ) , m_layout( this, 2, 4 ) , m_tabWidget( this ) { setCaption( tr( "Configuration" ) ); // Initialize configuration widgets if ( !installOptions ) { initServerWidget(); initDestinationWidget(); initProxyWidget(); } initOptionsWidget(); // Load configuration information initData(); // Setup tabs for all info m_layout.addWidget( &m_tabWidget ); if ( !m_installOptions ) { m_tabWidget.addTab( m_serverWidget, "packagemanager/servertab", tr( "Servers" ) ); m_tabWidget.addTab( m_destWidget, "packagemanager/desttab", tr( "Destinations" ) ); 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(); } void OIpkgConfigDlg::reject() { if ( m_configs ) delete m_configs; } void OIpkgConfigDlg::initServerWidget() { m_serverWidget = new QWidget( this ); // Initialize UI QVBoxLayout *vb = new QVBoxLayout( m_serverWidget ); QScrollView *sv = new QScrollView( m_serverWidget ); vb->addWidget( sv, 0, 0 ); sv->setResizePolicy( QScrollView::AutoOneFit ); sv->setFrameStyle( QFrame::NoFrame ); QWidget *container = new QWidget( sv->viewport() ); sv->addChild( container ); QGridLayout *layout = new QGridLayout( container, 3, 2, 2, 4 ); m_serverList = new QListBox( container ); m_serverList->setSizePolicy( QSizePolicy( QSizePolicy::Preferred, QSizePolicy::Preferred ) ); connect( m_serverList, SIGNAL(highlighted(int)), this, SLOT(slotServerEdit(int)) ); layout->addMultiCellWidget( m_serverList, 0, 0, 0, 1 ); QPushButton *btn = new QPushButton( Resource::loadPixmap( "new" ), tr( "New" ), container ); connect( btn, SIGNAL(clicked()), this, SLOT(slotServerNew()) ); layout->addWidget( btn, 1, 0 ); btn = new QPushButton( Resource::loadPixmap( "trash" ), tr( "Delete" ), container ); connect( btn, SIGNAL(clicked()), this, SLOT(slotServerDelete()) ); |