diff options
| author | Jérémy Zurcher <jeremy@asynk.ch> | 2012-09-08 00:26:51 +0200 | 
|---|---|---|
| committer | Jérémy Zurcher <jeremy@asynk.ch> | 2012-09-08 00:26:51 +0200 | 
| commit | ea927b1bb808b11df21d5adda4b8232fd2a6d859 (patch) | |
| tree | 2dadf38efe470b36079e0a8792d35919741919c7 /autofoo-efl/src/bin | |
| parent | ef4a9a658ef88934c1e9152d1d056cb95d0c2046 (diff) | |
| download | skeletons-master.zip skeletons-master.tar.gz  | |
Diffstat (limited to 'autofoo-efl/src/bin')
| -rw-r--r-- | autofoo-efl/src/bin/Makefile.am | 13 | ||||
| -rw-r--r-- | autofoo-efl/src/bin/efl_hello_world.c | 57 | 
2 files changed, 70 insertions, 0 deletions
diff --git a/autofoo-efl/src/bin/Makefile.am b/autofoo-efl/src/bin/Makefile.am new file mode 100644 index 0000000..643da6d --- /dev/null +++ b/autofoo-efl/src/bin/Makefile.am @@ -0,0 +1,13 @@ +MAINTAINERCLEANFILES = Makefile.in + +bin_PROGRAMS = efl_hello_world + +efl_hello_world_CPPFLAGS = -I. \ +-DPACKAGE_BIN_DIR=\"$(bindir)\" -DPACKAGE_LIB_DIR=\"$(libdir)\" \ +-DPACKAGE_DATA_DIR=\"$(pkgdatadir)\" @AUTOFOO_EFL_CFLAGS@ + +efl_hello_world_LDADD = @AUTOFOO_EFL_LIBS@ + +efl_hello_world_SOURCES = \ +efl_hello_world.c + diff --git a/autofoo-efl/src/bin/efl_hello_world.c b/autofoo-efl/src/bin/efl_hello_world.c new file mode 100644 index 0000000..cc41806 --- /dev/null +++ b/autofoo-efl/src/bin/efl_hello_world.c @@ -0,0 +1,57 @@ +#include <Elementary.h> + +static void +on_done(void *data, Evas_Object *obj, void *event_info) +{ +   // quit the mainloop (elm_run function will return) +   elm_exit(); +} + +EAPI_MAIN int +elm_main(int argc, char **argv) +{ +   Evas_Object *win, *box, *lab, *btn; + +   // new window - do the usual and give it a name (hello) and title (Hello) +   win = elm_win_util_standard_add("hello", "Hello"); +   // when the user clicks "close" on a window there is a request to delete +   evas_object_smart_callback_add(win, "delete,request", on_done, NULL); + +   // add a box object - default is vertical. a box holds children in a row, +   // either horizontally or vertically. nothing more. +   box = elm_box_add(win); +   // make the box horizontal +   elm_box_horizontal_set(box, EINA_TRUE); +   // add object as a resize object for the window (controls window minimum +   // size as well as gets resized if window is resized) +   elm_win_resize_object_add(win, box); +   evas_object_show(box); + +   // add a label widget, set the text and put it in the pad frame +   lab = elm_label_add(win); +   // set default text of the label +   elm_object_text_set(lab, "Hello out there world!"); +   // pack the label at the end of the box +   elm_box_pack_end(box, lab); +   evas_object_show(lab); + +   // add an ok button +   btn = elm_button_add(win); +   // set default text of button to "OK" +   elm_object_text_set(btn, "OK"); +   // pack the button at the end of the box +   elm_box_pack_end(box, btn); +   evas_object_show(btn); +   // call on_done when button is clicked +   evas_object_smart_callback_add(btn, "clicked", on_done, NULL); + +   // now we are done, show the window +   evas_object_show(win); + +   // run the mainloop and process events and callbacks +   elm_run(); +   elm_shutdown(); +   return 0; +} +ELM_MAIN() +  | 
