Resolve "BEC Status Box for designer plugin"
Description
Takes !196 (merged) and fixes this issue.
BECDispatcher
is used in client and server, and name cannot be
hardcoded to "BECGuiClient" - BECDispatcher
is not a service, it is an utility class to have RedisConnector
working nicely with Qt.
Refactoring
The biggest change is commit 011103 , the comment in commit is copied below:
Inheriting from QTreeWidget causes havoc with display, also it is
important to parent items OR to give them a label otherwise it also
has display glitches.
Most of the time, composition has to be preferred over inheritance ;
inheritance is a question of behaviour - is the behaviour the same ?
Here, a widget is really not a BECConnector, but uses a BECConnector
(at least this is my understanding). Because a Widget and BECConnector
do not behave the same. It is easier, lighter to deal with single
inheritance.
The singleton usage is superfluous, since the underlying client is already
a singleton. Multiple BECConnector objects can be created, there won't
be more connections.
BECServiceStatusMixin has been removed in favor of the widget's own timer,
since it was causing "QObject::killTimer: Timers cannot be stopped from
another thread" errors (at least on my computer).
Also removes "redundant items check" ; where do those would come from?
Closes #245 (closed)