diff options
author | nwhitehorn <nwhitehorn@FreeBSD.org> | 2011-01-12 14:55:02 +0000 |
---|---|---|
committer | nwhitehorn <nwhitehorn@FreeBSD.org> | 2011-01-12 14:55:02 +0000 |
commit | 3d4e8889889e5e36302454225999f7e146d3219c (patch) | |
tree | fa315b999f531039df54ab7af8e99f7e8daad77c /contrib/dialog/samples/inputmenu3 | |
parent | b905920a72950a63c9782b4911d252bfac08db6e (diff) | |
download | FreeBSD-src-3d4e8889889e5e36302454225999f7e146d3219c.zip FreeBSD-src-3d4e8889889e5e36302454225999f7e146d3219c.tar.gz |
Update dialog to version 20100428. This changes the license under which
dialog is distributed from GPLv2 to LGPLv2 and introduces a number of new
features and a new and better libdialog API. The existing libdialog will
be kept temporarily as libodialog for compatibility purposes until sade,
sysinstall and tzsetup have been either updated or replaced.
__FreeBSD_version is now 900030.
Discussed on: -current
Approved by: core
Obtained from: http://invisible-island.net/dialog
Diffstat (limited to 'contrib/dialog/samples/inputmenu3')
-rwxr-xr-x | contrib/dialog/samples/inputmenu3 | 106 |
1 files changed, 106 insertions, 0 deletions
diff --git a/contrib/dialog/samples/inputmenu3 b/contrib/dialog/samples/inputmenu3 new file mode 100755 index 0000000..e3250d8 --- /dev/null +++ b/contrib/dialog/samples/inputmenu3 @@ -0,0 +1,106 @@ +#! /bin/sh +# $Id: inputmenu3,v 1.10 2010/01/13 10:32:51 tom Exp $ +# +# "inputmenu1" with defaultitem, help-button and item-help. + +. ./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" \ + --item-help "$@" \ + --inputmenu "Originally I designed --inputmenu for a \ +configuration purpose. Here is a possible piece of a configuration program." \ +20 60 10 \ + "Username:" "$user" "User login-name" \ + "UID:" "$uid" "User-ID (number)" \ + "GID:" "$gid" "Group-ID (number)" \ + "HOME:" "$home" "User's home-directory" \ +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) + case $value in + HELP*) + "$DIALOG" \ + --textbox "$0" 0 0 + ;; + *) + "$DIALOG" \ + --clear \ + --backtitle "$backtitle" \ + --msgbox "useradd \n\ + -d $home \n\ + -u $uid \n\ + -g $gid \n\ + $user" 10 40 + ;; + esac + ;; + $DIALOG_HELP) + "$DIALOG" \ + --textbox "$0" 0 0 + ;; + $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 |