PRCYCoin  2.0.0.7rc1
P2P Digital Currency
overviewpage.h
Go to the documentation of this file.
1 // Copyright (c) 2011-2013 The Bitcoin developers
2 // Distributed under the MIT/X11 software license, see the accompanying
3 // file COPYING or http://www.opensource.org/licenses/mit-license.php.
4 
5 #ifndef BITCOIN_QT_OVERVIEWPAGE_H
6 #define BITCOIN_QT_OVERVIEWPAGE_H
7 
8 #include "amount.h"
9 
10 #include <QWidget>
11 #include <QTimer>
12 #include <QElapsedTimer>
13 #include <QDialog>
14 #include <QSizeGrip>
15 #include <QSettings>
16 #include <QNetworkReply>
17 
18 class ClientModel;
20 class TxViewDelegate;
21 class WalletModel;
22 
23 namespace Ui
24 {
25 class OverviewPage;
26 }
27 
28 QT_BEGIN_NAMESPACE
29 class QModelIndex;
30 QT_END_NAMESPACE
31 
33 class OverviewPage : public QDialog
34 {
35  Q_OBJECT
36 
37 public:
38  explicit OverviewPage(QWidget* parent = 0);
39  ~OverviewPage();
40 
43  void showBlockSync(bool fShow);
44  void showBalanceSync(bool fShow);
45 
46  QTimer* animTicker;
47  QElapsedTimer* animClock;
48 
49 public Q_SLOTS:
50  void setBalance(const CAmount& balance, const CAmount& unconfirmedBalance, const CAmount& immatureBalance,
51  const CAmount& watchOnlyBalance, const CAmount& watchUnconfBalance, const CAmount& watchImmatureBalance);
52  void hideOrphans(bool fHide);
53  void onAnimTick();
57  void setSpendableBalance(bool isStaking);
58  void showBlockCurrentHeight(int count);
59  void updateBalance();
60 
61 Q_SIGNALS:
62  void transactionClicked(const QModelIndex& index);
63 
64 private:
66  Ui::OverviewPage* ui;
77  void getPercentage(CAmount nTotalBalance, QString& sPRCYPercentage);
78 
81 
82  QWidget* blockSyncCircle;
84  bool isSyncingBlocks=true;
87  bool isSyncingBalance=true;
88  QSettings settings;
89 
90  void initSyncCircle(float percentOfParent);
91  void moveSyncCircle(QWidget* anchor, QWidget* animated, int deltaRadius, float degreesPerSecond, float angleOffset=0);
92  QRect getCircleGeometry(QWidget* parent, float ratioToParent);
93 
94  // Check Currency Value via CoinGecko.com API
95  QTimer* updateJSONtimer;
96  QTimer* updateGUItimer;
97  QNetworkAccessManager* manager;
98  QNetworkReply* reply;
99 
100 private Q_SLOTS:
101  void updateDisplayUnit();
102  void handleTransactionClicked(const QModelIndex& index);
103  void updateAlerts(const QString& warnings);
104  void updateWatchOnlyLabels(bool showWatchOnly);
105  void on_lockUnlock();
106  void updateLockStatus(int status);
107  // Check Currency Value via CoinGecko.com API
108  void getCurrencyValue();
109  void setCurrencyValue();
110 };
111 
112 #endif // BITCOIN_QT_OVERVIEWPAGE_H
OverviewPage::setSpendableBalance
void setSpendableBalance(bool isStaking)
Definition: overviewpage.cpp:235
OverviewPage::currentWatchImmatureBalance
CAmount currentWatchImmatureBalance
Definition: overviewpage.h:75
OverviewPage::showBlockCurrentHeight
void showBlockCurrentHeight(int count)
Definition: overviewpage.cpp:360
OverviewPage::blockSyncCircle
QWidget * blockSyncCircle
Definition: overviewpage.h:82
OverviewPage::OverviewPage
OverviewPage(QWidget *parent=0)
Definition: overviewpage.cpp:104
OverviewPage::updateGUItimer
QTimer * updateGUItimer
Definition: overviewpage.h:96
OverviewPage::showBalanceSync
void showBalanceSync(bool fShow)
Definition: overviewpage.cpp:323
OverviewPage::settings
QSettings settings
Definition: overviewpage.h:88
OverviewPage::isSyncingBlocks
bool isSyncingBlocks
Definition: overviewpage.h:84
OverviewPage::~OverviewPage
~OverviewPage()
Definition: overviewpage.cpp:154
OverviewPage::initSyncCircle
void initSyncCircle(float percentOfParent)
Definition: overviewpage.cpp:365
WalletModel
Interface to Bitcoin wallet from Qt view code.
Definition: walletmodel.h:102
OverviewPage::showBlockSync
void showBlockSync(bool fShow)
Definition: overviewpage.cpp:339
OverviewPage::on_lockUnlock
void on_lockUnlock()
Definition: overviewpage.cpp:538
OverviewPage::getPercentage
void getPercentage(CAmount nTotalBalance, QString &sPRCYPercentage)
Definition: overviewpage.cpp:161
OverviewPage::updateAlerts
void updateAlerts(const QString &warnings)
Definition: overviewpage.cpp:317
OverviewPage::ui
Ui::OverviewPage * ui
Definition: overviewpage.h:66
OverviewPage
Overview ("home") page widget.
Definition: overviewpage.h:33
OverviewPage::filter
TransactionFilterProxy * filter
Definition: overviewpage.h:80
OverviewPage::balanceSyncCircle
QWidget * balanceSyncCircle
Definition: overviewpage.h:85
OverviewPage::updateBalance
void updateBalance()
Definition: overviewpage.cpp:291
OverviewPage::txdelegate
TxViewDelegate * txdelegate
Definition: overviewpage.h:79
OverviewPage::currentWatchUnconfBalance
CAmount currentWatchUnconfBalance
Definition: overviewpage.h:74
OverviewPage::isSyncingBalance
bool isSyncingBalance
Definition: overviewpage.h:87
OverviewPage::walletModel
WalletModel * walletModel
Definition: overviewpage.h:68
OverviewPage::manager
QNetworkAccessManager * manager
Definition: overviewpage.h:97
TxViewDelegate
Definition: overviewpage.cpp:35
OverviewPage::blockAnimSyncCircle
QWidget * blockAnimSyncCircle
Definition: overviewpage.h:83
OverviewPage::updateRecentTransactions
void updateRecentTransactions()
Definition: overviewpage.cpp:462
OverviewPage::pingNetworkInterval
QTimer * pingNetworkInterval
Definition: overviewpage.h:65
OverviewPage::updateJSONtimer
QTimer * updateJSONtimer
Definition: overviewpage.h:95
OverviewPage::getCircleGeometry
QRect getCircleGeometry(QWidget *parent, float ratioToParent)
Definition: overviewpage.cpp:429
OverviewPage::currentBalance
CAmount currentBalance
Definition: overviewpage.h:70
OverviewPage::updateWatchOnlyLabels
void updateWatchOnlyLabels(bool showWatchOnly)
Definition: overviewpage.cpp:217
OverviewPage::balanceAnimSyncCircle
QWidget * balanceAnimSyncCircle
Definition: overviewpage.h:86
OverviewPage::setClientModel
void setClientModel(ClientModel *clientModel)
Definition: overviewpage.cpp:223
OverviewPage::currentUnconfirmedBalance
CAmount currentUnconfirmedBalance
Definition: overviewpage.h:71
CAmount
int64_t CAmount
Amount in PRCY (Can be negative)
Definition: amount.h:17
OverviewPage::animClock
QElapsedTimer * animClock
Definition: overviewpage.h:47
OverviewPage::reply
QNetworkReply * reply
Definition: overviewpage.h:98
OverviewPage::hideOrphans
void hideOrphans(bool fHide)
Definition: overviewpage.cpp:311
OverviewPage::animTicker
QTimer * animTicker
Definition: overviewpage.h:46
OverviewPage::updateDisplayUnit
void updateDisplayUnit()
Definition: overviewpage.cpp:298
OverviewPage::clientModel
ClientModel * clientModel
Definition: overviewpage.h:67
OverviewPage::getCurrencyValue
void getCurrencyValue()
Definition: overviewpage.cpp:575
OverviewPage::transactionClicked
void transactionClicked(const QModelIndex &index)
OverviewPage::updateTotalBlocksLabel
void updateTotalBlocksLabel()
Definition: overviewpage.cpp:438
ClientModel
Model for PRCY network client.
Definition: clientmodel.h:44
Ui
Definition: 2faconfirmdialog.h:7
OverviewPage::updateLockStatus
void updateLockStatus(int status)
Definition: overviewpage.cpp:564
OverviewPage::moveSyncCircle
void moveSyncCircle(QWidget *anchor, QWidget *animated, int deltaRadius, float degreesPerSecond, float angleOffset=0)
Definition: overviewpage.cpp:417
OverviewPage::tryNetworkBlockCount
int tryNetworkBlockCount()
Definition: overviewpage.cpp:442
OverviewPage::nDisplayUnit
int nDisplayUnit
Definition: overviewpage.h:76
OverviewPage::onAnimTick
void onAnimTick()
Definition: overviewpage.cpp:395
OverviewPage::currentWatchOnlyBalance
CAmount currentWatchOnlyBalance
Definition: overviewpage.h:73
OverviewPage::handleTransactionClicked
void handleTransactionClicked(const QModelIndex &index)
Definition: overviewpage.cpp:148
OverviewPage::setCurrencyValue
void setCurrencyValue()
Definition: overviewpage.cpp:589
OverviewPage::setWalletModel
void setWalletModel(WalletModel *walletModel)
Definition: overviewpage.cpp:252
OverviewPage::setBalance
void setBalance(const CAmount &balance, const CAmount &unconfirmedBalance, const CAmount &immatureBalance, const CAmount &watchOnlyBalance, const CAmount &watchUnconfBalance, const CAmount &watchImmatureBalance)
Definition: overviewpage.cpp:169
OverviewPage::currentImmatureBalance
CAmount currentImmatureBalance
Definition: overviewpage.h:72
amount.h
OverviewPage::networkBlockCount
int networkBlockCount
Definition: overviewpage.h:69
TransactionFilterProxy
Filter the transaction list according to pre-specified rules.
Definition: transactionfilterproxy.h:14