]> gitweb.hhaalo.de Git - sane-kds-s2000w-net.git/commitdiff
add config reset button
authorBastian Dehn <hhaalo@arcor.de>
Sun, 28 Jan 2024 18:21:26 +0000 (19:21 +0100)
committerBastian Dehn <hhaalo@arcor.de>
Sun, 28 Jan 2024 18:21:26 +0000 (19:21 +0100)
src/kds_s2000w_handler.c
src/kds_s2000w_net.c
src/kds_s2000w_option_descriptors.c
src/kds_s2000w_option_descriptors.h

index 5c424682bb70472ca8a1b67dda07880015c0d38c..7aba359336355c6e935b700b2fa1a4586ebaecf7 100644 (file)
@@ -112,7 +112,7 @@ void kds_s2000w_handler_get_option(int option, void* value)
                        }
 
                        int* int_value_ptr = (int*) value;
-                       *int_value_ptr = json_object_object_length(config) + 1;
+                       *int_value_ptr = json_object_object_length(config) + 3;
                        break;
                case 2:
                        value_object = json_object_object_get(config, "DPI");
index 2fc4c87b1cfc0be4446fce0ad6447ea5fa93f759..4aee330c207d4ae90fc9a79d5f2f0a68cb950ad1 100644 (file)
@@ -142,6 +142,9 @@ const SANE_Option_Descriptor* _sane_kds_s2000w_net_get_option_descriptor(
                case 23:
                        kds_s2000w_option_descriptor_scan_source(&option_descriptors[option]);
                        break;
+               case 24:
+                       kds_s2000w_option_descriptor_config_reset(&option_descriptors[option]);
+                       break;
                default:
                        return NULL;
                        break;
index fc2fe3761a4f7242277396711f197a746f1fc100..addfcde3d8bb03ace9ce44fbf31f10fca084e9b0 100644 (file)
@@ -2,7 +2,7 @@
 #include <sane/saneopts.h>
 #include "kds_s2000w_option_descriptors.h"
 
-#define MAX_OPTION_COUNT 24
+#define MAX_OPTION_COUNT 25
 
 SANE_Word* constraint_dpi = NULL;
 SANE_String_Const* constraint_scanside = NULL;
@@ -107,7 +107,6 @@ void kds_s2000w_option_descriptor_num_options(SANE_Option_Descriptor* descriptor
        descriptor->unit = SANE_UNIT_NONE;
        descriptor->cap = SANE_CAP_SOFT_DETECT;
        descriptor->constraint_type = SANE_CONSTRAINT_NONE;
-       descriptor->constraint.string_list = NULL;
        descriptor->type = SANE_TYPE_INT;
        descriptor->size = sizeof(SANE_Int);
 }
@@ -120,7 +119,6 @@ void kds_s2000w_option_descriptor_standard_group(SANE_Option_Descriptor* descrip
        descriptor->unit = SANE_UNIT_NONE;
        descriptor->cap = SANE_CAP_SOFT_DETECT;
        descriptor->constraint_type = SANE_CONSTRAINT_NONE;
-       descriptor->constraint.string_list = NULL;
        descriptor->type = SANE_TYPE_GROUP;
        descriptor->size = 0;
 }
@@ -182,7 +180,6 @@ void kds_s2000w_option_descriptor_skip_blank_pages(SANE_Option_Descriptor* descr
        descriptor->desc = "Blank Image Deletion Mode";
        descriptor->cap = SANE_CAP_SOFT_DETECT | SANE_CAP_SOFT_SELECT;
        descriptor->constraint_type = SANE_CONSTRAINT_NONE;
-       descriptor->constraint.string_list = NULL;
        descriptor->type = SANE_TYPE_BOOL;
        descriptor->size = sizeof(SANE_Bool);
 }
@@ -194,7 +191,6 @@ void kds_s2000w_option_descriptor_auto_start(SANE_Option_Descriptor* descriptor)
        descriptor->desc = "autostart";
        descriptor->cap = SANE_CAP_SOFT_DETECT | SANE_CAP_SOFT_SELECT;
        descriptor->constraint_type = SANE_CONSTRAINT_NONE;
-       descriptor->constraint.string_list = NULL;
        descriptor->type = SANE_TYPE_BOOL;
        descriptor->size = sizeof(SANE_Bool);
 }
@@ -469,4 +465,16 @@ void kds_s2000w_option_descriptor_scan_source(SANE_Option_Descriptor* descriptor
        descriptor->type = SANE_TYPE_STRING;
        descriptor->unit = SANE_UNIT_NONE;
        descriptor->size = sizeof(SANE_String) * 50;
+}
+
+void kds_s2000w_option_descriptor_config_reset(SANE_Option_Descriptor* descriptor)
+{
+       descriptor->name = "config-reset";
+       descriptor->title = "Konfiguration zuruecksetzen";
+       descriptor->desc = "Laedt die default Konfiguration des Scanners";
+       descriptor->cap = SANE_CAP_SOFT_SELECT;
+       descriptor->constraint_type = SANE_CONSTRAINT_NONE;
+       descriptor->type = SANE_TYPE_BUTTON;
+       descriptor->unit = SANE_UNIT_NONE;
+       descriptor->size = 0;
 }
\ No newline at end of file
index 091786e0861bcc8da26d336e5477f5a43ae23b2c..74a1ea4724ce7b0dd59868018bc256d2b229489e 100644 (file)
@@ -28,4 +28,5 @@ void kds_s2000w_option_descriptor_binarization_mode(SANE_Option_Descriptor* desc
 void kds_s2000w_option_descriptor_binarization_contrast(SANE_Option_Descriptor* descriptor);
 void kds_s2000w_option_descriptor_max_document_length(SANE_Option_Descriptor* descriptor);
 void kds_s2000w_option_descriptor_scan_source(SANE_Option_Descriptor* descriptor);
+void kds_s2000w_option_descriptor_config_reset(SANE_Option_Descriptor* descriptor);
 #endif
\ No newline at end of file