- Central widget no longer stacked. Views are added/removed to layout
to switch view
- Dock Widgets are globals with single instance of each type
- Both central views and dock widgets are just-in-time created saving
lots of memory
- Central widget no longer stacked. Views are added/removed to layout
to switch view
- Dock Widgets are globals with single instance of each type
- Both central views and dock widgets are just-in-time created saving
lots of memory
Plus a large number of other changes to allow for orderly shutdown of
objects without crashes or asserts. This is need for unit tests to
create/delete global state around every test.
This function is called automatically when a QSettings object is destroyed,
so is rarely needed to be called explicitly.
There are still some cases where
a QSettings object is passed-by-reference, so there I left the sync() calls as
it's unclear how permanent those objects are and if they'd call sync() before
application shutdown
Fixes bugs with savings settings for the window state, theme, UAS-connected view, and low-power mode.
Also removes some unneccesary logic that attempted to handled unclean shutdowns, which I haven't
been able to reproduce.
Subclass of QMessageBox which re-implements the static public
functions. There are two reasons for this:
1) The QMessageBox implementation on OSX does now show the title
string. This leads to message boxes which don't make much sense. So on
OSX we set title to text and text to informative text.
2) If parent is NULL, we set parent to MainWindow::instance. This
prevents message boxes which can go behind MainWindow
- Logging now always on to temp file
- User prompted to save temp file after disconnect
- Orphaned temp logs checked for on boot
- Logs saved to new save file location
- Log file starts/stops with first and last connnection