An open API service indexing awesome lists of open source software.

https://github.com/quasarapp/simpleqmlnotify

Simple Qml notification service for qml applications.
https://github.com/quasarapp/simpleqmlnotify

notify qml

Last synced: 11 months ago
JSON representation

Simple Qml notification service for qml applications.

Awesome Lists containing this project

README

          

# SimpleQmlNotify
Simple Qml notification service for qml applications.

## Include

### For cmake projects
#### The cmake build do not required Qt libraries.

* cd yourRepo
* git submodule add https://github.com/QuasarApp/SimpleQmlNotify.git # add the repository of QSimpleQmlNotify into your repo like submodule
* git submodule update --init --recursive
* Include in your CMakeLists.txt file the main CMakeLists.txt file of QSimpleQmlNotify library
```cmake
include(QmlNotyfyService)
```
* Rebuild yuor project

### For other build system

* cd yourRepo
* git submodule add https://github.com/QuasarApp/SimpleQmlNotify.git # add the repository of QSimpleQmlNotify into your repo like submodule
* git submodule update --init --recursive
* Add the rule for build QmlNotyfyService
* Add INCLUDEPATH and LIBS for your build system
* Rebuild yuor project

## Using

### Notification

#### CPP
```cpp
#include

int main() {
QmlNotificationService::init();
auto service = QmlNotificationService::NotificationService::getService();
service->setNotify("title", "text", "UrlOfImage", NotificationData::Normal);
}

```

#### QML

```qml
import NotifyModule 1.0

NotificationServiceView {
anchors.fill: parent;
}

```

### Questions

#### CPP
```cpp
#include

int main() {
QmlNotificationService::init();
auto service = QmlNotificationService::NotificationService::getService();

QmlNotificationService::Listner listner = [] (bool accepted) {
// your action here.
};

service->setQuestion(listner, "title", "some text");


}

```

#### QML

```qml
import NotifyModule 1.0

NotificationServiceView {
anchors.fill: parent;
}

Item {

notificationService.setQuestion(this, "onQuestionCompleted", qsTr("Remove %0 user").arg(userModel.userId),
qsTr("All saved data and records will be delete, Do you want continuee?"));

function onQuestionCompleted(accepted) {
// your action here.
}
}

```
### Include translations

For include translations into your projects you need to use the QuasarAppUtils::Locales class. See oficiald [documentation](https://quasarapp.ddns.net:3031/docs/QuasarApp/QuasarAppLib/latest/classQuasarAppUtils_1_1Locales.html)

```cpp
if(!QuasarAppUtils::Locales::init(locale, {":/qmlNotify_languages/"})) {
QuasarAppUtils::Params::log("Error load language : " , QuasarAppUtils::Error);
}
```

Or you can manually load needed qm file.
All qm files located in qmlNotify_languages folder.