From bd6a5371977cf874e15f5e00751ed147577a82f6 Mon Sep 17 00:00:00 2001 From: interp Date: Sat, 10 May 2003 12:10:32 +0000 Subject: [PATCH] + ADD-SEL-IF-OPTION! + DELETE-SEL-IF-OPTION! --- scheme/httpd/surflets/packages.scm | 2 ++ .../httpd/surflets/surflet-input-fields.scm | 21 +++++++++++++++++++ 2 files changed, 23 insertions(+) diff --git a/scheme/httpd/surflets/packages.scm b/scheme/httpd/surflets/packages.scm index 8a337fa..1bf9cb0 100644 --- a/scheme/httpd/surflets/packages.scm +++ b/scheme/httpd/surflets/packages.scm @@ -330,6 +330,8 @@ sel-if-option? select-sel-if-option! unselect-sel-if-option! + add-sel-if-option! + delete-sel-if-option! set-sel-if-option-selected?! make-radio-input-field-group diff --git a/scheme/httpd/surflets/surflet-input-fields.scm b/scheme/httpd/surflets/surflet-input-fields.scm index 07abd83..d2f27cb 100644 --- a/scheme/httpd/surflets/surflet-input-fields.scm +++ b/scheme/httpd/surflets/surflet-input-fields.scm @@ -196,6 +196,27 @@ (define (unselect-sel-if-option! tag sel-if) (set-select-input-field-option-selected?! tag sel-if #f)) +(define (add-sel-if-option! sel-if sel-if-option) + (let ((attributes (input-field-attributes sel-if))) + (set-input-field-attributes-default! + attributes + (cons sel-if-option + (input-field-attributes-default attributes))) + (touch-input-field! sel-if))) + +(define (delete-sel-if-option! sel-if sel-if-option) + (let* ((attributes (input-field-attributes sel-if)) + (sel-if-options (input-field-attributes-default attributes))) + (if (sel-if-option? sel-if-option) + (set-input-field-attributes-default! + attributes + (delete sel-if-option sel-if-options)) + (let ((tag sel-if-option)) + (set-input-field-attributes-default! + attributes + (delete tag sel-if-options tag=sel-if-option?)))) + (touch-input-field! sel-if))) + (define (set-select-input-field-option-selected?! tag sel-if selected?) (let ((options (input-field-attributes-default (input-field-attributes sel-if))))