summaryrefslogtreecommitdiffstats
path: root/src/qlibhomescreen.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/qlibhomescreen.cpp')
-rw-r--r--src/qlibhomescreen.cpp133
1 files changed, 131 insertions, 2 deletions
diff --git a/src/qlibhomescreen.cpp b/src/qlibhomescreen.cpp
index aded770..f769469 100644
--- a/src/qlibhomescreen.cpp
+++ b/src/qlibhomescreen.cpp
@@ -178,5 +178,134 @@ void QLibHomeScreen::set_event_handler(enum QEventType et, handler_fun f)
void QLibHomeScreen::tapShortcut(QString application_id)
{
HMI_DEBUG("qlibhomescreen","tapShortcut %s", application_id.toStdString().c_str());
- this->mp_hs->tapShortcut(application_id.toStdString().c_str());
-} \ No newline at end of file
+ mp_hs->showWindow(application_id.toStdString().c_str(), nullptr);
+}
+
+/**
+ * show application by application id
+ *
+ * #### Parameters
+ * - application_id : application id
+ * - json : json parameters
+ *
+ * #### Return
+ * - None.
+ *
+ */
+void QLibHomeScreen::showWindow(QString application_id, json_object* json)
+{
+ mp_hs->showWindow(application_id.toStdString().c_str(), json);
+}
+
+/**
+ * show application by application id, json string
+ *
+ * #### Parameters
+ * - application_id : application id
+ * - json : json parameters
+ *
+ * #### Return
+ * - None.
+ *
+ */
+void QLibHomeScreen::showWindow(QString application_id, QString json)
+{
+ if(json.isNull())
+ mp_hs->showWindow(application_id.toStdString().c_str(), nullptr);
+ else
+ mp_hs->showWindow(application_id.toStdString().c_str(), json_tokener_parse(json.toStdString().c_str()));
+}
+
+/**
+ * hide application by application id
+ *
+ * #### Parameters
+ * - application_id : application id
+ *
+ * #### Return
+ * - None.
+ *
+ */
+void QLibHomeScreen::hideWindow(QString application_id)
+{
+ mp_hs->hideWindow(application_id.toStdString().c_str());
+}
+
+/**
+ * send onscreen or software keyboard message to application
+ *
+ * #### Parameters
+ * - application_id : application id
+ * - json : json parameters
+ *
+ * #### Return
+ * - None.
+ *
+ */
+void QLibHomeScreen::replyShowWindow(QString application_id, json_object* json)
+{
+ mp_hs->replyShowWindow(application_id.toStdString().c_str(), json);
+}
+
+/**
+ * send onscreen or software keyboard message to application
+ *
+ * #### Parameters
+ * - application_id : application id
+ * - json : json parameters
+ *
+ * #### Return
+ * - None.
+ *
+ */
+void QLibHomeScreen::replyShowWindow(QString application_id, QString json)
+{
+ if(json.isNull())
+ mp_hs->replyShowWindow(application_id.toStdString().c_str(), nullptr);
+ else
+ mp_hs->replyShowWindow(application_id.toStdString().c_str(), json_tokener_parse(json.toStdString().c_str()));
+}
+
+/**
+ * show information
+ *
+ * use libhomescreen api to push information to menubarApp
+ *
+ * #### Parameters
+ * - params : json parameters
+ *
+ * #### Return
+ * - None.
+ *
+ */
+void QLibHomeScreen::showInformation(QString info)
+{
+ struct json_object* j_obj = json_object_new_object();
+ struct json_object* val = json_object_new_string(info.toStdString().c_str());
+ json_object_object_add(j_obj, "info", val);
+
+ mp_hs->showInformation(j_obj);
+}
+
+/**
+ * show notification
+ *
+ * use libhomescreen api to push notification to menubarApp
+ *
+ * #### Parameters
+ * - params : json parameters
+ *
+ * #### Resturn
+ * - None.
+ *
+ */
+void QLibHomeScreen::showNotification(QString icon, QString text)
+{
+ struct json_object* j_obj = json_object_new_object();
+ struct json_object* val_icon = json_object_new_string(icon.toStdString().c_str());
+ struct json_object* val_text = json_object_new_string(text.toStdString().c_str());
+ json_object_object_add(j_obj, "icon", val_icon);
+ json_object_object_add(j_obj, "text", val_text);
+
+ mp_hs->showNotification(j_obj);
+}