Diffstat (limited to 'noncore/settings/aqpkg/installdlgimpl.cpp') (more/less context) (show whitespace changes)
-rw-r--r-- | noncore/settings/aqpkg/installdlgimpl.cpp | 128 |
1 files changed, 91 insertions, 37 deletions
diff --git a/noncore/settings/aqpkg/installdlgimpl.cpp b/noncore/settings/aqpkg/installdlgimpl.cpp index 75ce1a1..65aaa32 100644 --- a/noncore/settings/aqpkg/installdlgimpl.cpp +++ b/noncore/settings/aqpkg/installdlgimpl.cpp @@ -16,28 +16,36 @@ ***************************************************************************/ +#include <stdio.h> + #ifdef QWS #include <qpe/config.h> #include <qpe/qpeapplication.h> +#include <qpe/resource.h> #include <qpe/storage.h> #endif -#include <qmultilineedit.h> -#include <qdialog.h> -#include <qcombobox.h> #include <qcheckbox.h> -#include <qpushbutton.h> +#include <qcombobox.h> +#include <qdialog.h> +#include <qgroupbox.h> +#include <qmultilineedit.h> #include <qlabel.h> - +#include <qlayout.h> +#include <qpushbutton.h> #include "datamgr.h" -#include "instoptionsimpl.h" #include "destination.h" +#include "instoptionsimpl.h" #include "installdlgimpl.h" +#include "ipkg.h" #include "utils.h" #include "global.h" -InstallDlgImpl::InstallDlgImpl( vector<InstallData> &packageList, DataManager *dataManager, QWidget * parent, const char* name, bool modal, WFlags fl ) - : InstallDlg( parent, name, modal, fl ) +InstallDlgImpl::InstallDlgImpl( vector<InstallData> &packageList, DataManager *dataManager, const char *title = 0 ) + : QWidget( 0, 0, 0 ) { + setCaption( title ); + init( TRUE ); + pIpkg = 0; upgradePackages = false; @@ -59,7 +67,7 @@ InstallDlgImpl::InstallDlgImpl( vector<InstallData> &packageList, DataManager *d // Output text is read only output->setReadOnly( true ); - QFont f( "helvetica" ); - f.setPointSize( 10 ); - output->setFont( f ); +// QFont f( "helvetica" ); +// f.setPointSize( 10 ); +// output->setFont( f ); @@ -78,7 +86,7 @@ InstallDlgImpl::InstallDlgImpl( vector<InstallData> &packageList, DataManager *d vector<InstallData>::iterator it; // setup package data - QString remove = "Remove\n"; - QString install = "\nInstall\n"; - QString upgrade = "\nUpgrade\n"; + QString remove = tr( "Remove\n" ); + QString install = tr( "Install\n" ); + QString upgrade = tr( "Upgrade\n" ); for ( it = packageList.begin() ; it != packageList.end() ; ++it ) { @@ -87,29 +95,33 @@ InstallDlgImpl::InstallDlgImpl( vector<InstallData> &packageList, DataManager *d { installList.push_back( item ); - install += " " + item.packageName + "\n"; + install.append( QString( " %1\n" ).arg( item.packageName ) ); } else if ( item.option == "D" ) { removeList.push_back( item ); - remove += " " + item.packageName + "\n"; + remove.append( QString( " %1\n" ).arg( item.packageName ) ); } else if ( item.option == "U" || item.option == "R" ) { updateList.push_back( item ); - QString type = " (Upgrade)"; + QString type; if ( item.option == "R" ) - type = " (ReInstall)"; - upgrade += " " + item.packageName + type + "\n"; + type = tr( "(ReInstall)" ); + else + type = tr( "(Upgrade)" ); + upgrade.append( QString( " %1 %2\n" ).arg( item.packageName ).arg( type ) ); } } - output->setText( remove + install + upgrade ); + output->setText( QString( "%1\n%2\n%3\n" ).arg( remove ).arg( install ).arg( upgrade ) ); displayAvailableSpace( destination->currentText() ); } -InstallDlgImpl::InstallDlgImpl( Ipkg *ipkg, QString initialText, QWidget *parent, const char *name, bool modal, WFlags fl ) - : InstallDlg( parent, name, modal, fl ) +InstallDlgImpl::InstallDlgImpl( Ipkg *ipkg, QString initialText, const char *title = 0 ) + : QWidget( 0, 0, 0 ) { + setCaption( title ); + init( FALSE ); pIpkg = ipkg; output->setText( initialText ); @@ -119,12 +131,50 @@ InstallDlgImpl::InstallDlgImpl( Ipkg *ipkg, QString initialText, QWidget *parent InstallDlgImpl::~InstallDlgImpl() { + if ( pIpkg ) + delete pIpkg; } -bool InstallDlgImpl :: showDlg() +void InstallDlgImpl :: init( bool displayextrainfo ) +{ + QGridLayout *layout = new QGridLayout( this ); + layout->setSpacing( 4 ); + layout->setMargin( 4 ); + + if ( displayextrainfo ) + { + QLabel *label = new QLabel( tr( "Destination" ), this ); + layout->addWidget( label, 0, 0 ); + destination = new QComboBox( FALSE, this ); + layout->addWidget( destination, 0, 1 ); + connect( destination, SIGNAL( highlighted( const QString & ) ), + this, SLOT( displayAvailableSpace( const QString & ) ) ); + + QLabel *label2 = new QLabel( tr( "Space Avail" ), this ); + layout->addWidget( label2, 1, 0 ); + txtAvailableSpace = new QLabel( "", this ); + layout->addWidget( txtAvailableSpace, 1, 1 ); + } + else { - showMaximized(); - bool ret = exec(); + destination = 0x0; + txtAvailableSpace = 0x0; + } + + QGroupBox *GroupBox2 = new QGroupBox( 0, Qt::Vertical, tr( "Output" ), this ); + GroupBox2->layout()->setSpacing( 0 ); + GroupBox2->layout()->setMargin( 4 ); + + QVBoxLayout *GroupBox2Layout = new QVBoxLayout( GroupBox2->layout() ); + output = new QMultiLineEdit( GroupBox2 ); + GroupBox2Layout->addWidget( output ); + layout->addMultiCellWidget( GroupBox2, 2, 2, 0, 1 ); + + btnInstall = new QPushButton( Resource::loadPixmap( "aqpkg/apply" ), tr( "Start" ), this ); + layout->addWidget( btnInstall, 3, 0 ); + connect( btnInstall, SIGNAL( clicked() ), this, SLOT( installSelected() ) ); - return ret; + btnOptions = new QPushButton( Resource::loadPixmap( "aqpkg/config" ), tr( "Options" ), this ); + layout->addWidget( btnOptions, 3, 1 ); + connect( btnOptions, SIGNAL( clicked() ), this, SLOT( optionsSelected() ) ); } @@ -146,19 +196,20 @@ void InstallDlgImpl :: optionsSelected() void InstallDlgImpl :: installSelected() { - if ( btnInstall->text() == "Abort" ) + if ( btnInstall->text() == tr( "Abort" ) ) { if ( pIpkg ) { - displayText( "\n**** User Clicked ABORT ***" ); + displayText( tr( "\n**** User Clicked ABORT ***" ) ); pIpkg->abort(); - displayText( "**** Process Aborted ****" ); + displayText( tr( "**** Process Aborted ****" ) ); } btnInstall->setText( tr( "Close" ) ); + btnInstall->setIconSet( Resource::loadPixmap( "enter" ) ); return; } else if ( btnInstall->text() == tr( "Close" ) ) { - done( 1 ); + emit reloadData( this ); return; } @@ -168,10 +219,9 @@ void InstallDlgImpl :: installSelected() // btnInstall->setEnabled( false ); - btnInstall->setText( "Abort" ); - + btnInstall->setText( tr( "Abort" ) ); + btnInstall->setIconSet( Resource::loadPixmap( "close" ) ); if ( pIpkg ) { output->setText( "" ); - connect( pIpkg, SIGNAL(outputText(const QString &)), this, SLOT(displayText(const QString &))); pIpkg->runIpkg(); @@ -243,4 +293,5 @@ void InstallDlgImpl :: installSelected() delete pIpkg; + pIpkg = 0; } @@ -248,6 +299,7 @@ void InstallDlgImpl :: installSelected() // btnInstall->setEnabled( true ); btnInstall->setText( tr( "Close" ) ); + btnInstall->setIconSet( Resource::loadPixmap( "enter" ) ); - if ( destination->currentText() != 0 && destination->currentText() != "" ) + if ( destination && destination->currentText() != 0 && destination->currentText() != "" ) displayAvailableSpace( destination->currentText() ); } @@ -256,6 +308,7 @@ void InstallDlgImpl :: installSelected() void InstallDlgImpl :: displayText(const QString &text ) { - QString t = output->text() + "\n" + text; - output->setText( t ); + //output->setText( QString( "%1\n%2" ).arg( output->text() ).arg( text ) ); + QString newtext = QString( "%1\n%2" ).arg( output->text() ).arg( text ); + output->setText( newtext ); output->setCursorPosition( output->numLines(), 0 ); } @@ -285,6 +338,7 @@ void InstallDlgImpl :: displayAvailableSpace( const QString &text ) } else - space = "Unknown"; + space = tr( "Unknown" ); + if ( txtAvailableSpace ) txtAvailableSpace->setText( space ); } |