#include "Debug.h"
+#include <string>
#include <assert.h>
#include <iostream>
#include <stdexcept>
#include "w-input-stt-ise.h"
#include "w-input-stt-voice.h"
+using namespace std;
+
extern Evas_Object *g_setting_window;
MoreOption::MoreOption(Evas_Object *naviframe, void* voicedata)
: nf(naviframe)
- , more_option_layout (NULL)
- , item (NULL)
- , option_opened (EINA_FALSE)
+ , more_option_layout(NULL)
+ , item(NULL)
+ , option_opened(EINA_FALSE)
, voicedata(voicedata) {
-
/** todo. implement constructor */
}
MoreOption::~MoreOption() {
-
/** todo. implement destructor */
// if(more_option_layout)
// evas_object_del(more_option_layout);
-
}
void MoreOption::Create() {
-
try {
AddLayout();
AddMorePage();
}
void MoreOption::AddLayout() {
-
/** validation */
if(!nf)
PRINTFUNC(DLOG_ERROR, "Invalid naviframe.");
evas_object_smart_callback_add(more_option_layout, "more,option,opened",
[](void *data, Evas_Object *obj, void *event_info){
-
PRINTFUNC(DLOG_DEBUG, "more option is opened!!! \n");
if(!data) return;
}
opt->option_opened = EINA_TRUE;
-
}, this);
evas_object_smart_callback_add(more_option_layout, "more,option,closed",
[](void *data, Evas_Object *obj, void *event_info){
-
PRINTFUNC(DLOG_DEBUG, "more option is closed!!! \n");
MoreOption *opt = (MoreOption *)data;
activate_circle_scroller_for_stt_textbox(vd, EINA_TRUE);
opt->option_opened = EINA_FALSE;
-
-
}, this);
evas_object_show(more_option_layout);
-
-
}
void MoreOption::SetContentLayout(Evas_Object *content) {
-
/**
* Set content layout
*
elm_object_part_content_set(more_option_layout, "elm.swallow.content", content);
Elm_Object_Item *nit = NULL;
- nit = elm_naviframe_item_push(nf, NULL, NULL, NULL, more_option_layout, "empty");
+ const char *item_style = NULL;
+ if (_WEARABLE)
+ item_style = "empty";
+ nit = elm_naviframe_item_push(nf, NULL, NULL, NULL, more_option_layout, item_style);
elm_naviframe_item_title_enabled_set(nit, EINA_FALSE, EINA_FALSE);
elm_naviframe_item_pop_cb_set(nit,
vd->sttmanager->GetCurrent() == STT_STATE_READY) {
PRINTFUNC(DLOG_DEBUG, "STT_STATE_CREATED || STT_STATE_READY\n");
- } else if(vd->sttmanager->GetCurrent() == STT_STATE_RECORDING) {
+ } else if (vd->sttmanager->GetCurrent() == STT_STATE_RECORDING) {
PRINTFUNC(DLOG_DEBUG, "STT_STATE_RECORDING\n");
vd->effector->Stop();
try{
PRINTFUNC(DLOG_ERROR, "reason : %s", e.what());
}
- } else if(vd->sttmanager->GetCurrent() == STT_STATE_PROCESSING) {
+ } else if (vd->sttmanager->GetCurrent() == STT_STATE_PROCESSING) {
PRINTFUNC(DLOG_DEBUG, "STT_STATE_RECORDING\n");
try{
vd->sttmanager->Cancel();
vd->sttmanager->GetCurrent() == STT_STATE_READY) {
PRINTFUNC(DLOG_DEBUG, "STT_STATE_CREATED || STT_STATE_READY\n");
- } else if(vd->sttmanager->GetCurrent() == STT_STATE_RECORDING) {
+ } else if (vd->sttmanager->GetCurrent() == STT_STATE_RECORDING) {
PRINTFUNC(DLOG_DEBUG, "STT_STATE_RECORDING\n");
vd->effector->Stop();
try{
PRINTFUNC(DLOG_ERROR, "reason : %s", e.what());
}
- } else if(vd->sttmanager->GetCurrent() == STT_STATE_PROCESSING) {
+ } else if (vd->sttmanager->GetCurrent() == STT_STATE_PROCESSING) {
PRINTFUNC(DLOG_DEBUG, "STT_STATE_RECORDING\n");
try{
vd->sttmanager->Cancel();
void MoreOption::Update()
{
+ char lang[6] = {0, };
+ strncpy(lang, ((VoiceData *)voicedata)->kbd_lang , 5);
- char lang[6] = {0,};
- strncpy(lang, ((VoiceData *)voicedata)->kbd_lang , 5);
-
- char* display_lang = get_lang_label(lang);
- eext_more_option_item_part_text_set(item, "selector,sub_text", display_lang);
-
+ const char* display_lang = get_lang_label(lang);
+ eext_more_option_item_part_text_set(item, "selector,sub_text", display_lang);
}
-
Evas_Object* MoreOption::AddLanguageIcon(Evas_Object *parent) {
-
Evas_Object *icon = elm_image_add(parent);
if (!icon) {
PRINTFUNC(DLOG_ERROR, "It's failed to add image.");
}
- std::string res_path;
- char *tmp_path = app_get_resource_path();
- if (tmp_path) {
- res_path = tmp_path;
- free(tmp_path);
- }
+ string res_path = get_resource_path();
+ if (_WEARABLE)
+ res_path = res_path + "wearable/";
+ else if (_TV)
+ res_path = res_path + "tv/";
+ else
+ res_path = res_path + "mobile/";
std::string image_path = res_path + "images/prompt_ic_languages.png";
return icon;
}
-
void MoreOption::AddMorePage() {
-
Evas_Object *img;
item = eext_more_option_item_append(more_option_layout);
evas_object_smart_callback_add(more_option_layout, "item,clicked",
[](void *data, Evas_Object *obj, void *event_info)
{
-
PRINTFUNC(DLOG_DEBUG, "item,clicked");
if(g_setting_window == NULL)
create_setting_window(obj);
- },NULL);
+ }, NULL);
evas_object_smart_callback_add(more_option_layout, "item,selected",
[](void *data, Evas_Object *obj, void *event_info)
{
-
PRINTFUNC(DLOG_DEBUG, "item,selected");
-
- Eext_Object_Item *selected_item = (Eext_Object_Item *)event_info;
-
- //for custom accessibility
- if (elm_config_access_get())
- {
- Evas_Object *panel = elm_object_part_content_get(obj, "elm.swallow.right");
- if (!panel) return;
-
- Evas_Object *rotary_selector = elm_object_content_get(panel);
- if (!rotary_selector) return;
-
- Evas_Object *content = (Evas_Object *)edje_object_part_object_get(elm_layout_edje_get(rotary_selector), "content");
- if (!content) return;
-
- Evas_Object *content_access = elm_access_object_get(content);
- if (!content_access) return;
-
- if (eext_more_option_item_part_text_get(selected_item, "selector,main_text"))
- {
- std::string text;
- if(eext_more_option_item_part_text_get(selected_item, "selector,main_text"))
- text = text + std::string(eext_more_option_item_part_text_get(selected_item, "selector,main_text")) + " ";
-
- if(eext_more_option_item_part_text_get(selected_item, "selector,main_text"))
- text = text + std::string(eext_more_option_item_part_text_get(selected_item, "selector,sub_text"));
-
- elm_access_info_set(content_access, ELM_ACCESS_INFO, text.c_str());
- }
- }
- },NULL);
-
-
+ }, NULL);
}