Advertisement
Guest User

Untitled

a guest
Aug 29th, 2017
98
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 3.64 KB | None | 0 0
  1. #ifndef EFL_BETA_API_SUPPORT
  2. #define EFL_BETA_API_SUPPORT
  3. #endif
  4. #ifndef EFL_EO_API_SUPPORT
  5. #define EFL_EO_API_SUPPORT
  6. #endif
  7. #ifndef ELM_INTERNAL_API_ARGESFSDFEFC
  8. #define ELM_INTERNAL_API_ARGESFSDFEFC
  9. #endif
  10.  
  11. #include <Elementary.h>
  12. #include <Eo.h>
  13.  
  14. #define ELM_WIDGET_PROTECTED
  15. #include "elm_widget.h"
  16. #include "elm_widget_container.h"
  17. #include "elm_interface_scrollable.h"
  18.  
  19. typedef struct
  20. {
  21.    Eo *bg_2;
  22. } _bg_image_radio_1_changed_info;
  23.  
  24. typedef struct
  25. {
  26.    Eo *bg_2;
  27. } _bg_image_radio_2_changed_info;
  28.  
  29.  
  30. static void
  31. _bg_image_radio_1_changed_cb(void *data EINA_UNUSED, const Efl_Event *event EINA_UNUSED)
  32. {
  33.    _bg_image_radio_1_changed_info *ext_wdgs = data;
  34.    elm_obj_bg_load_size_set(ext_wdgs->bg_2, 50, 50);
  35. }
  36.  
  37. static void
  38. _bg_image_radio_2_changed_cb(void *data EINA_UNUSED, const Efl_Event *event EINA_UNUSED)
  39. {
  40.    _bg_image_radio_2_changed_info *ext_wdgs = data;
  41.    elm_obj_bg_load_size_set(ext_wdgs->bg_2, 100, 100);
  42. }
  43.  
  44. void
  45. bg_image_win_1_create()
  46. {
  47.    Eo *win_1 = efl_add(EFL_UI_WIN_CLASS, NULL,
  48.          efl_ui_win_name_set(efl_added, "bg-image"),
  49.          efl_ui_win_type_set(efl_added, EFL_UI_WIN_BASIC));
  50.    efl_text_set(win_1, "Bg Image");
  51.    efl_ui_win_autodel_set(win_1, EINA_TRUE);
  52.    efl_gfx_size_set(win_1, 320, 320);
  53.  
  54.    Eo *bg_1 = efl_add(ELM_BG_CLASS, win_1);
  55.    efl_gfx_size_hint_weight_set(bg_1, 1, 1);
  56.    efl_gfx_size_hint_restricted_min_set(bg_1, 160, 160);
  57.    efl_content_set(win_1, bg_1);
  58.  
  59.    Eo *box_1 = elm_box_add(win_1);
  60.    efl_gfx_size_hint_weight_set(box_1, 1, 1);
  61.    efl_gfx_visible_set(box_1, EINA_TRUE);
  62.  
  63.    Eo *bg_2 = efl_add(ELM_BG_CLASS, box_1);
  64.    efl_file_set(bg_2, "/opt/e/share/elementary/images/plant_01.jpg", NULL);
  65.    efl_gfx_size_hint_weight_set(bg_2, 1, 1);
  66.    efl_gfx_size_hint_align_set(bg_2, -1, -1);
  67.    elm_box_pack_end(box_1, bg_2);
  68.  
  69.    Eo *box_2 = elm_box_add(box_1);
  70.    elm_box_horizontal_set(box_2, EINA_TRUE);
  71.    efl_gfx_size_hint_weight_set(box_2, 1, -1);
  72.    efl_gfx_size_hint_align_set(box_2, -1, -1);
  73.    efl_gfx_visible_set(box_2, EINA_TRUE);
  74.  
  75.    Eo *radio_1 = efl_add(EFL_UI_RADIO_CLASS, box_2);
  76.    efl_ui_radio_state_value_set(radio_1, 50);
  77.    elm_obj_widget_part_text_set(radio_1, NULL, "50 x 50");
  78.    efl_gfx_size_hint_weight_set(radio_1, 1, -1);
  79.    efl_ui_radio_value_set(radio_1, 200);
  80.    elm_box_pack_end(box_2, radio_1);
  81.  
  82.    Eo *radio_2 = efl_add(EFL_UI_RADIO_CLASS, box_2);
  83.    efl_ui_radio_state_value_set(radio_2, 100);
  84.    efl_ui_radio_group_add(radio_2, radio_1);
  85.    elm_obj_widget_part_text_set(radio_2, NULL, "100 x 100");
  86.    efl_gfx_size_hint_weight_set(radio_2, 1, -1);
  87.    elm_box_pack_end(box_2, radio_2);
  88.  
  89.    Eo *radio_3 = efl_add(EFL_UI_RADIO_CLASS, box_2);
  90.    efl_ui_radio_state_value_set(radio_3, 200);
  91.    efl_ui_radio_group_add(radio_3, radio_1);
  92.    elm_obj_widget_part_text_set(radio_3, NULL, "200 x 200");
  93.    efl_gfx_size_hint_weight_set(radio_3, 1, -1);
  94.    elm_box_pack_end(box_2, radio_3);
  95.    elm_box_pack_end(box_1, box_2);
  96.    efl_content_set(win_1, box_1);
  97.  
  98.    _bg_image_radio_1_changed_info *radio_1_changed_info = calloc(1, sizeof(*radio_1_changed_info));
  99.    radio_1_changed_info->bg_2 = bg_2;
  100.    efl_event_callback_add(radio_1, EFL_UI_RADIO_EVENT_CHANGED, _bg_image_radio_1_changed_cb, radio_1_changed_info);
  101.  
  102.    _bg_image_radio_2_changed_info *radio_2_changed_info = calloc(1, sizeof(*radio_2_changed_info));
  103.    radio_2_changed_info->bg_2 = bg_2;
  104.    efl_event_callback_add(radio_2, EFL_UI_RADIO_EVENT_CHANGED, _bg_image_radio_2_changed_cb, radio_2_changed_info);
  105. }
  106.  
  107. EAPI_MAIN int elm_main (int argc, char *argv[])
  108. { const char *test = (argc == 2 ? argv[1] : "");
  109.    bg_image_win_1_create();
  110.    elm_run();
  111. }
  112. ELM_MAIN()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement