summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorSungtaek Hong <sth253.hong@samsung.com>2017-11-29 20:21:14 +0900
committerSungtaek Hong <sth253.hong@samsung.com>2017-12-08 16:02:22 +0900
commit22c5f771be5f1dd7877f2484bde0bd3efdb3f782 (patch)
treeb944470a0cc36774c016a7bae9a403142c2cfe6f /src
parent3490da0fffa3aed3109e68d9d26539c446b3c28f (diff)
efl_ui_popup: apply new theme logic for efl_ui_popup
Diffstat (limited to 'src')
-rw-r--r--src/lib/elementary/efl_ui_popup.c12
-rw-r--r--src/lib/elementary/efl_ui_popup_alert.c57
-rw-r--r--src/lib/elementary/efl_ui_popup_anchor.c2
3 files changed, 51 insertions, 20 deletions
diff --git a/src/lib/elementary/efl_ui_popup.c b/src/lib/elementary/efl_ui_popup.c
index 7f8fbe133b..34d6732595 100644
--- a/src/lib/elementary/efl_ui_popup.c
+++ b/src/lib/elementary/efl_ui_popup.c
@@ -14,6 +14,8 @@
14#define MY_CLASS EFL_UI_POPUP_CLASS 14#define MY_CLASS EFL_UI_POPUP_CLASS
15#define MY_CLASS_NAME "Efl.Ui.Popup" 15#define MY_CLASS_NAME "Efl.Ui.Popup"
16 16
17static const char PART_NAME_BACKWALL[] = "backwall";
18
17static void 19static void
18_backwall_clicked_cb(void *data, 20_backwall_clicked_cb(void *data,
19 Eo *o EINA_UNUSED, 21 Eo *o EINA_UNUSED,
@@ -178,16 +180,22 @@ _efl_ui_popup_efl_object_constructor(Eo *obj, Efl_Ui_Popup_Data *pd)
178{ 180{
179 ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd, NULL); 181 ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd, NULL);
180 182
183 if (!elm_widget_theme_klass_get(obj))
184 elm_widget_theme_klass_set(obj, "popup");
181 obj = efl_constructor(efl_super(obj, MY_CLASS)); 185 obj = efl_constructor(efl_super(obj, MY_CLASS));
182 efl_canvas_object_type_set(obj, MY_CLASS_NAME); 186 efl_canvas_object_type_set(obj, MY_CLASS_NAME);
183 187
184 elm_widget_sub_object_parent_add(obj); 188 elm_widget_sub_object_parent_add(obj);
185 189
186 elm_widget_can_focus_set(obj, EINA_TRUE); 190 elm_widget_can_focus_set(obj, EINA_TRUE);
187 elm_layout_theme_set(obj, "popup", "base", "view"); 191 if (!elm_widget_theme_object_set(obj, wd->resize_obj,
192 elm_widget_theme_klass_get(obj),
193 elm_widget_theme_element_get(obj),
194 elm_widget_theme_style_get(obj)))
195 CRI("Failed to set layout!");
188 196
189 pd->backwall = edje_object_add(evas_object_evas_get(obj)); 197 pd->backwall = edje_object_add(evas_object_evas_get(obj));
190 elm_widget_theme_object_set(obj, pd->backwall, "popup", "base", "backwall"); 198 elm_widget_element_update(obj, pd->backwall, PART_NAME_BACKWALL);
191 evas_object_smart_member_add(pd->backwall, obj); 199 evas_object_smart_member_add(pd->backwall, obj);
192 evas_object_stack_below(pd->backwall, wd->resize_obj); 200 evas_object_stack_below(pd->backwall, wd->resize_obj);
193 201
diff --git a/src/lib/elementary/efl_ui_popup_alert.c b/src/lib/elementary/efl_ui_popup_alert.c
index 13e708f50b..39f7592f13 100644
--- a/src/lib/elementary/efl_ui_popup_alert.c
+++ b/src/lib/elementary/efl_ui_popup_alert.c
@@ -12,6 +12,12 @@
12#define MY_CLASS EFL_UI_POPUP_ALERT_CLASS 12#define MY_CLASS EFL_UI_POPUP_ALERT_CLASS
13#define MY_CLASS_NAME "Efl.Ui.Popup.Alert" 13#define MY_CLASS_NAME "Efl.Ui.Popup.Alert"
14 14
15static const char PART_NAME_BUTTON[] = "button";
16static const char PART_NAME_BUTTON_LAYOUT[EFL_UI_POPUP_ALERT_BUTTON_COUNT][15] =
17 {"button_layout1",
18 "button_layout2",
19 "button_layout3"};
20
15EOLIAN static void 21EOLIAN static void
16_efl_ui_popup_alert_elm_layout_sizing_eval(Eo *obj, Efl_Ui_Popup_Alert_Data *pd EINA_UNUSED) 22_efl_ui_popup_alert_elm_layout_sizing_eval(Eo *obj, Efl_Ui_Popup_Alert_Data *pd EINA_UNUSED)
17{ 23{
@@ -127,8 +133,9 @@ _efl_ui_popup_alert_button_set(Eo *obj, Efl_Ui_Popup_Alert_Data *pd, Efl_Ui_Popu
127 efl_del(pd->button[type]); 133 efl_del(pd->button[type]);
128 pd->button[type] = NULL; 134 pd->button[type] = NULL;
129 } 135 }
130 pd->button[type] = elm_button_add(obj); 136 pd->button[type] = efl_add(EFL_UI_BUTTON_CLASS, obj,
131 elm_object_text_set(pd->button[type], text); 137 elm_widget_element_update(obj, efl_added, PART_NAME_BUTTON),
138 efl_text_set(efl_added, text));
132 139
133 switch (type) 140 switch (type)
134 { 141 {
@@ -164,8 +171,10 @@ _efl_ui_popup_alert_button_set(Eo *obj, Efl_Ui_Popup_Alert_Data *pd, Efl_Ui_Popu
164 && pd->button[EFL_UI_POPUP_ALERT_BUTTON_NEGATIVE] 171 && pd->button[EFL_UI_POPUP_ALERT_BUTTON_NEGATIVE]
165 && pd->button[EFL_UI_POPUP_ALERT_BUTTON_USER]) 172 && pd->button[EFL_UI_POPUP_ALERT_BUTTON_USER])
166 { 173 {
167 pd->button_layout[EFL_UI_POPUP_ALERT_BUTTON_3] = elm_layout_add(obj); 174 pd->button_layout[EFL_UI_POPUP_ALERT_BUTTON_3]
168 elm_layout_theme_set(pd->button_layout[EFL_UI_POPUP_ALERT_BUTTON_3], "popup", "base", "button3"); 175 = efl_add(EFL_UI_LAYOUT_CLASS, obj,
176 elm_widget_element_update(obj, efl_added,
177 PART_NAME_BUTTON_LAYOUT[EFL_UI_POPUP_ALERT_BUTTON_3]));
169 efl_content_set(efl_part(pd->button_layout[EFL_UI_POPUP_ALERT_BUTTON_3], "elm.swallow.button1"), pd->button[EFL_UI_POPUP_ALERT_BUTTON_USER]); 178 efl_content_set(efl_part(pd->button_layout[EFL_UI_POPUP_ALERT_BUTTON_3], "elm.swallow.button1"), pd->button[EFL_UI_POPUP_ALERT_BUTTON_USER]);
170 efl_content_set(efl_part(pd->button_layout[EFL_UI_POPUP_ALERT_BUTTON_3], "elm.swallow.button2"), pd->button[EFL_UI_POPUP_ALERT_BUTTON_POSITIVE]); 179 efl_content_set(efl_part(pd->button_layout[EFL_UI_POPUP_ALERT_BUTTON_3], "elm.swallow.button2"), pd->button[EFL_UI_POPUP_ALERT_BUTTON_POSITIVE]);
171 efl_content_set(efl_part(pd->button_layout[EFL_UI_POPUP_ALERT_BUTTON_3], "elm.swallow.button3"), pd->button[EFL_UI_POPUP_ALERT_BUTTON_NEGATIVE]); 180 efl_content_set(efl_part(pd->button_layout[EFL_UI_POPUP_ALERT_BUTTON_3], "elm.swallow.button3"), pd->button[EFL_UI_POPUP_ALERT_BUTTON_NEGATIVE]);
@@ -174,8 +183,10 @@ _efl_ui_popup_alert_button_set(Eo *obj, Efl_Ui_Popup_Alert_Data *pd, Efl_Ui_Popu
174 else if (pd->button[EFL_UI_POPUP_ALERT_BUTTON_POSITIVE] 183 else if (pd->button[EFL_UI_POPUP_ALERT_BUTTON_POSITIVE]
175 && pd->button[EFL_UI_POPUP_ALERT_BUTTON_NEGATIVE]) 184 && pd->button[EFL_UI_POPUP_ALERT_BUTTON_NEGATIVE])
176 { 185 {
177 pd->button_layout[EFL_UI_POPUP_ALERT_BUTTON_2] = elm_layout_add(obj); 186 pd->button_layout[EFL_UI_POPUP_ALERT_BUTTON_2]
178 elm_layout_theme_set(pd->button_layout[EFL_UI_POPUP_ALERT_BUTTON_2], "popup", "base", "button2"); 187 = efl_add(EFL_UI_LAYOUT_CLASS, obj,
188 elm_widget_element_update(obj, efl_added,
189 PART_NAME_BUTTON_LAYOUT[EFL_UI_POPUP_ALERT_BUTTON_2]));
179 efl_content_set(efl_part(pd->button_layout[EFL_UI_POPUP_ALERT_BUTTON_2], "elm.swallow.button1"), pd->button[EFL_UI_POPUP_ALERT_BUTTON_POSITIVE]); 190 efl_content_set(efl_part(pd->button_layout[EFL_UI_POPUP_ALERT_BUTTON_2], "elm.swallow.button1"), pd->button[EFL_UI_POPUP_ALERT_BUTTON_POSITIVE]);
180 efl_content_set(efl_part(pd->button_layout[EFL_UI_POPUP_ALERT_BUTTON_2], "elm.swallow.button2"), pd->button[EFL_UI_POPUP_ALERT_BUTTON_NEGATIVE]); 191 efl_content_set(efl_part(pd->button_layout[EFL_UI_POPUP_ALERT_BUTTON_2], "elm.swallow.button2"), pd->button[EFL_UI_POPUP_ALERT_BUTTON_NEGATIVE]);
181 efl_content_set(efl_part(obj, "buttons"), pd->button_layout[EFL_UI_POPUP_ALERT_BUTTON_2]); 192 efl_content_set(efl_part(obj, "buttons"), pd->button_layout[EFL_UI_POPUP_ALERT_BUTTON_2]);
@@ -183,8 +194,10 @@ _efl_ui_popup_alert_button_set(Eo *obj, Efl_Ui_Popup_Alert_Data *pd, Efl_Ui_Popu
183 else if (pd->button[EFL_UI_POPUP_ALERT_BUTTON_NEGATIVE] 194 else if (pd->button[EFL_UI_POPUP_ALERT_BUTTON_NEGATIVE]
184 && pd->button[EFL_UI_POPUP_ALERT_BUTTON_USER]) 195 && pd->button[EFL_UI_POPUP_ALERT_BUTTON_USER])
185 { 196 {
186 pd->button_layout[EFL_UI_POPUP_ALERT_BUTTON_2] = elm_layout_add(obj); 197 pd->button_layout[EFL_UI_POPUP_ALERT_BUTTON_2]
187 elm_layout_theme_set(pd->button_layout[EFL_UI_POPUP_ALERT_BUTTON_2], "popup", "base", "button2"); 198 = efl_add(EFL_UI_LAYOUT_CLASS, obj,
199 elm_widget_element_update(obj, efl_added,
200 PART_NAME_BUTTON_LAYOUT[EFL_UI_POPUP_ALERT_BUTTON_2]));
188 efl_content_set(efl_part(pd->button_layout[EFL_UI_POPUP_ALERT_BUTTON_2], "elm.swallow.button1"), pd->button[EFL_UI_POPUP_ALERT_BUTTON_USER]); 201 efl_content_set(efl_part(pd->button_layout[EFL_UI_POPUP_ALERT_BUTTON_2], "elm.swallow.button1"), pd->button[EFL_UI_POPUP_ALERT_BUTTON_USER]);
189 efl_content_set(efl_part(pd->button_layout[EFL_UI_POPUP_ALERT_BUTTON_2], "elm.swallow.button2"), pd->button[EFL_UI_POPUP_ALERT_BUTTON_NEGATIVE]); 202 efl_content_set(efl_part(pd->button_layout[EFL_UI_POPUP_ALERT_BUTTON_2], "elm.swallow.button2"), pd->button[EFL_UI_POPUP_ALERT_BUTTON_NEGATIVE]);
190 efl_content_set(efl_part(obj, "buttons"), pd->button_layout[EFL_UI_POPUP_ALERT_BUTTON_2]); 203 efl_content_set(efl_part(obj, "buttons"), pd->button_layout[EFL_UI_POPUP_ALERT_BUTTON_2]);
@@ -192,30 +205,38 @@ _efl_ui_popup_alert_button_set(Eo *obj, Efl_Ui_Popup_Alert_Data *pd, Efl_Ui_Popu
192 else if (pd->button[EFL_UI_POPUP_ALERT_BUTTON_POSITIVE] 205 else if (pd->button[EFL_UI_POPUP_ALERT_BUTTON_POSITIVE]
193 && pd->button[EFL_UI_POPUP_ALERT_BUTTON_USER]) 206 && pd->button[EFL_UI_POPUP_ALERT_BUTTON_USER])
194 { 207 {
195 pd->button_layout[EFL_UI_POPUP_ALERT_BUTTON_2] = elm_layout_add(obj); 208 pd->button_layout[EFL_UI_POPUP_ALERT_BUTTON_2]
196 elm_layout_theme_set(pd->button_layout[EFL_UI_POPUP_ALERT_BUTTON_2], "popup", "base", "button2"); 209 = efl_add(EFL_UI_LAYOUT_CLASS, obj,
210 elm_widget_element_update(obj, efl_added,
211 PART_NAME_BUTTON_LAYOUT[EFL_UI_POPUP_ALERT_BUTTON_2]));
197 efl_content_set(efl_part(pd->button_layout[EFL_UI_POPUP_ALERT_BUTTON_2], "elm.swallow.button1"), pd->button[EFL_UI_POPUP_ALERT_BUTTON_USER]); 212 efl_content_set(efl_part(pd->button_layout[EFL_UI_POPUP_ALERT_BUTTON_2], "elm.swallow.button1"), pd->button[EFL_UI_POPUP_ALERT_BUTTON_USER]);
198 efl_content_set(efl_part(pd->button_layout[EFL_UI_POPUP_ALERT_BUTTON_2], "elm.swallow.button2"), pd->button[EFL_UI_POPUP_ALERT_BUTTON_POSITIVE]); 213 efl_content_set(efl_part(pd->button_layout[EFL_UI_POPUP_ALERT_BUTTON_2], "elm.swallow.button2"), pd->button[EFL_UI_POPUP_ALERT_BUTTON_POSITIVE]);
199 efl_content_set(efl_part(obj, "buttons"), pd->button_layout[EFL_UI_POPUP_ALERT_BUTTON_2]); 214 efl_content_set(efl_part(obj, "buttons"), pd->button_layout[EFL_UI_POPUP_ALERT_BUTTON_2]);
200 } 215 }
201 else if (pd->button[EFL_UI_POPUP_ALERT_BUTTON_POSITIVE]) 216 else if (pd->button[EFL_UI_POPUP_ALERT_BUTTON_POSITIVE])
202 { 217 {
203 pd->button_layout[EFL_UI_POPUP_ALERT_BUTTON_1] = elm_layout_add(obj); 218 pd->button_layout[EFL_UI_POPUP_ALERT_BUTTON_1]
204 elm_layout_theme_set(pd->button_layout[EFL_UI_POPUP_ALERT_BUTTON_1], "popup", "base", "button1"); 219 = efl_add(EFL_UI_LAYOUT_CLASS, obj,
220 elm_widget_element_update(obj, efl_added,
221 PART_NAME_BUTTON_LAYOUT[EFL_UI_POPUP_ALERT_BUTTON_1]));
205 efl_content_set(efl_part(pd->button_layout[EFL_UI_POPUP_ALERT_BUTTON_1], "elm.swallow.button1"), pd->button[EFL_UI_POPUP_ALERT_BUTTON_POSITIVE]); 222 efl_content_set(efl_part(pd->button_layout[EFL_UI_POPUP_ALERT_BUTTON_1], "elm.swallow.button1"), pd->button[EFL_UI_POPUP_ALERT_BUTTON_POSITIVE]);
206 efl_content_set(efl_part(obj, "buttons"), pd->button_layout[EFL_UI_POPUP_ALERT_BUTTON_1]); 223 efl_content_set(efl_part(obj, "buttons"), pd->button_layout[EFL_UI_POPUP_ALERT_BUTTON_1]);
207 } 224 }
208 else if (pd->button[EFL_UI_POPUP_ALERT_BUTTON_NEGATIVE]) 225 else if (pd->button[EFL_UI_POPUP_ALERT_BUTTON_NEGATIVE])
209 { 226 {
210 pd->button_layout[EFL_UI_POPUP_ALERT_BUTTON_1] = elm_layout_add(obj); 227 pd->button_layout[EFL_UI_POPUP_ALERT_BUTTON_1]
211 elm_layout_theme_set(pd->button_layout[EFL_UI_POPUP_ALERT_BUTTON_1], "popup", "base", "button1"); 228 = efl_add(EFL_UI_LAYOUT_CLASS, obj,
229 elm_widget_element_update(obj, efl_added,
230 PART_NAME_BUTTON_LAYOUT[EFL_UI_POPUP_ALERT_BUTTON_1]));
212 efl_content_set(efl_part(pd->button_layout[EFL_UI_POPUP_ALERT_BUTTON_1], "elm.swallow.button1"), pd->button[EFL_UI_POPUP_ALERT_BUTTON_NEGATIVE]); 231 efl_content_set(efl_part(pd->button_layout[EFL_UI_POPUP_ALERT_BUTTON_1], "elm.swallow.button1"), pd->button[EFL_UI_POPUP_ALERT_BUTTON_NEGATIVE]);
213 efl_content_set(efl_part(obj, "buttons"), pd->button_layout[EFL_UI_POPUP_ALERT_BUTTON_1]); 232 efl_content_set(efl_part(obj, "buttons"), pd->button_layout[EFL_UI_POPUP_ALERT_BUTTON_1]);
214 } 233 }
215 else if (pd->button[EFL_UI_POPUP_ALERT_BUTTON_USER]) 234 else if (pd->button[EFL_UI_POPUP_ALERT_BUTTON_USER])
216 { 235 {
217 pd->button_layout[EFL_UI_POPUP_ALERT_BUTTON_1] = elm_layout_add(obj); 236 pd->button_layout[EFL_UI_POPUP_ALERT_BUTTON_1]
218 elm_layout_theme_set(pd->button_layout[EFL_UI_POPUP_ALERT_BUTTON_1], "popup", "base", "button1"); 237 = efl_add(EFL_UI_LAYOUT_CLASS, obj,
238 elm_widget_element_update(obj, efl_added,
239 PART_NAME_BUTTON_LAYOUT[EFL_UI_POPUP_ALERT_BUTTON_1]));
219 efl_content_set(efl_part(pd->button_layout[EFL_UI_POPUP_ALERT_BUTTON_1], "elm.swallow.button1"), pd->button[EFL_UI_POPUP_ALERT_BUTTON_USER]); 240 efl_content_set(efl_part(pd->button_layout[EFL_UI_POPUP_ALERT_BUTTON_1], "elm.swallow.button1"), pd->button[EFL_UI_POPUP_ALERT_BUTTON_USER]);
220 efl_content_set(efl_part(obj, "buttons"), pd->button_layout[EFL_UI_POPUP_ALERT_BUTTON_1]); 241 efl_content_set(efl_part(obj, "buttons"), pd->button_layout[EFL_UI_POPUP_ALERT_BUTTON_1]);
221 } 242 }
@@ -230,13 +251,13 @@ _efl_ui_popup_alert_efl_object_constructor(Eo *obj,
230{ 251{
231 ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd, NULL); 252 ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd, NULL);
232 253
254 if (!elm_widget_theme_klass_get(obj))
255 elm_widget_theme_klass_set(obj, "popup.alert");
233 obj = efl_constructor(efl_super(obj, MY_CLASS)); 256 obj = efl_constructor(efl_super(obj, MY_CLASS));
234 efl_canvas_object_type_set(obj, MY_CLASS_NAME); 257 efl_canvas_object_type_set(obj, MY_CLASS_NAME);
235 258
236 elm_widget_sub_object_parent_add(obj); 259 elm_widget_sub_object_parent_add(obj);
237 260
238 elm_layout_theme_set(efl_super(obj, MY_CLASS), "popup", "base", "alert");
239
240 return obj; 261 return obj;
241} 262}
242 263
diff --git a/src/lib/elementary/efl_ui_popup_anchor.c b/src/lib/elementary/efl_ui_popup_anchor.c
index d1b5672743..2fb571a0b2 100644
--- a/src/lib/elementary/efl_ui_popup_anchor.c
+++ b/src/lib/elementary/efl_ui_popup_anchor.c
@@ -352,6 +352,8 @@ _efl_ui_popup_anchor_efl_object_constructor(Eo *obj,
352{ 352{
353 ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd, NULL); 353 ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd, NULL);
354 354
355 if (!elm_widget_theme_klass_get(obj))
356 elm_widget_theme_klass_set(obj, "popup.anchor");
355 obj = efl_constructor(efl_super(obj, MY_CLASS)); 357 obj = efl_constructor(efl_super(obj, MY_CLASS));
356 efl_canvas_object_type_set(obj, MY_CLASS_NAME); 358 efl_canvas_object_type_set(obj, MY_CLASS_NAME);
357 359