test_glview_simple: Do not manipulate glview if gl is not supported.

This commit is contained in:
Daniel Juyung Seo 2013-12-24 01:27:59 +09:00
parent 9e09f74895
commit b4c9406e98
1 changed files with 29 additions and 17 deletions

View File

@ -226,7 +226,7 @@ _gl_del_cb(void *data, Evas *evas EINA_UNUSED, Evas_Object *obj EINA_UNUSED, voi
void void
test_glview_simple(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUSED) test_glview_simple(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUSED)
{ {
Evas_Object *win, *bx, *bt, *gl; Evas_Object *win, *bx, *bt, *gl, *lb;
Ecore_Animator *ani; Ecore_Animator *ani;
GL_Data *gld = NULL; GL_Data *gld = NULL;
@ -242,6 +242,8 @@ test_glview_simple(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *e
evas_object_show(bx); evas_object_show(bx);
gl = elm_glview_add(win); gl = elm_glview_add(win);
if (gl)
{
evas_object_size_hint_align_set(gl, EVAS_HINT_FILL, EVAS_HINT_FILL); evas_object_size_hint_align_set(gl, EVAS_HINT_FILL, EVAS_HINT_FILL);
evas_object_size_hint_weight_set(gl, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); evas_object_size_hint_weight_set(gl, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
elm_glview_mode_set(gl, ELM_GLVIEW_ALPHA | ELM_GLVIEW_DEPTH); elm_glview_mode_set(gl, ELM_GLVIEW_ALPHA | ELM_GLVIEW_DEPTH);
@ -260,6 +262,16 @@ test_glview_simple(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *e
gld->glapi = elm_glview_gl_api_get(gl); gld->glapi = elm_glview_gl_api_get(gl);
evas_object_data_set(gl, "gld", gld); evas_object_data_set(gl, "gld", gld);
evas_object_event_callback_add(gl, EVAS_CALLBACK_DEL, _gl_del_cb, ani); evas_object_event_callback_add(gl, EVAS_CALLBACK_DEL, _gl_del_cb, ani);
}
else
{
lb = elm_label_add(bx);
elm_object_text_set(lb, "GL backend engine is not supported.");
evas_object_size_hint_weight_set(lb, EVAS_HINT_EXPAND, 0.0);
evas_object_size_hint_align_set(lb, EVAS_HINT_FILL, EVAS_HINT_FILL);
elm_box_pack_end(bx, lb);
evas_object_show(lb);
}
bt = elm_button_add(win); bt = elm_button_add(win);
elm_object_text_set(bt, "Close"); elm_object_text_set(bt, "Close");