#include "krate-setup.h"
#include "widget.h"
-static void __launch_zone_app(zone_manager_h zone_mgr, const char* zone_name, app_control_h app_control)
+static void __launch_zone_app(zone_manager_h zone_mgr, const char *zone_name, app_control_h app_control)
{
zone_app_proxy_h zone_app;
char uri[PATH_MAX];
appdata_s *ad = (appdata_s *) user_data;
+ if (!strcmp(info, "Error")) {
+ ecore_main_loop_thread_safe_call_sync(zone_request_fail, ad);
+ return;
+ }
if (!strcmp(ad->mode, "create")) {
zone_manager_reset_zone_password(ad->zone_manager, ad->zone_name, ad->zone_password);
return EINA_FALSE;
}
-static void __welcome_cancel_cb(void *data, Evas_Object *obj, void *event_info)
+static void setup_wizard_cancel_cb(void *data, Evas_Object *obj, void *event_info)
{
appdata_s *ad = (appdata_s *)data;
return;
}
-static void __welcome_next_cb(void *data, Evas_Object *obj, void *event_info)
+static void setup_wizard_next_cb(void *data, Evas_Object *obj, void *event_info)
{
appdata_s *ad = (appdata_s *)data;
if (!strcmp(ad->mode, "create")) {
_create_security_view(ad);
} else {
- if (_send_zone_remove_request(ad) != 0)
- ui_app_exit();
+ if (_send_zone_remove_request(ad) != 0) {
+ ecore_main_loop_thread_safe_call_sync(zone_request_fail, ad);
+ return;
+ }
_create_setup_view(ad);
}
return ECORE_CALLBACK_RENEW;
}
+void *zone_request_fail(void *user_data)
+{
+ Evas_Object *popup = NULL;
+ appdata_s *ad = (appdata_s *)user_data;
+
+ if (!strcmp(ad->mode, "create"))
+ popup = _create_popup(ud.win, SETUP_POPUP_HEADER, BODY_ZONE_CREATE_ERROR);
+ else
+ popup = _create_popup(ud.win, SETUP_POPUP_HEADER, BODY_ZONE_REMOVE_ERROR);
+
+ Evas_Object *btn = elm_button_add(popup);
+ elm_object_style_set(btn, "popup");
+ elm_object_text_set(btn, OK_BUTTON);
+ evas_object_smart_callback_add(btn, "clicked", setup_wizard_cancel_cb, ad);
+ elm_object_part_content_set(popup, "button1", btn);
+ evas_object_show(popup);
+
+ return NULL;
+}
+
void _create_base_window(appdata_s *ad)
{
- Evas_Object *win;
Evas_Object *layout;
char edj_path[PATH_MAX] = "\0";
free(res_path);
/* Create main UI widget */
- win = _create_win(PACKAGE);
- ud.conform = _create_conformant(win);
+ ud.win = _create_win(PACKAGE);
+ ud.conform = _create_conformant(ud.win);
layout = _create_layout(ud.conform, NULL, NULL);
elm_object_content_set(ud.conform, layout);
ud.nf = elm_naviframe_add(layout);
elm_object_part_content_set(layout, "elm.swallow.content", ud.nf);
eext_object_event_callback_add(ud.nf, EEXT_CALLBACK_BACK, eext_naviframe_back_cb, NULL);
- evas_object_show(win);
+ evas_object_show(ud.win);
return;
}
elm_object_part_content_set(layout, "content_layout", welcome_layout);
- left_button = _create_button(layout, text[2], __welcome_cancel_cb, ad);
- right_button = _create_button(layout, text[3], __welcome_next_cb, ad);
+ left_button = _create_button(layout, text[2], setup_wizard_cancel_cb, ad);
+ right_button = _create_button(layout, text[3], setup_wizard_next_cb, ad);
_create_two_button_layout(layout, left_button, right_button);
* limitations under the License.
*
*/
-
#include "widget.h"
static void __win_delete_request_cb(void *data , Evas_Object *obj , void *event_info)
elm_app_base_scale_set(1.8);
- win = elm_win_util_standard_add(package, package);
+ win = elm_win_add(NULL, package, ELM_WIN_BASIC);
+ elm_win_indicator_mode_set(win, ELM_WIN_INDICATOR_SHOW);
+
elm_win_conformant_set(win, EINA_TRUE);
elm_win_autodel_set(win, EINA_TRUE);
elm_win_alpha_set(win, EINA_TRUE);
evas_object_show(entry);
return entry;
}
+
+Evas_Object *_create_popup(Evas_Object *parent, const char *title, const char *body)
+{
+ Evas_Object *popup = elm_popup_add(parent);
+
+ evas_object_size_hint_weight_set(popup, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+ elm_object_style_set(popup, "default");
+ elm_object_part_text_set(popup, "title,text", title);
+ elm_object_item_part_text_translatable_set(popup, "title,text", EINA_TRUE);
+ elm_object_text_set(popup, body);
+
+ return popup;
+}