summaryrefslogtreecommitdiff
Unidiff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/settings/packagemanager/mainwindow.cpp26
-rw-r--r--noncore/settings/packagemanager/mainwindow.h5
-rw-r--r--noncore/settings/packagemanager/packageinfodlg.cpp34
-rw-r--r--noncore/settings/packagemanager/packageinfodlg.h9
4 files changed, 63 insertions, 11 deletions
diff --git a/noncore/settings/packagemanager/mainwindow.cpp b/noncore/settings/packagemanager/mainwindow.cpp
index 486561d..05f21bc 100644
--- a/noncore/settings/packagemanager/mainwindow.cpp
+++ b/noncore/settings/packagemanager/mainwindow.cpp
@@ -44,12 +44,13 @@
44 44
45#include "mainwindow.h" 45#include "mainwindow.h"
46#include "installdlg.h" 46#include "installdlg.h"
47#include "filterdlg.h" 47#include "filterdlg.h"
48#include "promptdlg.h" 48#include "promptdlg.h"
49#include "entrydlg.h" 49#include "entrydlg.h"
50#include "packageinfodlg.h"
50 51
51MainWindow::MainWindow( QWidget *parent, const char *name, WFlags fl ) 52MainWindow::MainWindow( QWidget *parent, const char *name, WFlags fl )
52 : QMainWindow( parent, name, fl || WStyle_ContextHelp ) 53 : QMainWindow( parent, name, fl || WStyle_ContextHelp )
53 , m_config( "packman" ) 54 , m_config( "packman" )
54 , m_packman( &m_config, this ) 55 , m_packman( &m_config, this )
55 , m_menuBar( this ) 56 , m_menuBar( this )
@@ -114,12 +115,14 @@ void MainWindow::closeEvent( QCloseEvent *event )
114 115
115void MainWindow::initPackageList() 116void MainWindow::initPackageList()
116{ 117{
117 m_packageList.addColumn( tr( "Packages" ) ); 118 m_packageList.addColumn( tr( "Packages" ) );
118 QWhatsThis::add( &m_packageList, tr( "This is a listing of all packages.\n\nA blue dot next to the package name indicates that the package is currently installed.\n\nA blue dot with a star indicates that a newer version of the package is available from the server feed.\n\nClick inside the box at the left to select a package." ) ); 119 QWhatsThis::add( &m_packageList, tr( "This is a listing of all packages.\n\nA blue dot next to the package name indicates that the package is currently installed.\n\nA blue dot with a star indicates that a newer version of the package is available from the server feed.\n\nClick inside the box at the left to select a package." ) );
119 QPEApplication::setStylusOperation( m_packageList.viewport(), QPEApplication::RightOnHold ); 120 QPEApplication::setStylusOperation( m_packageList.viewport(), QPEApplication::RightOnHold );
121 connect( &m_packageList, SIGNAL(rightButtonPressed(QListViewItem *,const QPoint &,int)),
122 this, SLOT(slotDisplayPackageInfo(QListViewItem *)) );
120} 123}
121 124
122void MainWindow::initStatusWidget() 125void MainWindow::initStatusWidget()
123{ 126{
124 QVBoxLayout *layout = new QVBoxLayout( &m_statusWidget, 4, 4 ); 127 QVBoxLayout *layout = new QVBoxLayout( &m_statusWidget, 4, 4 );
125 128
@@ -349,25 +352,25 @@ void MainWindow::slotStatusBar( int currStep )
349 352
350void MainWindow::slotUpdate() 353void MainWindow::slotUpdate()
351{ 354{
352 // Create package manager output widget 355 // Create package manager output widget
353 InstallDlg *dlg = new InstallDlg( this, &m_packman, tr( "Update package information" ), false, 356 InstallDlg *dlg = new InstallDlg( this, &m_packman, tr( "Update package information" ), false,
354 OPackage::Update ); 357 OPackage::Update );
355 connect( dlg, SIGNAL(closeInstallDlg()), this, SLOT(slotCloseInstallDlg()) ); 358 connect( dlg, SIGNAL(closeInstallDlg()), this, SLOT(slotCloseDlg()) );
356 359
357 // Display widget 360 // Display widget
358 m_widgetStack.addWidget( dlg, 3 ); 361 m_widgetStack.addWidget( dlg, 3 );
359 m_widgetStack.raiseWidget( dlg ); 362 m_widgetStack.raiseWidget( dlg );
360} 363}
361 364
362void MainWindow::slotUpgrade() 365void MainWindow::slotUpgrade()
363{ 366{
364 // Create package manager output widget 367 // Create package manager output widget
365 InstallDlg *dlg = new InstallDlg( this, &m_packman, tr( "Upgrade installed packages" ), false, 368 InstallDlg *dlg = new InstallDlg( this, &m_packman, tr( "Upgrade installed packages" ), false,
366 OPackage::Upgrade ); 369 OPackage::Upgrade );
367 connect( dlg, SIGNAL(closeInstallDlg()), this, SLOT(slotCloseInstallDlg()) ); 370 connect( dlg, SIGNAL(closeInstallDlg()), this, SLOT(slotCloseDlg()) );
368 371
369 // Display widget 372 // Display widget
370 m_widgetStack.addWidget( dlg, 3 ); 373 m_widgetStack.addWidget( dlg, 3 );
371 m_widgetStack.raiseWidget( dlg ); 374 m_widgetStack.raiseWidget( dlg );
372} 375}
373 376
@@ -408,13 +411,13 @@ void MainWindow::slotDownload()
408 // Get starting directory 411 // Get starting directory
409 QDir::setCurrent( workingDir ); 412 QDir::setCurrent( workingDir );
410 413
411 // Create package manager output widget 414 // Create package manager output widget
412 InstallDlg *dlg = new InstallDlg( this, &m_packman, tr( "Download packages" ), false, 415 InstallDlg *dlg = new InstallDlg( this, &m_packman, tr( "Download packages" ), false,
413 OPackage::Download, workingPackages ); 416 OPackage::Download, workingPackages );
414 connect( dlg, SIGNAL(closeInstallDlg()), this, SLOT(slotCloseInstallDlg()) ); 417 connect( dlg, SIGNAL(closeInstallDlg()), this, SLOT(slotCloseDlg()) );
415 418
416 // Display widget 419 // Display widget
417 m_widgetStack.addWidget( dlg, 3 ); 420 m_widgetStack.addWidget( dlg, 3 );
418 m_widgetStack.raiseWidget( dlg ); 421 m_widgetStack.raiseWidget( dlg );
419 } 422 }
420} 423}
@@ -506,20 +509,20 @@ void MainWindow::slotApply()
506 509
507 // Create package manager output widget 510 // Create package manager output widget
508 InstallDlg *dlg = new InstallDlg( this, &m_packman, tr( "Apply changes" ), true, 511 InstallDlg *dlg = new InstallDlg( this, &m_packman, tr( "Apply changes" ), true,
509 removeCmd, removeList, 512 removeCmd, removeList,
510 installCmd, installList, 513 installCmd, installList,
511 upgradeCmd, upgradeList ); 514 upgradeCmd, upgradeList );
512 connect( dlg, SIGNAL(closeInstallDlg()), this, SLOT(slotCloseInstallDlg()) ); 515 connect( dlg, SIGNAL(closeInstallDlg()), this, SLOT(slotCloseDlg()) );
513 516
514 // Display widget 517 // Display widget
515 m_widgetStack.addWidget( dlg, 3 ); 518 m_widgetStack.addWidget( dlg, 3 );
516 m_widgetStack.raiseWidget( dlg ); 519 m_widgetStack.raiseWidget( dlg );
517} 520}
518 521
519void MainWindow::slotCloseInstallDlg() 522void MainWindow::slotCloseDlg()
520{ 523{
521 // Close install dialog 524 // Close install dialog
522 delete m_widgetStack.visibleWidget(); 525 delete m_widgetStack.visibleWidget();
523 526
524 // Reload package list 527 // Reload package list
525 initPackageInfo(); 528 initPackageInfo();
@@ -662,6 +665,19 @@ void MainWindow::slotFindChanged( const QString &findText )
662} 665}
663 666
664void MainWindow::slotFindNext() 667void MainWindow::slotFindNext()
665{ 668{
666 searchForPackage( m_findEdit->text() ); 669 searchForPackage( m_findEdit->text() );
667} 670}
671
672void MainWindow::slotDisplayPackageInfo( QListViewItem *packageItem )
673{
674 QString packageName( ( static_cast<QCheckListItem*>( packageItem ) )->text() );
675
676 // Create package manager output widget
677 PackageInfoDlg *dlg = new PackageInfoDlg( this, &m_packman, packageName );
678 connect( dlg, SIGNAL(closeInfoDlg()), this, SLOT(slotCloseDlg()) );
679
680 // Display widget
681 m_widgetStack.addWidget( dlg, 3 );
682 m_widgetStack.raiseWidget( dlg );
683}
diff --git a/noncore/settings/packagemanager/mainwindow.h b/noncore/settings/packagemanager/mainwindow.h
index 285cddf..fb555c5 100644
--- a/noncore/settings/packagemanager/mainwindow.h
+++ b/noncore/settings/packagemanager/mainwindow.h
@@ -113,13 +113,13 @@ private slots:
113 113
114 // Actions menu action slots 114 // Actions menu action slots
115 void slotUpdate(); 115 void slotUpdate();
116 void slotUpgrade(); 116 void slotUpgrade();
117 void slotDownload(); 117 void slotDownload();
118 void slotApply(); 118 void slotApply();
119 void slotCloseInstallDlg(); 119 void slotCloseDlg();
120 void slotConfigure(); 120 void slotConfigure();
121 121
122 // View menu action slots 122 // View menu action slots
123 void slotShowNotInstalled(); 123 void slotShowNotInstalled();
124 void slotShowInstalled(); 124 void slotShowInstalled();
125 void slotShowUpdated(); 125 void slotShowUpdated();
@@ -128,9 +128,12 @@ private slots:
128 128
129 // Find action slots 129 // Find action slots
130 void slotFindShowToolbar(); 130 void slotFindShowToolbar();
131 void slotFindHideToolbar(); 131 void slotFindHideToolbar();
132 void slotFindChanged( const QString &findText ); 132 void slotFindChanged( const QString &findText );
133 void slotFindNext(); 133 void slotFindNext();
134
135 // Other slots
136 void slotDisplayPackageInfo( QListViewItem * );
134}; 137};
135 138
136#endif 139#endif
diff --git a/noncore/settings/packagemanager/packageinfodlg.cpp b/noncore/settings/packagemanager/packageinfodlg.cpp
index 71f17eb..26356b9 100644
--- a/noncore/settings/packagemanager/packageinfodlg.cpp
+++ b/noncore/settings/packagemanager/packageinfodlg.cpp
@@ -31,26 +31,52 @@
31 31
32#include <qlayout.h> 32#include <qlayout.h>
33#include <qpushbutton.h> 33#include <qpushbutton.h>
34 34
35#include <qpe/resource.h> 35#include <qpe/resource.h>
36 36
37#include <opie/otabwidget.h>
38
37PackageInfoDlg::PackageInfoDlg( QWidget *parent, OPackageManager *pm, const QString &package ) 39PackageInfoDlg::PackageInfoDlg( QWidget *parent, OPackageManager *pm, const QString &package )
38 : QWidget( 0x0 ) 40 : QWidget( 0x0 )
39 , m_packman( pm ) 41 , m_packman( pm )
40 , m_output( this ) 42 , m_information( this )
43 , m_files( this )
41{ 44{
42 // Initialize UI 45 // Initialize UI
43 if ( parent ) 46 if ( parent )
44 parent->setCaption( package ); 47 parent->setCaption( package );
45 48
46 QVBoxLayout *layout = new QVBoxLayout( this, 4, 0 ); 49 QVBoxLayout *layout = new QVBoxLayout( this, 4, 0 );
47 50
48 m_output.setReadOnly( true ); 51 OTabWidget *tabWidget = new OTabWidget( this );
49 layout->addWidget( &m_output ); 52 layout->addWidget( tabWidget );
50 53
51 QPushButton *btn = new QPushButton( Resource::loadPixmap( "enter" ), tr( "Close" ), this ); 54 QPushButton *btn = new QPushButton( Resource::loadPixmap( "enter" ), tr( "Close" ), this );
52 layout->addWidget( btn ); 55 layout->addWidget( btn );
53// TODO connect( btn, SIGNAL(clicked()), this, SLOT(slotBtnClose()) ); 56 connect( btn, SIGNAL(clicked()), this, SLOT(slotBtnClose()) );
57
58 // Information tab
59 m_information.reparent( tabWidget, QPoint( 0, 0 ) );
60 m_information.setReadOnly( true );
61 tabWidget->addTab( &m_information, "UtilsIcon", tr( "Information" ) );
62
63 // Files tab
64 QWidget *filesWidget = new QWidget( tabWidget );
65 QVBoxLayout *filesLayout = new QVBoxLayout( filesWidget, 4, 0 );
66 m_files.reparent( filesWidget, QPoint( 0, 0 ) );
67 m_files.setReadOnly( true );
68 filesLayout->addWidget( &m_files );
54 69
70 btn = new QPushButton( Resource::loadPixmap( "packagemanager/apply" ), tr( "Retrieve file list" ),
71 filesWidget );
72 filesLayout->addWidget( btn );
73// TODO connect( btn, SIGNAL(clicked()), this, SLOT(slotFileScan()) );
74 tabWidget->addTab( filesWidget, "binary", tr( "Files" ) );
55 75
76 tabWidget->setCurrentTab( tr( "Information" ) );
77}
78
79void PackageInfoDlg::slotBtnClose()
80{
81 emit closeInfoDlg();
56} 82}
diff --git a/noncore/settings/packagemanager/packageinfodlg.h b/noncore/settings/packagemanager/packageinfodlg.h
index 3bb9a7a..09af6f4 100644
--- a/noncore/settings/packagemanager/packageinfodlg.h
+++ b/noncore/settings/packagemanager/packageinfodlg.h
@@ -49,10 +49,17 @@ public:
49 PackageInfoDlg( QWidget *parent = 0x0, OPackageManager *pm = 0x0, const QString &package = QString::null ); 49 PackageInfoDlg( QWidget *parent = 0x0, OPackageManager *pm = 0x0, const QString &package = QString::null );
50 50
51private: 51private:
52 OPackageManager *m_packman; // Pointer to application instance of package manager 52 OPackageManager *m_packman; // Pointer to application instance of package manager
53 53
54 // UI controls 54 // UI controls
55 QMultiLineEdit m_output; // Multi-line edit to display package information 55 QMultiLineEdit m_information; // Multi-line edit to display package information
56 QMultiLineEdit m_files; // Multi-line edit to display package file list
57
58private slots:
59 void slotBtnClose();
60
61signals:
62 void closeInfoDlg();
56}; 63};
57 64
58#endif 65#endif