summaryrefslogtreecommitdiff
Side-by-side diff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/settings/aqpkg/main.cpp2
-rw-r--r--noncore/settings/aqpkg/mainwin.cpp216
-rw-r--r--noncore/settings/aqpkg/mainwin.h18
-rw-r--r--noncore/settings/aqpkg/networkpkgmgr.cpp46
-rw-r--r--noncore/settings/aqpkg/networkpkgmgr.h9
5 files changed, 194 insertions, 97 deletions
diff --git a/noncore/settings/aqpkg/main.cpp b/noncore/settings/aqpkg/main.cpp
index 1f8cf42..53c392e 100644
--- a/noncore/settings/aqpkg/main.cpp
+++ b/noncore/settings/aqpkg/main.cpp
@@ -52,3 +52,3 @@ int main(int argc, char *argv[])
a.setMainWidget(win);
- win->show();
+ win->showMaximized();
diff --git a/noncore/settings/aqpkg/mainwin.cpp b/noncore/settings/aqpkg/mainwin.cpp
index e577285..4aa83b5 100644
--- a/noncore/settings/aqpkg/mainwin.cpp
+++ b/noncore/settings/aqpkg/mainwin.cpp
@@ -20,2 +20,7 @@ using namespace std;
+#include <qpe/qpemenubar.h>
+#include <qpe/qpetoolbar.h>
+#include <qpe/resource.h>
+
+#include <qaction.h>
#include <qmenubar.h>
@@ -24,2 +29,3 @@ using namespace std;
#include <qtimer.h>
+#include <qwidgetstack.h>
@@ -34,59 +40,129 @@ using namespace std;
-MainWindow :: MainWindow( QWidget *p, char *name )
- : QMainWindow( p, name )
+MainWindow :: MainWindow()
+ : QMainWindow( 0x0, 0x0, WStyle_ContextHelp )
{
-#ifdef QWS
- showMaximized();
-#endif
-
setCaption( tr( "AQPkg - Package Manager" ) );
- // Create our menu
- help = new QPopupMenu( this );
- help->insertItem( tr( "General" ), this, SLOT(displayHelp()) );
- help->insertItem( tr( "About" ), this, SLOT(displayAbout()) );
-
- settings = new QPopupMenu( this );
- settings->insertItem( tr( "Settings" ), this, SLOT(displaySettings()) );
-
- edit = new QPopupMenu( this );
- edit->insertItem( tr( "Find" ), this, SLOT(searchForPackage()) );
- edit->insertItem( tr( "Find Next" ), this, SLOT(repeatSearchForPackage()) );
-
- filter = new QPopupMenu( this );
- mnuShowUninstalledPkgsId = filter->insertItem( tr( "Show Non-Installed Packages" ), this, SLOT(filterUninstalledPackages()) );
- mnuShowInstalledPkgsId = filter->insertItem( tr( "Show Installed Packages" ), this, SLOT(filterInstalledPackages()) );
- mnuShowUpgradedPkgsId = filter->insertItem( tr( "Show Updated Packages" ), this, SLOT(filterUpgradedPackages()) );
- filter->insertSeparator();
- mnuFilterByCategory = filter->insertItem( tr( "Filter By Category" ), this, SLOT(filterCategory()) );
- mnuSetFilterCategory = filter->insertItem( tr( "Set Filter Category" ), this, SLOT(setFilterCategory()) );
-
- // Create the main menu
- menu = menuBar(); //new QMenuBar( this );
- menu->insertItem( tr( "Settings" ), settings );
- menu->insertItem( tr( "Edit" ), edit );
- menu->insertItem( tr( "Filter" ), filter );
- menu->insertItem( tr( "Help" ), help );
-
- // Create UI widgets
- stack = new QWidgetStack( this );
-
- progressWindow = new ProgressWidget( stack );
- stack->addWidget( progressWindow, 2 );
-
- networkPkgWindow = new NetworkPackageManager( stack );
- connect( networkPkgWindow, SIGNAL( appRaiseMainWidget() ), this, SLOT( raiseMainWidget() ) );
- connect( networkPkgWindow, SIGNAL( appRaiseProgressWidget() ), this, SLOT( raiseProgressWidget() ) );
- connect( networkPkgWindow, SIGNAL( progressSetSteps( int ) ), progressWindow, SLOT( setSteps( int ) ) );
- connect( networkPkgWindow, SIGNAL( progressSetMessage( const QString & ) ),
- progressWindow, SLOT( setMessage( const QString & ) ) );
- connect( networkPkgWindow, SIGNAL( progressUpdate( int ) ), progressWindow, SLOT( update( int ) ) );
- stack->addWidget( networkPkgWindow, 1 );
-
- setCentralWidget( stack );
- stack->raiseWidget( progressWindow );
-
- // Delayed call to finish initialization
- QTimer::singleShot( 100, this, SLOT( init() ) );
-
+ // Create UI widgets
+ progressWindow = new ProgressWidget( this );
+ networkPkgWindow = new NetworkPackageManager( this );
+
+ // Build menu and tool bars
+ setToolBarsMovable( FALSE );
+
+ QPEToolBar *bar = new QPEToolBar( this );
+ bar->setHorizontalStretchable( TRUE );
+ QPEMenuBar *mb = new QPEMenuBar( bar );
+ mb->setMargin( 0 );
+ bar = new QPEToolBar( this );
+
+ // Packages menu
+ QPopupMenu *popup = new QPopupMenu( this );
+
+ QAction *a = new QAction( tr( "Update lists" ), Resource::loadPixmap( "aqpkg/update" ), QString::null, 0, this, 0 );
+ a->setWhatsThis( tr( "Click here to update package lists from servers." ) );
+ connect( a, SIGNAL( activated() ), networkPkgWindow, SLOT( updateServer() ) );
+ a->addTo( popup );
+ a->addTo( bar );
+
+ actionUpgrade = new QAction( tr( "Upgrade" ), Resource::loadPixmap( "aqpkg/upgrade" ), QString::null, 0, this, 0 );
+ actionUpgrade->setWhatsThis( tr( "Click here to upgrade all installed packages if a newer version is available." ) );
+ connect( actionUpgrade, SIGNAL( activated() ), networkPkgWindow, SLOT( upgradePackages() ) );
+ actionUpgrade->addTo( popup );
+ actionUpgrade->addTo( bar );
+
+ iconDownload = Resource::loadPixmap( "aqpkg/download" );
+ iconRemove = Resource::loadPixmap( "aqpkg/remove" );
+ actionDownload = new QAction( tr( "Download" ), iconDownload, QString::null, 0, this, 0 );
+ actionDownload->setWhatsThis( tr( "Click here to download the currently selected package(s)." ) );
+ connect( actionDownload, SIGNAL( activated() ), networkPkgWindow, SLOT( downloadPackage() ) );
+ actionDownload->addTo( popup );
+ actionDownload->addTo( bar );
+
+ a = new QAction( tr( "Apply changes" ), Resource::loadPixmap( "aqpkg/apply" ), QString::null, 0, this, 0 );
+ a->setWhatsThis( tr( "Click here to install, remove or upgrade currently selected package(s)." ) );
+ connect( a, SIGNAL( activated() ), networkPkgWindow, SLOT( applyChanges() ) );
+ a->addTo( popup );
+ a->addTo( bar );
+
+ mb->insertItem( tr( "Packages" ), popup );
+
+ // Search menu
+ popup = new QPopupMenu( this );
+
+ a = new QAction( tr( "Find" ), Resource::loadPixmap( "find" ), QString::null, 0, this, 0 );
+ a->setWhatsThis( tr( "Click here to search for a specific package." ) );
+ connect( a, SIGNAL( activated() ), this, SLOT( searchForPackage() ) );
+ a->addTo( popup );
+
+ a = new QAction( tr( "Find next" ), Resource::loadPixmap( "next" ), QString::null, 0, this, 0 );
+ a->setWhatsThis( tr( "Click here to search for the next package." ) );
+ connect( a, SIGNAL( activated() ), this, SLOT( repeatSearchForPackage() ) );
+ a->addTo( popup );
+
+ // Show 'quick jump' keypad?
+
+ popup->insertSeparator();
+
+ a = new QAction( tr( "Filter by category" ), Resource::loadPixmap( "aqpkg/filter" ), QString::null, 0, this, 0 );
+ a->setWhatsThis( tr( "Click here to list packages belonging to one category." ) );
+ connect( a, SIGNAL( activated() ), this, SLOT( filterCategory() ) );
+ a->addTo( popup );
+
+ a = new QAction( tr( "Set filter category" ), QString::null, 0, this, 0 );
+ a->setWhatsThis( tr( "Click here to change package category to used filter." ) );
+ connect( a, SIGNAL( activated() ), this, SLOT( setFilterCategory() ) );
+ a->addTo( popup );
+
+ mb->insertItem( tr( "Search" ), popup );
+
+
+ // View menu
+ popup = new QPopupMenu( this );
+
+ a = new QAction( tr( "Show packages not installed" ), QString::null, 0, this, 0 );
+ a->setWhatsThis( tr( "Click here to show packages available which have not been installed." ) );
+ connect( a, SIGNAL( activated() ), this, SLOT( filterUninstalledPackages() ) );
+ a->addTo( popup );
+
+ a = new QAction( tr( "Show installed packages" ), QString::null, 0, this, 0 );
+ a->setWhatsThis( tr( "Click here to show packages currently installed on this device." ) );
+ connect( a, SIGNAL( activated() ), this, SLOT( filterInstalledPackages() ) );
+ a->addTo( popup );
+
+ a = new QAction( tr( "Show updated packages" ), QString::null, 0, this, 0 );
+ a->setWhatsThis( tr( "Click here to show packages currently installed on this device which have a newer version available." ) );
+ connect( a, SIGNAL( activated() ), this, SLOT( filterUpgradedPackages() ) );
+ a->addTo( popup );
+
+ popup->insertSeparator();
+
+ a = new QAction( tr( "Configure" ), Resource::loadPixmap( "aqpkg/config" ), QString::null, 0, this, 0 );
+ a->setWhatsThis( tr( "Click here to configure this application." ) );
+ connect( a, SIGNAL( activated() ), this, SLOT( displaySettings() ) );
+ a->addTo( popup );
+
+ popup->insertSeparator();
+
+ a = new QAction( tr( "Help" ), Resource::loadPixmap( "help_icon" ), QString::null, 0, this, 0 );
+ a->setWhatsThis( tr( "Click here for help." ) );
+ connect( a, SIGNAL( activated() ), this, SLOT( displayHelp() ) );
+ a->addTo( popup );
+
+ a = new QAction( tr( "About" ), Resource::loadPixmap( "UtilsIcon" ), QString::null, 0, this, 0 );
+ a->setWhatsThis( tr( "Click here for software version information." ) );
+ connect( a, SIGNAL( activated() ), this, SLOT( displayAbout() ) );
+ a->addTo( popup );
+
+ mb->insertItem( tr( "View" ), popup );
+
+ // Create widget stack and add UI widgets
+ stack = new QWidgetStack( this );
+ stack->addWidget( progressWindow, 2 );
+ stack->addWidget( networkPkgWindow, 1 );
+ setCentralWidget( stack );
+ stack->raiseWidget( progressWindow );
+
+ // Delayed call to finish initialization
+ QTimer::singleShot( 100, this, SLOT( init() ) );
}
@@ -101,2 +177,3 @@ void MainWindow :: init()
stack->raiseWidget( progressWindow );
+
mgr = new DataManager();
@@ -107,4 +184,14 @@ void MainWindow :: init()
mgr->loadServers();
+
networkPkgWindow->setDataManager( mgr );
networkPkgWindow->updateData();
+ connect( networkPkgWindow, SIGNAL( appRaiseMainWidget() ), this, SLOT( raiseMainWidget() ) );
+ connect( networkPkgWindow, SIGNAL( appRaiseProgressWidget() ), this, SLOT( raiseProgressWidget() ) );
+ connect( networkPkgWindow, SIGNAL( appEnableUpgrade( bool ) ), this, SLOT( enableUpgrade( bool ) ) );
+ connect( networkPkgWindow, SIGNAL( appEnableDownload( bool ) ), this, SLOT( enableDownload( bool ) ) );
+ connect( networkPkgWindow, SIGNAL( progressSetSteps( int ) ), progressWindow, SLOT( setSteps( int ) ) );
+ connect( networkPkgWindow, SIGNAL( progressSetMessage( const QString & ) ),
+ progressWindow, SLOT( setMessage( const QString & ) ) );
+ connect( networkPkgWindow, SIGNAL( progressUpdate( int ) ), progressWindow, SLOT( update( int ) ) );
+
stack->raiseWidget( networkPkgWindow );
@@ -247 +334,22 @@ void MainWindow :: raiseProgressWidget()
}
+
+void MainWindow :: enableUpgrade( bool enabled )
+{
+ actionUpgrade->setEnabled( enabled );
+}
+
+void MainWindow :: enableDownload( bool enabled )
+{
+ if ( enabled )
+ {
+ actionDownload->setIconSet( iconDownload );
+ actionDownload->setText( tr( "Download" ) );
+ actionDownload->setWhatsThis( tr( "Click here to download the currently selected package(s)." ) );
+ }
+ else
+ {
+ actionDownload->setIconSet( iconRemove );
+ actionDownload->setText( tr( "Remove" ) );
+ actionDownload->setWhatsThis( tr( "Click here to uninstall the currently selected package(s)." ) );
+ }
+}
diff --git a/noncore/settings/aqpkg/mainwin.h b/noncore/settings/aqpkg/mainwin.h
index 39799f9..028ef5b 100644
--- a/noncore/settings/aqpkg/mainwin.h
+++ b/noncore/settings/aqpkg/mainwin.h
@@ -21,4 +21,8 @@
#include <qmainwindow.h>
-#include <qwidgetstack.h>
+#include <qpixmap.h>
+//#include <qwidgetstack.h>
+class QWidgetStack;
+class QPEToolBar;
+class QAction;
class ProgressWidget;
@@ -32,3 +36,3 @@ public:
- MainWindow( QWidget *p = 0, char *name = 0 );
+ MainWindow();
~MainWindow();
@@ -43,4 +47,8 @@ private:
QPopupMenu *filter;
- QWidgetStack *stack;
-
+ QWidgetStack *stack;
+ QAction *actionUpgrade;
+ QAction *actionDownload;
+ QPixmap iconDownload;
+ QPixmap iconRemove;
+
NetworkPackageManager *networkPkgWindow;
@@ -68,2 +76,4 @@ public slots:
void raiseProgressWidget();
+ void enableUpgrade( bool );
+ void enableDownload( bool );
diff --git a/noncore/settings/aqpkg/networkpkgmgr.cpp b/noncore/settings/aqpkg/networkpkgmgr.cpp
index ee37157..91afe02 100644
--- a/noncore/settings/aqpkg/networkpkgmgr.cpp
+++ b/noncore/settings/aqpkg/networkpkgmgr.cpp
@@ -67,5 +67,2 @@ NetworkPackageManager::NetworkPackageManager( QWidget *parent, const char *name
initGui();
- setupConnections();
-
- //updateData();
}
@@ -149,7 +146,5 @@ void NetworkPackageManager :: initGui()
serversList = new QComboBox( this );
+ connect( serversList, SIGNAL(activated( int )), this, SLOT(serverSelected( int )));
+
packagesList = new QListView( this );
- update = new QPushButton( tr( "Refresh Lists" ), this );
- download = new QPushButton( tr( "Download" ), this );
- upgrade = new QPushButton( tr( "Upgrade" ), this );
- apply = new QPushButton( tr( "Apply" ), this );
@@ -182,17 +177,4 @@ void NetworkPackageManager :: initGui()
packagesList->addColumn( tr( "Packages" ) );
-
- QHBoxLayout *hbox2 = new QHBoxLayout( vbox, -1 );
- hbox2->addWidget( update );
- hbox2->addWidget( download );
- hbox2->addWidget( upgrade );
- hbox2->addWidget( apply );
-}
-
-void NetworkPackageManager :: setupConnections()
-{
- connect( serversList, SIGNAL(activated( int )), this, SLOT(serverSelected( int )));
- connect( apply, SIGNAL(released()), this, SLOT(applyChanges()) );
- connect( download, SIGNAL(released()), this, SLOT(downloadPackage()) );
- connect( upgrade, SIGNAL( released()), this, SLOT(upgradePackages()) );
- connect( update, SIGNAL(released()), this, SLOT(updateServer()) );
+
+ downloadEnabled = TRUE;
}
@@ -342,5 +324,4 @@ void NetworkPackageManager :: serverSelected( int, bool raiseProgress )
{
- upgrade->setEnabled( false );
- download->setText( tr( "Download" ) );
- download->setEnabled( true );
+ downloadEnabled = TRUE;
+ emit appEnableUpgrade( FALSE );
}
@@ -348,5 +329,4 @@ void NetworkPackageManager :: serverSelected( int, bool raiseProgress )
{
- upgrade->setEnabled( false );
- download->setEnabled( true );
- download->setText( tr( "Remove" ) );
+ downloadEnabled = FALSE;
+ emit appEnableUpgrade( FALSE );
}
@@ -354,6 +334,6 @@ void NetworkPackageManager :: serverSelected( int, bool raiseProgress )
{
- upgrade->setEnabled( true );
- download->setEnabled( true );
- download->setText( tr( "Download" ) );
+ downloadEnabled = TRUE;
+ emit appEnableUpgrade( TRUE );
}
+ emit appEnableDownload( downloadEnabled );
@@ -423,3 +403,3 @@ void NetworkPackageManager :: downloadPackage()
bool doUpdate = true;
- if ( download->text() == tr( "Download" ) )
+ if ( downloadEnabled )
{
@@ -447,3 +427,3 @@ void NetworkPackageManager :: downloadPackage()
}
- else if ( download->text() == tr( "Remove" ) )
+ else
{
diff --git a/noncore/settings/aqpkg/networkpkgmgr.h b/noncore/settings/aqpkg/networkpkgmgr.h
index 6b552ee..efef898 100644
--- a/noncore/settings/aqpkg/networkpkgmgr.h
+++ b/noncore/settings/aqpkg/networkpkgmgr.h
@@ -55,6 +55,2 @@ private:
QListView *packagesList;
- QPushButton *update;
- QPushButton *upgrade;
- QPushButton *download;
- QPushButton *apply;
@@ -70,4 +66,5 @@ private:
+ bool downloadEnabled;
+
void initGui();
- void setupConnections();
void showProgressDialog( char *initialText );
@@ -83,2 +80,4 @@ signals:
void appRaiseProgressWidget();
+ void appEnableUpgrade( bool );
+ void appEnableDownload( bool );
void progressSetSteps( int );