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

[vidalia-svn] r3441: Clear all router placemarks from the TorMapWidget destructor (vidalia/branches/marble/src/vidalia/network)



Author: edmanm
Date: 2009-01-16 00:06:33 -0500 (Fri, 16 Jan 2009)
New Revision: 3441

Modified:
   vidalia/branches/marble/src/vidalia/network/tormapwidget.cpp
   vidalia/branches/marble/src/vidalia/network/tormapwidget.h
Log:
Clear all router placemarks from the TorMapWidget destructor. Also remove the
altitude property from the generated KML (population is what I want to set, in
order to reduce router label clutter).


Modified: vidalia/branches/marble/src/vidalia/network/tormapwidget.cpp
===================================================================
--- vidalia/branches/marble/src/vidalia/network/tormapwidget.cpp	2009-01-16 03:36:14 UTC (rev 3440)
+++ vidalia/branches/marble/src/vidalia/network/tormapwidget.cpp	2009-01-16 05:06:33 UTC (rev 3441)
@@ -38,9 +38,7 @@
 /** Destructor */
 TorMapWidget::~TorMapWidget()
 {
-#if 0
   clear();
-#endif
 }
 
 /** Adds a router to the map. */
@@ -49,27 +47,21 @@
                         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(QString("<Point><coordinates>%1,%2</coordinates></Point>")
+                                          .arg(longitude).arg(latitude));
   kml.append("</Placemark></Document>");
   kml.append("</kml>");
 
-  addPlaceMarkData(kml, desc.id());
-#if 0
-  QPointF routerCoord = toMapSpace(latitude, longitude);
-  
-  /* Add data the hash of known routers, and plot the point on the map */
-  if (_routers.contains(id))
-    _routers.value(id)->first = routerCoord;
-  else
-    _routers.insert(id, new QPair<QPointF,bool>(routerCoord, false));
-#endif
+  QString id = desc.id();
+  addPlaceMarkData(kml, id);
+  _routerPlacemarks.insert(id,
+    GeoDataCoordinates(longitude, latitude, 0.0, GeoDataCoordinates::Degree));
 }
 
 /** Adds a circuit to the map using the given ordered list of router IDs. */
@@ -174,11 +166,10 @@
 void
 TorMapWidget::clear()
 {
-#if 0
-  /* Clear out all the router points and free their memory */
-  foreach (QString router, _routers.keys()) {
-    delete _routers.take(router);
+  foreach (QString id, _routerPlacemarks.keys()) {
+    removePlaceMarkKey(id);
   }
+#if 0
   /* Clear out all the circuit paths and free their memory */
   foreach (CircuitId circid, _circuits.keys()) {
     QPair<QPainterPath*,bool> *circuitPair = _circuits.take(circid);

Modified: vidalia/branches/marble/src/vidalia/network/tormapwidget.h
===================================================================
--- vidalia/branches/marble/src/vidalia/network/tormapwidget.h	2009-01-16 03:36:14 UTC (rev 3440)
+++ vidalia/branches/marble/src/vidalia/network/tormapwidget.h	2009-01-16 05:06:33 UTC (rev 3441)
@@ -26,6 +26,8 @@
 
 #include <MarbleWidget.h>
 #include <GeoPainter.h>
+#include <GeoDataCoordinates.h>
+#include <GeoDataLineString.h>
 
 
 class TorMapWidget : public Marble::MarbleWidget
@@ -67,10 +69,10 @@
   virtual void customPaint(Marble::GeoPainter *painter);
 
 private:
-  /** Stores map locations for tor routers */
-  QHash<QString, QPair<QPointF,bool>* > _routers;
+  /** Stores placemark IDs for Tor routers. */
+  QHash<QString, Marble::GeoDataCoordinates> _routerPlacemarks;
   /** Stores circuit information */
-  QHash<CircuitId, QPair<QPainterPath *,bool>* > _circuits;
+  QHash<CircuitId, QPair<Marble::GeoDataLineString *,bool>* > _circuits;
 };
 
 #endif