From 5c5a5b34fefc92f4e7908d939991861c2aa25f35 Mon Sep 17 00:00:00 2001 From: Bastian Dehn Date: Sat, 27 Jan 2024 11:29:39 +0100 Subject: [PATCH] add read option six --- src/kds_s2000w_handler.c | 9 ++++++++- src/kds_s2000w_net.c | 12 ++++++++++++ 2 files changed, 20 insertions(+), 1 deletion(-) diff --git a/src/kds_s2000w_handler.c b/src/kds_s2000w_handler.c index b276454..e72c9e2 100644 --- a/src/kds_s2000w_handler.c +++ b/src/kds_s2000w_handler.c @@ -87,7 +87,7 @@ void kds_s2000w_handler_get_option(int option, void* value) switch(option) { case 0: int_value_ptr = (int*) value; - *int_value_ptr = 6; + *int_value_ptr = 7; break; case 1: value_object = json_object_object_get(config, "DPI"); @@ -121,6 +121,13 @@ void kds_s2000w_handler_get_option(int option, void* value) int_value_ptr = (int*) value; *int_value_ptr = int_value; break; + case 6: + value_object = json_object_object_get(config, "ColorDropOut"); + string_value = json_object_get_string(value_object); + char_value = (char*) value; + value_length = strlen(char_value); + memcpy(char_value, string_value, sizeof(char) * value_length); + break; default: break; } diff --git a/src/kds_s2000w_net.c b/src/kds_s2000w_net.c index cd53e14..a089bf3 100644 --- a/src/kds_s2000w_net.c +++ b/src/kds_s2000w_net.c @@ -166,6 +166,17 @@ const SANE_Option_Descriptor* _sane_kds_s2000w_net_get_option_descriptor( option_descriptor_array.option_descriptors[option]->cap = SANE_CAP_SOFT_DETECT; option_descriptor_array.option_descriptors[option]->constraint_type = SANE_CONSTRAINT_NONE; option_descriptor_array.option_descriptors[option]->constraint.string_list = NULL; + break; + case 6: + free(option_descriptor_array.option_descriptors[option]); + option_descriptor_array.option_descriptors[option] = NULL; + option_descriptor_array.option_descriptors[option] = malloc(sizeof(SANE_Option_Descriptor)); + option_descriptor_array.option_descriptors[option]->name = "colordrop"; + option_descriptor_array.option_descriptors[option]->title = "colordrop"; + option_descriptor_array.option_descriptors[option]->desc = "colordrop"; + option_descriptor_array.option_descriptors[option]->cap = SANE_CAP_SOFT_DETECT; + option_descriptor_array.option_descriptors[option]->constraint_type = SANE_CONSTRAINT_NONE; + option_descriptor_array.option_descriptors[option]->constraint.string_list = NULL; break; default: return NULL; @@ -183,6 +194,7 @@ const SANE_Option_Descriptor* _sane_kds_s2000w_net_get_option_descriptor( break; case 2: case 3: + case 6: option_descriptor_array.option_descriptors[option]->type = SANE_TYPE_STRING; option_descriptor_array.option_descriptors[option]->unit = SANE_UNIT_NONE; option_descriptor_array.option_descriptors[option]->size = sizeof(SANE_String) * 50; -- 2.39.5