Commit graph

1036 commits

Author SHA1 Message Date
Pieter Wuille
9b1200c23b
Merge pull request #3119
db0e8cc Bump Year Number to 2013 (super3)
2013-10-20 22:25:44 +02:00
super3
db0e8ccd90 Bump Year Number to 2013 2013-10-20 15:25:06 -04:00
Wladimir J. van der Laan
76eb192076 Merge pull request #3108 from Diapolo/paymentserver_style
paymentserver: style fixes / cleanup
2013-10-20 01:01:38 -07:00
Wladimir J. van der Laan
163145938c qt: remove awkward way of setting GUI pages
Selecting the button for a pages was going through bitcoingui->walletframe->walletview->bitcoingui.
Because of this, the actions for the pages had to be exposed on the BitcoinGUI object.
2013-10-19 17:51:26 +02:00
Philip Kaufmann
95d4a2be95 paymentserver: style fixes / cleanup
- rename reportError() into message() to be in line with our default
  message() signal/slot naming (and can be used for all types of messages)
- rename some QStrings to not collide with message() function
- add a missing message for malformed URIs that IS also used in BitcoinGUI
- fix / extend some comments and misc style fixes
2013-10-19 16:27:04 +02:00
Wladimir J. van der Laan
26702e6930 qt: merge walletstack and walletframe
There were too many levels of indirection here, and the functionality of
walletframe and walletstack can easily be merged. This commit
merges the two which cuts a lot of lines of boilerplate code.
2013-10-18 18:06:19 +02:00
Wladimir J. van der Laan
81cab378cc Merge pull request #3101 from Diapolo/sendcoinsentry
add SendCoinsEntry::updateLabel() function
2013-10-18 07:04:49 -07:00
Wladimir J. van der Laan
13b1ecf0d0 Merge pull request #3084 from Diapolo/clientmodel
clientmodel: remove 2 hard-coded values, use CChainParams instead
2013-10-17 04:45:37 -07:00
Philip Kaufmann
46b57eb500 add SendCoinsEntry::updateLabel() function
- makes the code for updating a label reusable
- no functional changes
2013-10-16 17:11:39 +02:00
Wladimir J. van der Laan
a2bb571c4f Merge pull request #3069 from Diapolo/fix_addressbook
don't touch addressbook when using secure payment-requests
2013-10-15 23:48:47 -07:00
Philip Kaufmann
75fa27eaca make BitcoinAmountField::setReadOnly() usable
- use it for secure payment-requests (this change allows a copy&paste of
  the amount and looks a little nicer than just a disabled GUI element)
2013-10-15 15:26:22 +02:00
Wladimir J. van der Laan
38d15d8b42 Merge pull request #3080 from Diapolo/sendcoins-paymentreq
Bitcoin-Qt: misc changes for sendcoins and paymentsever
2013-10-15 05:57:17 -07:00
Wladimir J. van der Laan
f0c25cf6ec Merge pull request #2924 from sje397/TrafficGraph
[QT] Add network traffic graph to debug window
2013-10-15 03:48:22 -07:00
Philip Kaufmann
47970dac41 clientmodel: remove 2 hard-coded values, use CChainParams instead 2013-10-15 11:55:47 +02:00
Scott Ellis
ce14345a89 Add network traffic graph 2013-10-14 19:02:03 +11:00
Pieter Wuille
4c6d41b8b6 Refactor/encapsulate chain globals into a CChain class 2013-10-11 23:25:50 +02:00
Philip Kaufmann
48c011489b don't touch addressbook when using secure payment-requests
- fixes #3006 by preventing addressbook changes when using
  secure payment-requests

sq
2013-10-11 15:34:05 +02:00
Philip Kaufmann
06dfd23d41 paymentserver: use own HTML-esc / add new header const
- make processPaymentRequest() use our own HTML-escaping function from
  GUIUtil
- make string "application/bitcoin-payment" a constant (below similar
  constant strings in the .cpp file)
2013-10-11 14:40:08 +02:00
Philip Kaufmann
8a041f494f sendcoinsdialog: display real failed address string
- display the real string (faulty address), which causes the valid address
  check to fail, instead of a stringified "nonsense" CBitcoinAddress
2013-10-11 14:29:09 +02:00
Philip Kaufmann
057bf35bc5 sendcoinsentry: small clear() and setValue() changes
- clear(): clear all UI elements (for secure and insecure payments)
- setValue(): only modify UI elements, which need to be set (for secure
  or insecure payments)
2013-10-11 14:22:43 +02:00
Philip Kaufmann
c7b1d6bbc7 Bitcoin-Qt: ensure Qt icon is shown with Qt >= 5.0 2013-10-08 12:27:57 +02:00
Philip Kaufmann
a8d0c1e8cc Bitcoin-Qt: prevent stuck/unusable debug window on exit
- when closing the client with an open debug window, that window could
  become stuck/unsuable (it was still shown wherea the main window was
  hidden already)
- fix this by hiding the debug window, when quitting the the client
2013-10-05 13:15:50 +02:00
Gavin Andresen
a68fd1ca14 Merge pull request #3040 from Diapolo/Qt_misc2
Bitcoin-Qt: add missing change from branch Qt_misc
2013-10-03 21:42:27 -07:00
Philip Kaufmann
23b48d13f1 Bitcoin-Qt: translation fixes in sendcoins
- remove some unneeded translatable strings from sendcoinsentry.ui file and
  rename some elements for better readability
- optimize string prorcessing in SendCoinsDialog::on_sendButton_clicked()
- make all UI labels for secure payments plain text and move the settings
  to sendcoinsentry.ui file
- remove unneeded button and default button definiton from warning message
  boxes
- remove fixed font-size when sending coins to an address with label and
  use monospace font for addresses
2013-10-01 15:48:25 +02:00
Philip Kaufmann
ab25271d3c Bitcoin-Qt: add missing change from branch Qt_misc
- remove an unneeded debug message in walletframe
2013-10-01 14:15:19 +02:00
Pieter Wuille
6865127551 Merge pull request #3015 from theuni/win32-version-info
Win32 version info
2013-09-29 06:49:23 -07:00
Philip Kaufmann
d5f0ef54f8 several small Qt-related fixes
- 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-28 19:32:34 +02:00
Cozz Lovan
5dc9164edc GUI: fix sendcoinsdialog/sendcoinsentry 2013-09-24 16:10:38 +02:00
Wladimir J. van der Laan
c2f4187263 Merge pull request #2995 from Diapolo/GUI_message
Bitcoin-Qt: BitcoinGUI::message() updates/fixes
2013-09-20 23:38:56 -07:00
Cory Fields
7a3df1cd94 autotools: fix the Makefile.include to be safely included anywhere.
This way we can reuse rules rather than duplicating them.
2013-09-18 17:12:39 -04:00
Wladimir J. van der Laan
9a4a7d3c6a qt: english translation update 2013-09-18 13:32:09 +02:00
Gavin Andresen
881a85a22d Replace printf with LogPrintf / LogPrint 2013-09-18 20:39:25 +10:00
Gavin Andresen
e51321fb75 Refactor: OutputDebugStringF -> LogPrint(category, ...) 2013-09-18 20:39:24 +10:00
Cory Fields
21ffa3ce3a autotools: add translate target for qt translations 2013-09-14 12:11:38 -04:00
Philip Kaufmann
b26f9d893c Bitcoin-Qt: BitcoinGUI::message() updates/fixes
- ensure message boxes are shown in center of our main window, not
  centered on the users desktop
- always prefer user supplied titles for message boxes over the functions
  defaults (fixes a bug, where transaction info messages did not contain
  information, if it was incoming or outgoing)
2013-09-14 18:04:30 +02:00
Cory Fields
f286aa1611 autotools: rearrange qt sources to make them more flexible
Add BITCOIN_MM QR_CPP and BITCOIN_CPP in order to better accomodate complicated
targets. This is a no-op change.
2013-09-14 11:51:44 -04:00
Philip Kaufmann
d78900cc1b fix some cosmetic glitches in the codebase
- rename URL into URI in paymentserver where correct
- add some missing Qt-coding-stuff in paymentserver
- change QSpinBox to QLineEdit as base for BitcoinAmountField in .ui files
  (as this is the result when converting the BAF back into base)
- remove some c_str() and replace with QString::fromStdString()
- remove several new-lines
- remove unneeded spaces
- indentation fixes
2013-09-09 12:36:04 +02:00
Jeff Garzik
15fd245b9a Merge pull request #2943 from theuni/autotools-final
Autotools buildsystem
2013-09-06 17:09:55 -07:00
Wladimir J. van der Laan
495242c1ad Merge pull request #2976 from laanwj/2013_09_txid_details
qt: add vout index to transaction id in transactions details dialog
2013-09-06 04:21:45 -07:00
Wladimir J. van der Laan
ed4c7fd4fd qt: add vout index to transaction id in transactions details dialog 2013-09-06 12:12:18 +02:00
Philip Kaufmann
42018eff07 Bitcoin-Qt: Use qDebug() for printing to debug.log
- removes all usages of PrintDebugStringF from Qt code
- ensure same format for all debug.log messages "functionname : Message"
2013-09-06 10:32:07 +02:00
Cory Fields
35b8af9226 autotools: switch to autotools buildsystem 2013-09-05 21:31:03 -04:00
Gavin Andresen
2fee100f03 Merge pull request #2944 from gavinandresen/acceptheader
Set Accept: application/bitcoin-paymentrequest header
2013-09-03 19:52:38 -07:00
Wladimir J. van der Laan
f4f048ee58 Merge pull request #2958 from laanwj/2013_08_txfee2
[Qt] Display txfee in first sendCoinsDialog message box
2013-09-02 09:48:10 -07:00
Timothy Stranex
ccf3af77c1 Fix typo in a comment: it's base58, not base48. 2013-09-02 17:27:27 +02:00
Wladimir J. van der Laan
1537d174d7 Merge pull request #2951 from laanwj/2013_08_addressbook_purpose
[Qt] Handle address purpose in incremental updates
2013-09-02 05:47:58 -07:00
Philip Kaufmann
e664c3d70c Bitcoin-Qt: allow to differentiate Qt log entries from core
- prepend "Bitcoin-Qt" in front of debug.log entries, which come from Qt
- move DebugMessageHandler installation upwards to the event handler
  installation, which fits much better
2013-08-31 15:35:39 +02:00
Jonas Schnelli
9e8904f6ae qt: Display txfee in first sendCoinsDialog message box
Signed-off-by: Jonas Schnelli <jonas.schnelli@include7.ch>
2013-08-31 12:41:47 +02:00
Wladimir J. van der Laan
9d2fee17e0 qt: Use GUIUtil::HtmlEscape to escape HTML
This is why we created this function. Avoids some #ifdef.
2013-08-30 14:38:09 +02:00
Wladimir J. van der Laan
5da998e887 qt: Add comment to sorting step in refreshAddressTable 2013-08-30 08:25:25 +02:00
Wladimir J. van der Laan
dcd0b0775e qt: Handle address purpose in incremental updates
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-29 16:25:51 +02:00
Philip Kaufmann
bdd0c59ab0 Bitcoin-Qt: fixes for using display unit from options
- extend PaymentServer with setOptionsModel() and rework initNetManager()
  to make use of that
- fix all other places in the code to use display unit from options and no
  hard-coded unit
2013-08-29 10:38:51 +02:00
Wladimir J. van der Laan
ff33a3470d Merge pull request #2931 from Diapolo/intro
Bitcoin-Qt: add testnet check and icon to intro dialog
2013-08-28 12:17:17 -07:00
Gregory Maxwell
1ef0067eab Merge pull request #2904 from gmaxwell/newaddr-no-passphrase
[QT] Don't ask for a passphrase to getnewaddress.
2013-08-28 11:20:09 -07:00
Gavin Andresen
b773da064d Set Accept: application/bitcoin-paymentrequest header
Suggestion from BitPay: set an Accept: HTTP header when
fetching payment requests / payment ACKs.
2013-08-28 11:48:39 +10:00
Philip Kaufmann
d9baa28f92 Bitcoin-Qt: add testnet check and icon to intro dialog 2013-08-24 15:20:37 +02:00
Gregory Maxwell
71ac5052d8 Remove fAllowReuse from GetKeyFromPool.
With the GUI password fix this was always false.
2013-08-23 12:54:50 -07:00
Gregory Maxwell
20469d83dd [QT] Don't ask for a passphrase to getnewaddress.
With an encrypted wallet the GUI was prompting for a passphrase every time
 the user requested a new address.  This is unnecessary, increases the
 exposure to keyboard sniffers, and discourages using fresh addresses for
 every transaction.

Instead only prompt for a passphrase when the keypool runs out, also call
 the new address function with the flag that prevents reuse.

Thanks to AlexNagy on IRC for pointing this out and who wouldn't take any
 lip from a curmudgeonly developer and insisted on what he knew to be true.
2013-08-23 12:01:57 -07:00
Philip Kaufmann
6728e00776 Bitcoin-Qt: extend some checks for valid model pointers 2013-08-23 13:07:20 +02:00
Philip Kaufmann
dbc0a6aba2 Bitcoin-Qt: tweak Qt walletXXX.cpp/h code
WalletView:
- add new signal showNormalIfMinimized()
- emit the new signal in handleURI() to fix a bug, preventing the main
  window to show up when using bitcoin: URIs

WalletStack:
- connect the showNormalIfMinimized() signal from WalletView with the
  showNormalIfMinimized() slot in BitcoinGUI
- rework setCurrentWallet() to return a bool
- add check for valid walletModel in addWallet()
- add missing gui attribute initialisation in constructor

WalletFrame:
- remove unused or unneded class attributes gui and clientModel
- add a check for valid clientModel in setClientModel()

General:
- small code formatting changes
2013-08-23 09:10:31 +02:00
Gavin Andresen
e62f8d72f3 Merge pull request #2539 from gavinandresen/paymentrequest
Payment Protocol Work
2013-08-22 01:54:28 -07:00
Gavin Andresen
a41d5fe019 Payment Protocol: X509-validated payment requests
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-22 16:18:25 +10:00
Gavin Andresen
47d0534368 Route qDebug() messages to debug.log 2013-08-22 11:05:45 +10:00
Gavin Andresen
a73aa68b84 Rework when payment server is started 2013-08-22 11:05:45 +10:00
Philip Kaufmann
a2189fbaf6 update SelectParamsFromCommandLine() handling/order
- move SelectParamsFromCommandLine() from init.cpp to bitcoin.cpp to allow
  to use TestNet() for Bitcoin-Qt instead of GetBoolArg("-testnet", false)
- change order in bitcoind.cpp to match bitcoin.cpp functionality
- hamonize error message strings for missing datadir and failing
  SelectParamsFromCommandLine() in bitcoin.cpp and bitcoind.cpp
- use TestNet() call in splashscreen.cpp
2013-08-22 11:05:45 +10:00
Gavin Andresen
618855133d Refactor: CAddressBookData for mapAddressBook
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-08-22 11:05:45 +10:00
Gavin Andresen
57d80467f1 Reject dust amounts during validation
Replaces the validation check for "amount == 0" with an isDust check,
so very small output amounts are caught before the wallet
is unlocked, a transaction is created, etc.
2013-08-22 11:05:44 +10:00
Philip Kaufmann
88ff655987 translations update for 0.8.4
- update translation master files
- include current translations from Transifex
- add several new languages
- fix a bug in bitcoin.qrc, which prevents some languages from beeing used
  (wrong file extension .ts instead of .qm was used)
2013-08-21 15:35:50 +02:00
Philip Kaufmann
265e2657b4 remove a newline from a string in init.cpp
- to match all other translatable strings in init.cpp and to simplify
  translations via Transifex
2013-08-06 10:28:52 +02:00
Philip Kaufmann
0f1c8f23eb translations update for Transifex 2013-08-05 2013-08-05 11:06:45 +02:00
Gavin Andresen
a4ae02969e Merge pull request #2827 from Diapolo/rpccon_winpos
Bitcoin-Qt: save and restore position of debug window
2013-08-05 00:58:05 -07:00
Gavin Andresen
d687aaa311 Merge pull request #2865 from Diapolo/fix_intro_translation
fix string in intro.cpp, which is untranslatable on Transifex
2013-08-05 00:24:49 -07:00
Wladimir J. van der Laan
6d89611c3a Merge pull request #2850 from Diapolo/fix_intro
fix possible infinite loop in intro.cpp thread
2013-07-31 22:15:05 -07:00
Gavin Andresen
050d2e953f Remove #define loop from util.h
Replace the loop macro with while (true). The #define caused
problems for Qt.
2013-07-31 14:06:44 +10:00
Philip Kaufmann
bef9f573b5 fix string in intro.cpp, which is untranslatable on Transifex
- seems the code tags in the original string cause errors, when using the
  Transifex site for translation
2013-07-29 16:56:03 +02:00
Philip Kaufmann
c431e9f1f0 Bitcoin-Qt: save and restore position of debug window
- move the code for saving and restoring window positions from BitcoinGUI
  to GUIUtil, make it more generic and also use it for saving/restoring
  debug window positions
2013-07-29 16:22:46 +02:00
Philip Kaufmann
5bc6d8e580 fix possible infinite loop in intro.cpp thread
- it was possible to trigger an infinite loop in FreespaceChecker::check() by
  simply removing the drive letter on Windows (which leads to an infinite
  loop in the FreespaceChecker thread)
- this was caused by not checking if we make progress with
  parentDir.parent_path()
2013-07-26 09:17:24 +02:00
Wladimir J. van der Laan
2b894bceac Merge pull request #2847 from Diapolo/fix_QApplication_include
Bitcoin-Qt: fix QApplication includes to match our include defaults
2013-07-25 22:42:16 -07:00
Wladimir J. van der Laan
7d3a50ddbe Merge pull request #2848 from Diapolo/translations
update bitcoin_en.ts to current master (2013-07-23)
2013-07-25 22:41:51 -07:00
Gavin Andresen
5e67e124cf Merge pull request #1889 from tcatm/multi-wallet
let user select wallet file with -wallet=foo.dat
2013-07-24 22:52:21 -07:00
Philip Kaufmann
3960d2e4ab update bitcoin_en.ts to current master (2013-07-23) 2013-07-23 09:10:57 +02:00
Philip Kaufmann
84ef729aa1 Bitcoin-Qt: fix QApplication includes to match our include defaults
- move all QApplication includes to top of included Qt headers
- undef our loop macro where it would cause compilation errors otherwise
2013-07-23 08:52:24 +02:00
constantined
2ecb7555a9 Switch to using raw_utf8 2013-07-23 04:51:29 +03:00
Wladimir J. van der Laan
4eab2dcc81 Merge pull request #2670 from laanwj/2013_05_datadir
qt: allow user to choose data directory
2013-07-18 22:42:50 -07:00
Nils Schneider
674cb304b3 let user select wallet file with -wallet=foo.dat
use std::string instead of psz for WalletFile

only allow wallets within $DATADIR

Use strWalletFile in salvage/recover

fix: remove unused variable pszWalletFile

move strWalletFile to init.h/init.cpp

avoid conversion of strWalletfile to c-string
2013-07-04 17:19:36 +02:00
Pieter Wuille
a4f43075d6 Merge pull request #2793 from Diapolo/translations
translation update 2013-06-25
2013-06-26 15:02:28 -07:00
Gavin Andresen
2e01ec3207 Merge pull request #2679 from vhf/patch-1
Too many bitcoins allowed as amount. (Issue #2401)
2013-06-25 06:47:53 -07:00
Philip Kaufmann
dae158132d translation update 2013-06-25
- updates bitcoinstrings.cpp and bitcoin_en.ts so new translations can be
  made on Transifex
2013-06-25 11:31:29 +02:00
Mike Hearn
0e4b317555 Introduce a CChainParameters singleton class and regtest mode.
The new class is accessed via the Params() method and holds
most things that vary between main, test and regtest networks.
The regtest mode has two purposes, one is to run the
bitcoind/bitcoinj comparison tool which compares two separate
implementations of the Bitcoin protocol looking for divergence.

The other is that when run, you get a local node which can mine
a single block instantly, which is highly convenient for testing
apps during development as there's no need to wait 10 minutes for
a block on the testnet.
2013-06-19 16:28:52 +02:00
Wladimir J. van der Laan
be77b637fc qt: allow user to choose data directory
This adds an introduction screen that is shown when the client is first
started in which the user can choose a data directory.

It is also possible to force the intro screen to appear using command
line argument `-choosedatadir`.

The user is warned that the client will download and store 10Gb of data.
The intro screen shows how much space is available on the device that
contains the chosen directory and warns if this is less than the 10Gb.

To make it possible to translate the introduction dialog, the initialization
sequence is changed so that translations are
loaded before the data directory. This has the by-effect that it is
no longer possible to specify a language in bitcoin.conf inside the data
directory.
2013-06-16 10:21:41 +02:00
Philip Kaufmann
0206e38dcd allow txindex to be removed and add a reindex dialog
- adds a reindex dialog for Bitcoin-Qt to change -txindex without the need
  to supply -reindex
- now also does a -reindex, when removing the -txindex switch
2013-06-10 19:27:57 +02:00
Jeff Garzik
f59530ce6e Merge pull request #2154 from CodeShark/dependencycleanup
Clean up code dependencies
2013-06-10 06:17:38 -07:00
Wladimir J. van der Laan
cb85aeb06c qt: Add total balance in overview page 2013-06-07 15:33:32 +02:00
Eric Lombrozo
05df3fc68d Removed AcceptToMemoryPool method from CTransaction. This method belongs to the mempool instance.
Removed AreInputsStandard from CTransaction, made it a regular function in main.
Moved CTransaction::GetOutputFor to CCoinsViewCache.

Moved GetLegacySigOpCount and GetP2SHSigOpCount out of CTransaction into regular functions in main.

Moved GetValueIn and HaveInputs from CTransaction into CCoinsViewCache.

Moved AllowFree, ClientCheckInputs, CheckInputs, UpdateCoins, and CheckTransaction out of CTransaction and into main.

Moved IsStandard and IsFinal out of CTransaction and put them in main as IsStandardTx and IsFinalTx. Moved GetValueOut out of CTransaction into main. Moved CTxIn, CTxOut, and CTransaction into core.

Added minimum fee parameter to CTxOut::IsDust() temporarily until CTransaction is moved to core.h so that CTxOut needn't know about CTransaction.
2013-06-05 23:15:20 -07:00
Jeff Garzik
c94bd68547 Merge pull request #2700 from theuni/gui-split
autotools: Gui split
2013-06-05 10:56:24 -07:00
Wladimir J. van der Laan
fc1f360fce Merge pull request #2731 from Diapolo/rpcconsole
Bitcoin-Qt: harmonize 2 setClientModel() functions
2013-06-05 09:27:23 -07:00
Cory Fields
99add01e76 osx: fix bitcoin-qt startup crash when clicking dock icon
Crash probably introduced by 4d17a1b0.
Inialize the window to NULL and verify it before use.
2013-06-04 23:55:35 -04:00
Cory Fields
13c84b3bd5 build: add global var for whether or not the gui is enabled 2013-06-04 03:54:14 -04:00
Jonas Schnelli
39fe9de6b2 Merge branch 'master' of git://github.com/bitcoin/bitcoin into prefsFix
Signed-off-by: Jonas Schnelli <jonas.schnelli@include7.ch>

Conflicts:
	bitcoin-qt.pro
2013-06-03 15:18:41 +02:00
Philip Kaufmann
1fc57d568b Bitcoin-Qt: harmonize 2 setClientModel() functions
- harmonize BitcoinGUI::setClientModel() and RPCConsole::setClientModel()
- now RPCConsole::setClientModel() also includes a direct call to
  setNumBlocks()
2013-06-03 14:10:14 +02:00