[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