- 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
The language combo box is generated dynamically from the list of
available translations in the translations directory. This allows the
users to add their own translations without having to change the code.