Failure to do so was causing a crash because port widget was trying to
disconnect signal from a non-existent port (corresponding to the current
index that was not reset) after the portgroup reconnected or another
portgroup came up and a port was selected in the port list.
This bug was a regression caused by the refactoring changes when
portwidget (and streamswidget) was extracted from portswindow.
This is done for all top level windows - ports, stats, logs
At startup, the local portgroup would automatically become current with
the result that the welcome page would not be visible. Not sure why but
an explicit setFocus of ports window seems to avoid it.
Results will be displayed in a message box - if we have a new version or
if we are running the latest version.
Update check at startup will show message box only once in 5 days, other
times it will be shown in the status bar. If we are already on latest
version, nothing is shown.
* Timestamp at millisec resolution
* Log level selection - Info by default
* Auto scroll control - enable(default)/disable
* Support copy (selected) logs to clipboard
* Support clear logs
* Annotate dock window title, if not on top (aka visible)
* Changed drone exit code from -1 to 1 'coz typically exit codes are
between 0 and 255
* Detect and report drone TCP port bind failure
* In all the following drone errors are reported (including previous
commits) -
* Drone already running (TCP port bind failure)
* Drone executable not found
* Packet.dll not found (Win32 only)
* The following conditions should NOT be reported
* Start/Stop Ostinato
* Stop before 5sec
* Stop after 5sec
Although streamStats docks are set to delete on close, this doesn't
happen immediately, so save layout state still sees them which leads
to a crash next time when application is started, state is restored and
docks are moved - so instead of close, delete them directly