Index: trunk/BNC/bncwindow.cpp
===================================================================
--- trunk/BNC/bncwindow.cpp	(revision 1926)
+++ trunk/BNC/bncwindow.cpp	(revision 1927)
@@ -62,10 +62,10 @@
   QListIterator<QString> it(settings.value("mountPoints").toStringList());
   while (it.hasNext()) {
-    QStringList hlp = it.next().split(" ");
-    QUrl    url(hlp[0]);
-    _MPName.append(url.path().toAscii()); _bytesMP.append(0);
-  }
-  connect(&_timer, SIGNAL(timeout()), this, SLOT(update()));
-  _timer.start(1000);
+    QStringList hlp   = it.next().split(" ");
+    QUrl        url(hlp[0]);
+    QByteArray  staID = url.path().mid(1).toAscii();
+    _bytes[staID] = 0.0;
+  }
+  slotNextAnimationFrame();
 }
 
@@ -73,14 +73,17 @@
 ////////////////////////////////////////////////////////////////////////////
 FWidget::~FWidget() { 
-  _timer.stop();
 }
 
 // 
 ////////////////////////////////////////////////////////////////////////////
-void FWidget::slotNextAnimationFrame(const QByteArray staID, double nbyte) {
-  _timer.stop();
+void FWidget::slotNewData(const QByteArray staID, double nbyte) {
   cout << staID.data() << " " << nbyte << endl;
+}
+
+// 
+////////////////////////////////////////////////////////////////////////////
+void FWidget::slotNextAnimationFrame() {
   update();
-  _timer.start(1000);
+  QTimer::singleShot(1000, this, SLOT(slotNextAnimationFrame()));
 }
 
@@ -107,9 +110,10 @@
   textP.setX(300);
 
-  QListIterator<QByteArray> it(_MPName);
+  QMapIterator<QByteArray, double> it(_bytes);
   while (it.hasNext()) {
-    QByteArray hlp=it.next();
-    double bytesnew=_bytesMP[_MPName.lastIndexOf(hlp)];
-    double vv = bytesnew/30;
+    it.next();
+    QByteArray staID    = it.key();
+    double     bytesnew = it.value();
+    double     vv       = bytesnew/30;
     QRectF vrect((100+anker*40), (140-vv), (30), (vv));
     QBrush xBrush(Qt::green,Qt::SolidPattern);
@@ -117,5 +121,5 @@
     painter.fillRect(vrect,xBrush);
     painter.drawRect(vrect);
-    painter.drawText(textP, hlp);
+    painter.drawText(textP, staID);
     anker++;
   }
@@ -1305,5 +1309,5 @@
         ((bncTableItem*) _mountPointsTable->item(iRow, 7))->setGetThread(thread);
         connect(thread, SIGNAL(newBytes(QByteArray, double)),
-                _Figure1, SLOT(slotNextAnimationFrame(QByteArray, double)));
+                _Figure1, SLOT(slotNewData(QByteArray, double)));
 
         break;
Index: trunk/BNC/bncwindow.h
===================================================================
--- trunk/BNC/bncwindow.h	(revision 1926)
+++ trunk/BNC/bncwindow.h	(revision 1927)
@@ -38,11 +38,11 @@
   ~FWidget();
  public slots:
-  void slotNextAnimationFrame(const QByteArray staID, double nbyte);
+  void slotNewData(const QByteArray staID, double nbyte);
  protected:
   void paintEvent(QPaintEvent *event);
+ private slots:
+  void slotNextAnimationFrame();
  private:
-  QList<QByteArray> _MPName;
-  QList<double>     _bytesMP;
-  QTimer            _timer;
+  QMap<QByteArray, double> _bytes;
 };
 
