X-Git-Url: https://gerrit.automotivelinux.org/gerrit/gitweb?a=blobdiff_plain;f=src%2Fqlibhomescreen.cpp;h=c67d408dd0300bd5fc7d96cfe729cfe44f9a4cf1;hb=refs%2Fchanges%2F09%2F18509%2F2;hp=cfeb9c1b9d902fe78c8f80526e8d999a84962642;hpb=59f49ec2538f22fbf752330f78413e445a3dc504;p=src%2Flibqthomescreen.git diff --git a/src/qlibhomescreen.cpp b/src/qlibhomescreen.cpp index cfeb9c1..c67d408 100644 --- a/src/qlibhomescreen.cpp +++ b/src/qlibhomescreen.cpp @@ -169,7 +169,7 @@ void QLibHomeScreen::set_event_handler(enum QEventType et, handler_fun f) * tapShortcut function * * #### Parameters - * - application_name : tapped application name + * - application_id : tapped application id * * #### Return * - None. @@ -178,5 +178,139 @@ 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 and display area + * + * #### Parameters + * - application_id : application id + * - area : display area liked {"area":"normal"} + * + * #### Return + * - None. + * + */ +void QLibHomeScreen::showWindow(QString application_id, json_object* area) +{ + mp_hs->showWindow(application_id.toStdString().c_str(), area); +} + +/** + * show application by application id and display area + * + * #### Parameters + * - application_id : application id + * - area : display area liked "normal" + * + * #### Return + * - None. + * + */ +void QLibHomeScreen::showWindow(QString application_id, QString area) +{ + if(area.isNull()) { + mp_hs->showWindow(application_id.toStdString().c_str(), nullptr); + } else { + struct json_object *j_obj = json_object_new_object(); + struct json_object *value = json_object_new_string(area.toStdString().c_str()); + json_object_object_add(j_obj, "area", value); + mp_hs->showWindow(application_id.toStdString().c_str(), j_obj); + } +} + +/** + * 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 reply to application + * + * #### Parameters + * - application_id : application id + * - reply : the reply contents + * + * #### Return + * - None. + * + */ +void QLibHomeScreen::replyShowWindow(QString application_id, json_object* reply) +{ + mp_hs->replyShowWindow(application_id.toStdString().c_str(), reply); +} + +/** + * send onscreen reply to application + * + * #### Parameters + * - application_id : application id + * - reply : the reply contents which can convert to json + * + * #### Return + * - None. + * + */ +void QLibHomeScreen::replyShowWindow(QString application_id, QString reply) +{ + if(reply.isNull()) + mp_hs->replyShowWindow(application_id.toStdString().c_str(), nullptr); + else + mp_hs->replyShowWindow(application_id.toStdString().c_str(), json_tokener_parse(reply.toStdString().c_str())); +} + +/** + * show information + * + * push information to HomeScreen + * + * #### Parameters + * - info : information that want to show + * + * #### 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 + * + * push notification to HomeScreen + * + * #### Parameters + * - icon : provided icon + * - text : text that want to show + * + * #### 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); +}