diff options
Diffstat (limited to 'src/bin/elementary/test_ui_button.c')
-rw-r--r-- | src/bin/elementary/test_ui_button.c | 78 |
1 files changed, 78 insertions, 0 deletions
diff --git a/src/bin/elementary/test_ui_button.c b/src/bin/elementary/test_ui_button.c new file mode 100644 index 0000000000..f5aa340ad6 --- /dev/null +++ b/src/bin/elementary/test_ui_button.c @@ -0,0 +1,78 @@ +#ifdef HAVE_CONFIG_H +# include "elementary_config.h" +#endif +#include <Elementary.h> + +static void +_clicked(void *data EINA_UNUSED, const Efl_Event *ev EINA_UNUSED) +{ + printf("Button is clicked!!!\n"); +} + +static void +_pressed(void *data EINA_UNUSED, const Efl_Event *ev EINA_UNUSED) +{ + printf("Button is pressed!!!\n"); +} + +static void +_unpressed(void *data EINA_UNUSED, const Efl_Event *ev EINA_UNUSED) +{ + printf("Button is unpressed!!!\n"); +} + +void +test_ui_button(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUSED) +{ + Eo *win, *bx, *btn; + char buf[PATH_MAX]; + + win = efl_add_ref(EFL_UI_WIN_CLASS, NULL, + efl_ui_win_type_set(efl_added, EFL_UI_WIN_BASIC), + efl_text_set(efl_added, "Efl.Ui.Button"), + efl_ui_win_autodel_set(efl_added, EINA_TRUE) + ); + + bx = efl_add(EFL_UI_BOX_CLASS, win, + efl_content_set(win, efl_added), + efl_ui_direction_set(efl_added, EFL_UI_DIR_DOWN)); + + // Text Only Button + efl_add(EFL_UI_BUTTON_CLASS, bx, + efl_text_set(efl_added, "Text"), + efl_pack(bx, efl_added), + efl_event_callback_add(efl_added, EFL_UI_EVENT_CLICKED, _clicked, NULL), + efl_event_callback_add(efl_added, EFL_UI_EVENT_PRESSED, _pressed, NULL), + efl_event_callback_add(efl_added, EFL_UI_EVENT_UNPRESSED, _unpressed, NULL) + ); + + // Icon Only Button + snprintf(buf, sizeof(buf), "%s/images/logo_small.png", elm_app_data_dir_get()); + btn = efl_add(EFL_UI_BUTTON_CLASS, bx, + efl_pack(bx, efl_added), + efl_event_callback_add(efl_added, EFL_UI_EVENT_CLICKED, _clicked, NULL), + efl_event_callback_add(efl_added, EFL_UI_EVENT_PRESSED, _pressed, NULL), + efl_event_callback_add(efl_added, EFL_UI_EVENT_UNPRESSED, _unpressed, NULL) + ); + efl_add(EFL_UI_IMAGE_CLASS, btn, + efl_file_set(efl_added, buf, NULL), + efl_content_set(btn, efl_added) + ); + + // Text + Icon Button + snprintf(buf, sizeof(buf), "%s/images/logo_small.png", elm_app_data_dir_get()); + btn = efl_add(EFL_UI_BUTTON_CLASS, bx, + efl_text_set(efl_added, "Text + Icon"), + efl_pack(bx, efl_added), + efl_event_callback_add(efl_added, EFL_UI_EVENT_CLICKED, _clicked, NULL), + efl_event_callback_add(efl_added, EFL_UI_EVENT_PRESSED, _pressed, NULL), + efl_event_callback_add(efl_added, EFL_UI_EVENT_UNPRESSED, _unpressed, NULL) + ); + efl_add(EFL_UI_IMAGE_CLASS, btn, + efl_file_set(efl_added, buf, NULL), + efl_content_set(btn, efl_added) + ); + + efl_gfx_entity_size_set(win, EINA_SIZE2D(320, 400)); +} + |