xref: /freebsd/contrib/dialog/samples/inputmenu-stdout (revision a96ef4501919d7ac08e94e98dc34b0bdd744802b)
12a3e3873SBaptiste Daroussin#! /bin/sh
2*a96ef450SBaptiste Daroussin# $Id: inputmenu-stdout,v 1.17 2020/11/26 00:30:01 tom Exp $
34c8945a0SNathan Whitehorn# 2002 - written by Tobias Rittweiler <tobrit@freebits.de>
44c8945a0SNathan Whitehorn
54c8945a0SNathan Whitehorn. ./setup-vars
64c8945a0SNathan Whitehorn
72a3e3873SBaptiste Daroussinuser="$USER"
82a3e3873SBaptiste Daroussinuid=`id|sed -e 's/^uid=//' -e 's/(.*//'`
92a3e3873SBaptiste Daroussingid=`id|sed -e 's/^.*gid=//' -e 's/(.*//'`
102a3e3873SBaptiste Daroussinhome="$HOME"
114c8945a0SNathan Whitehorn
12*a96ef450SBaptiste Daroussinwhile [ "${returncode:-99}" -ne 1 ] && [ "${returncode:-99}" -ne 250 ]; do
13*a96ef450SBaptiste Daroussin	returntext=`$DIALOG \
142a3e3873SBaptiste Daroussin		--stdout --clear --ok-label "Create" \
154c8945a0SNathan Whitehorn		--backtitle "An Example for the use of --inputmenu:" "$@" \
164c8945a0SNathan Whitehorn		--inputmenu "Originally I designed --inputmenu for a \
172a3e3873SBaptiste Daroussinconfiguration purpose. Here is a possible piece of a configuration program. \
182a3e3873SBaptiste Daroussin" 20 50 10 \
192a3e3873SBaptiste Daroussin"Username:" "$user" \
202a3e3873SBaptiste Daroussin"UID:"      "$uid" \
212a3e3873SBaptiste Daroussin"GID:"      "$gid" \
222a3e3873SBaptiste Daroussin"HOME:"     "$home" \
232a3e3873SBaptiste Daroussin`
244c8945a0SNathan Whitehorn	returncode=$?
254c8945a0SNathan Whitehorn	case $returncode in
264c8945a0SNathan Whitehorn	$DIALOG_CANCEL)
272a3e3873SBaptiste Daroussin		"$DIALOG" \
282a3e3873SBaptiste Daroussin			--clear --backtitle "An Example for the use of --inputmenu:" \
294c8945a0SNathan Whitehorn			--yesno "Really quit?" 10 30
304c8945a0SNathan Whitehorn		case $? in
314c8945a0SNathan Whitehorn		$DIALOG_OK) break;;
324c8945a0SNathan Whitehorn		$DIALOG_CANCEL) returncode=99;;
334c8945a0SNathan Whitehorn		esac
344c8945a0SNathan Whitehorn		;;
354c8945a0SNathan Whitehorn	$DIALOG_OK)
362a3e3873SBaptiste Daroussin		"$DIALOG" \
372a3e3873SBaptiste Daroussin			--clear --backtitle "An Example for the use of --inputmenu:"  \
384c8945a0SNathan Whitehorn			--msgbox "useradd \n\
394c8945a0SNathan Whitehorn				-d $home \n\
404c8945a0SNathan Whitehorn				-u $uid \n\
414c8945a0SNathan Whitehorn				-g $gid \n\
424c8945a0SNathan Whitehorn				$user" 10 40
434c8945a0SNathan Whitehorn		;;
444c8945a0SNathan Whitehorn	$DIALOG_EXTRA)
45*a96ef450SBaptiste Daroussin		value=`echo "$returntext" | sed -e 's/^RENAMED //'`
462a3e3873SBaptiste Daroussin		tag=`echo "$value" | sed -e 's/:.*//'`
472a3e3873SBaptiste Daroussin		item=`echo "$value" | sed -e 's/^[^:]*:[ 	][ 	]*//'`
484c8945a0SNathan Whitehorn
494c8945a0SNathan Whitehorn		case "$tag" in
504c8945a0SNathan Whitehorn		Username) user="$item" ;;
514c8945a0SNathan Whitehorn		UID)	  uid="$item"  ;;
524c8945a0SNathan Whitehorn		GID)	  gid="$item"  ;;
534c8945a0SNathan Whitehorn		HOME)	  home="$item" ;;
544c8945a0SNathan Whitehorn		esac
554c8945a0SNathan Whitehorn		;;
564c8945a0SNathan Whitehorn
57*a96ef450SBaptiste Daroussin	*)
58*a96ef450SBaptiste Daroussin		. ./report-button
594c8945a0SNathan Whitehorn		break
604c8945a0SNathan Whitehorn		;;
614c8945a0SNathan Whitehorn
624c8945a0SNathan Whitehorn	esac
634c8945a0SNathan Whitehorndone
64