From 503c72aa7024dbbd304bda93a0c9dde38ee9ffd9 Mon Sep 17 00:00:00 2001 From: wang_zhiqiang Date: Tue, 28 May 2019 11:10:40 +0800 Subject: [PATCH] change register/update shortcut Change-Id: Iabc9ca70bd57517333c7871c4df1092342697b69 --- src/qlibhomescreen.cpp | 15 ++++++++++----- src/qlibhomescreen.h | 5 +++-- 2 files changed, 13 insertions(+), 7 deletions(-) diff --git a/src/qlibhomescreen.cpp b/src/qlibhomescreen.cpp index c0c6048..095c4a7 100644 --- a/src/qlibhomescreen.cpp +++ b/src/qlibhomescreen.cpp @@ -390,7 +390,7 @@ void QLibHomeScreen::setQuickWindow(QQuickWindow *qw) * shortcut_name : "Dashboard" * positon : 1~3, from left to right on homescreen */ -void QLibHomeScreen::registerShortcut(QString shortcut_id, QString shortcut_name, QString position) +int QLibHomeScreen::registerShortcut(QString shortcut_id, QString shortcut_name, QString position) { struct json_object* j_obj = json_object_new_object(); struct json_object* val_id = json_object_new_string(shortcut_id.toStdString().c_str()); @@ -400,20 +400,20 @@ void QLibHomeScreen::registerShortcut(QString shortcut_id, QString shortcut_name json_object_object_add(j_obj, _KEY_SHORTCUT_NAME, val_name); json_object_object_add(j_obj, _KEY_POSITION, val_position); - mp_hs->registerShortcut(j_obj); + return mp_hs->registerShortcut("homescreen", j_obj); } /** * shortcut_id : "shocut_id1,shocut_id2,shocut_id3" * shortcut_name : "shortcut_name1,shortcut_name2,shortcut_name3" */ -void QLibHomeScreen::updateShortcut(QString shortcut_id, QString shortcut_name) +int QLibHomeScreen::updateShortcut(QString application_id, QString shortcut_id, QString shortcut_name) { QStringList id = shortcut_id.split(','); QStringList name = shortcut_name.split(','); if(id.size() == 0 || id.size() != name.size()) { HMI_NOTICE("qlibhomescreen","input parameters error."); - return; + return -1; } // make json contents @@ -426,5 +426,10 @@ void QLibHomeScreen::updateShortcut(QString shortcut_id, QString shortcut_name) } struct json_object* push_obj = json_object_new_object(); json_object_object_add(push_obj, _KEY_SHORTCUT, arr_obj); - mp_hs->updateShortcut(push_obj); + return mp_hs->updateShortcut(application_id.toStdString().c_str(), push_obj); +} + +int QLibHomeScreen::updateShortcut(QString application_id, struct json_object* obj) +{ + return mp_hs->updateShortcut(application_id.toStdString().c_str(), obj); } \ No newline at end of file diff --git a/src/qlibhomescreen.h b/src/qlibhomescreen.h index 11970e2..876ce38 100644 --- a/src/qlibhomescreen.h +++ b/src/qlibhomescreen.h @@ -63,8 +63,9 @@ public: Q_INVOKABLE void hideWindow(QString application_id); Q_INVOKABLE void replyShowWindow(QString application_id, QString reply); Q_INVOKABLE void getRunnables(void); - Q_INVOKABLE void registerShortcut(QString shortcut_id, QString shortcut_name, QString position); - Q_INVOKABLE void updateShortcut(QString shortcut_id, QString shortcut_name); + Q_INVOKABLE int registerShortcut(QString shortcut_id, QString shortcut_name, QString position); + Q_INVOKABLE int updateShortcut(QString application_id, QString shortcut_id, QString shortcut_name); + int updateShortcut(QString application_id, struct json_object* obj); void registerCallback( void (*event_cb)(const std::string& event, struct json_object* event_contents), void (*reply_cb)(struct json_object* reply_contents), -- 2.16.6