X-Git-Url: https://git.distorted.org.uk/~mdw/termux-packages/blobdiff_plain/abe8a8de2b1eeac0ee2693525e0bed3631b35fe7..382cfb780ca9a40f80e3932544bd32aeccb66e5a:/packages/termux-api/termux-dialog diff --git a/packages/termux-api/termux-dialog b/packages/termux-api/termux-dialog index 640edd16..2a244464 100755 --- a/packages/termux-api/termux-dialog +++ b/packages/termux-api/termux-dialog @@ -1,30 +1,45 @@ #!/bin/sh - set -e -u -SCRIPTNAME=$0 +SCRIPTNAME=termux-dialog show_usage () { - echo "usage: $SCRIPTNAME [OPTIONS]" - echo " Show a text entry dialog." - echo " -i, --input-hint The input hint to show when the input is empty" - echo " -p, --password Enter the input as a password" + echo "Usage: $SCRIPTNAME [-i hint] [-m] [-p] [-t title]" + echo "Show a text entry dialog." + echo "" + echo " -i hint the input hint to show when the input is empty" + echo " -m use a textarea with multiple lines instead of a single" + echo " -p enter the input as a password" + echo " -t title the title to show for the input prompt" + echo "" + exit 0 } PARAMS="" -O=`busybox getopt -q -l help -l input-hint: -l password -- hi:p "$@"` -if [ $? != 0 ] ; then show_usage; exit 1 ; fi -eval set -- "$O" -while true; do -case "$1" in - -h|--help) show_usage; exit 0;; - -i|--input-hint) PARAMS="$PARAMS --es input_hint '$2'"; shift 2;; - -p|--password) PARAMS="$PARAMS --es input_type password"; shift 1;; - --) shift; break;; - *) echo Error; exit 1;; -esac + +ARG_I="" +OPT_I="" +ARG_M="" +ARG_P="" +ARG_T="" +OPT_T="" + +while getopts :hi:mpt: option +do + case "$option" in + h) show_usage;; + i) ARG_I="--es input_hint"; OPT_I="$OPTARG";; + m) ARG_M="--ez multiple_lines true";; + p) ARG_P="--es input_type password";; + t) ARG_T="--es input_title"; OPT_T="$OPTARG";; + ?) echo "$SCRIPTNAME: illegal option -$OPTARG"; exit 1; + esac done +shift $(($OPTIND-1)) + +if [ $# != 0 ]; then echo "$SCRIPTNAME: too many arguments"; exit 1; fi -# Too many arguments: -if [ $# != 0 ]; then show_usage; exit 1; fi +set -- $ARG_M $ARG_P +if [ -n "$ARG_I" ]; then set -- "$@" $ARG_I "$OPT_I"; fi +if [ -n "$ARG_T" ]; then set -- "$@" $ARG_T "$OPT_T"; fi -eval @TERMUX_API@ Dialog $PARAMS +@TERMUX_API@ Dialog "$@"