efl

Форк
0
/
test_ui_items.c 
107 строк · 3.0 Кб
1
#ifdef HAVE_CONFIG_H
2
# include "elementary_config.h"
3
#endif
4

5
#include <Efl_Ui.h>
6

7
static Efl_Ui_Widget*
8
_item_add(Eo *box, const Efl_Class *c, int i)
9
{
10
   Eo *check, *rect, *il = efl_add(c, box);
11
   int r = 0, g = 0, b = 0;
12
   char buf[PATH_MAX];
13

14
   snprintf(buf, sizeof(buf), "%d - Test %d", i, i%13);
15
   efl_text_set(il, buf);
16

17
   rect = efl_add(EFL_CANVAS_RECTANGLE_CLASS, il);
18
   switch (i % 5)
19
     {
20
      case 0:
21
         r = 255;
22
         break;
23
      case 1:
24
         g = 255;
25
         break;
26
      case 2:
27
         b = 255;
28
         break;
29
      case 3:
30
         r = g = b = 255;
31
         break;
32
      case 4:
33
         r = g = b = 0;
34
         break;
35
   }
36
   efl_gfx_color_set(rect, r, g, b, 255);
37
   efl_content_set(il, rect);
38

39
   check = efl_add(EFL_UI_CHECK_CLASS, il);
40
   efl_content_set(efl_part(il, "extra"), check);
41

42
   if (c == EFL_UI_GRID_DEFAULT_ITEM_CLASS)
43
     efl_gfx_hint_size_min_set(il, EINA_SIZE2D(100, 180));
44
   else
45
     efl_gfx_hint_size_min_set(il, EINA_SIZE2D(40, 40+(i%2)*40));
46

47
   return il;
48
}
49

50
void test_efl_ui_item(void *data EINA_UNUSED,
51
                      Efl_Object *obj EINA_UNUSED,
52
                      void *event_info EINA_UNUSED)
53
{
54
   Eo *win, *box, *o;
55

56
   win = efl_add(EFL_UI_WIN_CLASS, efl_main_loop_get(),
57
                                  efl_text_set(efl_added, "Item examples"),
58
                 efl_ui_win_autodel_set(efl_added, EINA_TRUE)
59
                );
60

61
   box = efl_add(EFL_UI_BOX_CLASS, win,
62
                 efl_content_set(win, efl_added));
63

64
   o = _item_add(box, EFL_UI_GRID_DEFAULT_ITEM_CLASS, 1);
65
   efl_pack_end(box, o);
66

67
   o = _item_add(box, EFL_UI_GRID_DEFAULT_ITEM_CLASS, 2);
68
   efl_ui_widget_disabled_set(o, EINA_TRUE);
69
   efl_pack_end(box, o);
70

71
   o = _item_add(box, EFL_UI_LIST_DEFAULT_ITEM_CLASS, 3);
72
   efl_pack_end(box, o);
73

74
   o = _item_add(box, EFL_UI_LIST_DEFAULT_ITEM_CLASS, 4);
75
   efl_ui_widget_disabled_set(o, EINA_TRUE);
76
   efl_pack_end(box, o);
77

78
   o = efl_add(EFL_UI_LIST_PLACEHOLDER_ITEM_CLASS, box);
79
   efl_gfx_hint_size_min_set(o, EINA_SIZE2D(40, 40+40));
80
   efl_pack_end(box, o);
81

82
   o = efl_add(EFL_UI_LIST_PLACEHOLDER_ITEM_CLASS, box);
83
   efl_gfx_hint_size_min_set(o, EINA_SIZE2D(40, 40));
84
   efl_ui_widget_disabled_set(o, EINA_TRUE);
85
   efl_pack_end(box, o);
86

87
   o = _item_add(box, EFL_UI_GROUP_ITEM_CLASS, 5);
88
   efl_gfx_hint_size_min_set(o, EINA_SIZE2D(40, 40+40));
89
   efl_pack_end(box, o);
90

91
   o = _item_add(box, EFL_UI_GROUP_ITEM_CLASS, 6);
92
   efl_gfx_hint_size_min_set(o, EINA_SIZE2D(40, 40));
93
   efl_ui_widget_disabled_set(o, EINA_TRUE);
94

95
   o = _item_add(box, EFL_UI_TAB_BAR_DEFAULT_ITEM_CLASS, 5);
96
   efl_gfx_hint_size_min_set(o, EINA_SIZE2D(40, 40+40));
97
   efl_pack_end(box, o);
98

99
   o = _item_add(box, EFL_UI_TAB_BAR_DEFAULT_ITEM_CLASS, 6);
100
   efl_gfx_hint_size_min_set(o, EINA_SIZE2D(40, 40));
101
   efl_ui_widget_disabled_set(o, EINA_TRUE);
102
   efl_pack_end(box, o);
103
   o = _item_add(box, EFL_UI_TAB_BAR_DEFAULT_ITEM_CLASS, 5);
104
   efl_ui_tab_bar_default_item_icon_set(o, "folder");
105
   efl_gfx_hint_size_min_set(o, EINA_SIZE2D(40, 40+40));
106
   efl_pack_end(box, o);
107
}
108

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.