SelectRemoteDlg::~SelectRemoteDlg()
{
delete layout;
+ if (onlinePollerThread != NULL) {
+ onlinePollerThread->quit();
+ delete onlinePollerThread;
+ onlinePollerThread = NULL;
+ }
}
void SelectRemoteDlg::setDB(RemoteDB *db)
}
}
+void SelectRemoteDlg::getDB()
+{
+ if (onlinePollerThread != NULL) {
+ onlinePollerThread->quit();
+ delete onlinePollerThread;
+ onlinePollerThread = NULL;
+ }
+ remoteDBMgr.getDBAsync();
+}
+
void SelectRemoteDlg::refreshDB()
{
setBusy(true);
- remoteDBMgr.getDBAsync();
+ if (onlinePollerThread != NULL) {
+ delete onlinePollerThread;
+ }
+ onlinePollerThread = new OnlinePollerThread(this);
+ connect(onlinePollerThread, SIGNAL(online()),
+ this, SLOT(getDB()));
+ onlinePollerThread->run();
}
void SelectRemoteDlg::showEvent(QShowEvent *event)