]> gitweb.hhaalo.de Git - sane-kds-s2000w-net.git/commitdiff
add constraint for color mode
authorBastian Dehn <hhaalo@arcor.de>
Sat, 27 Jan 2024 16:44:22 +0000 (17:44 +0100)
committerBastian Dehn <hhaalo@arcor.de>
Sat, 27 Jan 2024 16:56:54 +0000 (17:56 +0100)
src/kds_s2000w_net.c

index 74ad459e58d41deece413910b11293d96315fcbb..53c8ddb0d5dfb331fe60995b10f0961e3c79218e 100644 (file)
@@ -101,11 +101,11 @@ const SANE_Option_Descriptor* _sane_kds_s2000w_net_get_option_descriptor(
                        option_descriptors[option].unit = SANE_UNIT_DPI;
                        option_descriptors[option].cap = SANE_CAP_SOFT_DETECT | SANE_CAP_SOFT_SELECT;
                        option_descriptors[option].constraint_type = SANE_CONSTRAINT_WORD_LIST;
-                       SANE_Word* constraint_list = malloc(sizeof(SANE_Int) * 3);
-                       constraint_list[0] = 2;
-                       constraint_list[1] = 200;
-                       constraint_list[2] = 300;
-                       option_descriptors[option].constraint.word_list = constraint_list;
+                       SANE_Word* constraint_dpi = malloc(sizeof(SANE_Int) * 3);
+                       constraint_dpi[0] = 2;
+                       constraint_dpi[1] = 200;
+                       constraint_dpi[2] = 300;
+                       option_descriptors[option].constraint.word_list = constraint_dpi;
                        break;
                case 2:
                        option_descriptors[option].name = "scanside";
@@ -113,19 +113,25 @@ const SANE_Option_Descriptor* _sane_kds_s2000w_net_get_option_descriptor(
                        option_descriptors[option].desc = "scanside";
                        option_descriptors[option].cap = SANE_CAP_SOFT_DETECT | SANE_CAP_SOFT_SELECT;
                        option_descriptors[option].constraint_type = SANE_CONSTRAINT_STRING_LIST;
-                       SANE_String_Const* constraint_strings = malloc(sizeof(char*) * 3);
-                       constraint_strings[0] = "Simplex";
-                       constraint_strings[1] = "Duplex";
-                       constraint_strings[2] = NULL;
-                       option_descriptors[option].constraint.string_list = constraint_strings;
+                       SANE_String_Const* constraint_scanside = malloc(sizeof(char*) * 3);
+                       constraint_scanside[0] = "Simplex";
+                       constraint_scanside[1] = "Duplex";
+                       constraint_scanside[2] = NULL;
+                       option_descriptors[option].constraint.string_list = constraint_scanside;
                        break;
                case 3:
                        option_descriptors[option].name = "colormode";
                        option_descriptors[option].title = "colormode";
                        option_descriptors[option].desc = "colormode";
-                       option_descriptors[option].cap = SANE_CAP_SOFT_DETECT;
-                       option_descriptors[option].constraint_type = SANE_CONSTRAINT_NONE;
-                       option_descriptors[option].constraint.string_list = NULL;
+                       option_descriptors[option].cap = SANE_CAP_SOFT_DETECT | SANE_CAP_SOFT_SELECT;
+                       option_descriptors[option].constraint_type = SANE_CONSTRAINT_STRING_LIST;
+                       SANE_String_Const* constraint_colormode = malloc(sizeof(char*) * 5);
+                       constraint_colormode[0] = "Color";
+                       constraint_colormode[1] = "Gray";
+                       constraint_colormode[2] = "BW";
+                       constraint_colormode[3] = "Color_BW";
+                       constraint_colormode[4] = NULL;
+                       option_descriptors[option].constraint.string_list = constraint_colormode;
                        break;
                case 4:
                        option_descriptors[option].name = "skipblankpages";