aboutsummaryrefslogtreecommitdiff
path: root/src/wallet.cpp
Commit message (Collapse)AuthorAgeFilesLines
...
* | Encapsulate public keys in CPubKeyPieter Wuille2012-05-241-16/+16
|/
* Merge pull request #1354 from fanquake/masterPieter Wuille2012-05-201-1/+1
|\ | | | | Update Header Licenses
| * Update License in File HeadersFordy2012-05-181-1/+1
| | | | | | | | | | | | I originally created a pull to replace the "COPYING" in crypter.cpp and crypter.h, but it turned out that COPYING was actually the correct file.
* | Process address book updates incrementallyWladimir J. van der Laan2012-05-201-2/+2
| | | | | | | | | | - No longer invalidates selection model, thus retains selection on address book changes - Fixes selection of new address when added
* | Convert UI interface to boost::signals2.Wladimir J. van der Laan2012-05-201-2/+2
| | | | | | | | | | | | | | | | - Signals now go directly from the core to WalletModel/ClientModel. - WalletModel subscribes to signals on CWallet: Prepares for multi-wallet support, by no longer assuming an implicit global wallet. - Gets rid of noui.cpp, the few lines that were left are merged into init.cpp - Rename wxXXX message flags to MF_XXX, to make them UI indifferent. - ThreadSafeMessageBox no longer returns the value `4` which was never used, converted to void.
* | Fine-grained UI updatesWladimir J. van der Laan2012-05-201-12/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Gets rid of `MainFrameRepaint` in favor of specific update functions that tell the UI exactly what changed. This improves the efficiency of various handlers. Also fixes problems with mined transactions not showing up until restart. The following notifications were added: - `NotifyBlocksChanged`: Block chain changed - `NotifyKeyStoreStatusChanged`: Wallet status (encrypted, locked) changed. - `NotifyAddressBookChanged`: Address book entry changed. - `NotifyTransactionChanged`: Wallet transaction added, removed or updated. - `NotifyNumConnectionsChanged`: Number of connections changed. - `NotifyAlertChanged`: New, updated or cancelled alert. As this finally makes it possible for the UI to know when a new alert arrived, it can be shown as OS notification. These notifications could also be useful for RPC clients. However, currently, they are ignored in bitcoind (in noui.cpp). Also brings back polling with timer for numBlocks in ClientModel. This value updates so frequently during initial download that the number of signals clogs the UI thread and causes heavy CPU usage. And after initial block download, the value changes so rarely that a delay of half a second until the UI updates is unnoticable.
* | change strings to Bitcoin (uppercase), where it is used as a noun and update ↵Philip Kaufmann2012-05-181-1/+1
|/ | | | strings to use "Qt" (and not qt or QT) / update initialisation of notificator to use qApp->applicationName() instead of a static string
* Always check return values of TxnBegin() and TxnCommit()Jeff Garzik2012-05-141-1/+2
|
* Prefer 'unsigned int' for loop index variables tested against ::size()Jeff Garzik2012-04-221-2/+2
| | | | | | | | | C++ STL ::size() generally returns unsigned, which implies that "int idx" style of loop variable will generate a signed-vs-unsigned comparison warning when testing the loop exit condition "idx < blah.size()" Update areas of the bitcoin code where loop variables may be more properly and correctly defined as unsigned.
* Further reduce header dependenciesPieter Wuille2012-04-171-1/+2
| | | | | | | This commit removes the dependency of serialize.h on PROTOCOL_VERSION, and makes this parameter required instead of implicit. This is much saner, as it makes the places where changing a version number can have an influence obvious.
* Move CWalletDB code to new walletdb module.Jeff Garzik2012-04-171-1/+2
| | | | | In addition to standard code separation, this change opens the door to fixing several include inter-dependencies.
* Remove headers.hPieter Wuille2012-04-171-1/+5
|
* Fix loop index var types, fixing many minor sign comparison warningsJeff Garzik2012-04-151-7/+7
| | | | | foo.size() typically returns an unsigned integral type; make loop variables match those types' signedness.
* fix warnings: suggest explicit braces to avoid ambiguous 'else' [-Wparentheses]Wladimir J. van der Laan2012-04-151-0/+2
|
* Use scoped locks instead of CRITICAL_BLOCKPieter Wuille2012-04-091-38/+43
|
* qtui.h/noui.h interface cleanupWladimir J. van der Laan2012-04-041-1/+1
| | | | | | | - rename wxMessageBox, remove redundant arguments to noui/qtui calls - also, add flag to force blocking, modal dialog box for disk space warning etc - clarify function naming - no more special MessageBox needed from AppInit2, as window object is created before calling AppInit2
* Update UI through async calls MainFrameRepaint and AddressBookRepaint ↵Wladimir J. van der Laan2012-04-041-0/+2
| | | | | | | | instead of a timer. - Overall, this is better design - This fixes problems with the address book UI not updating when the address book is changed through RPC - Move Statusbar change detection responsibility to ClientModel
* Introduce explicit -walletupgrade optionPieter Wuille2012-03-221-17/+22
| | | | | | | | | | | | | | Do not automatically change the wallet format unless the user takes an explicit action that implies an upgrade (encrypting, for now), or uses -walletupgrade. -walletupgrade optionally takes an integer argument: the client version up to which upgrading is allowed. Without an argument, it is upgraded to latest supported version. If an argument to -walletupgrade is provided at the time the wallet is created, the new wallet will initially not use features beyond that version. Third, the current wallet version number is reported in getinfo.
* Merge pull request #864 from sipa/fix_856Pieter Wuille2012-02-191-2/+46
|\ | | | | Make compressed pubkeys require client >=0.5.99
| * Make compressed pubkeys require 0.6.0Pieter Wuille2012-02-181-1/+8
| |
| * Move GenerateNewKey back to CWalletPieter Wuille2012-02-181-0/+10
| |
| * Add SetMinVersion to CWalletPieter Wuille2012-02-181-2/+29
| |
* | Free pwalletdbEncryption after encryping walletPieter Wuille2012-02-181-1/+1
|/ | | | Fixes a memory leak.
* Update all copyrights to 2012Gavin Andresen2012-02-071-1/+1
|
* Replace OP_EVAL (BIP 12) with Pay-to-script-hash (BIP 16).Gavin Andresen2012-01-131-3/+3
|
* Fix broken ExtractAddress (refactored, made callers check for addresses in ↵Gavin Andresen2011-12-221-2/+2
| | | | keystore if they care)
* Revert "Use standard C99 (and Qt) types for 64-bit integers"Wladimir J. van der Laan2011-12-211-64/+62
| | | | This reverts commit 21d9f36781604e4ca9fc35dc65265593423b73e9.
* Use standard C99 (and Qt) types for 64-bit integersLuke Dashjr2011-12-201-62/+64
|
* Merge pull request #677 from luke-jr/minfee_modesGavin Andresen2011-12-201-1/+2
|\ | | | | API: GetMinFee modes
| * GetMinFee takes a mode parameter (GMF_{BLOCK,RELAY,SEND}) instead of fForRelayLuke Dashjr2011-12-141-1/+2
| |
* | Merge branch 'op_eval'Gavin Andresen2011-12-201-7/+32
|\ \
| * | Fix logic for IsChange() for send-to-self transactions.Gavin Andresen2011-12-191-1/+1
| | |
| * | Use block times for 'hard' OP_EVAL switchover, and refactored EvalScriptGavin Andresen2011-12-191-3/+11
| | | | | | | | | | | | | | | | | | so it takes a flag for how to interpret OP_EVAL. Also increased IsStandard size of scriptSigs to 500 bytes, so a 3-of-3 multisig transaction IsStandard.
| * | OP_EVAL implementationGavin Andresen2011-12-191-2/+20
| | | | | | | | | | | | | | | | | | OP_EVAL is a new opcode that evaluates an item on the stack as a script. It enables a new type of bitcoin address that needs an arbitrarily complex script to redeem.
| * | Support 3 new multisignature IsStandard transactionsGavin Andresen2011-12-191-5/+4
| | | | | | | | | | | | | | | Initial support for (a and b), (a or b), and 2-of-3 escrow transactions (where a, b, and c are keys).
* | | Use std::numeric_limits<> for typesafe INT_MAX/etcGavin Andresen2011-12-191-1/+1
|/ /
* | Key import and exportPieter Wuille2011-12-171-0/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | Introduces two new RPC calls: * dumpprivkey: retrieve the private key corresponding to an address * importprivkey: add a private key to your wallet The private key format is analoguous to the address format. It is a 51-character base58-encoded string, that includes a version number and a checksum. Includes patch by mhanne: * add optional account parameter for importprivkey, if omitted use default
* | Preparations for key import/exportPieter Wuille2011-12-171-1/+45
| |
* | Make CWalletTx::pwallet privatePieter Wuille2011-12-171-3/+3
| |
* | Implement an mlock()'d string class for storing passphrasesDylan Noblesmith2011-11-261-3/+3
| | | | | | | | | | | | | | SecureString is identical to std::string except with secure_allocator substituting for std::allocator. This makes casting between them impossible, so converting between the two at API boundaries requires calling ::c_str() for now.
* | Never remove database files on shutdown, it caused unreadable wallets on ↵Gavin Andresen2011-11-201-3/+1
| | | | | | | | some testers' machines.
* | Only remove database log files on shutdown after wallet encryption/rewritev0.5.0rc6Gavin Andresen2011-11-171-2/+3
| |
* | Create new keypool for newly encrypted wallets.Gavin Andresen2011-11-171-1/+32
| |
* | Obsolete keypool and make sure database removes log files on shutdown.Gavin Andresen2011-11-151-7/+14
| |
* | ResilveringPieter Wuille2011-11-141-0/+10
| |
* | Some extra commentsPieter Wuille2011-11-071-0/+6
| |
* | Add returns to avoid annoying compile-time warnings.Matt Corallo2011-10-251-0/+1
| |
* | remove cryptopp dependency, add simple unittest for SHA256Transform()Nils Schneider2011-09-301-1/+0
| |
* | update to work with new lock system, add protocol.* to build systemWladimir J. van der Laan2011-09-021-1/+1
| |
* | Merge branch 'master' of https://github.com/bitcoin/bitcoinWladimir J. van der Laan2011-09-021-122/+117
|\| | | | | | | | | Conflicts: src/main.cpp