mirror of
https://github.com/monero-project/monero-gui.git
synced 2024-12-23 20:20:02 +00:00
TransactionHistory: firstDateTime and lastDateTime properties
This commit is contained in:
parent
99271828ae
commit
e3cea8582f
2 changed files with 42 additions and 2 deletions
|
@ -28,13 +28,33 @@ QList<TransactionInfo *> TransactionHistory::getAll() const
|
|||
emit refreshStarted();
|
||||
qDeleteAll(m_tinfo);
|
||||
m_tinfo.clear();
|
||||
|
||||
QDateTime firstDateTime = QDateTime::currentDateTime();
|
||||
QDateTime lastDateTime = QDateTime(QDate(1970, 1, 1));
|
||||
|
||||
TransactionHistory * parent = const_cast<TransactionHistory*>(this);
|
||||
for (const auto i : m_pimpl->getAll()) {
|
||||
TransactionInfo * ti = new TransactionInfo(i, parent);
|
||||
qDebug() << ti->hash();
|
||||
m_tinfo.append(ti);
|
||||
// looking for transactions timestamp scope
|
||||
if (ti->timestamp() >= lastDateTime) {
|
||||
lastDateTime = ti->timestamp();
|
||||
}
|
||||
if (ti->timestamp() <= firstDateTime) {
|
||||
firstDateTime = ti->timestamp();
|
||||
}
|
||||
}
|
||||
emit refreshFinished();
|
||||
|
||||
if (m_firstDateTime != firstDateTime) {
|
||||
m_firstDateTime = firstDateTime;
|
||||
emit firstDateTimeChanged();
|
||||
}
|
||||
if (m_lastDateTime != lastDateTime) {
|
||||
m_lastDateTime = lastDateTime;
|
||||
emit lastDateTimeChanged();
|
||||
}
|
||||
|
||||
return m_tinfo;
|
||||
}
|
||||
|
||||
|
@ -51,9 +71,20 @@ quint64 TransactionHistory::count() const
|
|||
return m_tinfo.count();
|
||||
}
|
||||
|
||||
QDateTime TransactionHistory::firstDateTime() const
|
||||
{
|
||||
return m_firstDateTime;
|
||||
}
|
||||
|
||||
QDateTime TransactionHistory::lastDateTime() const
|
||||
{
|
||||
return m_lastDateTime;
|
||||
}
|
||||
|
||||
|
||||
TransactionHistory::TransactionHistory(Bitmonero::TransactionHistory *pimpl, QObject *parent)
|
||||
: QObject(parent), m_pimpl(pimpl)
|
||||
{
|
||||
// this->refresh();
|
||||
m_firstDateTime = QDateTime(QDate(1970, 1, 1));
|
||||
m_lastDateTime = QDateTime::currentDateTime();
|
||||
}
|
||||
|
|
|
@ -3,6 +3,7 @@
|
|||
|
||||
#include <QObject>
|
||||
#include <QList>
|
||||
#include <QDateTime>
|
||||
|
||||
namespace Bitmonero {
|
||||
class TransactionHistory;
|
||||
|
@ -14,6 +15,8 @@ class TransactionHistory : public QObject
|
|||
{
|
||||
Q_OBJECT
|
||||
Q_PROPERTY(int count READ count)
|
||||
Q_PROPERTY(QDateTime firstDateTime READ firstDateTime NOTIFY firstDateTimeChanged)
|
||||
Q_PROPERTY(QDateTime lastDateTime READ lastDateTime NOTIFY lastDateTimeChanged)
|
||||
|
||||
public:
|
||||
Q_INVOKABLE TransactionInfo *transaction(int index);
|
||||
|
@ -21,10 +24,14 @@ public:
|
|||
Q_INVOKABLE QList<TransactionInfo*> getAll() const;
|
||||
Q_INVOKABLE void refresh();
|
||||
quint64 count() const;
|
||||
QDateTime firstDateTime() const;
|
||||
QDateTime lastDateTime() const;
|
||||
|
||||
signals:
|
||||
void refreshStarted() const;
|
||||
void refreshFinished() const;
|
||||
void firstDateTimeChanged() const;
|
||||
void lastDateTimeChanged() const;
|
||||
|
||||
public slots:
|
||||
|
||||
|
@ -37,6 +44,8 @@ private:
|
|||
|
||||
Bitmonero::TransactionHistory * m_pimpl;
|
||||
mutable QList<TransactionInfo*> m_tinfo;
|
||||
mutable QDateTime m_firstDateTime;
|
||||
mutable QDateTime m_lastDateTime;
|
||||
|
||||
};
|
||||
|
||||
|
|
Loading…
Reference in a new issue