This directory contains the BitcoinQT graphical user interface (GUI). It uses the cross-platform framework Qt.
The current precise version for Qt 5 is specified in qt.mk.
See build instructions (macOS, Windows, Unix, etc).
To run:
./src/qt/bitcoin-qt
Contains Designer UI files. They are created with Qt Creator, but can be edited using any text editor.
Contains translations. They are periodically updated. The process is described here.
Resources such as the icon.
Tests.
Represents the main window of the Bitcoin UI.
The model. When it has a corresponding controller, it generally inherits from QAbstractTableModel. Models that are used by controllers as helpers inherit from other Qt classes like QValidator.
ClientModel is used by the main application bitcoingui
and several models like peertablemodel
.
A controller. :NAMEpage.cpp
generally includes :NAMEmodel.h
and forms/:NAME.page.ui
with a similar :NAME
.
Various dialogs, e.g. to open a URL. Inherit from QDialog.
Used to process BIP21 payment URI requests. Also handles URI based application switching (e.g. when following a bitcoin:… link from a browser).
Represents the view to a single wallet.
bitcoinstrings.cpp
: automatically generatedbitcoinunits.(h/cpp)
: BTC / mBTC / etc handlingcallback.h
guiconstants.h
: UI colors, app name, etcguiutil.h
: several helper functionsmacdockiconhandler.(h/mm)
: macOS dock icon handlermacnotificationhandler.(h/mm)
: display notifications in macOSSee CONTRIBUTING.md for general guidelines. Specifically for Qt:
local/bitcoin_en.ts
; this happens automaticallyYou can use Qt Creator as an IDE. This is especially useful if you want to change the UI layout.
Download and install the community edition of Qt Creator. Uncheck everything except Qt Creator during the installation process.
Instructions for macOS:
./configure
with the --enable-debug
flag