summaryrefslogtreecommitdiff
path: root/src/bin/elementary/test_ui_button.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/bin/elementary/test_ui_button.c')
-rw-r--r--src/bin/elementary/test_ui_button.c78
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));
+}
+