Simplify Modules management and core components
List of changes:
- Reordered
CMakeLists.txt
andSkywardHub.pro
- Updated CI script to set expiration time for artifacts
- Updated Module class and subclasses implementation:
- Function
toWidget()
is no more needed - Context menu creation has been reorganized: It is handled by the Module class code. Subclasses only need to add custom action to the
customContextMenuActions
variable once in the costructor
- Function
-
SkywardHubMainWindow
has been removed in favor of a simplier classWindow
that extendsQMainWindow
and handles widgets creation from xml object and its main child -
ModulesManager
has been removed -
SkywardHubCore
was treated as a singleton viaSkywardHubCoreProxy
and gave access toModulesManager
,EventHandler
andMessageBroker
. NowSkywardHubCoreProxy
has been removed andSkywardHubCore
made a singleton. Its purpose is now to manage Windows and handle load and save operations from the xml where the profile is saved -
ModulesList
,EventHandler
andMessageBroker
are now a singletons -
EventHandler
was used as an interface to provide QT slots for modules. This was unneccessary and removed - All the modules have been updated to follow all this changes
Edited by Alberto Nidasio