Commit graph

760 commits

Author SHA1 Message Date
Philip Kaufmann
83a3fb81f3 ensure AskPassphraseDialog::eventFilter forwards events
- instead of "return false;" use "return QDialog::eventFilter(object,
  event);" to harmonize this event filter with our default behaviour
- remove orphan spaces found while editting the files
2012-10-25 11:52:34 +02:00
Wladimir J. van der Laan
62e21fb5d0 Show warning when using prerelease version
Implements #1948

- Add macro `CLIENT_VERSION_IS_RELEASE` to clientversion.h
- When running a prerelease (the above macro is `false`):
  - In UI, show an orange warning bar at the top. This will be used for other
    warnings (and alerts) as well, instead of the status bar.
  - For `bitcoind`, show the warning in the "errors" field in `getinfo`
    response.
2012-10-25 07:33:45 +02:00
Alex
39ad0aa692 Fixed 100% CPU utilization problem on FreeBSD 9 2012-10-22 08:37:17 -04:00
Pieter Wuille
ae8bfd12da Batch block connection during IBD
During the initial block download (or -loadblock), delay connection
of new blocks a bit, and perform them in a single action. This reduces
the load on the database engine, as subsequent blocks often update an
earlier block's transaction already.
2012-10-20 23:08:57 +02:00
Pieter Wuille
450cbb0944 Ultraprune
This switches bitcoin's transaction/block verification logic to use a
"coin database", which contains all unredeemed transaction output scripts,
amounts and heights.

The name ultraprune comes from the fact that instead of a full transaction
index, we only (need to) keep an index with unspent outputs. For now, the
blocks themselves are kept as usual, although they are only necessary for
serving, rescanning and reorganizing.

The basic datastructures are CCoins (representing the coins of a single
transaction), and CCoinsView (representing a state of the coins database).
There are several implementations for CCoinsView. A dummy, one backed by
the coins database (coins.dat), one backed by the memory pool, and one
that adds a cache on top of it. FetchInputs, ConnectInputs, ConnectBlock,
DisconnectBlock, ... now operate on a generic CCoinsView.

The block switching logic now builds a single cached CCoinsView with
changes to be committed to the database before any changes are made.
This means no uncommitted changes are ever read from the database, and
should ease the transition to another database layer which does not
support transactions (but does support atomic writes), like LevelDB.

For the getrawtransaction() RPC call, access to a txid-to-disk index
would be preferable. As this index is not necessary or even useful
for any other part of the implementation, it is not provided. Instead,
getrawtransaction() uses the coin database to find the block height,
and then scans that block to find the requested transaction. This is
slow, but should suffice for debug purposes.
2012-10-20 23:08:57 +02:00
Pieter Wuille
66b02c93e6 Move external block import to separate thread 2012-10-20 01:54:10 +02:00
Wladimir J. van der Laan
485d667748 Revert "Merge pull request #1931 from laanwj/2012_10_newicons"
This reverts commit 199d88cf90, reversing
changes made to 65bc1573e7.

License is worse instead of better. Will only accept public domain and
MIT-licensed icons from now on.
2012-10-14 20:49:06 +02:00
xanatos
cddda5d9f0 Changed connect?_16.png to non-GPL one and changed the assets attribution. 2012-10-14 13:01:38 +02:00
xanatos
b96238a9c9 Changed the spinner to a non-GPL one, added instructions on how to regenerate it, changed the assets attribution, removed old spinner + old spinner's sources. 2012-10-14 12:34:07 +02:00
Philip Kaufmann
34710818a7 Bitcoin-Qt: intregrate current translations from Transifex 2012-10-12 15:51:49 +02:00
Philip Kaufmann
0e005c3ddc Bitcoin-Qt: update english translation master file 2012-10-12 15:45:27 +02:00
Wladimir J. van der Laan
fae3989ffc Merge pull request #1900 from Diapolo/optionsmodel_getters
move most explicit getters in optionsmodel to header
2012-10-11 00:40:20 -07:00
Wladimir J. van der Laan
089b10a28a Merge pull request #1911 from Diapolo/fix_signed_unsigned
fix wrong (signed/unsigned) printf format specifier in bitcoinrpc.cpp
2012-10-11 00:40:08 -07:00
Philip Kaufmann
ada2a39691 change Q_WS_MAC -> Q_OS_MAC (Qt5 compatibility)
- I missed that one in my former pull
2012-10-07 18:50:03 +02:00
Philip Kaufmann
5e5c102f2f make optionsmodel query real proxy state for ::data()
- don't rely on the QSettings for cases ProxyUse and ProxySocksVersion and
  query the real values via the GetProxy() call
- add a missing "succesful =" for case ProxyUse in ::setData()
2012-10-07 17:59:41 +02:00
Pieter Wuille
43de64949c Merge pull request #1859 from Diapolo/proxy_locks
add LOCK() for proxy related data-structures
2012-10-07 07:03:06 -07:00
Philip Kaufmann
95e625d235 fix wrong (signed/unsigned) printf format specifier in bitcoinrpc.cpp
- also includes the required bitcoinstrings.cpp update
2012-10-05 23:31:58 +02:00
Wladimir J. van der Laan
ee0b648536 Merge pull request #1906 from laanwj/2012_10_help_stdout
Send --help message to stdout i.s.o stderr
2012-10-05 11:24:09 -07:00
Wladimir J. van der Laan
a6be58d536 Merge pull request #1905 from laanwj/2012_10_startup_gui_error
When datadir missing, show messagebox instead of printing error to stderr
2012-10-04 22:28:44 -07:00
Wladimir J. van der Laan
61fd72695f When datadir missing, show messagebox instead of printing error to stderr 2012-10-04 12:04:12 +02:00
Philip Kaufmann
81bbef2609 add LOCK() for proxy related data-structures
- fix #1560 by properly locking proxy related data-structures
- update GetProxy() and introduce GetNameProxy() to be able to use a
  thread-safe local copy from proxyInfo and nameproxyInfo
- update usage of GetProxy() all over the source to match the new
  behaviour, as it now fills a full proxyType object
- rename GetNameProxy() into HaveNameProxy() to be more clear
2012-10-04 09:35:24 +02:00
Wladimir J. van der Laan
366944431b Pull changed translations from transifex
There was also a new translation available, "ja" (Japanese), however
almost nothing was filled in yet, so I'm not including it for this release.
2012-10-04 08:18:12 +02:00
Wladimir J. van der Laan
f1e262c8e1 Translation update for 0.7.1
Also clarify translation process that the package `gettext` is needed to run string extractor.
2012-10-04 08:13:37 +02:00
Wladimir J. van der Laan
bb353618f1 Send --help message to stdout i.s.o stderr
This allows fun stuff such as `bitcoin --help | less`, and more
easy piping to files.

Looking at other tools such as bash, gcc, they all send their help
text to stdout.
2012-10-04 07:56:57 +02:00
Philip Kaufmann
7bc65ff108 move most explicit getters in optionsmodel to header
- is more consistent and saves quite some lines of code
2012-10-02 18:49:57 +02:00
Gavin Andresen
d2cc6f489c Merge branch 'master' of github.com:runeksvendsen/bitcoin 2012-10-01 16:51:24 -04:00
Rune K. Svendsen
1bf66fcc0a When encrypting the wallet, warn user that old backups will become useless.
Don't include HTML in translation strings. Do split the huge message over several lines.

Prettier lines
2012-09-30 15:57:53 +02:00
Wladimir J. van der Laan
018ec85ff7 Merge pull request #1875 from hsoft/master
Fix compilation with clang under OS X
2012-09-29 02:23:46 -07:00
Wladimir J. van der Laan
f72fd0e792 Merge pull request #1881 from xanatos/Tests
Removed a duplicated identical if
2012-09-29 01:00:55 -07:00
Pieter Wuille
2e3ffb2d82 Remove stack randomization 2012-09-28 21:53:28 +02:00
xanatos
50e01ee620 toHTML won't add empty wtx.mapValue elements
As the code was before, toHTML added empty elements to mapValue to check for their existance. Now first it check for their existance and then for their non-emptiness.

Removed a duplicated identical if

There are two equal ifs, one inside another. If the first one is true, then the second one is true.
2012-09-28 15:50:48 +02:00
Virgil Dupras
fee10d800e Fixed compilation error with clang.
Previously, trying to compile with clang would result in the error: assigning to 'objc_object *' from incompatible type 'DockIconClickEventHandler *'
2012-09-27 15:06:16 -04:00
Wladimir J. van der Laan
1a52dd10a7 Merge pull request #1854 from Diapolo/fix_1843_V2
additional fix for #1843
2012-09-25 01:35:22 -07:00
Wladimir J. van der Laan
49b09ec04f Merge pull request #1853 from fanquake/qt-include
Update include for Qt5
2012-09-23 05:35:24 -07:00
fanquake
ea9eaf9dec Update Qt include
Update Qmenu include

This is to be more consistent with the rest of the source

Update Qt Includes
2012-09-22 18:56:22 +08:00
Wladimir J. van der Laan
2f91373a0a Merge pull request #1852 from fanquake/bugreportlinks
Update links to Qt
2012-09-22 03:29:46 -07:00
Philip Kaufmann
bb86cffa56 additional fix for #1843
- a shortcut on "receive coins" was used twice
2012-09-22 12:15:41 +02:00
fanquake
e1eb3d4451 Update Bugreport Links
Update Qt Links

Revert Qt source link

Update Qt links
2012-09-22 18:05:25 +08:00
Wladimir J. van der Laan
f394f21594 Merge pull request #1844 from Diapolo/Qt5_compat1
enhance Qt5 compatibility
2012-09-22 02:21:06 -07:00
Wladimir J. van der Laan
38682648c2 Remove unnecessary text from tooltip in AddressBookPage 2012-09-22 08:37:56 +02:00
Philip Kaufmann
da9413d913 fix #1843 by changing 2 GUI shortcuts 2012-09-21 19:31:53 +02:00
Philip Kaufmann
81605d90f5 enhance Qt5 compatibility
- replace Q_WS_MAC (not supported anymore in Qt5) with Q_OS_MAC (supported
  in Qt4/5)
2012-09-21 19:06:53 +02:00
Wladimir J. van der Laan
3ccbaa56f4 comment update: it's -> its 2012-09-21 14:15:26 +02:00
Wladimir J. van der Laan
1ba4925755 Merge pull request #1705 from Diapolo/cleanup_bitcoingui
Qt: re-order GUI code and remove FIRST_CLASS_MESSAGING
2012-09-20 23:08:52 -07:00
Wladimir J. van der Laan
2dca98511f Merge pull request #1810 from laanwj/2012_09_rpcconsole_eventfilter
Improve RPC console key event behaviour
2012-09-20 23:02:52 -07:00
Wladimir J. van der Laan
bfc24bd4ce Merge pull request #1717 from Diapolo/Qt_change_TX_display
Qt: show mined transactions at depth 1
2012-09-20 00:42:31 -07:00
Wladimir J. van der Laan
62904b33f3 Improve RPC console key event behaviour
- Paging using PageUp / PageDown now works when entry widget has focus
- Typing or pasting while the messages widget has focus auto-selects entry widget
2012-09-09 20:44:59 +02:00
Wladimir J. van der Laan
d8ecd21ff7 Merge pull request #1802 from luke-jr/bugfix_ts
Update translations from Transifex (100% coverage for Finnish and Chinese (China)
2012-09-09 00:04:03 -07:00
Luke Dashjr
85eb1e7e56 Update translations from Transifex (100% coverage for Finnish and Chinese (China) 2012-09-08 20:32:54 +00:00
Wladimir J. van der Laan
31fac119dc Merge pull request #1796 from luke-jr/bugfix_ts
Various translation fixups and restorations
2012-09-07 22:15:19 -07:00
Luke Dashjr
4ee706243c Partially Bugfix: Update English translation strings and translations from Transifex
Bugfix: Correct doubled-up & in translations
Bugfix: Remove extra spaces after ampersand in translations (this fixes hotkeys)
Restore copyright translations, now split up
Restore old translations lost due to changes to English structure
	Skipped: ca_ES et eu_ES fr_CA (under 10% coverage)
2012-09-08 04:59:13 +00:00
Philip Kaufmann
f875921176 Bitcoin-Qt (Windows only): add version info to Resource File
- add version information to bitcoin-qt.rc, which is displayed on Windows, when looking in the executable properties and selecting "Details"
- introduce a new clientversion.h (used in bitcoin-qt.rc to generate
  version information), which takes only the version defines from
  version.h and is included in it (to allow usage with the windres rc-file
  compiler)
- move #define STRINGIFY(s) #s into clientversion.h as that is used in
  bitcoin-qt.rc and rename to DO_STRINGIZE(X)
- add #define STRINGIZE(X) DO_STRINGIZE(X), which is needed to convert the
  version defines into a version string in the rc-file
- this ensures we only need to update 1 file and have bitcoin-qt.exe
  version information

- for RC-file documentation see:
  http://msdn.microsoft.com/en-us/library/windows/desktop/aa381058%28v=vs.85%29.aspx
2012-09-07 16:08:18 +02:00
Gavin Andresen
91c218a1cb Merge branch 'testnet_alert' of git://github.com/gavinandresen/bitcoin-git 2012-09-05 11:38:38 -04:00
Jeff Garzik
8c7b6c05db Merge pull request #1738 from laanwj/2012_08_boostthread
implement CreateThread with boost::thread
2012-09-04 08:53:05 -07:00
Philip Kaufmann
af7b88f29f clear history when using clear button in RPC console
- current code does not clear history, when using the clear button, this
  is added
- remove a currently unused variable but add a TODO comment
2012-09-02 13:18:34 +02:00
Wladimir J. van der Laan
9c94bdac06 RPC console: escaping within ' and " now handled differently
Should now mimic bash quoting and escaping (see http://wiki.bash-hackers.org/syntax/quoting) exactly,
leaving out argument expansion and obscure syntax like $''.
2012-09-01 09:08:38 +02:00
Wladimir J. van der Laan
b5c1467a7d In RPC console, attempt to format errors
Try to display a nicer message instead of dumping raw JSON object when possible. If the error
somehow doesn't have the required 'code' and 'message' fields, fall back to printing raw JSON object.
2012-08-31 17:41:58 +02:00
Wladimir J. van der Laan
576b5efe93 Fix RPC console parser to handle escaped arguments more like bash
- Fix issue #1750
2012-08-31 17:23:48 +02:00
Wladimir J. van der Laan
4d1d94c56c Rename CreateThread to NewThread
Prevent clash with win32 API symbol
2012-08-29 20:25:37 +02:00
Philip Kaufmann
382e9e25ff Qt: re-order GUI code
- re-order Qt Actions and connect() calls to match the real GUI layout,
  which makes things easier to read and understand
- remove signMessageAction and verifyMessageAction from tabGroup as we
  didn't use them anyway (as tooltips are not displayed in the menu remove
  these too)
- update 2 comments
2012-08-29 19:59:22 +02:00
Philip Kaufmann
5fc3a0f707 remove FIRST_CLASS_MESSAGING support from the client
- removes the FIRST_CLASS_MESSAGING support from the client, which was no
  default setting anyway
2012-08-29 19:57:51 +02:00
Wladimir J. van der Laan
6117afeeaa Update strings for 0.7.0rc2 2012-08-29 19:55:40 +02:00
Wladimir J. van der Laan
c7df832d7a Merge pull request #1617 from Diapolo/Show_Hide_string
Update string for Show/Hide in the tray
2012-08-29 10:52:01 -07:00
Wladimir J. van der Laan
fc52af2736 Merge pull request #1720 from Diapolo/Qt_about
Qt: add copyrightLabel to aboutdialog.ui
2012-08-29 10:50:17 -07:00
Philip Kaufmann
e273c51287 Update string for Show/Hide in the tray
- be clear we don't "Show/Hide Bitcoins", but just the client window
- remove the tooltip for toggleHideAction as this is not shown anyway
- update a comment to be more general
2012-08-29 07:39:35 +02:00
Gavin Andresen
f35c6c4fb9 Refactor: move alert code from main to alert.cpp/h 2012-08-28 17:04:54 -04:00
Gavin Andresen
ef8e821cf2 Fix compiler warning on mac 2012-08-27 12:37:35 -04:00
Gavin Andresen
8cd98a9a26 Merge branch 'bugfix_gitian' of git://github.com/luke-jr/bitcoin 2012-08-27 11:52:56 -04:00
Luke Dashjr
1837696580 Bugfix: Move boost::interprocess Win32 workaround to Bitcoin-Qt sources, rather than hacking boost in gitian 2012-08-27 00:49:23 +00:00
Gavin Andresen
772351b0d5 Merge branch '2012_08_progressbarwin' of git://github.com/laanwj/bitcoin 2012-08-25 11:14:11 -04:00
Wladimir J. van der Laan
12324c1693 Update Czech translation from Transifex 2012-08-25 10:19:35 +02:00
Luke Dashjr
bc8d832335 Abstract all IPC communication to qtipcserver 2012-08-24 16:59:27 +00:00
Wladimir J. van der Laan
382b75f528 Override progress bar on platforms with segmented progress bars
Windows & WindowsXP style have a problem with displaying the block progress.
Add a custom stylesheet as workaround, but only when one of those renderers is active,
otherwise leave the theme alone (issue #1071).
2012-08-24 15:01:07 +02:00
Philip Kaufmann
9fd537965d Qt: add copyrightLabel to aboutdialog.ui
- add a new label, which can be updated independently from the whole
  license information stuff
- the benefit is, we don't need to re-translate that whole wall of text
  every year the copyright info changes
- update to the same copyright string we use in the source and in the
  bitcoin-qt.exe meta-data information
- removes an obsolete entry from the ui-file
2012-08-24 13:04:10 +02:00
Philip Kaufmann
f09e8fcd33 Qt: show mined transactions at depth 1
- before, we used to show them in GUI when depth >= 2, which could lead to
  confusion of users, as the RPC behaviour already showed the Tx
2012-08-24 08:52:12 +02:00
Luke Dashjr
e07c8e9123 Treat generation (mined) transactions less different from receive transactions
- Show address receiving the generation, and include it in the correct "account"
- Multiple entries in listtransactions output if the coinbase has multiple outputs to us
2012-08-23 23:20:01 +00:00
Wladimir J. van der Laan
05fa0de6d8 Add icon for "About Qt" in menu
Use the built-in icon that is also used in the dialog box itself.
2012-08-23 21:57:20 +02:00
Wladimir J. van der Laan
d9725378b0 Update translations from transifex 2012-08-22 14:05:01 +02:00
Philip Kaufmann
4b94f4e0ed Bitcoin-Qt (Windows only): extend Resource File
- extend bitcoin-qt.rc to include meta information, which is displayed on
  Windows, when looking in the executable properties and selecting
  "Details"
- does currently NOT include version information, this is scheduled
  for later releases
- for RC-file documentation see:
  http://msdn.microsoft.com/en-us/library/windows/desktop/aa381058%28v=vs.85%29.aspx
2012-08-14 11:16:46 +02:00
Wladimir J. van der Laan
0825aee8f4 Merge pull request #1649 from Diapolo/optionsdialog
small UX update for optionsdialog
2012-08-13 21:17:39 -07:00
Wladimir J. van der Laan
198947c19f Merge pull request #1661 from laanwj/2012_08_stringsupdate
Update English translation strings
2012-08-09 08:32:18 -07:00
Wladimir J. van der Laan
3a50cd2193 Update English translation strings
This is the last time for 0.7.0. We should avoid message changes
until the release. Translators can use the remaining time to update their languages on
Transifex.

The other languages need to be merged from Transifex just before release.
2012-08-07 21:10:03 +02:00
Matt Corallo
2bc15836be Fix Qt test cases by moving address checks to parseBitcoinURI
Makes sense in case bitcoin URIs eventually allow invalid addresses
as a part of some larger future payment scheme.
2012-08-07 19:37:02 +02:00
Matt Corallo
319236afa2 Fix Win32 compiling of qt/test/uritests.cpp 2012-08-07 19:36:59 +02:00
Matt Corallo
026594e269 Return !0 when qt tests fail. 2012-08-07 19:36:54 +02:00
Jeff Garzik
dd199d0ebd Merge pull request #1650 from Diapolo/spelling_fixes
fix further spelling errors / remove a tab in the source
2012-08-02 14:36:45 -07:00
Wladimir J. van der Laan
88bd012003 Merge pull request #1644 from Diapolo/update_translations
Translations update 2012-08-01 (fetched from Transifex)
2012-08-02 12:27:11 -07:00
Philip Kaufmann
efdcf94174 fix further spelling errors / remove a tab in the source 2012-08-02 10:09:29 +02:00
Philip Kaufmann
4aaa4313e7 small UX update for optionsdialog
- add enableApplyButton() and disableApplyButton() to optionsdialog.{h/cpp}
- they are used to ensure the Ok button does not get disabled, when Apply needs to be disabled (standard UX should allow Ok always to dismiss the dialog and only disable it, when we have a faulty proxy IP)
- disable Apply after initially loading the settings, as nothing new needs to be saved
- remove orphan settings from optionsdialog.ui that are default anyway
2012-08-02 09:05:10 +02:00
Philip Kaufmann
75578d60f3 only update cached values in ClientModel::updateTimer() when they are changed 2012-08-01 23:32:32 +02:00
Philip Kaufmann
68acc1b4cb Translations update 2012-08-01 (fetched from Transifex) 2012-08-01 22:22:41 +02:00
Jeff Garzik
f81e6f779b Merge pull request #1632 from luke-jr/spelling
Fix spelling and grammar errors
2012-08-01 10:56:47 -07:00
Luke Dashjr
b49f1398a1 Bugfix: Correct English grammar regarding "'s" 2012-08-01 17:50:00 +00:00
Luke Dashjr
814efd6f1f Bugfix: Fix a variety of misspellings 2012-08-01 17:49:51 +00:00
Philip Kaufmann
e6bc9c35f3 Update Warning-strings to use a standard-format
- ensure warnings always start with "Warning:" and that the first
  character after ":" is written uppercase
- ensure the first sentence in warnings ends with an "!"
- remove unneeded spaces from Warning-strings
- add missing Warning-string translation
- remove a "\n" and replace with untranslatable "<br><br>"
2012-08-01 19:33:32 +02:00
Wladimir J. van der Laan
c1aed4eff4 Merge pull request #1594 from Diapolo/GUI_testnet3_fix
small update for BitcoinGUI::setNumBlocks() function
2012-07-27 05:54:19 -07:00
Wladimir J. van der Laan
2e53709f17 Merge pull request #1571 from Diapolo/optionsdialog_cleanup
GUI: optionsdialog cleanup
2012-07-27 04:08:03 -07:00
Wladimir J. van der Laan
ebeafe5b0b Update translation messages
- No core strings changed since last time
- Re-add line numbers in .ts file as this is marginally easier for translators (see #1227)
2012-07-26 04:20:21 +02:00
Wladimir J. van der Laan
c32ad4594e Merge pull request #1624 from Diapolo/fix_typo_log_file
fix typo "logfile" -> "log file"
2012-07-25 19:15:01 -07:00
Wladimir J. van der Laan
6892cb056d Merge pull request #1630 from fanquake/master
Fix Typo
2012-07-25 19:09:49 -07:00