summaryrefslogtreecommitdiffstats
path: root/contrib/dialog/samples/inputmenu3
diff options
context:
space:
mode:
authornwhitehorn <nwhitehorn@FreeBSD.org>2011-01-12 14:55:02 +0000
committernwhitehorn <nwhitehorn@FreeBSD.org>2011-01-12 14:55:02 +0000
commit3d4e8889889e5e36302454225999f7e146d3219c (patch)
treefa315b999f531039df54ab7af8e99f7e8daad77c /contrib/dialog/samples/inputmenu3
parentb905920a72950a63c9782b4911d252bfac08db6e (diff)
downloadFreeBSD-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-xcontrib/dialog/samples/inputmenu3106
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
OpenPOWER on IntegriCloud