/*! * * Copyright (c) 2019-2020 Diality Inc. - All Rights Reserved. * \copyright \n * THIS CODE MAY NOT BE COPIED OR REPRODUCED IN ANY FORM, \n * IN PART OR IN WHOLE, \n * WITHOUT THE EXPLICIT PERMISSION OF THE COPYRIGHT OWNER. \n * * \file guicontroller.h * \date 2019/09/30 * \author Behrouz NematiPour * */ #pragma once // Qt #include #include // Project #include "guiactions.h" #define QML(qml) QStringLiteral("qrc:/" qml ".qml") namespace Gui { class GuiController : public QObject { Q_OBJECT QQuickView _viewer; void registerView(); static GuiController *_instance; explicit GuiController(QObject *parent = nullptr); public: static GuiController *I(); void init(); private slots: void onUiStatusChanged(QQuickView::Status vStatus); void actionEvaluation(GuiAction vAction); signals: void initialized(bool ok); void actionRequested(GuiAction vAction); void actionEvaluated(GuiAction vAction, bool vAccepted); }; }