Index: sources/gui/guicontroller.h =================================================================== diff -u -r5194f3afffb28dac90a7ca4153b6a0ca2f239387 -rc933552983a659ca4cc351ff4d43d07319adab1e --- sources/gui/guicontroller.h (.../guicontroller.h) (revision 5194f3afffb28dac90a7ca4153b6a0ca2f239387) +++ sources/gui/guicontroller.h (.../guicontroller.h) (revision c933552983a659ca4cc351ff4d43d07319adab1e) @@ -15,38 +15,39 @@ // Qt #include -#include + // Project -#include "guiactions.h" +#include "main.h" +#include "guiglobals.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 initConnections(); -private slots: - void onUiStatusChanged(QQuickView::Status vStatus); - void actionEvaluation(GuiAction vAction); + bool handleTransmit(GuiActionType vAction, const QVariantList &vData); -signals: - void initialized(bool ok); +public slots: + void doActionTransmit(GuiActionType vAction, const QVariantList &vData); // UI => HD/DG - void actionRequested(GuiAction vAction); - void actionEvaluated(GuiAction vAction, bool vAccepted); +private slots: // Should be private for thread safety and is connected internally. + void onActionReceive (GuiActionType vAction, const QVariantList &vData); // UI <= HD/DG + +signals: + void didActionReceive (GuiActionType vAction, const QVariantList &vData); // UI <= HD/DG + void didActionTransmit(GuiActionType vAction, const QVariantList &vData); // UI => HD/DG }; }