[Marble-commits] KDE/kdeedu/marble/src/lib

Dennis Nienhüser earthwings at gentoo.org
Sat Jan 30 15:01:31 CET 2010


SVN commit 1082415 by nienhueser:

Add a runner that uses hostip.info to determine the location of IP addresses or hostnames. It is triggered by searches when planet is earth and the search term contains at least one dot. Remove unnecessary dynamic_casts in MarbleRunnerManager.
CCBUG: 190150


 M  +1 -0      CMakeLists.txt  
 M  +10 -2     MarbleRunnerManager.cpp  
 A             runners/HostipRunner.cpp   [License: LGPL]
 A             runners/HostipRunner.h   [License: LGPL]


--- trunk/KDE/kdeedu/marble/src/lib/CMakeLists.txt #1082414:1082415
@@ -184,6 +184,7 @@
     runners/MarbleAbstractRunner.cpp
     runners/LatLonRunner.cpp
     runners/OnfRunner.cpp
+    runners/HostipRunner.cpp
 )
 
 set (marblewidget_UI
--- trunk/KDE/kdeedu/marble/src/lib/MarbleRunnerManager.cpp #1082414:1082415
@@ -27,6 +27,7 @@
 
 #include "LatLonRunner.h"
 #include "OnfRunner.h"
+#include "HostipRunner.h"
 
 #include <QtCore/QObject>
 #include <QtCore/QString>
@@ -72,18 +73,25 @@
     emit modelChanged( m_model );
 
     LatLonRunner* llrunner = new LatLonRunner;
-    m_runners << dynamic_cast<MarbleAbstractRunner*>(llrunner);
+    m_runners << llrunner;
     connect( llrunner, SIGNAL( runnerFinished( MarbleAbstractRunner*, QVector<GeoDataPlacemark> ) ),
              this,     SLOT( slotRunnerFinished( MarbleAbstractRunner*, QVector<GeoDataPlacemark> ) ));
     llrunner->parse(text);
     
     if (m_celestialBodyId == "earth") {
         OnfRunner* onfrunner = new OnfRunner;
-        m_runners << dynamic_cast<MarbleAbstractRunner*>(onfrunner);
+        m_runners << onfrunner;
         connect( onfrunner, SIGNAL( runnerFinished( MarbleAbstractRunner*, QVector<GeoDataPlacemark> ) ),
                  this,      SLOT( slotRunnerFinished( MarbleAbstractRunner*, QVector<GeoDataPlacemark> ) ));
         onfrunner->parse(text);
         onfrunner->start();
+
+        HostipRunner* iprunner = new HostipRunner;
+        m_runners << iprunner;
+        connect( iprunner, SIGNAL( runnerFinished( MarbleAbstractRunner*, QVector<GeoDataPlacemark> ) ),
+                 this,      SLOT( slotRunnerFinished( MarbleAbstractRunner*, QVector<GeoDataPlacemark> ) ));
+        iprunner->parse(text);
+        iprunner->start();
     }
 
     llrunner->start();


More information about the Marble-commits mailing list