[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

[vidalia-svn] r3440: Add placemarks for Tor relays to the globe. Could use some a (vidalia/branches/marble/src/vidalia/network)



Author: edmanm
Date: 2009-01-15 22:36:14 -0500 (Thu, 15 Jan 2009)
New Revision: 3440

Modified:
   vidalia/branches/marble/src/vidalia/network/netviewer.cpp
   vidalia/branches/marble/src/vidalia/network/tormapwidget.cpp
   vidalia/branches/marble/src/vidalia/network/tormapwidget.h
Log:
Add placemarks for Tor relays to the globe. Could use some aesthetic tweaks
still.


Modified: vidalia/branches/marble/src/vidalia/network/netviewer.cpp
===================================================================
--- vidalia/branches/marble/src/vidalia/network/netviewer.cpp	2009-01-16 02:46:21 UTC (rev 3439)
+++ vidalia/branches/marble/src/vidalia/network/netviewer.cpp	2009-01-16 03:36:14 UTC (rev 3440)
@@ -470,7 +470,8 @@
         /* Save the location information in the descriptor */
         router->setLocation(geoip);
         /* Plot the router on the map */
-        _map->addRouter(router->id(), geoip.latitude(), geoip.longitude());
+        _map->addRouter(router->descriptor(), 
+                        geoip.latitude(), geoip.longitude());
       }
     }
   }

Modified: vidalia/branches/marble/src/vidalia/network/tormapwidget.cpp
===================================================================
--- vidalia/branches/marble/src/vidalia/network/tormapwidget.cpp	2009-01-16 02:46:21 UTC (rev 3439)
+++ vidalia/branches/marble/src/vidalia/network/tormapwidget.cpp	2009-01-16 03:36:14 UTC (rev 3440)
@@ -45,8 +45,22 @@
 
 /** Adds a router to the map. */
 void
-TorMapWidget::addRouter(const QString &id, float latitude, float longitude)
+TorMapWidget::addRouter(const RouterDescriptor &desc,
+                        float latitude, float longitude)
 {
+  QString kml;
+  
+  kml.append("<?xml version=\"1.0\" encoding=\"UTF-8\"?>");
+  kml.append("<kml xmlns=\"http://earth.google.com/kml/2.0\";>");
+  kml.append("<Document><Placemark>");
+  kml.append(QString("<name>%1</name>").arg(desc.name()));
+  kml.append("<description></description>");
+  kml.append(QString("<Point><coordinates>%1,%2,%3</coordinates></Point>")
+              .arg(longitude).arg(latitude).arg(desc.observedBandwidth()));
+  kml.append("</Placemark></Document>");
+  kml.append("</kml>");
+
+  addPlaceMarkData(kml, desc.id());
 #if 0
   QPointF routerCoord = toMapSpace(latitude, longitude);
   

Modified: vidalia/branches/marble/src/vidalia/network/tormapwidget.h
===================================================================
--- vidalia/branches/marble/src/vidalia/network/tormapwidget.h	2009-01-16 02:46:21 UTC (rev 3439)
+++ vidalia/branches/marble/src/vidalia/network/tormapwidget.h	2009-01-16 03:36:14 UTC (rev 3440)
@@ -20,6 +20,7 @@
 #include <QHash>
 #include <QPair>
 #include <QPainterPath>
+#include <routerdescriptor.h>
 #include <circuit.h>
 #include <stream.h>
 
@@ -38,7 +39,8 @@
   ~TorMapWidget();
 
   /** Plots the given router on the map using the given coordinates. */
-  void addRouter(const QString &id, float latitude, float longitude);
+  void addRouter(const RouterDescriptor &desc,
+                 float latitude, float longitude);
   /** Plots the given circuit on the map. */
   void addCircuit(const CircuitId &circid, const QStringList &path);
   /** Selects and hightlights a router on the map. */