X-Git-Url: https://gerrit.automotivelinux.org/gerrit/gitweb?a=blobdiff_plain;f=src%2Fqlibhomescreen.cpp;fp=src%2Fqlibhomescreen.cpp;h=b9298f123b19f95d97ec6dd06e78d2326050a6a8;hb=e3a30cd17ab055ed495d81a7f65314a6cc688493;hp=0000000000000000000000000000000000000000;hpb=49493cfff8bb30de181a4830885059f85dae44f1;p=src%2Flibqthomescreen.git diff --git a/src/qlibhomescreen.cpp b/src/qlibhomescreen.cpp new file mode 100644 index 0000000..b9298f1 --- /dev/null +++ b/src/qlibhomescreen.cpp @@ -0,0 +1,79 @@ +/* + * Copyright (c) 2017 TOYOTA MOTOR CORPORATION + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#include "qlibhomescreen.h" +#include +#include +using namespace std; + +#define _POPUPREPLY "on_screen_reply" +#define _REQ_POPUP_MESSAGE "on_screen_message" +#define _TAPSHORTCUT "tap_shortcut" +#define _KEY_DATA "data" +#define _KEY_APPLICATION_DATA "application_name" +#define _KEY_REPLY_MESSAGE "reply_message" +#define _KEY_REQUEST_MESSAGE "display_message" + +static QLibHomeScreen* myThis; + +// Note: qlibhomescreen will be integrated to libqtappfw + +QLibHomeScreen::QLibHomeScreen(QObject *parent) : + QObject(parent), + mp_hs(NULL) +{ + +} + +QLibHomeScreen::~QLibHomeScreen() +{ + if (mp_hs != NULL) { + delete mp_hs; + } +} + +void QLibHomeScreen::init(int port, const QString &token) +{ + string ctoken = token.toStdString(); + mp_hs = new LibHomeScreen(); + mp_hs->init(port, ctoken.c_str()); + + myThis = this; +} + +int QLibHomeScreen::onScreenMessage(const QString &message) +{ + string str = message.toStdString(); + return mp_hs->onScreenMessage(str.c_str()); +} + +int QLibHomeScreen::subscribe(const QString &evetName) +{ + string str = evetName.toStdString(); + return mp_hs->subscribe(str); +} + +int QLibHomeScreen::unsubscribe(const QString &evetName) +{ + string str = evetName.toStdString(); + return mp_hs->unsubscribe(str); +} + +void QLibHomeScreen::set_event_handler(enum QEventType et, handler_fun f) +{ + LibHomeScreen::EventType hs_et = (LibHomeScreen::EventType)et; + return this->mp_hs->set_event_handler(hs_et, std::move(f)); +} \ No newline at end of file