From 76ad6b0d404d40f08b73d90ac5f66564c29feb95 Mon Sep 17 00:00:00 2001 From: Federico Angelilli Date: Sun, 24 Nov 2024 17:40:26 +0100 Subject: Refactor config parser --- src/blocks/date.c | 2 +- src/blocks/fs.c | 2 +- src/blocks/ram.c | 2 +- src/blocks/script.c | 2 +- src/blocks/slider.c | 8 +++++++- src/blocks/text.c | 14 +++++++++++++- 6 files changed, 24 insertions(+), 6 deletions(-) (limited to 'src/blocks') diff --git a/src/blocks/date.c b/src/blocks/date.c index 1cb9da9..cd1adce 100644 --- a/src/blocks/date.c +++ b/src/blocks/date.c @@ -46,7 +46,7 @@ static void block_date_clean(block_t *block) free(date->block.text); } -static int block_date_validate(block_t *block) +static int block_date_validate(block_t *block, config_t *config) { block_date_t *date = (block_date_t *)block; int errors = 0; diff --git a/src/blocks/fs.c b/src/blocks/fs.c index 688956d..1196c68 100644 --- a/src/blocks/fs.c +++ b/src/blocks/fs.c @@ -135,7 +135,7 @@ static void block_fs_clean(block_t *block) free(fs->block.text); } -static int block_fs_validate(block_t *block) +static int block_fs_validate(block_t *block, config_t *config) { block_fs_t *fs = (block_fs_t *)block; int errors = 0; diff --git a/src/blocks/ram.c b/src/blocks/ram.c index 2aae5ac..28af60c 100644 --- a/src/blocks/ram.c +++ b/src/blocks/ram.c @@ -143,7 +143,7 @@ static void block_ram_clean(block_t *block) free(ram->block.text); } -static int block_ram_validate(block_t *block) +static int block_ram_validate(block_t *block, config_t *config) { block_ram_t *ram = (block_ram_t *)block; int errors = 0; diff --git a/src/blocks/script.c b/src/blocks/script.c index bcbb1b2..6fa5f6d 100644 --- a/src/blocks/script.c +++ b/src/blocks/script.c @@ -58,7 +58,7 @@ static void block_script_clean(block_t *block) free(script->block.text); } -static int block_script_validate(block_t *block) +static int block_script_validate(block_t *block, config_t *config) { block_script_t *script = (block_script_t *)block; int errors = 0; diff --git a/src/blocks/slider.c b/src/blocks/slider.c index 7050faf..f568105 100644 --- a/src/blocks/slider.c +++ b/src/blocks/slider.c @@ -216,7 +216,7 @@ static void block_slider_clean(block_t *block) gradient_free(&slider->knob_line_color); } -static int block_slider_validate(block_t *block) +static int block_slider_validate(block_t *block, config_t *config) { block_slider_t *slider = (block_slider_t *)block; int errors = 0; @@ -242,6 +242,11 @@ static int block_slider_validate(block_t *block) return errors; } +static config_status_t block_slider_change(block_t *block, config_t *config, const char *key, const char *value) +{ + return 0; +} + static config_enum_t knob_shape_enum[] = { { "none", KNOB_NONE }, { "capsule", KNOB_CAPSULE }, @@ -279,4 +284,5 @@ const block_scheme_t block_slider_scheme = { .init_fn = block_slider_init, .clean_fn = block_slider_clean, .validate_fn = block_slider_validate, + .change_fn = block_slider_change, }; diff --git a/src/blocks/text.c b/src/blocks/text.c index be4c398..bfaefe8 100644 --- a/src/blocks/text.c +++ b/src/blocks/text.c @@ -13,7 +13,7 @@ static void block_text_clean(block_t *block) free(text->text); } -static int block_text_validate(block_t *block) +static int block_text_validate(block_t *block, config_t *config) { block_text_t *text = (block_text_t *)block; int errors = 0; @@ -26,6 +26,17 @@ static int block_text_validate(block_t *block) return errors; } +static config_status_t block_text_change(block_t *block, config_t *config, const char *key, const char *value) +{ + + // text + // text_color + // text_align + // text_size + + return CONFIG_UNKNOWN; +} + const block_scheme_t block_text_scheme = { .name = "text", .entries = NULL, @@ -33,4 +44,5 @@ const block_scheme_t block_text_scheme = { .init_fn = block_text_init, .clean_fn = block_text_clean, .validate_fn = block_text_validate, + .change_fn = block_text_change, }; -- cgit v1.2.3