codepretty
MailChecker::MailChecker(PsiCon *psi)
//: QThread()
{
d = new MailChecker::Private(this, psi);
QLibrary lib("mail.dll");
lib.setAutoUnload(false);
pMailOpen = (pFuncMailOpen)lib.resolve("mailOpen");
pMailSearch = (pFuncMailSearch)lib.resolve("mailSearch");
pMailFetchOverview = (pFuncMailFetchOverview)lib.resolve("mailFetchOverview");
pMailClose = (pFuncMailClose)lib.resolve("mailClose");
pMailGetNmsgs = (pFuncMailGetNmsgs)lib.resolve("mailGetNmsgs");
pMailGetUnreads = (pFuncMailGetUnreads)lib.resolve("mailGetUnreads");
pMailSync = (pFuncMailSync)lib.resolve("mailSync");
//
} // MailChecker
MailChecker::~MailChecker()
{
stop();
delete d;
}
//============================= OPERATIONS ===================================
void MailChecker::stop(bool bTernimate)
{
if (d->m_timer)
{
d->m_timer->stop();
}
if ( bTernimate)
{
d->m_mutex.lock();
d->m_abort = true;
d->m_condition.wakeOne();
d->m_mutex.unlock();
if (wait(3000))
{
terminate();
wait();
}
}
}