xref: /freebsd/contrib/dialog/samples/inputmenu1 (revision 4c8945a06b01a5c8122cdeb402af36bb46a06acc)
1*4c8945a0SNathan Whitehorn#! /bin/sh
2*4c8945a0SNathan Whitehorn# $Id: inputmenu1,v 1.8 2010/01/13 10:31:02 tom Exp $
3*4c8945a0SNathan Whitehorn#
4*4c8945a0SNathan Whitehorn# "inputmenu" rewritten into Bourne shell.
5*4c8945a0SNathan Whitehorn
6*4c8945a0SNathan Whitehorn. ./setup-vars
7*4c8945a0SNathan Whitehorn
8*4c8945a0SNathan Whitehornbacktitle="An Example for the use of --inputmenu:"
9*4c8945a0SNathan Whitehorn
10*4c8945a0SNathan Whitehornids=`id|sed -e 's/([^)]*)//g'`
11*4c8945a0SNathan Whitehornuid=`echo "$ids" | sed -e 's/^uid=//' -e 's/ .*//'`
12*4c8945a0SNathan Whitehorngid=`echo "$ids" | sed -e 's/^.* gid=//' -e 's/ .*//'`
13*4c8945a0SNathan Whitehorn
14*4c8945a0SNathan Whitehornuser="$USER"
15*4c8945a0SNathan Whitehornhome="$HOME"
16*4c8945a0SNathan Whitehorn
17*4c8945a0SNathan Whitehornreturncode=0
18*4c8945a0SNathan Whitehornwhile test $returncode != 1 && test $returncode != 250
19*4c8945a0SNathan Whitehorndo
20*4c8945a0SNathan Whitehornexec 3>&1
21*4c8945a0SNathan Whitehornvalue=`$DIALOG --clear --ok-label "Create" \
22*4c8945a0SNathan Whitehorn	  --backtitle "$backtitle" "$@" \
23*4c8945a0SNathan Whitehorn	  --inputmenu "Originally I designed --inputmenu for a \
24*4c8945a0SNathan Whitehornconfiguration purpose. Here is a possible piece of a configuration program." \
25*4c8945a0SNathan Whitehorn20 50 10 \
26*4c8945a0SNathan Whitehorn	"Username:"	"$user" \
27*4c8945a0SNathan Whitehorn	"UID:"		"$uid" \
28*4c8945a0SNathan Whitehorn	"GID:"		"$gid" \
29*4c8945a0SNathan Whitehorn	"HOME:"		"$home" \
30*4c8945a0SNathan Whitehorn2>&1 1>&3`
31*4c8945a0SNathan Whitehornreturncode=$?
32*4c8945a0SNathan Whitehornexec 3>&-
33*4c8945a0SNathan Whitehorn
34*4c8945a0SNathan Whitehorn	case $returncode in
35*4c8945a0SNathan Whitehorn	$DIALOG_CANCEL)
36*4c8945a0SNathan Whitehorn		"$DIALOG" \
37*4c8945a0SNathan Whitehorn		--clear \
38*4c8945a0SNathan Whitehorn		--backtitle "$backtitle" \
39*4c8945a0SNathan Whitehorn		--yesno "Really quit?" 10 30
40*4c8945a0SNathan Whitehorn		case $? in
41*4c8945a0SNathan Whitehorn		$DIALOG_OK)
42*4c8945a0SNathan Whitehorn			break
43*4c8945a0SNathan Whitehorn			;;
44*4c8945a0SNathan Whitehorn		$DIALOG_CANCEL)
45*4c8945a0SNathan Whitehorn			returncode=99
46*4c8945a0SNathan Whitehorn			;;
47*4c8945a0SNathan Whitehorn		esac
48*4c8945a0SNathan Whitehorn		;;
49*4c8945a0SNathan Whitehorn	$DIALOG_OK)
50*4c8945a0SNathan Whitehorn		"$DIALOG" \
51*4c8945a0SNathan Whitehorn		--clear \
52*4c8945a0SNathan Whitehorn		--backtitle "$backtitle" \
53*4c8945a0SNathan Whitehorn		--msgbox "useradd \n\
54*4c8945a0SNathan Whitehorn			-d $home \n\
55*4c8945a0SNathan Whitehorn			-u $uid \n\
56*4c8945a0SNathan Whitehorn			-g $gid \n\
57*4c8945a0SNathan Whitehorn			$user" 10 40
58*4c8945a0SNathan Whitehorn		;;
59*4c8945a0SNathan Whitehorn	$DIALOG_EXTRA)
60*4c8945a0SNathan Whitehorn		tag=`echo "$value" |sed -e 's/^RENAMED //' -e 's/:.*//'`
61*4c8945a0SNathan Whitehorn		item=`echo "$value" |sed -e 's/^.*:[ ]*//' -e 's/[ ]*$//'`
62*4c8945a0SNathan Whitehorn
63*4c8945a0SNathan Whitehorn		case "$tag" in
64*4c8945a0SNathan Whitehorn		Username)
65*4c8945a0SNathan Whitehorn			user="$item"
66*4c8945a0SNathan Whitehorn			;;
67*4c8945a0SNathan Whitehorn		UID)
68*4c8945a0SNathan Whitehorn			uid="$item"
69*4c8945a0SNathan Whitehorn			;;
70*4c8945a0SNathan Whitehorn		GID)
71*4c8945a0SNathan Whitehorn			gid="$item"
72*4c8945a0SNathan Whitehorn			;;
73*4c8945a0SNathan Whitehorn		HOME)
74*4c8945a0SNathan Whitehorn			home="$item"
75*4c8945a0SNathan Whitehorn			;;
76*4c8945a0SNathan Whitehorn		esac
77*4c8945a0SNathan Whitehorn		;;
78*4c8945a0SNathan Whitehorn
79*4c8945a0SNathan Whitehorn	$DIALOG_ESC)
80*4c8945a0SNathan Whitehorn                echo "ESC pressed."
81*4c8945a0SNathan Whitehorn                break
82*4c8945a0SNathan Whitehorn                ;;
83*4c8945a0SNathan Whitehorn
84*4c8945a0SNathan Whitehorn	esac
85*4c8945a0SNathan Whitehorndone
86