Input_Picker_Layout::Input_Picker_Layout(Evas_Object* ewkView)
: m_ewkView(ewkView)
- , conformant(0)
, popup(0)
, layout(0)
, datePicker(0)
m_pickerLayout = new Input_Picker_Layout(m_ewkView);
- Evas_Object* parent = parentWindow();
- m_pickerLayout->popup = elm_popup_add(parent);
+ m_pickerLayout->popup = elm_popup_add(elm_object_parent_widget_get(m_ewkView));
elm_object_part_text_set(m_pickerLayout->popup, "title,text", "Select color");
#if ENABLE(TIZEN_HW_MORE_BACK_KEY)
void InputPicker::createDatetimePopup(const char* title, struct tm* currentTime)
{
- Evas_Object* parent = parentWindow();
- m_pickerLayout->popup = elm_popup_add(parent);
+ m_pickerLayout->popup = elm_popup_add(elm_object_parent_widget_get(m_ewkView));
evas_object_size_hint_weight_set(m_pickerLayout->popup, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
elm_object_part_text_set(m_pickerLayout->popup, "title,text", title);
#endif
}
-Evas_Object* InputPicker::parentWindow()
-{
- Evas_Object* parent = elm_object_parent_widget_get(m_ewkView);
- Evas_Object* win = parent;
-
- while (parent) {
- const char* type = elm_object_widget_type_get(parent);
- if (type) {
- if (!strncmp(type, "elm_win", strlen("elm_win"))) {
- win = parent;
- break;
- }
- }
- parent = elm_object_parent_widget_get(parent);
- }
-
- if (!win)
- win = m_ewkView;
-
- Evas_Object* conformant = elm_conformant_add(win);
- elm_win_conformant_set(win, EINA_TRUE);
- elm_win_resize_object_add(win, conformant);
- evas_object_size_hint_weight_set(conformant, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
- evas_object_size_hint_align_set(conformant, EVAS_HINT_FILL, EVAS_HINT_FILL);
- evas_object_show(conformant);
- m_pickerLayout->conformant = conformant;
-
- Evas_Object* content = elm_layout_add(conformant);
- elm_object_content_set(conformant, content);
-
- return content;
-}
-
void InputPicker::deletePopupLayout()
{
- if(m_pickerLayout->conformant){
- evas_object_del(m_pickerLayout->conformant);
- m_pickerLayout->conformant = 0;
+ if(m_pickerLayout->popup){
+ evas_object_del(m_pickerLayout->popup);
+ m_pickerLayout->popup = 0;
}
}