aboutsummaryrefslogtreecommitdiff
path: root/src/qt/walletmodel.cpp
AgeCommit message (Collapse)Author
2014-09-16Move CTxDestination from script/script to script/standardPieter Wuille
2014-09-09Remove some unnecessary c_strs() in logging and the GUIPhilip Kaufmann
Includes `core: remove unneeded c_str() / Qt: replace c_str() with Qt code` by P. Kaufmann.
2014-08-26[Qt] Call checkBalanceChanged() periodically instead for every updated ↵Cozz Lovan
transaction
2014-08-26Merge pull request #4673Wladimir J. van der Laan
1c5f0af [Qt] Add column Watch-only to transactions list (Cozz Lovan) 939ed97 Add boolean HaveWatchonly and signal NotifyWatchonlyChanged (Cozz Lovan)
2014-08-18gui: remove redundant numTransactions trackingWladimir J. van der Laan
This number was still tracked even though it's shown nowhere in the UI anymore. It was originally removed because it didn't match the actual number of records in the view (which contains outputs, not transactions) thus was confusing people.
2014-08-11Add boolean HaveWatchonly and signal NotifyWatchonlyChangedCozz Lovan
2014-07-21Revert "UI to alert of respend attempt affecting wallet."Wladimir J. van der Laan
This reverts commit ada5a067c75f19a724cc054286ecf2254e5dbe8f. Conflicts: src/qt/guiconstants.h src/wallet.h
2014-07-21Revert "Formatting, spelling, comment fixes."Wladimir J. van der Laan
This reverts commit 7a19efe04069d9a1e251cdc94b25184f76d9d901.
2014-07-18[Qt] Prevent balloon-spam after rescanCozz Lovan
2014-07-02Watchonly balances are shown separately in gui.JaSK
2014-07-02qt: Hide unspendable outputs in coin controlWladimir J. van der Laan
2014-07-02Add support for watch-only addressesPieter Wuille
Changes: * Add Add/Have WatchOnly methods to CKeyStore, and implementations in CBasicKeyStore. * Add similar methods to CWallet, and support entries for it in CWalletDB. * Make IsMine in script/wallet return a new enum 'isminetype', rather than a boolean. This allows distinguishing between spendable and unspendable coins. * Add a field fSpendable to COutput (GetAvailableCoins' return type). * Mark watchonly coins in listunspent as 'watchonly': true. * Add 'watchonly' to validateaddress, suppressing script/pubkey/... in this case. Based on a patch by Eric Lombrozo. Conflicts: src/qt/walletmodel.cpp src/rpcserver.cpp src/wallet.cpp
2014-06-27Formatting, spelling, comment fixes.Tom Harding
2014-06-27UI to alert of respend attempt affecting wallet.Tom Harding
Respend transactions that conflict with transactions already in the wallet are added to it. They are not displayed unless they also involve the wallet, or get into a block. If they do not involve the wallet, they continue not to affect balance. Transactions that involve the wallet, and have conflicting non-equivalent transactions, are highlighted in red. When the conflict first occurs, a modal dialog is thrown. CWallet::SyncMetaData is changed to sync only to equivalent transactions. When a conflict is added to the wallet, counter nConflictsReceived is incremented. This acts like a change in active block height for the purpose of triggering UI updates.
2014-06-16Remove `using namespace std` from header fileWladimir J. van der Laan
It's considered bad form to import things into the global namespace in a header. Put it in the cpp files where it is needed instead.
2014-06-06Type-safe CFeeRate classGavin Andresen
Use CFeeRate instead of an int64_t for quantities that are fee-per-size. Helps prevent unit-conversion mismatches between the wallet, relaying, and mining code.
2014-04-23qt: get required locks upfront in polling functionsWladimir J. van der Laan
This avoids the GUI from getting stuck on periodical polls if the core is holding the locks for a longer time - for example, during a wallet rescan.
2014-04-18Solve chainActive-related locking issuesWladimir J. van der Laan
- In wallet and GUI code LOCK cs_main as well as cs_wallet when necessary - In main.cpp SendMessages move the TRY_LOCK(cs_main) up, to encompass the call to IsInitialBlockDownload. - Make ActivateBestChain, AddToBlockIndex, IsInitialBlockDownload, InitBlockIndex acquire the cs_main lock Fixes #3997
2014-04-02[Qt] rescan progressCozz Lovan
2014-02-26Remove CWalletTx::vfSpentGavin Andresen
Use the spent outpoint multimap to figure out which wallet transaction outputs are unspent, instead of a vfSpent array that is saved to disk.
2014-02-16Merge pull request #3646Wladimir J. van der Laan
5770254 Copyright header updates s/2013/2014 on files whose last git commit was done in 2014. contrib/devtools/fix-copyright-headers.py script to be able to perform this maintenance task with ease during the rest of the year, every year. Modifications to contrib/devtools/README.md to document what fix-copyright-headers.py does. (gubatron)
2014-02-14Handle "conflicted" transactions properlyGavin Andresen
Extend CMerkleTx::GetDepthInMainChain with the concept of a "conflicted" transaction-- a transaction generated by the wallet that is not in the main chain or in the mempool, and, therefore, will likely never be confirmed. GetDepthInMainChain() now returns -1 for conflicted transactions (0 for unconfirmed-but-in-the-mempool, and >1 for confirmed). This makes getbalance, getbalance '*', and listunspent all agree when there are mutated transactions in the wallet. Before: listunspent: one 49BTC output getbalance: 96 BTC (change counted twice) getbalance '*': 46 BTC (spends counted twice) After: all agree, 49 BTC available to spend.
2014-02-09Copyright header updates s/2013/2014 on files whose last git commit was done ↵gubatron
in 2014. contrib/devtools/fix-copyright-headers.py script to be able to perform this maintenance task with ease during the rest of the year, every year. Modifications to contrib/devtools/README.md to document what fix-copyright-headers.py does.
2014-01-22Merge pull request #3567Wladimir J. van der Laan
22a5120 [Qt] Show and store message of normal bitcoin:URI (Cozz Lovan)
2014-01-21[Qt] Show and store message of normal bitcoin:URICozz Lovan
2014-01-19[Qt] Permanently store requested payments in walletCozz Lovan
2014-01-14[Qt] add missing lock in walletmodelCozz Lovan
2014-01-06qt: Add missing lock in WalletModel::listCoinsWladimir J. van der Laan
Another problem detected by cs_wallet lock detection (#3401).
2014-01-06qt: Add missing LOCKs for locked coin functionsWladimir J. van der Laan
These don't aquire the wallet lock internally, so the caller has to do it.
2013-12-17[Qt] style-police, add missing license headersPhilip Kaufmann
- add missing license headers in Mac files - small code formating cleanups
2013-11-19qt: keep a list of requested paymentsWladimir J. van der Laan
Keep a list of requested payments in the Receive tab so that a user can recall previously created requests after closing their windows. Currently this list is not stored between bitcoin-qt sessions. This can be implemented later, but it is not clear where it should be stored as I don't think it belongs in the wallet (maybe in QSettings?)
2013-11-14Coin Control FeaturesCozz Lovan
2013-11-10Cleanup code using forward declarations.Brandon Dahler
Use misc methods of avoiding unnecesary header includes. Replace int typedefs with int##_t from stdint.h. Replace PRI64[xdu] with PRI[xdu]64 from inttypes.h. Normalize QT_VERSION ifs where possible. Resolve some indirect dependencies as direct ones. Remove extern declarations from .cpp files.
2013-11-06Merge pull request #3145Wladimir J. van der Laan
395d0d5 rework an ugly hack in processPaymentRequest() (Philip Kaufmann) 952d2cd make processPaymentRequest() use a single SendCoinsRecipient (Philip Kaufmann) 983cef4 payment-request UI: use SendCoinsRecipient.message for memo (Philip Kaufmann) c6c97e0 [Qt] Rework of payment request UI (mainly for insecure pr) (Philip Kaufmann)
2013-11-04qt: add license header to source filesWladimir J. van der Laan
Closes #839
2013-10-31[Qt] Rework of payment request UI (mainly for insecure pr)Philip Kaufmann
- this shows insecure (unsecured) payment requests in a new yellowish colored UI (based on the secure payment request UI) instead of our normal payment UI - allows us to receive paymentACK messages for insecure payment requests - allows us to handle expirations for insecure payment request - changed walletmodel, so that all types of payment requests don't touch the addressbook
2013-10-15Merge pull request #3069 from Diapolo/fix_addressbookWladimir J. van der Laan
don't touch addressbook when using secure payment-requests
2013-10-11Refactor/encapsulate chain globals into a CChain classPieter Wuille
2013-10-11don't touch addressbook when using secure payment-requestsPhilip Kaufmann
- fixes #3006 by preventing addressbook changes when using secure payment-requests sq
2013-09-28several small Qt-related fixesPhilip Kaufmann
- make BitcoinGUI::showPaymentACK() use a reference for msg and use our own GUIUtil::HtmlEscape() function - ensure QTimer usage in clientmodel is the same as in walletmodel - remove an unneeded debug message in walletframe - flag some parameters as unused in DebugMessageHandler() - small code formatting changes
2013-09-06Bitcoin-Qt: Use qDebug() for printing to debug.logPhilip Kaufmann
- removes all usages of PrintDebugStringF from Qt code - ensure same format for all debug.log messages "functionname : Message"
2013-09-02Merge pull request #2958 from laanwj/2013_08_txfee2Wladimir J. van der Laan
[Qt] Display txfee in first sendCoinsDialog message box
2013-08-31qt: Display txfee in first sendCoinsDialog message boxJonas Schnelli
Signed-off-by: Jonas Schnelli <jonas.schnelli@include7.ch>
2013-08-29qt: Handle address purpose in incremental updatesWladimir J. van der Laan
Correctly use the purpose of addresses that are added after the start of the client. Addresses with purpose "refund" and "change" should not be visible in the GUI. This is now handled correctly.
2013-08-22Payment Protocol: X509-validated payment requestsGavin Andresen
Add support for a Payment Protocol to Bitcoin-Qt. Payment messages are protocol-buffer encoded and communicated over http(s), so this adds a dependency on the Google protocol buffer library, and requires Qt with OpenSSL support.
2013-08-22Refactor: CAddressBookData for mapAddressBookGavin Andresen
Straight refactor, so mapAddressBook stores a CAddressBookData (which just contains a std::string) instead of a std::string. Preparation for payment protocol work, which will add the notion of refund addresses to the address book.
2013-05-03CreateTransaction: return strFailReason on failureGavin Andresen
2013-04-01fix "send coins" via context menu in address bookPhilip Kaufmann
- the send coins context menu entry was not working anymore, because a non current version of #2220 was merged onto current master - also removes some unneeded spaces and adds a comment to WalletModel::getNumTransactions()
2012-12-04rework ThreadSafeAskFee() / askFee() functionsPhilip Kaufmann
- remove unused parameter from ThreadSafeAskFee(), which also results in the removal of an orphan translation-string
2012-07-11Persistently poll for balance change when number of blocks changedWladimir J. van der Laan
Fixes #1452. Until we can make the logic water-tight *and* are notified in every case the balance might have changed, remove the premature optimization and simply recompute the balance every half a second when the number of blocks changed.