Index: trunk/BNC/src/map/bncmapwin.cpp
===================================================================
--- trunk/BNC/src/map/bncmapwin.cpp	(revision 5180)
+++ trunk/BNC/src/map/bncmapwin.cpp	(revision 5181)
@@ -63,12 +63,13 @@
   // Test
   // ----
-  QPushButton* testButton = new QPushButton(tr("Test"));
-  testButton->setMaximumWidth(10*ww);
-  connect(testButton,  SIGNAL(clicked()), this, SLOT(slotTest()));
+  _mode = mode_ppp;
+  _testButton = new QPushButton(tr("Start Test"));
+  _testButton->setMaximumWidth(10*ww);
+  connect(_testButton,  SIGNAL(clicked()), this, SLOT(slotTest()));
 
   // Layout
   // ------
   QHBoxLayout* buttonLayout = new QHBoxLayout;
-  buttonLayout->addWidget(testButton);
+  buttonLayout->addWidget(_testButton);
 
   QVBoxLayout* mainLayout = new QVBoxLayout(this);
@@ -125,7 +126,22 @@
 ////////////////////////////////////////////////////////////////////////////
 void bncMapWin::slotTest() {
-  _currLat += 0.00001;
-  _currLon += 0.00001;
-  slotGotoLocation(_currLat, _currLon);
-  QTimer::singleShot(100, this, SLOT(slotTest()));
+
+  if (sender() == _testButton) {
+    if (_mode == mode_ppp) {
+      _mode = mode_test;
+      _testButton->setText(tr("Stop Test"));
+    }
+    else {
+      _mode = mode_ppp;
+      _testButton->setText(tr("Start Test"));
+      return;
+    }
+  }
+   
+  if (_mode == mode_test) {
+    _currLat += 0.00001;
+    _currLon += 0.00001;
+    slotGotoLocation(_currLat, _currLon);
+    QTimer::singleShot(100, this, SLOT(slotTest()));
+  }
 }
Index: trunk/BNC/src/map/bncmapwin.h
===================================================================
--- trunk/BNC/src/map/bncmapwin.h	(revision 5180)
+++ trunk/BNC/src/map/bncmapwin.h	(revision 5181)
@@ -46,8 +46,11 @@
 
  private:
+  enum e_mode {mode_test, mode_ppp};
   void loadHtmlPage();
-  QWebView* _webView;
-  double    _currLat;
-  double    _currLon;
+  QWebView*    _webView;
+  QPushButton* _testButton;
+  double       _currLat;
+  double       _currLon;
+  e_mode       _mode;
 };
 
