- Added PreferencesDialog with settings saving and reading.
[qtrapids] / src / engine / AlertWaiterThread.cpp
index 9b6e741..b5d6e95 100644 (file)
@@ -41,17 +41,29 @@ AlertWaiterThread::~AlertWaiterThread()
 }
 
 
+void AlertWaiterThread::allAlerts(bool enable)
+{
+       // If all enabled, set all alert cateogries:
+       if (enable) {
+               btSession_->set_alert_mask(libtorrent::alert::all_categories);
+       } else {
+               // Otherwise set to default, which is only error notifications.
+               btSession_->set_alert_mask(libtorrent::alert::error_notification);
+       }
+}
+
+
 void AlertWaiterThread::run()
 {
        TorrentAlert const *alertTemp = NULL;
        while (true)
        {
                qDebug() << "AlertWaiter running";
-               // wait_for_alert() returns libtorrent alert. 
+               // wait_for_alert() call blocks. Returns libtorrent alert. 
                // Returns NULL, if no alerts in timeout period.
                alertTemp = btSession_->wait_for_alert(ALERT_WAIT_TIMEOUT);
                emit alert(alertTemp);
+               // 2000 us = 2ms. Gives main thread time to handle alert signal.
+               usleep(2000); 
        }
 }
-
-