diff options
Diffstat (limited to 'libsmartcols/src/column.c')
-rw-r--r-- | libsmartcols/src/column.c | 119 |
1 files changed, 23 insertions, 96 deletions
diff --git a/libsmartcols/src/column.c b/libsmartcols/src/column.c index 29eb63666..8e9b11fdd 100644 --- a/libsmartcols/src/column.c +++ b/libsmartcols/src/column.c @@ -66,12 +66,8 @@ struct libscols_column *scols_copy_column(const struct libscols_column *cl) ret->width_max = cl->width_max; ret->width_avg = cl->width_avg; ret->width_hint = cl->width_hint; + ret->flags = cl->flags; ret->is_extreme = cl->is_extreme; - ret->trunc = cl->trunc; - ret->tree = cl->tree; - ret->right = cl->right; - ret->strict_width = cl->strict_width; - ret->no_extremes = cl->no_extremes; return ret; err: @@ -96,6 +92,23 @@ double scols_column_get_whint(struct libscols_column *cl) return cl ? cl->width_hint : -EINVAL; } +int scols_column_set_flags(struct libscols_column *cl, int flags) +{ + assert(cl); + + if (!cl) + return -EINVAL; + + cl->flags = flags; + return 0; +} + +int scols_column_get_flags(struct libscols_column *cl) +{ + assert(cl); + return cl ? cl->flags : -EINVAL; +} + struct libscols_cell *scols_column_get_header(struct libscols_column *cl) { assert(cl); @@ -154,7 +167,7 @@ int scols_column_is_trunc(struct libscols_column *cl) assert(cl); if (!cl) return -EINVAL; - return cl->trunc; + return cl->flags & SCOLS_FL_TRUNC; } /** * scols_column_is_tree: @@ -169,7 +182,7 @@ int scols_column_is_tree(struct libscols_column *cl) assert(cl); if (!cl) return -EINVAL; - return cl->tree; + return cl->flags & SCOLS_FL_TREE; } /** * scols_column_is_right: @@ -184,7 +197,7 @@ int scols_column_is_right(struct libscols_column *cl) assert(cl); if (!cl) return -EINVAL; - return cl->right; + return cl->flags & SCOLS_FL_RIGHT; } /** * scols_column_is_strict_width: @@ -199,7 +212,7 @@ int scols_column_is_strict_width(struct libscols_column *cl) assert(cl); if (!cl) return -EINVAL; - return cl->strict_width; + return cl->flags & SCOLS_FL_STRICTWIDTH; } /** * scols_column_is_no_extremes: @@ -214,91 +227,5 @@ int scols_column_is_no_extremes(struct libscols_column *cl) assert(cl); if (!cl) return -EINVAL; - return cl->no_extremes; -} - -/** - * scols_column_set_trunc: - * @cl: column - * @enable: 1 or 0 - * - * Enable/disable trunc - * - * Returns: 0 on success, negative number in case of an error. - */ -int scols_column_set_trunc(struct libscols_column *cl, int enable) -{ - assert(cl); - if (!cl) - return -EINVAL; - cl->trunc = enable; - return 0; -} -/** - * scols_column_set_tree: - * @cl: column - * @enable: 1 or 0 - * - * Enable/disable tree - * - * Returns: 0 on success, negative number in case of an error. - */ -int scols_column_set_tree(struct libscols_column *cl, int enable) -{ - assert(cl); - if (!cl) - return -EINVAL; - cl->tree = enable; - return 0; -} -/** - * scols_column_set_right: - * @cl: column - * @enable: 1 or 0 - * - * Enable/disable right - * - * Returns: 0 on success, negative number in case of an error. - */ -int scols_column_set_right(struct libscols_column *cl, int enable) -{ - assert(cl); - if (!cl) - return -EINVAL; - cl->right = enable; - return 0; -} -/** - * scols_column_set_strict_width: - * @cl: column - * @enable: 1 or 0 - * - * Enable/disable strict_width - * - * Returns: 0 on success, negative number in case of an error. - */ -int scols_column_set_strict_width(struct libscols_column *cl, int enable) -{ - assert(cl); - if (!cl) - return -EINVAL; - cl->strict_width = enable; - return 0; -} -/** - * scols_column_set_no_extremes: - * @cl: column - * @enable: 1 or 0 - * - * Enable/disable no_extremes - * - * Returns: 0 on success, negative number in case of an error. - */ -int scols_column_set_no_extremes(struct libscols_column *cl, int enable) -{ - assert(cl); - if (!cl) - return -EINVAL; - cl->no_extremes = enable; - return 0; + return cl->flags & SCOLS_FL_NOEXTREMES; } |