472351e13d
.In header.h instead of .Fd #include \*[Lt]header.h\*[Gt] Much easier to read and write, and supported by groff for ages. Okayed by ross.
107 lines
3.5 KiB
Groff
107 lines
3.5 KiB
Groff
.\" $NetBSD: menu_item_value.3,v 1.11 2003/04/16 13:35:11 wiz Exp $ .\"
|
|
.\" Copyright (c) 1999
|
|
.\" Brett Lymn - blymn@baea.com.au, brett_lymn@yahoo.com.au
|
|
.\"
|
|
.\" This code is donated to The NetBSD Foundation by the author.
|
|
.\"
|
|
.\" Redistribution and use in source and binary forms, with or without
|
|
.\" modification, are permitted provided that the following conditions
|
|
.\" are met:
|
|
.\" 1. Redistributions of source code must retain the above copyright
|
|
.\" notice, this list of conditions and the following disclaimer.
|
|
.\" 2. Redistributions in binary form must reproduce the above copyright
|
|
.\" notice, this list of conditions and the following disclaimer in the
|
|
.\" documentation and/or other materials provided with the distribution.
|
|
.\" 3. The name of the Author may not be used to endorse or promote
|
|
.\" products derived from this software without specific prior written
|
|
.\" permission.
|
|
.\"
|
|
.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND
|
|
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
|
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
|
.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE
|
|
.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
|
.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
|
|
.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
|
.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
|
.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
|
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
|
.\" SUCH DAMAGE.
|
|
.\"
|
|
.Dd September 10, 1999
|
|
.Dt MENU_ITEM_VALUE 3
|
|
.Os
|
|
.Sh NAME
|
|
.Nm item_value ,
|
|
.Nm set_item_value ,
|
|
.Nm item_selected
|
|
.Nd get or set value for an item
|
|
.Sh LIBRARY
|
|
.Lb libmenu
|
|
.Sh SYNOPSIS
|
|
.In menu.h
|
|
.Ft int
|
|
.Fn item_value "ITEM *item"
|
|
.Ft int
|
|
.Fn set_item_value "ITEM *item" "int flag"
|
|
.Ft int
|
|
.Fn item_selected "MENU *menu" "int **array"
|
|
.Sh DESCRIPTION
|
|
The
|
|
.Fn item_value
|
|
function returns value of the item.
|
|
If the item has been selected then this value will be TRUE.
|
|
The value can also be set by calling
|
|
.Fn set_item_value
|
|
to set the value to a defined state.
|
|
Setting the value to a value
|
|
other than TRUE or FALSE will have undefined results.
|
|
The
|
|
.Fn item_selected
|
|
function returns the number of items that are selected in the menu, that
|
|
is the number of items whose value is TRUE.
|
|
The indexes of the selected
|
|
items will be returned in
|
|
.Fa array
|
|
which will be dynamically allocated to hold the number of indexes.
|
|
It is the responsibility of the caller to release this storage by calling
|
|
.Xr free 3
|
|
when the storage is no longer required.
|
|
If there are no elements selected in the items array then
|
|
.Fn item_selected
|
|
will return 0 and
|
|
.Fa array
|
|
will be NULL.
|
|
If an error occurs
|
|
.Fn item_selected
|
|
will return one of the below return values which are less than 0.
|
|
.Sh RETURN VALUES
|
|
The functions return one of the following error values:
|
|
.Pp
|
|
.Bl -tag -width E_REQUEST_DENIED -compact
|
|
.It Er E_OK
|
|
The function was successful.
|
|
.It Er E_NOT_CONNECTED
|
|
The item is not connected to a menu.
|
|
.It Er E_REQUEST_DENIED
|
|
The menu driver could not process the request.
|
|
.It Er E_SYSTEM_ERROR
|
|
A system error occurred whilst processing the request.
|
|
.El
|
|
.Sh SEE ALSO
|
|
.Xr curses 3 ,
|
|
.Xr menus 3
|
|
.Sh NOTES
|
|
The header
|
|
.Pa \*[Lt]menu.h\*[Gt]
|
|
automatically includes both
|
|
.Pa \*[Lt]curses.h\*[Gt]
|
|
and
|
|
.Pa \*[Lt]eti.h\*[Gt] .
|
|
.Pp
|
|
The function
|
|
.Fn item_selected
|
|
is a
|
|
.Nx
|
|
extension and must not be used in portable code.
|