Skip to content


Subversion checkout URL

You can clone with
Download ZIP


Qt GUI #521

merged 338 commits into from

10 participants


This pull requests merges in the Qt GUI ( ). This introduces a qmake-based build system completely orthogonal to the current build system and UI code. All qt-related source files and resources are added under src/qt: 135 of the 154 "Files Changed" are additions.

Changes to core code have been kept to a minimum and are generally guarded by #ifdef or clearly UI-specific. Outline of changes to core:

  • Add InitMessage calls to initialization sequence, for splash screen. These do nothing on Qt or GUI-less builds
  • #ifdefs for QT GUI specific changes: there is no default or preferred receiving address, and no visible addresses are generated without the users intervention
  • Keep track of maximum block count of peers (GetNumBlocksOfPeers), for visual indication of progress
  • Translation functions and printf take std::string instead of char*, to allow _ to safely redirect to Qt translation service
  • Add GetUnconfirmedBalance() call to CWallet, to be able to show non-confirmed balance in home screen
  • rpc.(cpp|h) renamed to bitcoinrpc.(cpp|h) to satisfy qmake build system on Windows

Discussion on forum:

laanwj and others added some commits
@laanwj laanwj Add tooltips, make "amount" entry consistent in Options dialog 5e1fedd
@laanwj laanwj Somewhat confident now, tested on GNOME+KDE, with all types of transa…
…ctions. Next step is integration into bitcoin tree.
@laanwj laanwj move back to original directory structure ba4081c
@laanwj laanwj add build instructions to doc 0304f4a
@laanwj laanwj use stylized icon by bitboy 37f793c
@laanwj laanwj remove wallet updating debug output c428d9e
@laanwj laanwj add the bitcoin (MIT?) license 0424613
@laanwj laanwj update bitcoin core to git ce14894 18cf214
@laanwj laanwj prepare internationalization; rename project to bitcoin-qt ab2fe68
@laanwj laanwj add svg version of icon, so that it can be scaled to bigger sizes later 3ac5aa4
@laanwj laanwj replace icons d066e25
@laanwj laanwj new icons -- test 92ab03a
@laanwj laanwj Status column reorganization 249300a
@laanwj laanwj Address book: select action (edit/select) based on context e83474f
@laanwj laanwj Internationalization -- initial step, make _ return a std::string to …
…prevent memory leaks
@laanwj laanwj Internationalization -- conversion of strings from bitcoin core 6315130
@laanwj laanwj link to -lcrypto as well f15df6b
@laanwj laanwj Add berkelydb version warning 5363cb0
@laanwj laanwj Make status column narrow (icon only, details on tooltip) a790ec5
@laanwj laanwj add connection meter b1ef1b2
@laanwj laanwj icons test cf450e1
@laanwj laanwj transaction status icons 58557b5
@laanwj laanwj add attribution for icons aec8763
@laanwj laanwj show connection meter "full" only at 10+ connections 8c69f1f
@laanwj laanwj better icons for confirmations 89c94b5
@laanwj laanwj add svg sources for icons e61cfaf
@laanwj laanwj remove unused icons 553af2f
@laanwj laanwj add license for md2k7's icons e4347a4
@laanwj laanwj fix issue #3 (dark theme compat) aa52972
@laanwj laanwj remove commented code, use // for one-line comments and comments insi…
…de functions
@laanwj laanwj Prevent notification balloon-spam on initial block download, const-co…
…rrectness in client model
@laanwj laanwj Use explicit resource initialization, apparently needed on some platf…
@laanwj laanwj add configure and receive icon 245ab4d
@laanwj laanwj update bitcoin core from git (eeac872) 0eeb4f5
@laanwj laanwj On initial block chain download, show a progress bar 6cab663
@laanwj laanwj initial block download spans total blocks minus threshold 0f9ee79
mark fixes for mac build 3c7ebae
@laanwj laanwj Merge pull request #5 from mjmvisser/master
mac fixes
@laanwj laanwj number of confirmations is no longer magic value 18b99e3
@laanwj laanwj introduce bitcoin amount field with split amount/decimals, to protect… f193c57
@laanwj laanwj Fix some padding and focus issues with the new BitcoinAmountWidget 84114e3
@laanwj laanwj Add comment to tooltip that only sending addresses can be deleted 54e903a
@laanwj laanwj fix issue #7 50d08dc
@laanwj laanwj when going to decimals field using ./, select it all, so that entry s…
…tarts from scratch instead of appending to previous value
@laanwj laanwj highlight default address f5927f5
@laanwj laanwj Allow changing default address (fixes issue #6) b9e8098
@laanwj laanwj clarify text 5f280ff
@laanwj laanwj use #ifdef QT_UI to distinguish Qt UI instead of hardcoded #if 0 47c6215
@laanwj laanwj experiment with internationalization (nl), unbreak build (externui.h-…
@laanwj laanwj use buttonbox for options dialog 6665c24
@laanwj laanwj finish nl translation 40951d8
@laanwj laanwj Call "initial download" "synchronizing with network" instead c88e14f
@laanwj laanwj allow adding address to address book in send dialog 38deedc
@laanwj laanwj Improve look/usablity of send coins dialog a404b15
@laanwj laanwj compile fixes by Unthinkingbit 0030c1b
@laanwj laanwj update dutch translation 42e950a
@laanwj laanwj fix typo in dutch translation cae5264
@laanwj laanwj reduce spacing between "Add to address book as" and the text field d99f5a4
@laanwj laanwj update core to d0d8017 (CWallet class) e8ef3da
@laanwj laanwj Change transaction table:
- Split "Description" column into "Type" and "Address", to make sorting easier (and facilitate filtering in the future)
- Merged "credit" and "debit" columns into one "amount" column that can be black (positive) or red (negative)
@laanwj laanwj add icons to "New..." and "Copy to clipboard" buttons 7aff3d5
@laanwj laanwj use 256x256 window icon, to prevent uglyness on OSes that show full-s…
…ize icons for apps
@laanwj laanwj add "BTC" to balance for clarity 19a5975
@laanwj laanwj Implement filter row instead of tabs, allows for more expressive filters ceb6d4e
@laanwj laanwj Make it more clear what the "New" button does 6ed2839
@laanwj laanwj show an error if amount is not valid (either the amount or decimals i…
…s empty)
@laanwj laanwj Split off WalletModel from ClientModel, to be able to support multi-w…
…allets in future
@laanwj laanwj Make it very clear when on testnet (green icon, add [testnet] to title) d56c6f3
@laanwj laanwj Add "receiving addresses" to toolbar d61b7d1
@laanwj laanwj add icons to address book dialog buttons c16eb94
@laanwj laanwj fix sorting in address table dialog 8b040f8
@laanwj laanwj Address book: show unlabeled addresses as (no label) 64f125f
@laanwj laanwj Fix detailed transaction information on doubleclick c60015a
@laanwj laanwj General cleanups 0052fe7
@laanwj laanwj reverse address and label (suggestion by Danube) ab90d6e
@laanwj laanwj cleanup unused constants cdff41c
@laanwj laanwj make amount column wider, so that more decimals fit in b5384e9
@laanwj laanwj Add "last month" filter 05bae43
@laanwj laanwj Remove "default address" from main GUI screen, it only confuses people e5b47b4
@laanwj laanwj Placeholder text can only be used for Qt 4.7+ f48b4c8
@laanwj laanwj "Receive coins" instead of "Receiving addresses" bb82fdb
@laanwj laanwj update build instructions (thanks tschaboo) 05da981
@laanwj laanwj Send: dialog redesign (automatically look up label for entered address) ebff5c4
@laanwj laanwj Check addresses in address book for validity 669b0a5
@laanwj laanwj make tooltip equal to placeholder c1ffa5b
@laanwj laanwj ui improvements: allow inline editing of labels/addresses in address …
…book table, better tab order in send dialog, set focus on sending address table when coming from send coins dialog
@laanwj laanwj remove "edit" button, document double-click behaviour to edit ecde936
@laanwj laanwj remove libboostall-dev is not needed dependency 21e47f8
@laanwj laanwj move another setPlaceHolderText to 4.7+ only code 482e578
@laanwj laanwj windows build fixes 8fe2308
@laanwj laanwj Eliminate useless padding 3913c38
@laanwj laanwj add windows build instructions 9dfb2d2
@laanwj laanwj as there is no "default receiving address" in this GUI, don't autogen…
…erate new addresses on receiving
@laanwj laanwj make balance selectable / copyable 825aa7d
@laanwj laanwj tab reorg phase 1: split main gui into "overview" and "history" 64c8b69
@laanwj laanwj Add "BTC" to all amount widgets, to make clear what the unit is e1f3d64
@laanwj laanwj Remove code for no longer existing edit button in address book dialog 8bca409
@laanwj laanwj Address book: Disable "copy to clipboard" and "Delete" buttons when n…
…othing selected
@laanwj laanwj Improve view of generated transactions (show clock icon when still ma…
@laanwj laanwj minor language/text updates fac0474
@laanwj laanwj Rename "History" tab to more logical "Transactions", move "Number of …
…transactions" from status bar to overview page
@laanwj laanwj Export functionality for transaction list fbaee7a
@laanwj laanwj CKeyStore::AddKey must return a boolean 33c75fd
@laanwj laanwj temp patch for qtui 42c405a
@laanwj laanwj Sync to bitcoin git e94010b ae3d0ab
@laanwj laanwj Qt handles the "..." for too long table rows. Remove this functionali…
…ty from TransactionTableModel...
@laanwj laanwj convert to full tab-based ui 3479849
@laanwj laanwj Selection/tab navigation fixes 94fe42a
@laanwj laanwj clarify todo/dones in readme a7e506d
@laanwj laanwj add [testnet] to whatever the current window title is 0002bdd
@laanwj laanwj Add German translation by nico_w ba3d025
@laanwj laanwj "Status" doesn't fit into narrow first column in transaction history,…
… make the header empty
@laanwj laanwj update README 8ffec99
@laanwj laanwj Display a "freshness" indicator instead of nr of blocks 84c8506
@laanwj laanwj Reorganize "send coins" tab d8aeb8d
@laanwj laanwj forgot synced icons 83b8237
@laanwj laanwj send coins dialog: make sure send button remain default button (trigg…
…ered with enter)
@laanwj laanwj Transaction list: less terse tooltip 3510553
@laanwj laanwj Add context menu on transaction list: copy label, copy address, edit …
…label, show details
@laanwj laanwj Readme update 460cd40
@laanwj laanwj remove magic number: change threshold for nLockTime to constant fa989f4
@laanwj laanwj remove magic number: change threshold for nLockTime to constant 2eace48
@laanwj laanwj add export functionality for address book / receiving addresses f54d59b
@laanwj laanwj README update adad8e4
@laanwj laanwj Add -fstack-protector to gcc CXX flags ea8440d
@laanwj laanwj remove placeholder text from ui form, code generator screws up on old…
…er qt
@laanwj laanwj add better windows7/vista look by nico_w 0b814f9
@laanwj laanwj wxp/mingw build fixes c87cdc9
@laanwj laanwj Make tooltip on refresh more clear eee0d23
@laanwj laanwj Show unconfirmed balance on overview page df5ccbd
@laanwj laanwj also show balloon on sent transaction, to notify when coins sent 4a84397
@laanwj laanwj Update mac build (alkor on forums) 2a097fc
@laanwj laanwj solve warnings at startup 77b615c
@celil-kj celil-kj Fix error when export is cancelled without specifying a filename. 608810a
@laanwj laanwj Merge pull request #8 from celil-kj/master
fix error when cancelling export
@laanwj laanwj Now that send coins / receive coins etc are tabs, remove them from me…
…nu, and reorganize menu bar
@laanwj laanwj fix quoting 249c681
@laanwj laanwj Add call to request unconfirmed balance a35ee96
@laanwj laanwj Merge remote-tracking branch 'satoshi/qtui'
Conflicts (resolved by copying files from remote branch):
@laanwj laanwj move out of the way for now a24b236
@laanwj laanwj Merge branch 'master' of d421117
@celil-kj celil-kj Suppress uninitialized warnings. 97f908e
@laanwj laanwj add sendmany support a5e6d72
@laanwj laanwj Revert "Now that send coins / receive coins etc are tabs, remove them…
… from menu, and reorganize menu bar"

This reverts commit ea37fb9.
@laanwj laanwj add missing icon 9b9cd3d
@laanwj laanwj update readme 2a42903
@laanwj laanwj readme update b5f918c
@laanwj laanwj make initial block download reporting somewhat better by tracking ver…
…sion responses
@laanwj laanwj show rotating spinner when block download out of date, tick otherwise 8dcffd4
@laanwj laanwj put sendcoins entries in scroll area, so that window does not become …
…bigger than screen with many recipients
@laanwj laanwj Fix "Last received block was generated Up to date" a75e1e3
@laanwj laanwj windows build fix 24c835b
@laanwj laanwj move buttons to bottom of send coins tab, outside of scroll area 68e327a
@laanwj laanwj Merge branch 'notebook' 8ea1c9a
@laanwj laanwj one remove/delete icon is enough and the red minus better matches the…
… add icon
@celil-kj celil-kj Merge branch 'master' of 29f9e4e
@laanwj laanwj fix clear() (clear red/invalid status) 73cd5e5
@laanwj laanwj Implement range... transaction filter 8b936b6
@laanwj laanwj Merge branch 'master' of 7beada5
@celil-kj celil-kj Merge branch 'master' of 64c991d
@celil-kj celil-kj Allow ammount field to be empty so that one can specify .05 instead of
having to type the leading zero as in 0.05
@laanwj laanwj Merge pull request #9 from celil-kj/master
allow decimals such as .05 for amount of bitcoins to send
@laanwj laanwj add windows program (.exe) icon 8a13456
@laanwj laanwj improve tooltip texts 591dcaf
@laanwj laanwj make all tab icons blue/gray for more consistencyx f547257
@laanwj laanwj better exit icon daa1a73
@celil-kj celil-kj On Mac OS X do not link aginst the boost libraries in UNIX:LIBS 2af40a5
@celil-kj celil-kj Clean up the project file. a8c50c0
@laanwj laanwj put color constants in guiconstants.h bbae0fc
@laanwj laanwj preparations for multiple unit (uBTC, mBTC, BTC) support, fix amount …
…entry issue
@laanwj laanwj fix unit names (μBTC) e780b94
@laanwj laanwj Negative transaction color changed to red (was grey due to mistake) ca1dbe1
@laanwj laanwj allow multiple units in bitcoin amount widget (for example, for sendi…
…ng) using a combobox
@laanwj laanwj refuse to format nor parse invalid units f2b10f6
@laanwj laanwj Reset unit to default when clearing the field, to prevent confusion 83c8d67
@laanwj laanwj update readme c0b892f
@laanwj laanwj Merge remote branch 'upstream/master'
@laanwj laanwj make SetHash160 return a value (as specified in the function signature) 5326a31
@laanwj laanwj Re-apply pull request #10, it got lost for some reason 1e89d5d
@laanwj laanwj show amounts in <b>bold</b> in confirmation dialog dd61035
@laanwj laanwj also accept numbers without dot/decimals for parsing, fixes transacti…
…on filter row
@laanwj laanwj normalize SIGNAL/SLOT signatures (… 7df001b
@laanwj laanwj Merge branch 'master' of
@laanwj laanwj Full support for other units, add configuration option for default un…
…it (used when displaying amounts)
@laanwj laanwj Merge branch 'master' of 53d65b5
@laanwj laanwj Remove no longer valid comment 3b59297
@laanwj laanwj Make debug info more interesting (show SHA160 addresses for inputs) 19fba3c
@laanwj laanwj Make dot in amount field more apparent 1aafe34
@laanwj laanwj Hide addresses in transaction overview by default, they can be re-sho…
…wn as a configuration option
@laanwj laanwj Remove unused variable 04f38ad
@laanwj laanwj make sure address book model is up to date after sending coins f0ec774
@laanwj laanwj comment update a5e1325
@laanwj laanwj Properly html-escape labels dedf83a
@laanwj laanwj address icons 05bcf70
@laanwj laanwj show n/a for mined transactions (and send to self) instead of empty f…
@laanwj laanwj add splash screen 10d680c
@laanwj laanwj update readme and splash screen text 5762295
@laanwj laanwj add attribution for wallet image 6e903b0
@laanwj laanwj make amount field the same width as decimals field 2566b30
@laanwj laanwj show last few transactions on overview page a99ac8d
@laanwj laanwj unconfirmed amount = grey 82303fc
@laanwj laanwj fix drawing on gtk 2ccd475
@laanwj laanwj Clarity: change definition of "confirmed" to "counts towards balance" 186f3e2
@laanwj laanwj when clicking a transaction on the overview page, send the user to th…
…e transactions page
@laanwj laanwj minimize amount of text in status bar; show only icons, if the user w…
…ants explanation they can view the tooltip
@laanwj laanwj select new address immediately after creation ffccb56
@laanwj laanwj improve tooltip over transactions 126185a
@laanwj laanwj speling fix 00f4f8d
@laanwj laanwj improve sync spinner d4e3cb4
@laanwj laanwj reorganize transaction model data function, and transaction tooltip e74e8a1
@laanwj laanwj Merge branch 'master' of 330c190
@laanwj laanwj Accept "bitcoin:" URL drops from browsers db7f023
@laanwj laanwj don't include <QDebug> 856aacf
@laanwj laanwj allow empty/missing amounts in URL c359ac9
@laanwj laanwj update readme f839f96
@laanwj laanwj add TODOs in parseBitcoinURL fb390d3
@laanwj laanwj QtUI code cleanup / comment improvements b084961
@laanwj laanwj Merge branch 'master' of 0a76546
@laanwj laanwj Merge branch 'master' of b90c9ec
@laanwj laanwj fix issue #13 8c4738d
@laanwj laanwj add russian translation by msva 317c733
@laanwj laanwj update README for issue #15 872b1f3
@laanwj laanwj Merge branch 'master' of adce862
@laanwj laanwj Wallet encryption part 1: show wallet encryption status ae8adeb
@msva msva add russian translation and add unicode compatibility (merges pull re…
…quest #20)
@laanwj laanwj Wallet encryption part 2: ask passphrase when needed, add menu options b7bcaf9
@laanwj laanwj comments and readme update 6c85cbe
@laanwj laanwj Merge branch 'master' of f43f46c
@laanwj laanwj Merge branch 'master' of
@laanwj laanwj update to work with new lock system, add protocol.* to build system c5aa1b1
@laanwj laanwj bitcoin-qt cannot be used as command line rpc client b2d1129
@laanwj laanwj support USE_UPNP setting 0aca857
@laanwj laanwj Edited README.rst via GitHub 4785e6d
@laanwj laanwj Merge branch 'master' of 0a70a3f
@laanwj laanwj Merge branch 'master' of 69e8763
@laanwj laanwj (k)ubuntu 10.04+ notification support (based on @zwierzak his code) cf9195c
@Matoking Matoking Pull request #21: windows fixes/cleanup by Matoking 94723e2
@laanwj laanwj fix the build (moved code use 'this' instead of 'window') f077d1a
@laanwj laanwj Merge branch 'master' of
@laanwj laanwj http -> https 9b9e2f1
@Matoking Matoking The synchronization progress bar now compares the amount of total blo…
…cks to amount of blocks downloaded at application start-up. Could be probably implemented better.
@laanwj laanwj clarify function signature (GetNumBlocksOfPeers) and use number of 'f…
…rozen' blocks as initial value for number of peer blocks
@p2k p2k Some Mac OS X specific things
* Added application icon for Mac OS X * Added instructions for compiling
under Mac OS X * Added Portfile for compiling miniupnpc with MacPorts
@laanwj laanwj Merge pull request #22 from p2k/master
Some improvements for Mac OS X
@laanwj laanwj remove transparency effect and windows-specific code for now, it's no…
…t working as supposed
@flower1024 flower1024 make German translation up-to-date c1e6672
@laanwj laanwj Merge branch 'master' of 5dd7318
@laanwj laanwj move qt-specific scripts to qt-specific directory in scripts/ 3c66913
@laanwj laanwj assure that base bitcoind and bitcoin still build e122e42
@laanwj laanwj move current qt specific readme to doc/, restore original 0465c41

ACK on the changes to core. I haven't reviewed the UI code itself.


This seems to break the wxgui (error in AppInit()). Either that should be fixed or wxgui removed IMHO.


tcatm: I'm unable to reproduce this (on Linux). The Wx still works as it did before. Can you get a traceback for the error?


sorry, my fault: I forgot to run make clean and thus part of bitcoin was usind bdb 4.7 and bdb 4.8


ACK, I did a quick review and setup a qt build environment. Looks good.

@TheBlueMatt TheBlueMatt commented on the diff
((5 lines not shown))
+CONFIG += no_include_pwd
+# for boost 1.37, add -mt to the boost libraries
+LIBS += -lssl -lcrypto -ldb_cxx
+unix:!macx:LIBS += -lboost_system -lboost_filesystem -lboost_program_options -lboost_thread
+macx:LIBS += -lboost_system-mt -lboost_filesystem-mt -lboost_program_options-mt -lboost_thread-mt
+windows:LIBS += -lboost_system-mgw44-mt-1_43 -lboost_filesystem-mgw44-mt-1_43 -lboost_program_options-mgw44-mt-1_43 -lboost_thread-mgw44-mt-1_43 -lws2_32 -lgdi32
+windows:DEFINES += __WXMSW__
+windows:RC_FILE = src/qt/res/bitcoin-qt.rc
+# use: qmake "USE_UPNP=1"
+# miniupnpc ( must be installed
+count(USE_UPNP, 1) {
+ message(Building with UPNP support)

USE_UPNP should be tri-state. ie USE_UPNP=0 is different than USE_UPNP undefined.

@laanwj Owner
laanwj added a note
@laanwj Owner
laanwj added a note

mmm, I guess I just don't know how to read qmake files, or am blind...probably both. Just wanted to check to make sure.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
@TheBlueMatt TheBlueMatt commented on the diff
@@ -0,0 +1,43 @@
+# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:filetype=tcl:et:sw=4:ts=4:sts=4

Im not against adding this file if it is needed, but can I ask why it is?

@laanwj Owner
laanwj added a note

Its a macport port file for the latest miniupnpc. That's fine but I'm not sure about putting it in the bitcoin repo. It should probably just be submitted upstream to macports and not be put on bitcoin.

p2k added a note

Yes, this is a temporary solution and I will remove this file as soon as macports fixes the issue.

Meh, still not sure about putting it in bitcoin, but I guess it doesn't matter.

p2k added a note

I'll try to send it to macports right now and remove it in the very minute they accept it, ok?

EDIT: You can monitor the process here:

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
@TheBlueMatt TheBlueMatt commented on the diff
((10 lines not shown))
+- Notification on incoming / outgoing transactions (compatible with FreeDesktop and other desktop notification schemes)
+- General interface improvements: Splash screen, tabbed interface
+- Overview page with current balance, unconfirmed balance, and such
+- Better transaction list with status icons, real-time filtering and a context menu
+- Asks for confirmation before sending coins, for your own safety
+- CSV export of transactions and address book (for Excel bookkeeping)
+- Shows alternative icon when connected to testnet, so you never accidentally send real coins during testing
+- Shows a progress bar on initial block download, so that you don't have to wonder how many blocks it needs to download to be up to date

H ow safely Is this done wrt people modifying nodes to report incorrect block counts?

@laanwj Owner
laanwj added a note

Would it not make sense to try to drop outliers just to keep people from complaining if they get odd progress bars?

@laanwj Owner
laanwj added a note

Maybe its just me, but id feel better if it at least took some effort to spoof, even if not much.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

I'm assuming no one cares about adding non mit pictures to bitcoin, but I might as well bring up the issue.


Also, it might just be me but I really hate having two sets of translations, is it not possible to redefine some translation functions and make a script to convert the format of the files?


Well look at me not paying attention, but I also meant for qt files to use _ so that translation programs will pick up strings from qtui as well (or did you do that too, im on my phone and the browser lags out if I try to load the diff tab).
Also I'm assuming you have some strings specific to qtui already, how were those handled in the existing translations for qt?


In URI handling, why does it not parse the message field?


Huh I don't see anything about a message field in the URL handling? What's it supposed to parse, and do with it?


re:images I dont have a problem with it but I thought id bring it up to make sure no one else had any problems with it.
Re:translations, it just bugs me that half the translations are in po format and the other half are in qt. That might cause issues later on if there are conflicting translations used by bitcoind. My question was whether or not it would be possible to modify the qt-generated code to use the_() function (which is mapped to tr) so that translation software would pick up the strings that qt needs as well as wx and bitcoind ones. That way all the translations would be in one place.


(ignore lukes tonal exponent crap)


BTW bitcoind doesn't use translation at all; I guess it'd need to link against libgettext to do that. Currently, without ui, _ is implemented as this (util.h):

#if !defined(QT_GUI) && !defined(GUI)
inline const char* _(const char* psz)
    return psz;

If this is kept the same, this means the po files can simply be removed when the wx UI goes away.


RE: message in bitcoin uri

It should be stored as a comment for that transaction. Actually, I'd like to have a editable comment field for every transaction (outgoing and incoming) so one could label individual transactions on a single address. I think the wallet and RPC already supports comments.


laanwj: Just a side note: I've written a python script that reads ts files and outputs unicode string tables for use in mac or iphone applications. I think it won't take me long to modify it so it outputs po files.


p2k: nice, if we decide to add gettext-based translation to bitcoind that will certainly come in handy


Meh, I dont care if all the translations are po or qt, but I would think it would be better to have them all together instead of split between two files.


yes., long as existing translations are ported over.

@gavinandresen gavinandresen merged commit f7f2a36 into bitcoin:master
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Something went wrong with that request. Please try again.