From e570b445246b6abe555476a02f598a1e384e3035 Mon Sep 17 00:00:00 2001 From: MyoungJune Park Date: Mon, 1 Apr 2013 23:09:59 +0900 Subject: [PATCH] added setting-plugin-efl UG --- org.tizen.setting.xml | 5 +++++ packaging/org.tizen.setting.spec | 1 + resource/setting.cfg | 8 -------- setting-plugin/include/setting-plugin.h | 2 ++ setting-plugin/src/setting-plugin-main.c | 25 ++++++++++++------------- setting-plugin/src/setting-plugin.c | 6 ++++++ 6 files changed, 26 insertions(+), 21 deletions(-) diff --git a/org.tizen.setting.xml b/org.tizen.setting.xml index a420ab9..2510be8 100755 --- a/org.tizen.setting.xml +++ b/org.tizen.setting.xml @@ -68,5 +68,10 @@ + + ug-setting-plugin-efl.png + + + diff --git a/packaging/org.tizen.setting.spec b/packaging/org.tizen.setting.spec index f28adb4..a3a7b6d 100755 --- a/packaging/org.tizen.setting.spec +++ b/packaging/org.tizen.setting.spec @@ -422,6 +422,7 @@ sync mkdir -p /usr/ug/bin/ ln -sf /usr/bin/ug-client /usr/ug/bin/setting-font-efl ln -sf /usr/bin/ug-client /usr/ug/bin/setting-profile-efl +ln -sf /usr/bin/ug-client /usr/ug/bin/setting-plugin-efl %files -n org.tizen.setting %manifest settings.manifest diff --git a/resource/setting.cfg b/resource/setting.cfg index 2056bed..58cca5f 100755 --- a/resource/setting.cfg +++ b/resource/setting.cfg @@ -3,14 +3,6 @@ "name" : "IDS_ST_BODY_CONNECTIVITY", "menu" : [ { - "key_name" : "Test plugin", - "icon_path" : "/usr/apps/org.tizen.setting/res/icons/A01-1_icon_Wi-Fi.png", - "ug_args" : "setting-plugin-efl", - "pos" : 0, - "click_times" : 0, - "is_resetable" : 1 - }, - { "key_name" : "IDS_COM_BODY_WI_FI", "icon_path" : "/usr/apps/org.tizen.setting/res/icons/A01-1_icon_Wi-Fi.png", "ug_args" : "wifi-efl-UG", diff --git a/setting-plugin/include/setting-plugin.h b/setting-plugin/include/setting-plugin.h index c25b49e..fdc22a6 100755 --- a/setting-plugin/include/setting-plugin.h +++ b/setting-plugin/include/setting-plugin.h @@ -62,6 +62,8 @@ struct _SettingPluginUG { Elm_Genlist_Item_Class itc_layout; PluginNode* plugin_node; + // pkgname + char* pkgname; }; extern setting_view setting_view_plugin_main; diff --git a/setting-plugin/src/setting-plugin-main.c b/setting-plugin/src/setting-plugin-main.c index 839d0bf..0cf6616 100755 --- a/setting-plugin/src/setting-plugin-main.c +++ b/setting-plugin/src/setting-plugin-main.c @@ -57,21 +57,15 @@ static int setting_plugin_main_create(void *cb) snprintf(setBtnStr, sizeof(setBtnStr), "%s", (char *)dgettext("sys_string", "IDS_COM_BODY_BACK")); - #if 0 - ad->ly_main = setting_create_layout_navi_bar_genlist(ad->win_main_layout, - ad->win_get, - "TEST", setBtnStr, - NULL, - setting_plugin_main_click_softkey_back_cb, - NULL, ad, &scroller, - &(ad->navi_bar)); - #endif ///////////////////////////////////////////////////////////////////////////////////////////////// #if 1 - char* plugin_path = "/opt/apps/UBKFwQidax.AppSetting4/setting/setting.xml"; - SETTING_TRACE(" >> SELECTED plugin name : %s \n", plugin_path); + //char* plugin_path = "/opt/apps/UBKFwQidax.AppSetting4/setting/setting.xml"; + if (ad->pkgname == NULL) + goto errorhandle; - //setting_dbus_handler_init( ad ); + char plugin_path[1024]; + snprintf(plugin_path, 1024, "/opt/apps/%s/setting/setting.xml", ad->pkgname); + SETTING_TRACE(" >> SELECTED plugin name : %s \n", plugin_path); PluginNode* plugin_node = setting_plugin_create(ad->navi_bar, ad->win_get); plugin_node->win_main_layout = ad->win_main_layout; @@ -82,7 +76,9 @@ static int setting_plugin_main_create(void *cb) setting_dbus_handler_init( plugin_node ); plugin_node->plugin_path = strdup(plugin_path); - setting_plugin_load(plugin_node, (const char *)plugin_node->plugin_path); + int ret = setting_plugin_load(plugin_node, (const char *)plugin_node->plugin_path); + if (ret < 0) + goto errorhandle; ad->ly_main = plugin_node->ly_main; @@ -91,6 +87,9 @@ static int setting_plugin_main_create(void *cb) setting_view_plugin_main.is_create = 1; return SETTING_RETURN_SUCCESS; +errorhandle: + // resource free + return SETTING_RETURN_FAIL; } static int setting_plugin_main_destroy(void *cb) diff --git a/setting-plugin/src/setting-plugin.c b/setting-plugin/src/setting-plugin.c index 8212e4a..8982965 100755 --- a/setting-plugin/src/setting-plugin.c +++ b/setting-plugin/src/setting-plugin.c @@ -158,6 +158,12 @@ static void *setting_plugin_ug_on_create(ui_gadget_h ug, setting_retvm_if(pluginUG->win_main_layout == NULL, NULL, "cannot get main window "); + char *pkgname = NULL; + service_get_extra_data(service, "pkgname", &pkgname); + + if (pkgname) { + pluginUG->pkgname = strdup(pkgname); + } /* register view node table */ setting_view_node_table_intialize(); -- 2.7.4