void columns_add_column(columns_t cols, column_info_t info) { assert(info.text_width <= info.full_width && "Text width should be bigger than full width."); assert(column_id_present(info.column_id) && "Unknown column id."); if(extend_column_list(cols) == 0) { init_new_column(&cols->list[cols->count - 1], info); mark_for_recalculation(cols); } }
columns_t columns_create(void) { struct columns_list_t *const result = malloc(sizeof(struct columns_list_t)); if(result == NULL) { return NULL_COLUMNS; } result->count = 0; result->list = NULL; mark_for_recalculation(result); return result; }
columns_t * columns_create(void) { columns_t *const result = malloc(sizeof(*result)); if(result == NULL) { return NULL; } result->count = 0; result->list = NULL; mark_for_recalculation(result); return result; }