Index: /trunk/BNC/bncnetquery.cpp
===================================================================
--- /trunk/BNC/bncnetquery.cpp	(revision 1373)
+++ /trunk/BNC/bncnetquery.cpp	(revision 1374)
@@ -35,4 +35,6 @@
   _reply     = 0;
   _eventLoop = new QEventLoop(this);
+
+  _status    = init;
 }
 
@@ -48,4 +50,5 @@
 ////////////////////////////////////////////////////////////////////////////
 void bncNetQuery::slotError(QNetworkReply::NetworkError) {
+  _status = error;
   cout << "slotError " << endl;
   emit newMessage("slotError " + _reply->errorString().toAscii(), true);
@@ -54,4 +57,7 @@
 
 void bncNetQuery::slotFinished() {
+  if (_status != error) {
+    _status = finished;
+  }
   cout << "slotFinished" << endl;
 }
@@ -63,11 +69,13 @@
 // Start request, block till the next read (public)
 ////////////////////////////////////////////////////////////////////////////
-t_irc bncNetQuery::startRequest(const QUrl& url) {
-  return startRequest(url, true);
+void bncNetQuery::startRequest(const QUrl& url) {
+  startRequest(url, true);
 }
 
 // Start request
 ////////////////////////////////////////////////////////////////////////////
-t_irc bncNetQuery::startRequest(const QUrl& url, bool full) {
+void bncNetQuery::startRequest(const QUrl& url, bool full) {
+
+  _status = running;
 
   // Default scheme and path
@@ -107,17 +115,13 @@
   connect(_reply, SIGNAL(error(QNetworkReply::NetworkError)),
           this, SLOT(slotError(QNetworkReply::NetworkError)));
-
-  return success;
 }
 
 // Start Request, wait for its completion
 ////////////////////////////////////////////////////////////////////////////
-t_irc bncNetQuery::waitForRequestResult(const QUrl& url, QByteArray& outData) {
+void bncNetQuery::waitForRequestResult(const QUrl& url, QByteArray& outData) {
 
   // Send Request
   // ------------
-  if (startRequest(url) != success) {
-    return failure;
-  }
+  startRequest(url);
 
   // Wait Loop
@@ -128,16 +132,9 @@
   // --------------------
   outData = _reply->readAll();
-
-  if (_reply->error() == QNetworkReply::NoError) {
-    return success;
-  }
-  else {
-    return failure;
-  }
 }
 
 // Wait for next data
 ////////////////////////////////////////////////////////////////////////////
-t_irc bncNetQuery::waitForReadyRead(QByteArray& outData) {
+void bncNetQuery::waitForReadyRead(QByteArray& outData) {
 
   // Wait Loop
@@ -147,13 +144,6 @@
   }
 
-  // Append Data and Return
-  // -----------------------
+  // Append Data
+  // -----------
   outData.append(_reply->readAll());
-
-  if (_reply->error() == QNetworkReply::NoError) {
-    return success;
-  }
-  else {
-    return failure;
-  }
 }
Index: /trunk/BNC/bncnetquery.h
===================================================================
--- /trunk/BNC/bncnetquery.h	(revision 1373)
+++ /trunk/BNC/bncnetquery.h	(revision 1374)
@@ -9,9 +9,14 @@
 
  public:
+  enum queryStatus {init, running, finished, error};
+
   bncNetQuery();
   ~bncNetQuery();
-  t_irc waitForRequestResult(const QUrl& url, QByteArray& outData);
-  t_irc startRequest(const QUrl& url);
-  t_irc waitForReadyRead(QByteArray& outData);
+
+  void waitForRequestResult(const QUrl& url, QByteArray& outData);
+  void startRequest(const QUrl& url);
+  void waitForReadyRead(QByteArray& outData);
+
+  queryStatus status() const {return _status;}
 
  signals:
@@ -24,9 +29,10 @@
 
  private:
-  t_irc startRequest(const QUrl& url, bool full);
+  void startRequest(const QUrl& url, bool full);
 
   QNetworkAccessManager* _manager;
   QNetworkReply*         _reply;
   QEventLoop*            _eventLoop;
+  queryStatus            _status;
 };
 
