2 * Copyright (c) 2014 Samsung Electronics Co., Ltd All Rights Reserved
4 * Licensed under the Apache License, Version 2.0 (the License);
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
8 * http://www.apache.org/licenses/LICENSE-2.0
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an AS IS BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
17 #include <Elementary.h>
24 #include "AppCommon.h"
30 #define MAX_POPUP_TIME 10 /* seconds */
31 #define POPUP_ICON_SIZE 48
38 bool CPopup::Create(Evas_Object* base)
49 Evas_Object *popup, *label, *icon;
53 popup = elm_popup_add(base);
57 elm_object_style_set(popup, FBR_STYLE_LOADING_POPUP);
58 elm_popup_orient_set(popup, ELM_POPUP_ORIENT_TOP_RIGHT);
59 elm_popup_timeout_set(popup, MAX_POPUP_TIME);
60 evas_object_show(popup);
62 label = elm_label_add(popup);
66 elm_object_style_set(label, FBR_STYLE_LOADING_LABEL);
67 elm_object_text_set(label, _(FBR_TEXT_LOADING));
68 elm_object_content_set(popup, label);
69 scale = elm_config_scale_get();
71 icon = elm_icon_add(popup);
75 snprintf(buf, sizeof(buf), "%s/%s", IMAGEDIR, FBR_IMAGE_LOADING);
76 elm_image_file_set(icon, buf, NULL);
77 elm_image_animated_set(icon, EINA_TRUE);
78 elm_image_animated_play_set(icon, EINA_TRUE);
79 evas_object_size_hint_min_set(icon, POPUP_ICON_SIZE * scale,
80 POPUP_ICON_SIZE * scale);
81 elm_object_part_content_set(popup, FBR_POPUP_SWALLOW_ICON, icon);
83 m->transit = elm_transit_add();
87 elm_transit_object_add(m->transit, icon);
88 elm_transit_effect_rotation_add(m->transit, 0, 360);
89 elm_transit_duration_set(m->transit, 1);
90 elm_transit_repeat_times_set(m->transit, 5);
91 elm_transit_objects_final_state_keep_set(m->transit, EINA_TRUE);
92 elm_transit_go(m->transit);
97 evas_object_del(popup);
102 void CPopup::Destroy(void)
108 elm_transit_del(m->transit);
110 evas_object_del(m->popup);