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

fd95f1c9016ef0cf631b4b8025b9e332ec8f61d1 — František Boháček 4 years ago c962587
fix: incorrect table item offset
2 files changed, 4 insertions(+), 4 deletions(-)

M file-browser/include/gui_list_table.h
M file-browser/src/gui_list_table.c
M file-browser/include/gui_list_table.h => file-browser/include/gui_list_table.h +2 -2
@@ 7,7 7,7 @@
#include "font.h"
#include <stdint.h>

#define MAX_COLUMN_CHARS 200
#define MAX_COLUMN_CHARS 2000

typedef char *(*table_get_data_fn)(void *state, uint16_t column, char *buffer);



@@ 24,6 24,6 @@ bool table_render_item(gui_table_t *table_state, void *state,
char *browser_get_column_data(void *state, uint16_t column, char *out);

bool table_update_widths(gui_table_t *table, font_t *font, void *arr,
                         size_t item_size, uint32_t items_count);
                         uint64_t item_size, uint32_t items_count);

#endif // __GUI_LIST_TABLE_H__

M file-browser/src/gui_list_table.c => file-browser/src/gui_list_table.c +2 -2
@@ 14,14 14,14 @@ bool table_render_item(gui_table_t *table_state, void *state,
  return true;
}

bool table_update_widths(gui_table_t *table, font_t *font, void *arr, size_t item_size,
bool table_update_widths(gui_table_t *table, font_t *font, void *arr, uint64_t item_size,
                         uint32_t items_count) {
  char tmp[MAX_COLUMN_CHARS];
  for (int i = 0; i < table->columns_count; i++) {
    uint16_t max_size = font_measure_text(font, table->columns_names[i]).x;
    for (int j = 0; j < items_count; j++) {
      char *data =
          browser_get_column_data(arr + item_size * i, i, tmp);
          browser_get_column_data(arr + item_size * j, i, tmp);
      if (data == NULL) {
        continue;
      }