Fixes compilation instructions of examples to work on ubuntu.
[framework/uifw/elementary.git] / src / examples / image_example_01.c
1 //Compile with:
2 //gcc -g image_example_01.c -o image_example_01 `pkg-config --cflags --libs elementary`
3
4 #include <Elementary.h>
5 #define DATA_DIR "."
6
7 int
8 elm_main(int argc, char **argv)
9 {
10    Evas_Object *win, *bg, *image;
11    char buf[PATH_MAX];
12
13    elm_app_info_set(elm_main, "elementary", "images/plant_01.jpg");
14    win = elm_win_add(NULL, "image", ELM_WIN_BASIC);
15    elm_win_title_set(win, "Image");
16    elm_policy_set(ELM_POLICY_QUIT, ELM_POLICY_QUIT_LAST_WINDOW_CLOSED);
17    elm_win_autodel_set(win, EINA_TRUE);
18
19    bg = elm_bg_add(win);
20    elm_bg_color_set(bg, 255,255 ,255);
21    evas_object_size_hint_weight_set(bg, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
22    elm_win_resize_object_add(win, bg);
23    evas_object_show(bg);
24
25    snprintf(buf, sizeof(buf), "%s/images/plant_01.jpg", elm_app_data_dir_get());
26
27    image = elm_image_add(win);
28    if (!elm_image_file_set(image, buf, NULL))
29      {
30         printf("error: could not load image \"%s\"\n", buf);
31         return -1;
32      }
33
34    elm_image_no_scale_set(image, EINA_TRUE);
35    elm_image_resizable_set(image, EINA_FALSE, EINA_TRUE);
36    elm_image_smooth_set(image, EINA_FALSE);
37    elm_image_orient_set(image, ELM_IMAGE_FLIP_HORIZONTAL);
38    elm_image_aspect_fixed_set(image, EINA_TRUE);
39    elm_image_fill_outside_set(image, EINA_TRUE);
40    elm_image_editable_set(image, EINA_TRUE);
41
42    evas_object_size_hint_weight_set(image, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
43    elm_win_resize_object_add(win, image);
44    evas_object_show(image);
45
46    evas_object_size_hint_min_set(bg, 160, 160);
47    evas_object_size_hint_max_set(bg, 640, 640);
48    evas_object_resize(win, 320, 320);
49    evas_object_show(win);
50
51    elm_run();
52    elm_shutdown();
53
54    return 0;
55 }
56 ELM_MAIN()