QtPy is a compatibility layer which allows to use the code written for
PyQt5 with any python Qt binding: PyQt4, PyQt5, pyside or pyside2.
Main differences in PyQt5:
- all widget classes are now in QtWidgets package, not QtGui;
- QString obsoleted by unicode (sip API 2);
- changed the way of signals connection.
Closes: #1191
- removed list <-> set conversion in __init__
- tuples instead of lists if changes aren't needed
- removed unnecessary variable redefinition in utils
- rewrote languagebox module a bit
- used BMConfigParser.safeGet.. methods instead of try .. except
- moved all config checks from class_sqlThread into helper_startup
- commented out initialization of settings which are then rewritten
by updateConfig()
- fixes errors introduced in the earlier refactoring
- more variables moved to state.py
- path finding functions moved to paths.py
- remembers IPv6 network unreachable (in the future can be used to skip
IPv6 for a while)
- got rid of shared config parser and made it into a singleton
- refactored safeConfigGetBoolean as a method of the config singleton
- refactored safeConfigGet as a method of the config singleton
- moved softwareVersion from shared.py into version.py
- moved some global variables from shared.py into state.py
- moved some protocol-specific functions from shared.py into protocol.py
- refactored to use the .ui file
- input logic change, address is always optional
- interactive input validation
- runs asynchronously to the main window
- address generator thread can now validate chans in addition to just
adding them