Changeset View
Changeset View
Standalone View
Standalone View
src/qt/README.md
This directory contains the BitcoinQT graphical user interface (GUI). It uses the cross platform framework [QT](https://www1.qt.io/developers/). | This directory contains the BitcoinQT graphical user interface (GUI). It uses the cross platform framework [QT](https://www1.qt.io/developers/). | ||||
The current precise version for QT 5 is specified in [qt.mk](/depends/packages/qt.mk). | The current precise version for QT 5 is specified in [qt.mk](/depends/packages/qt.mk). | ||||
## Compile and run | ## Compile and run | ||||
See build instructions ([OSX](/doc/build-osx.md), [Windows](/doc/build-windows.md), [Unix](/doc/build-unix.md), etc). | See build instructions ([macOS](/doc/build-osx.md), [Windows](/doc/build-windows.md), [Unix](/doc/build-unix.md), etc). | ||||
To run: | To run: | ||||
```sh | ```sh | ||||
./src/qt/bitcoin-qt | ./src/qt/bitcoin-qt | ||||
``` | ``` | ||||
## Files and directories | ## Files and directories | ||||
▲ Show 20 Lines • Show All 44 Lines • ▼ Show 20 Lines | |||||
* UI elements like BitcoinAmountField, which inherit from QWidget. | * UI elements like BitcoinAmountField, which inherit from QWidget. | ||||
* `bitcoinstrings.cpp`: automatically generated | * `bitcoinstrings.cpp`: automatically generated | ||||
* `bitcoinunits.(h/cpp)`: BCH / mBCH / etc handling | * `bitcoinunits.(h/cpp)`: BCH / mBCH / etc handling | ||||
* `callback.h` | * `callback.h` | ||||
* `guiconstants.h`: UI colors, app name, etc | * `guiconstants.h`: UI colors, app name, etc | ||||
* `guiutil.h`: several helper functions | * `guiutil.h`: several helper functions | ||||
* `macdockiconhandler.(h/cpp)` | * `macdockiconhandler.(h/cpp)` | ||||
* `macdockiconhandler.(h/cpp)`: display notifications in OSX | * `macdockiconhandler.(h/cpp)`: display notifications in macOS | ||||
## Contribute | ## Contribute | ||||
See [CONTRIBUTING.md](/CONTRIBUTING.md) for general guidelines. Specifically for QT: | See [CONTRIBUTING.md](/CONTRIBUTING.md) for general guidelines. Specifically for QT: | ||||
* don't change `local/bitcoin_en.ts`; this happens [automatically](/doc/translation_process.md#writing-code-with-translations) | * don't change `local/bitcoin_en.ts`; this happens [automatically](/doc/translation_process.md#writing-code-with-translations) | ||||
## Using Qt Creator as IDE | ## Using Qt Creator as IDE | ||||
You can use Qt Creator as an IDE. This is especially useful if you want to change | You can use Qt Creator as an IDE. This is especially useful if you want to change | ||||
the UI layout. | the UI layout. | ||||
Download and install the community edition of [Qt Creator](https://www.qt.io/download/). | Download and install the community edition of [Qt Creator](https://www.qt.io/download/). | ||||
Uncheck everything except Qt Creator during the installation process. | Uncheck everything except Qt Creator during the installation process. | ||||
Instructions for OSX: | Instructions for macOS: | ||||
1. Make sure you installed everything through Homebrew mentioned in the [OSX build instructions](/docs/build-osx.md) | 1. Make sure you installed everything through Homebrew mentioned in the [macOS build instructions](/doc/build-osx.md) | ||||
2. Use `./configure` with the `--enable-debug` flag | 2. Use `./configure` with the `--enable-debug` flag | ||||
3. In Qt Creator do "New Project" -> Import Project -> Import Existing Project | 3. In Qt Creator do "New Project" -> Import Project -> Import Existing Project | ||||
4. Enter "bitcoin-qt" as project name, enter src/qt as location | 4. Enter "bitcoin-qt" as project name, enter src/qt as location | ||||
5. Leave the file selection as it is | 5. Leave the file selection as it is | ||||
6. Confirm the "summary page" | 6. Confirm the "summary page" | ||||
7. In the "Projects" tab select "Manage Kits..." | 7. In the "Projects" tab select "Manage Kits..." | ||||
8. Select the default "Desktop" kit and select "Clang (x86 64bit in /usr/bin)" as compiler | 8. Select the default "Desktop" kit and select "Clang (x86 64bit in /usr/bin)" as compiler | ||||
9. Select LLDB as debugger (you might need to set the path to your installation) | 9. Select LLDB as debugger (you might need to set the path to your installation) | ||||
10. Start debugging with Qt Creator (you might need to the executable to "bitcoin-qt" under "Run", which is where you can also add command line arguments) | 10. Start debugging with Qt Creator (you might need to the executable to "bitcoin-qt" under "Run", which is where you can also add command line arguments) |