浏览代码

New menu style

Bob Mottram 7 年前
父节点
当前提交
13c7f604e9
共有 1 个文件被更改,包括 10 次插入18 次删除
  1. 10
    18
      src/freedombone-template

+ 10
- 18
src/freedombone-template 查看文件

354
 echo '}'
354
 echo '}'
355
 echo ''
355
 echo ''
356
 echo "function configure_interactive_${app_name} {"
356
 echo "function configure_interactive_${app_name} {"
357
+echo '    W=(1 $"Option 1"'
358
+echo '       2 $"Option 2")'
359
+echo ''
357
 echo '    while true'
360
 echo '    while true'
358
 echo '    do'
361
 echo '    do'
359
-echo "        data=\$(mktemp 2>/dev/null)"
360
-echo "        dialog --backtitle \$\"Freedombone Control Panel\" \\"
361
-echo "               --title \$\"${app_name}\" \\"
362
-echo "               --radiolist \$\"Choose an operation:\" 16 70 3 \\"
363
-echo "               1 \$\"Option 1\" off \\"
364
-echo "               2 \$\"Option 2\" off \\"
365
-echo "               3 \$\"Exit\" on 2> \"\$data\""
366
-echo '        sel=$?'
367
-echo "        case \$sel in"
368
-echo "            1) rm -f \"\$data\""
369
-echo '               return;;'
370
-echo "            255) rm -f \"\$data\""
371
-echo '                 return;;'
372
-echo '        esac'
373
-echo "        case \$(cat \"\$data\") in"
362
+echo '        # shellcheck disable=SC2068'
363
+echo "        selection=\$(dialog --backtitle \$\"Freedombone Administrator Control Panel\" --title \$\"${app_name}\" --menu \$\"Choose an operation, or ESC for main menu:\" 14 70 3 \"\${W[@]}\" 3>&2 2>&1 1>&3)"
364
+echo ''
365
+echo "        if [ ! \"\$selection\" ]; then"
366
+echo '           break'
367
+echo '        fi'
368
+echo "        case \$selection in"
374
 echo '            1) # call some function for option 1'
369
 echo '            1) # call some function for option 1'
375
 echo '               ;;'
370
 echo '               ;;'
376
 echo '            2) # call some function for option 2'
371
 echo '            2) # call some function for option 2'
377
 echo '               ;;'
372
 echo '               ;;'
378
-echo "            3) rm -f \"\$data\""
379
-echo '               break;;'
380
 echo '        esac'
373
 echo '        esac'
381
-echo "        rm -f \"\$data\""
382
 echo '    done'
374
 echo '    done'
383
 echo '}'
375
 echo '}'
384
 echo ''
376
 echo ''