diff options
author | Devin Teske <dteske@FreeBSD.org> | 2015-02-10 03:15:54 +0000 |
---|---|---|
committer | Devin Teske <dteske@FreeBSD.org> | 2015-02-10 03:15:54 +0000 |
commit | b39eff3362b60b3f3b9ccff0a7f3bb543128b7fb (patch) | |
tree | b21385432d60fdffa7114d210928d71bfb91a135 /usr.sbin/bsdconfig | |
parent | 3c63cc68aede27b10861ec56db126766281b4642 (diff) | |
download | src-b39eff3362b60b3f3b9ccff0a7f3bb543128b7fb.tar.gz src-b39eff3362b60b3f3b9ccff0a7f3bb543128b7fb.zip |
Add bsdconfig api function f_dialog_menutag2help()
Notes
Notes:
svn path=/head/; revision=278491
Diffstat (limited to 'usr.sbin/bsdconfig')
-rw-r--r-- | usr.sbin/bsdconfig/share/dialog.subr | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/usr.sbin/bsdconfig/share/dialog.subr b/usr.sbin/bsdconfig/share/dialog.subr index 13d209cfead0..c83c0c6ad487 100644 --- a/usr.sbin/bsdconfig/share/dialog.subr +++ b/usr.sbin/bsdconfig/share/dialog.subr @@ -2116,6 +2116,39 @@ f_dialog_menutag2index_with_help() return $FAILURE } +# f_dialog_menutag2help $tag_chosen $tag1 $item1 $help1 $tag2 $item2 $help2 ... +# +# To use the `--menu' option of dialog(1) with the `--item-help' option, you +# must pass an ordered list of tag/item/help triplets on the command-line. When +# the user selects a menu option the tag for that item is printed to stderr. +# +# This function allows you to dereference the tag chosen by the user back into +# the help associated with said tag (item is discarded/ignored). +# +# Pass the tag chosen by the user as the first argument, followed by the +# ordered list of tag/item/help triplets (HINT: use the same tag/item/help list +# as was passed to dialog(1) for consistency). +# +# If the tag cannot be found, NULL is returned. +# +f_dialog_menutag2help() +{ + local tag="$1" tagn help + shift 1 # tag + + while [ $# -gt 0 ]; do + tagn="$1" + help="$3" + shift 3 # tagn/item/help + + if [ "$tag" = "$tagn" ]; then + echo "$help" + return $SUCCESS + fi + done + return $FAILURE +} + ############################################################ INIT FUNCTIONS # f_dialog_init |