diff options
Diffstat (limited to 'Build/source/utils/dialog/dialog-1.1-20110302/samples/inputmenu4')
-rwxr-xr-x | Build/source/utils/dialog/dialog-1.1-20110302/samples/inputmenu4 | 86 |
1 files changed, 86 insertions, 0 deletions
diff --git a/Build/source/utils/dialog/dialog-1.1-20110302/samples/inputmenu4 b/Build/source/utils/dialog/dialog-1.1-20110302/samples/inputmenu4 new file mode 100755 index 00000000000..a872527c915 --- /dev/null +++ b/Build/source/utils/dialog/dialog-1.1-20110302/samples/inputmenu4 @@ -0,0 +1,86 @@ +#! /bin/sh +# $Id: inputmenu4,v 1.8 2010/01/13 10:33:35 tom Exp $ +# +# "inputmenu1" with a different label for the extra-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 +while test $returncode != 1 && test $returncode != 250 +do +exec 3>&1 +value=`$DIALOG --clear --ok-label "Create" \ + --extra-label "Edit" \ + --backtitle "$backtitle" "$@" \ + --inputmenu "Originally I designed --inputmenu for a \ +configuration purpose. Here is a possible piece of a configuration program." \ +20 50 10 \ + "Username:" "$user" \ + "UID:" "$uid" \ + "GID:" "$gid" \ + "HOME:" "$home" \ +2>&1 1>&3` +returncode=$? +exec 3>&- + + case $returncode in + $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" + ;; + esac + ;; + + $DIALOG_ESC) + echo "ESC pressed." + break + ;; + + esac +done |