Index: sources/applicationcontroller.h =================================================================== diff -u -r5194f3afffb28dac90a7ca4153b6a0ca2f239387 -r9a3ee027dbc33f39ee7df2a9dc5a7897c6b1854d --- sources/applicationcontroller.h (.../applicationcontroller.h) (revision 5194f3afffb28dac90a7ca4153b6a0ca2f239387) +++ sources/applicationcontroller.h (.../applicationcontroller.h) (revision 9a3ee027dbc33f39ee7df2a9dc5a7897c6b1854d) @@ -18,36 +18,50 @@ #include // Project +#include "main.h" +#include "guiactions.h" #include "filehandler.h" #include "applicationpost.h" -#include "guicontroller.h" +#include "canbus/caninterface.h" + + +// define +#define _ApplicationController ApplicationController::I() + +// namespace using namespace Storage; using namespace Gui; +using namespace Can; - class ApplicationController : public QObject { Q_OBJECT - static ApplicationController *_instance; - ApplicationPost *_applicationPost = nullptr; - FileHandler *_fileHandler = nullptr; + FileHandler *_fileHandler = nullptr; + ApplicationPost *_applicationPost = nullptr; - QPointer _guiController; +SINGLETON_DECL(ApplicationController) +public: + bool init(); - explicit ApplicationController(QObject *parent = nullptr); +private: + void connection(); - bool event(QEvent *event) override; +private slots: // Should be private for thread safety and is connected internally. + void onActionRequest (GuiActionType vAction); // UI => HD/DG + void onActionConfirm (GuiActionType vAction, GuiActionInfo vInfo); // UI <= HD/DG -public: - static ApplicationController *I(); - bool init(); + void onActionCommand (GuiActionType vAction); // UI <= HD/DG + void onActionPerform (GuiActionType vAction, GuiActionInfo vInfo); // UI => HD/DG signals: - void quit(int retcode=0); + void didActionRequest(GuiActionType vAction ); // UI => HD/DG + void didActionConfirm(GuiActionType vAction, GuiActionInfo vInfo); // UI <= HD/DG -private slots: - void UiInitialized(bool ok); + void didActionCommand(GuiActionType vAction ); // UI <= HD/DG + void didActionPerform(GuiActionType vAction, GuiActionInfo vInfo); // UI => HD/DG + void quit(int retcode=0); + };