Index: sources/gui/guicontroller.h =================================================================== diff -u -r5194f3afffb28dac90a7ca4153b6a0ca2f239387 -r9a3ee027dbc33f39ee7df2a9dc5a7897c6b1854d --- sources/gui/guicontroller.h (.../guicontroller.h) (revision 5194f3afffb28dac90a7ca4153b6a0ca2f239387) +++ sources/gui/guicontroller.h (.../guicontroller.h) (revision 9a3ee027dbc33f39ee7df2a9dc5a7897c6b1854d) @@ -15,38 +15,42 @@ // Qt #include -#include + // Project +#include "main.h" #include "guiactions.h" -#define QML(qml) QStringLiteral("qrc:/" qml ".qml") +// define +#define _GuiController GuiController::I() +// namespace namespace Gui { class GuiController : public QObject { Q_OBJECT - QQuickView _viewer; - void registerView(); - - static GuiController *_instance; - explicit GuiController(QObject *parent = nullptr); - +SINGLETON_DECL(GuiController) public: - static GuiController *I(); void init(); +private: + void connection(); -private slots: - void onUiStatusChanged(QQuickView::Status vStatus); - void actionEvaluation(GuiAction vAction); +public slots: + void doActionRequest (GuiActionType vAction); // UI => HD/DG + void doActionPerform (GuiActionType vAction, GuiActionInfo vInfo); // UI => HD/DG +private slots: // Should be private for thread safety and is connected internally. + void onActionConfirm (GuiActionType vAction, GuiActionInfo vInfo); // UI <= HD/DG + void onActionCommand (GuiActionType vAction); // UI <= HD/DG + signals: - void initialized(bool ok); + void didActionRequest(GuiActionType vAction ); // UI => HD/DG + void didActionConfirm(GuiActionType vAction, GuiActionInfo vInfo); // UI <= HD/DG - void actionRequested(GuiAction vAction); - void actionEvaluated(GuiAction vAction, bool vAccepted); + void didActionCommand(GuiActionType vAction ); // UI <= HD/DG + void didActionPerform(GuiActionType vAction, GuiActionInfo vInfo); // UI => HD/DG }; }