From e3cea8582f1f860ba2a25bbfb174fbcbcd306c9a Mon Sep 17 00:00:00 2001 From: Ilya Kitaev Date: Sat, 8 Oct 2016 01:22:45 +0300 Subject: TransactionHistory: firstDateTime and lastDateTime properties --- src/libwalletqt/TransactionHistory.cpp | 35 ++++++++++++++++++++++++++++++++-- 1 file changed, 33 insertions(+), 2 deletions(-) (limited to 'src/libwalletqt/TransactionHistory.cpp') diff --git a/src/libwalletqt/TransactionHistory.cpp b/src/libwalletqt/TransactionHistory.cpp index e94816f2..7fd7c7bc 100644 --- a/src/libwalletqt/TransactionHistory.cpp +++ b/src/libwalletqt/TransactionHistory.cpp @@ -28,13 +28,33 @@ QList 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(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(); } -- cgit v1.2.3