aboutsummaryrefslogtreecommitdiff
path: root/src/qt/bitcoin.cpp
AgeCommit message (Collapse)Author
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-22Route qDebug() messages to debug.logGavin Andresen
2013-08-22Rework when payment server is startedGavin Andresen
2013-08-22update SelectParamsFromCommandLine() handling/orderPhilip Kaufmann
- 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-07-31Remove #define loop from util.hGavin Andresen
Replace the loop macro with while (true). The #define caused problems for Qt.
2013-07-23Bitcoin-Qt: fix QApplication includes to match our include defaultsPhilip Kaufmann
- move all QApplication includes to top of included Qt headers - undef our loop macro where it would cause compilation errors otherwise
2013-06-16qt: allow user to choose data directoryWladimir J. van der Laan
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-04build: add global var for whether or not the gui is enabledCory Fields
2013-06-03Merge branch 'master' of git://github.com/bitcoin/bitcoin into prefsFixJonas Schnelli
Signed-off-by: Jonas Schnelli <jonas.schnelli@include7.ch> Conflicts: bitcoin-qt.pro
2013-06-03MaxOSX: settings fixes (#2371)Jonas Schnelli
- Launch-At-Startup implementation for mac - Remove "Window" tab in settings Signed-off-by: Jonas Schnelli <jonas.schnelli@include7.ch>
2013-06-02Bitcoin-Qt: setup testnet GUI directlyPhilip Kaufmann
- this directly sets up all GUI elements that have testnet special-casing without first setting up main net stuff and changing afterwards (titles, icons etc.) - also fixes 2 wrong icons shown during testnet usage on our toolbar
2013-06-02Merge pull request #2588 from Diapolo/GetBoolArgWladimir J. van der Laan
remove GetBoolArg() fDefault parameter defaulting to false
2013-06-01remove GetBoolArg() fDefault parameter defaulting to falsePhilip Kaufmann
- explicitly set the default of all GetBoolArg() calls - rework getarg_test.cpp and util_tests.cpp to cover this change - some indentation fixes - move macdockiconhandler.h include in bitcoin.cpp to the "our headers" section
2013-06-01Qt5 compatibilityWladimir J. van der Laan
This commit squashes all the changes in the Qt5 branch relative to master. Backward compatibility with Qt4 is retained. Original authors: - Philip Kaufmann <phil.kaufmann@t-online.de> - Jonas Schnelli <jonas.schnelli@include7.ch>
2013-05-04Merge pull request #2577 from gavinandresen/fee_bandaidGavin Andresen
Treat dust outputs as non-standard, un-hardcode TX_FEE constants
2013-05-04Merge pull request #2606 from gavinandresen/threadfixPieter Wuille
Exit cleanly if AppInit2 returns false
2013-05-03Un-hardcode TX_FEE constantsGavin Andresen
Allow setting of MIN_TX_FEE / MIN_RELAY_TX_FEE with -mintxfee / -mintxrelayfee Default values are the same (0.0001 BTC).
2013-05-03osx: show testnet icon in dock as early as possibleJonas Schnelli
A green testnet splashscreen with a normal, orange dock icon looks strange and can confuse users. Signed-off-by: Jonas Schnelli <jonas.schnelli@include7.ch>
2013-05-02Exit cleanly if AppInit2 returns falseGavin Andresen
Bitcoin-Qt could core dump if application initialization failed in certain ways. I double-fixed this: 1) qt/bitcoin.cpp now shuts down core threads cleanly if AppInit2 returns false 2) init.cpp now exits before StartNode() if strErrors is set (no reason to StartNode if we're just going to exit immediately anyway). Tested by triggering all of the various ways AppInit2 can fail, either by passing bogus command-line arguments or just recompiling tweaked code to simulate failure. This is a partial fix for #2480
2013-04-23Merge pull request #2526 from Diapolo/Qt_miscWladimir J. van der Laan
Bitcoin-Qt: misc small changes
2013-04-18Merge pull request #2525 from laanwj/2013_04_metatypeboolWladimir J. van der Laan
qt: register metatype for bool*
2013-04-17new splash screenJonas Schnelli
why: - the current splash-screen has no referring to official images on - https://en.bitcoin.it/wiki/Promotional_graphics - the current splash screen only exists in a low res jpg - current splash screen looks dark and "hackish" - new splash screen should generate positive, "trust-emotions". - new splash screen gives the user infos about the running client. - new splash screen can handle long messages (in a lot of - languages the text is cropped in current release) - new size (x2) 400x312 - contains textual information about the client - textinfos are dynamicly written to the pixmap when -testnet is switch on, the splashscreen will show the bitcoin logo in testnet-color (as well as a text [testnet]) example: https://dl.dropbox.com/u/7383846/new_bitcoin_splash.png
2013-04-14bitcoin: use static QApplication:: instead of app.Philip Kaufmann
2013-04-14qt: register metatype for bool*Wladimir J. van der Laan
This allows the bool* type to be passed between threads. Should solve issue #2402.
2013-04-03Have Qt poll for shutdown requested, the QT way.Gavin Andresen
2013-04-03Clean up shutdown processGavin Andresen
2013-04-03Shutdown cleanup prep-workGavin Andresen
Create a boost::thread_group object at the qt/bitcoind main-loop level that will hold pointers to all the main-loop threads. This will replace the vnThreadsRunning[] array. For testing, ported the BitcoinMiner threads to use its own boost::thread_group.
2013-04-02Bitcoin-Qt: only use qApp for Q(Core)Application::instance()Philip Kaufmann
2013-03-22Minimal architectural changes necessary to support multiple wallets in ↵Eric Lombrozo
bitcoin-qt - This commit is a minimal restructuring necessary to support multiple wallets in the UI. Please see multiwallet-qt.txt for details.
2013-03-17Bitcoin-Qt: massive header and cpp cleanupPhilip Kaufmann
- try to enforce the same style to all Qt related files - remove unneeded includes from the files - add missing Q_OBJECT, QT_BEGIN_NAMESPACE / QT_END_NAMESPACE - prepares for a pull-req to include Qt5 compatibility
2013-02-23Merge pull request #2299 from gavinandresen/localsocketuriWladimir J. van der Laan
Reimplement click-to-pay. Support OSX.
2013-02-17Improve block database load error reportingPieter Wuille
2013-02-12Reimplement click-to-pay links. Add OSX support.Gavin Andresen
Switch to using Qt's QLocalServer/QLocalSocket to handle bitcoin payment links (bitcoin:... URIs) Reason for switch: the boost::interprocess mechanism seemed flaky, and doesn't mesh as well with "The Qt Way" qtipcserver.cpp/h is replaced by paymentserver.cpp/h Click-to-pay now also works on OSX, with a custom Info.plist that registers Bitcoin-Qt as a handler for bitcoin: URLs and an event listener on the main QApplication that handles QFileOpenEvents (Qt translates 'url clicked' AppleEvents into QFileOpenEvents automagically).
2013-01-11add InitMessage() to noui and use debug.log for GUIPhilip Kaufmann
- this pull adds an InitMessage() function to noui.cpp, which outputs init messages to debug.log (this allows to remove some printf() calls from init.cpp) - change InitMessage() in bitcoin.cpp to also write init messages to debug.log to ensure nothting is missing in the log because of the removal of printf() calls in init.cpp
2013-01-06Bitcoin-Qt: give testnet a unique IPC message queue namePhilip Kaufmann
- this prevents an interference with the IPC message queue (which is used for URI processing) when running a testnet and mainnet instance in parallel - to check for testnet, I had to raise the ParseParameters() call in main() to the topmost position
2012-12-04rework ThreadSafeAskFee() / askFee() functionsPhilip Kaufmann
- remove unused parameter from ThreadSafeAskFee(), which also results in the removal of an orphan translation-string
2012-12-03Bitcoin-Qt: remove obsolete modal flag from GUI APIsPhilip Kaufmann
- as we (can) supply the CClientUIInterface::MODAL flag via the style parameter, we don't need a separate bool for checking the modality
2012-11-26update CClientUIInterface and remove orphan Wx stuffPhilip Kaufmann
- fix ThreadSafeMessageBox always displays error icon - allow to specify MSG_ERROR / MSG_WARNING or MSG_INFORMATION without a custom caption / title - allow to specify CClientUIInterface::ICON_ERROR / ICON_WARNING and ICON_INFORMATION (which is default) as message box icon - remove CClientUIInterface::OK from ThreadSafeMessageBox-calls, as the OK button will be set as default, if none is specified - prepend "Bitcoin - " to used captions - rename BitcoinGUI::error() -> BitcoinGUI::message() and add function documentation - change all style parameters and enum flags to unsigned - update code to use that new API - update Client- and WalletModel to use new BitcoinGUI::message() and rename the classes error() method into message() - include the possibility to supply the wanted icon for messages from Client- and WalletModel via "style" parameter
2012-10-04When datadir missing, show messagebox instead of printing error to stderrWladimir J. van der Laan
2012-08-24Abstract all IPC communication to qtipcserverLuke Dashjr
2012-08-01Bugfix: Correct English grammar regarding "'s"Luke Dashjr
2012-08-01Bugfix: Fix a variety of misspellingsLuke Dashjr
2012-07-23Fix Typofanquake
2012-07-17IPC-server hardening and updatePhilip Kaufmann
- add IMPLEMENT_RANDOMIZE_STACK for ipcThread() - log / print boost interprocess exceptions - use MAX_URI_LENGTH in guiconstants.h (also used in qrcodedialog.cpp) - remove unneeded includes and ipcShutdown() from qtipcserver.cpp - fix a small mem-leak by deleting mq before re-using it - make ipcThread() and ipcThread2() static functions - add some more comments
2012-07-09Fix Qt build on OSXGavin Andresen
Compiling boost::interprocess::message_queue against boost 1.50 macports with -arch i386 (how releases are built, for minimum download size and maximum compatibility) is failing: src/qt/qtipcserver.cpp:37: error: no matching function for call to ‘boost::interprocess::message_queue_t<boost::interprocess::offset_ptr<void, int, long unsigned int, 0u> >::timed_receive(char (*)[257], long unsigned int, size_t&, unsigned int&, boost::posix_time::ptime&)’ This is probably a boost or macports bug, but since interprocess::message_queue is only used for URI support, which isn't implemented on OSX anyway, I fixed the build by #ifdef'ing out that code.
2012-07-05Merge branch 'uri' of https://github.com/TheBlueMatt/bitcoinGavin Andresen
2012-06-15Revert "Disable bitcoin: URI handling on Windows for the 0.6 release"Matt Corallo
This reverts commit 7b90edb5a6cada7176012d09d748847b5f966585.
2012-06-14Show command line options as dialog when opened from debug windowWladimir J. van der Laan
On Linux/Mac the command-line options were printed to stderr when the button was pressed in the debug window, resulting in confusion. This is fixed in this commit by adding a separate method.
2012-06-12introduce a new StartShutdown() function, which starts a thread with ↵Philip Kaufmann
Shutdown() if no GUI is used and calls uiInterface.QueueShutdown() if a GUI is used / all direct uiInterface.QueueShutdown() calls are replaced with Shutdown() - this ensures a clean GUI shutdown, even when catching a SIGTERM and allows the BitcoinGUI destructor to get called (which fixes a tray-icon issue and keeps the tray-icon until Bitcoin-Qt exits)
2012-06-01move class HelpMessageBox to guiutil.cpp/.h / add button to show Bitcoin ↵Philip Kaufmann
command-line options (in RPC Console -> Information) / resize Debug window a little to allow for a non-breaking display of the welcome message with non-english translation