From 2a887c369a4baa01daaccc4165df6e523302ce91 Mon Sep 17 00:00:00 2001 From: EverGreenCoin Date: Wed, 10 May 2017 02:49:50 -0400 Subject: [PATCH] Qt5 ready. --- curecoin-qt.pro | 6 ++++++ src/curecoinrpc.cpp | 4 ++-- src/db.cpp | 2 +- src/irc.cpp | 6 +++--- src/kernel.cpp | 6 +++++- src/main.cpp | 6 +++--- src/net.cpp | 16 ++++++++-------- src/qt/addressbookpage.cpp | 2 +- src/qt/curecoin.cpp | 4 ++-- src/qt/curecoingui.cpp | 3 ++- src/qt/guiutil.cpp | 8 ++++++-- src/qt/locale/curecoin_ca.qm | Bin 427 -> 424 bytes src/qt/locale/curecoin_ca_ES.qm | Bin 89945 -> 89897 bytes src/qt/locale/curecoin_eo.qm | Bin 13887 -> 13963 bytes src/qt/locale/curecoin_la.qm | Bin 89864 -> 90369 bytes src/qt/qtipcserver.cpp | 2 +- src/qt/sendcoinsdialog.cpp | 2 +- src/script.cpp | 2 +- src/util.cpp | 8 ++++---- src/util.h | 1 - src/wallet.cpp | 4 ++-- src/walletdb.cpp | 4 ++-- 22 files changed, 50 insertions(+), 36 deletions(-) diff --git a/curecoin-qt.pro b/curecoin-qt.pro index 09e4415..36f273a 100644 --- a/curecoin-qt.pro +++ b/curecoin-qt.pro @@ -4,6 +4,12 @@ VERSION = 1.0.0 INCLUDEPATH += src src/json src/qt DEFINES += QT_GUI BOOST_THREAD_USE_LIB BOOST_SPIRIT_THREADSAFE BOOST_THREAD_PROVIDES_GENERIC_SHARED_MUTEX_ON_WIN __NO_SYSTEM_INCLUDES CONFIG += no_include_pwd +QT += core gui network + +greaterThan(QT_MAJOR_VERSION, 4) { + QT += widgets printsupport + DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0 +} #uncomment the following section to enable building on windows: #windows:LIBS += -lshlwapi diff --git a/src/curecoinrpc.cpp b/src/curecoinrpc.cpp index 56494df..99853c1 100644 --- a/src/curecoinrpc.cpp +++ b/src/curecoinrpc.cpp @@ -389,7 +389,7 @@ int ReadHTTPStatus(std::basic_istream& stream, int &proto) int ReadHTTPHeader(std::basic_istream& stream, map& mapHeadersRet) { int nLen = 0; - loop + while (true) { string str; std::getline(stream, str); @@ -939,7 +939,7 @@ void ThreadRPCServer3(void* parg) AcceptedConnection *conn = (AcceptedConnection *) parg; bool fRun = true; - loop { + while (true) { if (fShutdown || !fRun) { conn->close(); diff --git a/src/db.cpp b/src/db.cpp index e6a52f5..1463600 100644 --- a/src/db.cpp +++ b/src/db.cpp @@ -802,7 +802,7 @@ bool CTxDB::LoadBlockIndexGuts() // Load mapBlockIndex unsigned int fFlags = DB_SET_RANGE; - loop + while (true) { // Read next record CDataStream ssKey(SER_DISK, CLIENT_VERSION); diff --git a/src/irc.cpp b/src/irc.cpp index aa412c8..d89356e 100644 --- a/src/irc.cpp +++ b/src/irc.cpp @@ -77,7 +77,7 @@ static bool Send(SOCKET hSocket, const char* pszSend) bool RecvLineIRC(SOCKET hSocket, string& strLine) { - loop + while (true) { bool fRet = RecvLine(hSocket, strLine); if (fRet) @@ -100,7 +100,7 @@ bool RecvLineIRC(SOCKET hSocket, string& strLine) int RecvUntil(SOCKET hSocket, const char* psz1, const char* psz2=NULL, const char* psz3=NULL, const char* psz4=NULL) { - loop + while (true) { string strLine; strLine.reserve(10000); @@ -135,7 +135,7 @@ bool Wait(int nSeconds) bool RecvCodeLine(SOCKET hSocket, const char* psz1, string& strRet) { strRet.clear(); - loop + while (true) { string strLine; if (!RecvLineIRC(hSocket, strLine)) diff --git a/src/kernel.cpp b/src/kernel.cpp index df41e09..c47e2ff 100644 --- a/src/kernel.cpp +++ b/src/kernel.cpp @@ -20,7 +20,11 @@ unsigned int nModifierInterval = MODIFIER_INTERVAL; static std::map mapStakeModifierCheckpoints = boost::assign::map_list_of ( 0, 0x0e00670bu ) - ; + ( 1, 0x5189c78au ) + ( 11000, 0x97a10217u ) + ( 130000, 0xf3878d42u ) + ( 148000, 0x111af91cu ) +; // Get the last stake modifier and its generation time from a given block static bool GetLastStakeModifier(const CBlockIndex* pindex, uint64& nStakeModifier, int64& nModifierTime) diff --git a/src/main.cpp b/src/main.cpp index 5c29a63..fe1e944 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -2574,7 +2574,7 @@ static unsigned int nCurrentBlockFile = 1; FILE* AppendBlockFile(unsigned int& nFileRet) { nFileRet = 0; - loop + while (true) { FILE* file = OpenBlockFile(nCurrentBlockFile, 0, "ab"); if (!file) @@ -3656,7 +3656,7 @@ bool ProcessMessages(CNode* pfrom) // (x) data // - loop + while (true) { // Don't bother if send buffer is too full to respond anyway if (pfrom->vSend.size() >= SendBufferSize()) @@ -4538,7 +4538,7 @@ void curecoinMiner(CWallet *pwallet, bool fProofOfStake) uint256 hashTarget = CBigNum().SetCompact(pblock->nBits).getuint256(); uint256 hashbuf[2]; uint256& hash = *alignup<16>(hashbuf); - loop + while (true) { unsigned int nHashesDone = 0; unsigned int nNonceFound; diff --git a/src/net.cpp b/src/net.cpp index 3b19ea8..b4800b1 100644 --- a/src/net.cpp +++ b/src/net.cpp @@ -140,7 +140,7 @@ CAddress GetLocalAddress(const CNetAddr *paddrPeer) bool RecvLine(SOCKET hSocket, string& strLine) { strLine = ""; - loop + while (true) { char c; int nBytes = recv(hSocket, &c, 1, 0); @@ -313,7 +313,7 @@ bool GetMyExternalIP2(const CService& addrConnect, const char* pszGet, const cha { if (strLine.empty()) // HTTP response is separated from headers by blank line { - loop + while (true) { if (!RecvLine(hSocket, strLine)) { @@ -665,7 +665,7 @@ void ThreadSocketHandler2(void* parg) list vNodesDisconnected; unsigned int nPrevNodeCount = 0; - loop + while (true) { // // Disconnect nodes @@ -1078,7 +1078,7 @@ void ThreadMapPort2(void* parg) else printf("UPnP Port Mapping successful.\n"); int i = 1; - loop { + while (true) { if (fShutdown || !fUseUPnP) { r = UPNP_DeletePortMapping(urls.controlURL, data.first.servicetype, port.c_str(), "TCP", 0); @@ -1113,7 +1113,7 @@ void ThreadMapPort2(void* parg) freeUPNPDevlist(devlist); devlist = 0; if (r != 0) FreeUPNPUrls(&urls); - loop { + while (true) { if (fShutdown || !fUseUPnP) return; Sleep(2000); @@ -1349,7 +1349,7 @@ void ThreadOpenConnections2(void* parg) // Initiate network connections int64 nStart = GetTime(); - loop + while (true) { ProcessOneShot(); @@ -1408,7 +1408,7 @@ void ThreadOpenConnections2(void* parg) int64 nANow = GetAdjustedTime(); int nTries = 0; - loop + while (true) { // use an nUnkBias between 10 (no outgoing connections) and 90 (8 outgoing connections) CAddress addr = addrman.Select(10 + min(nOutbound,8)*10); @@ -1501,7 +1501,7 @@ void ThreadOpenAddedConnections2(void* parg) } } } - loop + while (true) { vector > vservConnectAddresses = vservAddressesToAdd; // Attempt to connect to each IP for each addnode entry until at least one is successful per addnode entry diff --git a/src/qt/addressbookpage.cpp b/src/qt/addressbookpage.cpp index ee432b1..6d78183 100644 --- a/src/qt/addressbookpage.cpp +++ b/src/qt/addressbookpage.cpp @@ -134,7 +134,7 @@ void AddressBookPage::setModel(AddressTableModel *model) // Set column widths ui->tableView->horizontalHeader()->resizeSection( AddressTableModel::Address, 320); - ui->tableView->horizontalHeader()->setResizeMode( + ui->tableView->horizontalHeader()->setSectionResizeMode( AddressTableModel::Label, QHeaderView::Stretch); connect(ui->tableView->selectionModel(), SIGNAL(selectionChanged(QItemSelection,QItemSelection)), diff --git a/src/qt/curecoin.cpp b/src/qt/curecoin.cpp index 0244b75..10d3919 100644 --- a/src/qt/curecoin.cpp +++ b/src/qt/curecoin.cpp @@ -115,11 +115,11 @@ int main(int argc, char *argv[]) { // Do this early as we don't want to bother initializing if we are just calling IPC ipcScanRelay(argc, argv); - +#if QT_VERSION < 0x050000 // Internal string conversion is all UTF-8 QTextCodec::setCodecForTr(QTextCodec::codecForName("UTF-8")); QTextCodec::setCodecForCStrings(QTextCodec::codecForTr()); - +#endif Q_INIT_RESOURCE(curecoin); QApplication app(argc, argv); diff --git a/src/qt/curecoingui.cpp b/src/qt/curecoingui.cpp index 0376fbd..e1a4ba6 100644 --- a/src/qt/curecoingui.cpp +++ b/src/qt/curecoingui.cpp @@ -54,6 +54,7 @@ #include #include #include +#include #include @@ -820,7 +821,7 @@ void curecoinGUI::encryptWallet(bool status) void curecoinGUI::backupWallet() { - QString saveDir = QDesktopServices::storageLocation(QDesktopServices::DocumentsLocation); + QString saveDir = QStandardPaths::writableLocation(QStandardPaths::DocumentsLocation); QString filename = QFileDialog::getSaveFileName(this, tr("Backup Wallet"), saveDir, tr("Wallet Data (*.dat)")); if(!filename.isEmpty()) { if(!walletModel->backupWallet(filename)) { diff --git a/src/qt/guiutil.cpp b/src/qt/guiutil.cpp index 5d1fec5..55a5372 100644 --- a/src/qt/guiutil.cpp +++ b/src/qt/guiutil.cpp @@ -18,6 +18,9 @@ #include #include #include +#if QT_VERSION >= QT_VERSION_CHECK(5,0,0) +#include +#endif #include #include @@ -84,6 +87,7 @@ bool parsecurecoinURI(const QUrl &uri, SendCoinsRecipient *out) rv.address = uri.path(); rv.amount = 0; QList > items = uri.queryItems(); + for (QList >::iterator i = items.begin(); i != items.end(); i++) { bool fShouldReturnFalse = false; @@ -136,7 +140,7 @@ bool parsecurecoinURI(QString uri, SendCoinsRecipient *out) QString HtmlEscape(const QString& str, bool fMultiLine) { - QString escaped = Qt::escape(str); + QString escaped = QString(str.toHtmlEscaped()); if(fMultiLine) { escaped = escaped.replace("\n", "
\n"); @@ -171,7 +175,7 @@ QString getSaveFileName(QWidget *parent, const QString &caption, QString myDir; if(dir.isEmpty()) // Default to user documents location { - myDir = QDesktopServices::storageLocation(QDesktopServices::DocumentsLocation); + myDir = QStandardPaths::writableLocation(QStandardPaths::DocumentsLocation); } else { diff --git a/src/qt/locale/curecoin_ca.qm b/src/qt/locale/curecoin_ca.qm index 3587e7b2aa2c3a6ed795e6644055eaa1c727d019..3860d9330a5df52fde579c47271347a8c3551878 100644 GIT binary patch delta 11 ScmZ3@yn=bdQbuMbMn(V@N&>e4 delta 14 VcmZ3%yqbB#QbsmbM#le++yEjP1PA~C diff --git a/src/qt/locale/curecoin_ca_ES.qm b/src/qt/locale/curecoin_ca_ES.qm index 08af955b5bfb2a514308cdf6d94449cf157c246d..44831a0016f9b2c8b7d235525c5b8120c5fabe27 100644 GIT binary patch delta 3202 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 K2T%bMBO?G|`B&fo delta 261 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, sizeof(buffer), nSize, nPriority, d)) diff --git a/src/qt/sendcoinsdialog.cpp b/src/qt/sendcoinsdialog.cpp index 168e998..b8e2639 100644 --- a/src/qt/sendcoinsdialog.cpp +++ b/src/qt/sendcoinsdialog.cpp @@ -99,7 +99,7 @@ void SendCoinsDialog::on_sendButton_clicked() QStringList formatted; foreach(const SendCoinsRecipient &rcp, recipients) { - formatted.append(tr("%1 to %2 (%3)").arg(curecoinUnits::formatWithUnit(curecoinUnits::BTC, rcp.amount), Qt::escape(rcp.label), rcp.address)); + formatted.append(tr("%1 to %2 (%3)").arg(curecoinUnits::formatWithUnit(curecoinUnits::BTC, rcp.amount), QString(rcp.label).toHtmlEscaped(), rcp.address)); } fNewRecipientAllowed = false; diff --git a/src/script.cpp b/src/script.cpp index 69e9aee..742fb39 100644 --- a/src/script.cpp +++ b/src/script.cpp @@ -1257,7 +1257,7 @@ bool Solver(const CScript& scriptPubKey, txnouttype& typeRet, vector& v) return; string::size_type i1 = 0; string::size_type i2; - loop + while (true) { i2 = str.find(c, i1); if (i2 == str.npos) @@ -466,7 +466,7 @@ vector ParseHex(const char* psz) { // convert hex dump to vector vector vch; - loop + while (true) { while (isspace(*psz)) psz++; @@ -920,7 +920,7 @@ string DecodeBase32(const string& str) bool WildcardMatch(const char* psz, const char* mask) { - loop + while (true) { switch (*mask) { diff --git a/src/util.h b/src/util.h index f1dcc27..6de6dfb 100644 --- a/src/util.h +++ b/src/util.h @@ -35,7 +35,6 @@ typedef unsigned long long uint64; static const int64 COIN = 1000000; static const int64 CENT = 10000; -#define loop for (;;) #define BEGIN(a) ((char*)&(a)) #define END(a) ((char*)&((&(a))[1])) #define UBEGIN(a) ((unsigned char*)&(a)) diff --git a/src/wallet.cpp b/src/wallet.cpp index c9389bd..82e53c7 100644 --- a/src/wallet.cpp +++ b/src/wallet.cpp @@ -1232,7 +1232,7 @@ bool CWallet::CreateTransaction(const vector >& vecSend, CW CTxDB txdb("r"); { nFeeRet = nTransactionFee; - loop + while (true) { wtxNew.vin.clear(); wtxNew.vout.clear(); @@ -1495,7 +1495,7 @@ bool CWallet::CreateCoinStake(const CKeyStore& keystore, unsigned int nBits, int } int64 nMinFee = 0; - loop + while (true) { // Set output amount if (txNew.vout.size() == 3) diff --git a/src/walletdb.cpp b/src/walletdb.cpp index ee3a0f0..96e8d51 100644 --- a/src/walletdb.cpp +++ b/src/walletdb.cpp @@ -73,7 +73,7 @@ void CWalletDB::ListAccountCreditDebit(const string& strAccount, list