|
|
|
//
|
|
|
|
// Created by koncord on 03.05.17.
|
|
|
|
//
|
|
|
|
|
|
|
|
#include "PingHelper.hpp"
|
|
|
|
#include "ServerModel.hpp"
|
|
|
|
#include <QDebug>
|
|
|
|
#include "PingUpdater.hpp"
|
|
|
|
|
[Browser] Rework browser for improved stability & clarity
(cherry picked from commits 5c79e7106f840ef217b9bf45ec5d3bd925825863, 57353cdffff3580566415039544fae15052e8d73, 15723adb9a0383d8ebb8b7e26849b2de70b9952d, 01a5196a92f27f0c09bd053daf4d779d0c113974, ed75563a94174ca38cb67beba9c0e35a810dfbd2, 3839a2dcfd8fbbc7598771ee604f9ff9eb08e044, 1fd16ba69c4893cfe7379ea6bb0f65e5ac59cd4b, 66283943c593a406592daf0b90491d42a2e80050, ba8613a179936631d6c5fa7ae6dedb8a5f3eb684, 5b8f4f3e92d662f36580b94184057b648be9f01d, 35b771b19e00a813350553f686c0971334bbc3b5, 043eb224e29ca7b41a738eb598e16131ccfedd1a, 05fac2f67d5281d72b48bdba0db14e6bd7974765)
6 years ago
|
|
|
void PingHelper::Add(int row, const AddrPair &addrPair)
|
|
|
|
{
|
|
|
|
pingUpdater->addServer(row, addrPair);
|
|
|
|
if (!pingThread->isRunning())
|
|
|
|
pingThread->start();
|
|
|
|
}
|
|
|
|
|
[Browser] Rework browser for improved stability & clarity
(cherry picked from commits 5c79e7106f840ef217b9bf45ec5d3bd925825863, 57353cdffff3580566415039544fae15052e8d73, 15723adb9a0383d8ebb8b7e26849b2de70b9952d, 01a5196a92f27f0c09bd053daf4d779d0c113974, ed75563a94174ca38cb67beba9c0e35a810dfbd2, 3839a2dcfd8fbbc7598771ee604f9ff9eb08e044, 1fd16ba69c4893cfe7379ea6bb0f65e5ac59cd4b, 66283943c593a406592daf0b90491d42a2e80050, ba8613a179936631d6c5fa7ae6dedb8a5f3eb684, 5b8f4f3e92d662f36580b94184057b648be9f01d, 35b771b19e00a813350553f686c0971334bbc3b5, 043eb224e29ca7b41a738eb598e16131ccfedd1a, 05fac2f67d5281d72b48bdba0db14e6bd7974765)
6 years ago
|
|
|
void PingHelper::Reset()
|
|
|
|
{
|
|
|
|
//if (pingThread->isRunning())
|
|
|
|
Stop();
|
|
|
|
}
|
|
|
|
|
|
|
|
void PingHelper::Stop()
|
|
|
|
{
|
|
|
|
emit pingUpdater->stop();
|
|
|
|
}
|
|
|
|
|
|
|
|
void PingHelper::SetModel(QAbstractTableModel *model)
|
|
|
|
{
|
|
|
|
this->model = model;
|
|
|
|
}
|
|
|
|
|
|
|
|
void PingHelper::update(int row, unsigned ping)
|
|
|
|
{
|
|
|
|
model->setData(model->index(row, ServerData::PING), ping);
|
|
|
|
}
|
|
|
|
|
|
|
|
PingHelper &PingHelper::Get()
|
|
|
|
{
|
|
|
|
static PingHelper helper;
|
|
|
|
return helper;
|
|
|
|
}
|
|
|
|
|
[Browser] Rework browser for improved stability & clarity
(cherry picked from commits 5c79e7106f840ef217b9bf45ec5d3bd925825863, 57353cdffff3580566415039544fae15052e8d73, 15723adb9a0383d8ebb8b7e26849b2de70b9952d, 01a5196a92f27f0c09bd053daf4d779d0c113974, ed75563a94174ca38cb67beba9c0e35a810dfbd2, 3839a2dcfd8fbbc7598771ee604f9ff9eb08e044, 1fd16ba69c4893cfe7379ea6bb0f65e5ac59cd4b, 66283943c593a406592daf0b90491d42a2e80050, ba8613a179936631d6c5fa7ae6dedb8a5f3eb684, 5b8f4f3e92d662f36580b94184057b648be9f01d, 35b771b19e00a813350553f686c0971334bbc3b5, 043eb224e29ca7b41a738eb598e16131ccfedd1a, 05fac2f67d5281d72b48bdba0db14e6bd7974765)
6 years ago
|
|
|
PingHelper::PingHelper() : QObject()
|
|
|
|
{
|
|
|
|
pingThread = new QThread;
|
|
|
|
pingUpdater = new PingUpdater;
|
|
|
|
pingUpdater->moveToThread(pingThread);
|
|
|
|
|
|
|
|
connect(pingThread, SIGNAL(started()), pingUpdater, SLOT(process()));
|
|
|
|
connect(pingUpdater, SIGNAL(start()), pingThread, SLOT(start()));
|
|
|
|
connect(pingUpdater, SIGNAL(finished()), pingThread, SLOT(quit()));
|
|
|
|
connect(this, SIGNAL(stop()), pingUpdater, SLOT(stop()));
|
|
|
|
//connect(pingUpdater, SIGNAL(finished()), pingUpdater, SLOT(deleteLater()));
|
|
|
|
connect(pingUpdater, SIGNAL(updateModel(int, unsigned)), this, SLOT(update(int, unsigned)));
|
|
|
|
}
|