diff options
Diffstat (limited to 'Build/source/utils/dialog/dialog-1.1-20100119/samples/inputmenu2')
-rwxr-xr-x | Build/source/utils/dialog/dialog-1.1-20100119/samples/inputmenu2 | 97 |
1 files changed, 97 insertions, 0 deletions
diff --git a/Build/source/utils/dialog/dialog-1.1-20100119/samples/inputmenu2 b/Build/source/utils/dialog/dialog-1.1-20100119/samples/inputmenu2 new file mode 100755 index 00000000000..f560aba3d21 --- /dev/null +++ b/Build/source/utils/dialog/dialog-1.1-20100119/samples/inputmenu2 @@ -0,0 +1,97 @@ +#! /bin/sh +# $Id: inputmenu2,v 1.8 2010/01/13 10:32:04 tom Exp $ +# +# "inputmenu1" with defaultitem, help-button. + +. ./setup-vars + +backtitle="An Example for the use of --inputmenu:" + +ids=`id|sed -e 's/([^)]*)//g'` +uid=`echo "$ids" | sed -e 's/^uid=//' -e 's/ .*//'` +gid=`echo "$ids" | sed -e 's/^.* gid=//' -e 's/ .*//'` + +user="$USER" +home="$HOME" + +returncode=0 +defaultitem="Username:" +while test $returncode != 1 && test $returncode != 250 +do +exec 3>&1 +value=`$DIALOG --clear --ok-label "Create" \ + --backtitle "$backtitle" \ + --help-button \ + --help-label "Script" \ + --default-item "$defaultitem" "$@" \ + --inputmenu "Originally I designed --inputmenu for a \ +configuration purpose. Here is a possible piece of a configuration program." \ +20 60 10 \ + "Username:" "$user" \ + "UID:" "$uid" \ + "GID:" "$gid" \ + "HOME:" "$home" \ +2>&1 1>&3` +returncode=$? +exec 3>&- + + case $returncode in + $DIALOG_HELP) + "$DIALOG" \ + --textbox "$0" 0 0 + ;; + $DIALOG_CANCEL) + "$DIALOG" \ + --clear \ + --backtitle "$backtitle" \ + --yesno "Really quit?" 10 30 + case $? in + $DIALOG_OK) + break + ;; + $DIALOG_CANCEL) + returncode=99 + ;; + esac + ;; + $DIALOG_OK) + "$DIALOG" \ + --clear \ + --backtitle "$backtitle" \ + --msgbox "useradd \n\ + -d $home \n\ + -u $uid \n\ + -g $gid \n\ + $user" 10 40 + ;; + $DIALOG_EXTRA) + tag=`echo "$value" |sed -e 's/^RENAMED //' -e 's/:.*/:/'` + item=`echo "$value" |sed -e 's/^.*:[ ]*//' -e 's/[ ]*$//'` + + case "$tag" in + Username:) + user="$item" + ;; + UID:) + uid="$item" + ;; + GID:) + gid="$item" + ;; + HOME:) + home="$item" + ;; + *) + tag= + ;; + esac + test -n "$tag" && defaultitem="$tag" + ;; + + $DIALOG_ESC) + echo "ESC pressed." + break + ;; + + esac +done |