Author: tgoettlicher
Date: Wed May 30 12:24:59 2007
New Revision: 5642
URL: http://svn.opensuse.org/viewcvs/zypp?rev=5642&view=rev
Log:
Added use of KDE ConnectionManager.
Modified:
trunk/updater-kde/updater/CMakeLists.txt
trunk/updater-kde/updater/MainWindow.cpp
trunk/updater-kde/updater/MainWindow.h
Modified: trunk/updater-kde/updater/CMakeLists.txt
URL: http://svn.opensuse.org/viewcvs/zypp/trunk/updater-kde/updater/CMakeLists.txt?rev=5642&r1=5641&r2=5642&view=diff
==============================================================================
--- trunk/updater-kde/updater/CMakeLists.txt (original)
+++ trunk/updater-kde/updater/CMakeLists.txt Wed May 30 12:24:59 2007
@@ -14,7 +14,7 @@
KDE3_AUTOMOC(${opensuseupdater_LIB_SRCS})
ADD_LIBRARY(opensuseupdater SHARED ${opensuseupdater_LIB_SRCS})
SET_TARGET_PROPERTIES(opensuseupdater PROPERTIES VERSION 4.2.0 SOVERSION 4 )
-TARGET_LINK_LIBRARIES(opensuseupdater ${QT_AND_KDECORE_LIBS} kdeui )
+TARGET_LINK_LIBRARIES(opensuseupdater ${QT_AND_KDECORE_LIBS} kdeui connectionmanager )
INSTALL(TARGETS opensuseupdater DESTINATION ${KDE3_LIB_INSTALL_DIR} )
@@ -23,7 +23,7 @@
SET(opensuseupdater_SRCS main.cpp UpdaterApplication.cpp MainWindow.cpp ConfigWidget.h ConfigWidgetUI.h ConfigWidgetUI.ui )
KDE3_AUTOMOC(${opensuseupdater_SRCS})
KDE3_ADD_EXECUTABLE(opensuseupdater-kde ${opensuseupdater_SRCS})
-TARGET_LINK_LIBRARIES(opensuseupdater-kde opensuseupdater ${QT_AND_KDECORE_LIBS} kdeui kio )
+TARGET_LINK_LIBRARIES(opensuseupdater-kde opensuseupdater ${QT_AND_KDECORE_LIBS} kdeui kio connectionmanager )
INSTALL_TARGETS(/bin opensuseupdater-kde )
Modified: trunk/updater-kde/updater/MainWindow.cpp
URL: http://svn.opensuse.org/viewcvs/zypp/trunk/updater-kde/updater/MainWindow.cpp?rev=5642&r1=5641&r2=5642&view=diff
==============================================================================
--- trunk/updater-kde/updater/MainWindow.cpp (original)
+++ trunk/updater-kde/updater/MainWindow.cpp Wed May 30 12:24:59 2007
@@ -32,7 +32,8 @@
#include
#include
#include
-#include
+#include
+#include
#include
#include
@@ -353,79 +354,29 @@
updateButtons();
}
-int MainWindow::getNetworkStatus() const
-{
- //enum EnumStatus { NoNetworks = 1, Unreachable, OfflineDisconnected, OfflineFailed, ShuttingDown, Offline, Establishing, Online };
+void MainWindow::checkUpdates() {
- int online = 1;
- if ( kapp->dcopClient()->isApplicationRegistered( "kded" ) )
- {
- QByteArray data, replyData;
-
- QDataStream arg(data, IO_WriteOnly);
- arg << QString("www.novell.com");
-
- QCString replyType;
- if ( !kapp->dcopClient()->call( "kded", "networkstatus", "status(QString)",
- data, replyType, replyData ) )
- {
- kdError() << "DCOP error." << endl;
- }
- else
- {
- QDataStream reply(replyData, IO_ReadOnly);
- if (replyType == "int") reply >> online;
- else kdDebug() << "DCOP: unexpected return type." << endl;
- }
- }
-
- return online;
-}
+ slotAppletState(APPLET_CHECKING, 0);
+
+
+ // Check whether network is avaiable:
+ // If no network is available let ConnectionManager call this
+ // function again when network ist connected
+ if (ConnectionManager::self()->status() != NetworkStatus::Online &&
+ ConnectionManager::self()->status() != NetworkStatus::NoNetworks )
+ {
+ ConnectionManager::self()->registerConnectSlot(this,SLOT(checkUpdates()));
+ kdDebug() << "No network available" << endl;
+ kdDebug() << "Waiting for network connection..." << endl;
+ return;
+ }
+ ConnectionManager::self()->forgetConnectSlot();
+ kdDebug() << "Network connection available." << endl;
-void MainWindow::checkAgainUpdates() {
- checkUpdates(true);
-}
-
-void MainWindow::checkUpdates(bool lastAttempt) {
-
- kdDebug() << "MainWindow::checkUpdates" << endl;
-
- kdDebug() << "Checking network connection..." << endl;
- switch (getNetworkStatus())
- {
- // Network connection is available => go on
- case 1: // NoNetworks
- case 8: // Online
- kdDebug() << "Network available." << endl;
- break;
-
-
- // No network connection is avaiable => return
- case 2: // Unreachable
- case 3: // OfflineDisconnected
- case 4: // OfflineFailed
- case 5: // ShuttingDown
- case 6: // Offline
- emit(updateAppletError("TODO No Network Error Msg"));
- kdDebug() << "No network, skipping check..." << endl;
- return;
-
-
- // Network connection being established.
- // We do two attempts:
- // When the fist fails we try again after 1 minute
- // When the second fails we give up.
- case 7: // Establishing
- if (!lastAttempt)
- {
- kdDebug() << "Network connection being established. Will try again in 1 minute..." << endl;
- QTimer::singleShot( 1*60*1000, this, SLOT(slotCheckAgainUpdates()) );
- }
- return;
- }
+ kdDebug() << "Checking for updates..." << endl;
//Clear the list and fire the update signal to the backend
Modified: trunk/updater-kde/updater/MainWindow.h
URL: http://svn.opensuse.org/viewcvs/zypp/trunk/updater-kde/updater/MainWindow.h?rev=5642&r1=5641&r2=5642&view=diff
==============================================================================
--- trunk/updater-kde/updater/MainWindow.h (original)
+++ trunk/updater-kde/updater/MainWindow.h Wed May 30 12:24:59 2007
@@ -174,13 +174,7 @@
/**
Tells the backend to repopulate our list.
*/
- void checkUpdates(bool lastAttempt=false);
-
- /**
- Slot which gets called 1 minute after CheckForUpdates
- has detected "network connection being established"
- */
- void checkAgainUpdates();
+ void checkUpdates();
/**
react to value changes
--
To unsubscribe, e-mail: zypp-commit+unsubscribe@opensuse.org
For additional commands, e-mail: zypp-commit+help@opensuse.org