r3550@krups: intrigeri | 2005-11-15 00:47:09 +0100
authorintrigeri <intrigeri@758a04ac-41e6-0310-8a23-8373a73cc35d>
Tue, 29 Nov 2005 10:07:49 +0000 (10:07 +0000)
committerintrigeri <intrigeri@758a04ac-41e6-0310-8a23-8373a73cc35d>
Tue, 29 Nov 2005 10:07:49 +0000 (10:07 +0000)
 Fix listBegin/listItem/listDisplay to work with checklist boxes, as advertized.

git-svn-id: http://code.autistici.org/svn/backupninja/trunk@234 758a04ac-41e6-0310-8a23-8373a73cc35d

handlers/easydialog.sh

index 18cb7c31c96e7506d785859eaabc1ad5ccda8f83..ff3659f25583852f6eca558257e75ecb5fc661c9 100644 (file)
@@ -157,11 +157,13 @@ listBegin() {
    _menu_items=0
    _menu_text=
    _menu_labels=
+   _menu_status=
 }
 
 listItem() {
    _menu_labels[$_menu_items]=$1
    _menu_text[$_menu_items]=$2
+   _menu_status[$_menu_items]=$3 # available only for checklist
    let "_menu_items += 1"
 }
 
@@ -175,6 +177,9 @@ listDisplay() {
    local temp=$(mktemp -t) || exit 1
    trap "rm -f $temp" 0
    
+   local label
+   local text
+   local status
    (
       echo -ne " $HELP $_DEFAULT "
       echo -ne " --backtitle '$BACKTITLE' "
@@ -184,7 +189,8 @@ listDisplay() {
       for ((i=0; i < $_menu_items ; i++)); do
         label=${_menu_labels[$i]}
         text=${_menu_text[$i]}
-        echo -ne " $label '$text' "
+       status=${_menu_status[$i]}
+        echo -ne " $label '$text' $status "
       done
    ) | xargs $DIALOG 2> $temp