projects
/
evehomescreen
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
6756b42
)
Add timer for refreshing training
author
jasu
<jasu@skeletor.(none)>
Mon, 10 May 2010 21:31:37 +0000
(
00:31
+0300)
committer
jasu
<jasu@skeletor.(none)>
Mon, 10 May 2010 21:31:37 +0000
(
00:31
+0300)
src/widget.cpp
patch
|
blob
|
history
src/widget.h
patch
|
blob
|
history
diff --git
a/src/widget.cpp
b/src/widget.cpp
index
7302d32
..
88bf66f
100644
(file)
--- a/
src/widget.cpp
+++ b/
src/widget.cpp
@@
-10,6
+10,8
@@
#include <QtDebug>
#include <QNetworkConfigurationManager>
#include <QSettings>
#include <QtDebug>
#include <QNetworkConfigurationManager>
#include <QSettings>
+#include <QTimer>
+#include <QDateTime>
QTM_USE_NAMESPACE
QTM_USE_NAMESPACE
@@
-19,7
+21,8
@@
Widget::Widget(QWidget *parent)
m_training(NULL),
m_net(new QNetworkConfigurationManager(this)),
m_skills(new SkillTree(this)),
m_training(NULL),
m_net(new QNetworkConfigurationManager(this)),
m_skills(new SkillTree(this)),
- m_model(new EveModel)
+ m_model(new EveModel),
+ m_timer(new QTimer(this))
{
setAlignment(Qt::AlignCenter);
setAttribute(Qt::WA_TranslucentBackground);
{
setAlignment(Qt::AlignCenter);
setAttribute(Qt::WA_TranslucentBackground);
@@
-33,6
+36,7
@@
Widget::Widget(QWidget *parent)
if (c != NULL) {
loadTraining();
}
if (c != NULL) {
loadTraining();
}
+ connect(m_timer,SIGNAL(timeout()),this,SLOT(loadTraining()));
}
Widget::~Widget()
}
Widget::~Widget()
@@
-103,10
+107,11
@@
void Widget::loadTraining()
if (character != NULL) {
qDebug() << "Fetch skills";
if (character != NULL) {
qDebug() << "Fetch skills";
- m_training = new EveSkillTraining(this);
+ if (m_training == NULL)
+ m_training = new EveSkillTraining(this);
m_training->setAccount(m_settings->model().data());
m_training->setCharacter(character);
m_training->setAccount(m_settings->model().data());
m_training->setCharacter(character);
- connect(m_training,SIGNAL(finished()),this,SLOT(update()));
+ connect(m_training,SIGNAL(finished()),this,SLOT(trainingLoaded()));
m_training->fetchInfo();
}
}
m_training->fetchInfo();
}
}
@@
-126,3
+131,13
@@
void Widget::onlineStateChanged(bool online)
}
}
}
}
+void Widget::trainingLoaded()
+{
+ QDateTime now = QDateTime::currentDateTime();
+ if (m_training != NULL) {
+ int interval = 1000 * (now.secsTo(m_training->endTime) + 60);
+ qDebug() << "Timer interval" << interval;
+ m_timer->setInterval( interval );
+ m_timer->start();
+ }
+}
diff --git
a/src/widget.h
b/src/widget.h
index
8f33c6d
..
6897415
100644
(file)
--- a/
src/widget.h
+++ b/
src/widget.h
@@
-31,12
+31,14
@@
public slots:
void skillReady();
void onlineStateChanged(bool online);
void loadTraining();
void skillReady();
void onlineStateChanged(bool online);
void loadTraining();
+ void trainingLoaded();
private:
EveSettingsDialog *m_settings;
EveSkillTraining *m_training;
QNetworkConfigurationManager *m_net;
SkillTree *m_skills;
QSharedPointer<EveModel> m_model;
private:
EveSettingsDialog *m_settings;
EveSkillTraining *m_training;
QNetworkConfigurationManager *m_net;
SkillTree *m_skills;
QSharedPointer<EveModel> m_model;
+ QTimer *m_timer;
};
#endif // WIDGET_H
};
#endif // WIDGET_H