Some important (and less important) updates for the Qt UI
Core:
- use median filter (
CMedianFilter) for peer-reported reported number of blocks- this fixes problem that one misconfigured or malicious node can mess up progress bar
- implementation in
src/util.h - testcase in
src/test/util_tests.cpp
UI:
- Translation handling
- Include translations as resource, so that they are included in the executable. This saves a lot of hassle on installation (less files to worry about), and is similar to how other Qt applications do it
- In resources, use
nl_NLformat instead ofnl, so that the correct translation is chosen based on system locale automatically
- Improve send coins screen
- Add balance to remind users how much they can send
- No longer clear input when switching tabs; this is non-intuitive and can cause loss of work. Instead, add a "clear input" button.
Build system (qmake):
- Add
BOOST_LIB_SUFFIXoption to make it possible for distribution install scripts (such as Gentoo) to pass in alternative boost library version names without resorting to sed hacks - Factor out windows/mac specific include, lib paths so that they can be overridden (overall result is still the same)
- Dependency library locations can be customized with
BOOST_INCLUDE_PATH,BOOST_LIB_PATH,BDB_INCLUDE_PATH,BDB_LIB_PATH,OPENSSL_INCLUDE_PATHandOPENSSL_LIB_PATHrespectively - Build translations (.qm) automatically in make, no need to run lrelease separately anymore
Minor:
- Add
Q_OBJECTeverywhere it should be according to Qt rules (removes warnings when lupdate parses sources) - Use
USE_DBUSdefine instead ofQT_DBUSto switch Linux notification mode, to prevent conflicts in some Qt versions - Update
OTHER_FILESsection in Qt creator so that all documentation is shown, now that both projects have been fully merged