~ruther/CTU-FEE-B0B35APO-Semestral-project

ref: 49dca4f647ac7a2aac685e0a1a983adda1fbbfb9 CTU-FEE-B0B35APO-Semestral-project/lib-gui/src/gui_container_info.c -rw-r--r-- 1.2 KiB
49dca4f6 — František Boháček feat: add gui container info to store container create data 3 years ago
                                                                                
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
#include "gui_container_info.h"
#include "gui.h"

uint16_t gui_container_info_get_components_count(gui_container_info_t info) {
  if (info.type == CONT_GROUP) {
    return info.payload.group.components_count;
  }

  return 0;
}

container_t gui_container_info_create(gui_container_info_t info, component_t *components, uint16_t components_count) {
  switch(info.type) {
  case CONT_TABLE:
    {
    container_t container = gui_list_container_create(
        NULL, 0, info.payload.list.item_height,
        info.payload.list.render_item_fn, info.payload.list.render_header_fn);

    return container;
    }
    break;
  case CONT_ONE:
    return gui_one_container_create(0, 0);
  case CONT_GROUP:
    return gui_group_container_create(0, 0, components, components_count);
  }
}

void gui_container_info_init(container_t *container, void *state,
                             uint32_t items_count, int16_t x, int16_t y) {
  container->x = x;
  container->y = y;

  switch(container->type) {
  case CONT_ONE:
    // do nothing
    break;
  case CONT_GROUP:
    // do nothing
    break;
  case CONT_TABLE:
    gui_list_container_set_state(container, state, items_count);
    break;
  }
}
Do not follow this link