mirror of
https://github.com/QuasarApp/SimpleQmlNotify.git
synced 2025-04-26 13:44:34 +00:00
73 lines
1.9 KiB
C++
73 lines
1.9 KiB
C++
#ifndef QMLNOTIFYSERVICE_H
|
|
#define QMLNOTIFYSERVICE_H
|
|
#include "notifyservice_global.h"
|
|
|
|
#include "notificationservice.h"
|
|
|
|
class QQmlApplicationEngine;
|
|
inline void initSNotufyResources() { Q_INIT_RESOURCE(NotifyModule); }
|
|
|
|
/**
|
|
* Simple notify service for qml.
|
|
* Use :
|
|
* @code{cpp}
|
|
* #include <qmlnotifyservice.h>
|
|
* QmlNotificationService::init();
|
|
* auto service = QmlNotificationService::NotificationService::getService()
|
|
* service->setNotify("title", "text", "UrlOfImage", NotificationData::Normal)
|
|
* @endcode
|
|
*
|
|
* in qml :
|
|
* @code{qml}
|
|
* NotificationServiceView {
|
|
anchors.fill: parent;
|
|
}
|
|
* @endcode
|
|
* Questions
|
|
* CPP
|
|
* @code{cpp}
|
|
#include <qmlnotifyservice.h>
|
|
|
|
int main() {
|
|
QmlNotificationService::init();
|
|
auto service = QmlNotificationService::NotificationService::getService();
|
|
int questionCode = service->setQuestion("title", "some text");
|
|
|
|
QObject::connect(service, QmlNotificationService::NotificationService::questionCompleted,
|
|
[questionCode](bool accepted, int questionCode) {
|
|
if (accepted && code === questionCode) {
|
|
// your action here.
|
|
}
|
|
})
|
|
|
|
|
|
}
|
|
* @endcode
|
|
* QML
|
|
* @code{qml}
|
|
NotificationServiceView {
|
|
anchors.fill: parent;
|
|
}
|
|
|
|
readonly property int questionCode: 0;
|
|
|
|
questionCode = notificationService.setQuestion(qsTr("Remove %0 user").arg(userModel.userId),
|
|
qsTr("All saved data and records will be delete, Do you want continuee?"))
|
|
Connections {
|
|
target: notificationService
|
|
function onQuestionCompleted(accepted, code) {
|
|
if (accepted && code === privateRoot.questionCode) {
|
|
if (userModel)
|
|
backEnd.removeUser(userModel.userId)
|
|
}
|
|
}
|
|
}
|
|
* @endcode
|
|
*/
|
|
namespace QmlNotificationService {
|
|
bool NOTIFYSERVICESHARED_EXPORT init(QQmlApplicationEngine *engine);
|
|
}
|
|
|
|
|
|
#endif // QMLNOTIFYSERVICE_H
|