xref: /freebsd/contrib/dialog/samples/form3 (revision 123af6ec70016f5556da5972d4d63c7d175c06d3)
1#! /bin/sh
2# $Id: form3,v 1.6 2010/01/13 10:49:52 tom Exp $
3# form1 with --help-button
4
5. ./setup-vars
6
7backtitle="An Example for the use of --form:"
8
9ids=`id|sed -e 's/([^)]*)//g'`
10uid=`echo "$ids" | sed -e 's/^uid=//' -e 's/ .*//'`
11gid=`echo "$ids" | sed -e 's/^.* gid=//' -e 's/ .*//'`
12
13user="$USER"
14home="$HOME"
15
16returncode=0
17while test $returncode != 1 && test $returncode != 250
18do
19exec 3>&1
20value=`$DIALOG --ok-label "Submit" \
21	  --help-button \
22	  --backtitle "$backtitle" "$@" \
23	  --form "Here is a possible piece of a configuration program." \
2420 50 0 \
25	"Username:" 1 1	"$user" 1 10 10 0 \
26	"UID:"      2 1	"$uid"  2 10  8 0 \
27	"GID:"      3 1	"$gid"  3 10  8 0 \
28	"HOME:"     4 1	"$home" 4 10 40 0 \
292>&1 1>&3`
30returncode=$?
31exec 3>&-
32
33show=`echo "$value" |sed -e 's/^/	/'`
34
35	case $returncode in
36	$DIALOG_CANCEL)
37		"$DIALOG" \
38		--clear \
39		--backtitle "$backtitle" \
40		--yesno "Really quit?" 10 30
41		case $? in
42		$DIALOG_OK)
43			break
44			;;
45		$DIALOG_CANCEL)
46			returncode=99
47			;;
48		esac
49		;;
50	$DIALOG_OK)
51		"$DIALOG" \
52		--clear \
53		--backtitle "$backtitle" --no-collapse --cr-wrap \
54		--msgbox "Resulting data:\n\
55$show" 10 40
56		;;
57	$DIALOG_HELP)
58		"$DIALOG" \
59		--clear \
60		--backtitle "$backtitle" --no-collapse --cr-wrap \
61		--msgbox "Help data:\n\
62$show" 10 40
63		;;
64	*)
65		echo "Return code was $returncode"
66		exit
67		;;
68	esac
69done
70