.\"##
.\" $XConsortium: p356,v 5.2 94/04/17 20:58:36 rws Exp $
.\"##
.\"## 
$XMCOPY
.\"## Copyright (c) 1990, 1991 by Sun Microsystems, Inc. 
.\"## 
.\"##                         All Rights Reserved
.\"## 
.\"## Permission to use, copy, modify, and distribute this software and its 
.\"## documentation for any purpose and without fee is hereby granted, 
.\"## provided that the above copyright notice appear in all copies and that
.\"## both that copyright notice and this permission notice appear in 
.\"## supporting documentation, and that the name of Sun Microsystems,
.\"## not be used in advertising or publicity 
.\"## pertaining to distribution of the software without specific, written 
.\"## prior permission.  
.\"## 
.\"## SUN MICROSYSTEMS DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, 
.\"## INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
.\"## EVENT SHALL SUN MICROSYSTEMS BE LIABLE FOR ANY SPECIAL, INDIRECT OR
.\"## CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF
.\"## USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
.\"## OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
.\"## PERFORMANCE OF THIS SOFTWARE.
.TH "SET PICK IDENTIFIER" 3P "29 February 1991"
.SH NAME
SET PICK IDENTIFIER \- create structure element to set the current 
pick identifier attribute
.IX "Pick Input Devices" "SET PICK IDENTIFIER"
.IX "Special Attributes" "SET PICK IDENTIFIER"
.IX "Attributes, Special Attributes" "SET PICK IDENTIFIER"
.IX "SET PICK IDENTIFIER" "" "" "" PRINT "See Generalized Structure Elements"
.SH SYNOPSIS
.SS C Syntax
.ft B
.ta 1.25i 3i
.nf
void
pset_pick_id ( pick_id )
Pint	pick_id;	\fIpick identifier\fP
.fi
.ft R
.SS Required PHIGS Operating States
(PHOP, *, STOP, *)
.SH DESCRIPTION
.SS Purpose
\s-2SET PICK IDENTIFIER\s+2 creates a structure element
containing a value for the current pick identifier attribute,
which applies to all output primitives
which follow in the structure network.
.LP
If the current edit mode is \s-2INSERT\s+2,
a \s-2SET PICK IDENTIFIER\s+2 element is inserted into the currently open
structure after the element pointed to by the current element pointer. If
the edit mode is \s-2REPLACE\s+2, the new \s-2SET PICK IDENTIFIER\s+2 element
replaces the element pointed to by the element pointer. In either case, the
element pointer is updated to point to the new element.
.SS C Input Parameter
.IP \fIpick_id\fP
The \fIpick identifier\fP value.
.SS Execution
When the conceptual traversal of a posted structure network
(to determine what primitive is being picked) starts,
the current pick identifier is 0.
When the \s-2SET PICK IDENTIFIER\s+2 element is traversed, the
current pick identifier is set to the element's \fIpick identifier\fP value,
and is associated with all output primitives
that follow in the structure network.
.LP
If a primitive is picked,
the pick identifier at each level in the pick path
is part of a \s-2PICK\s+2 input device's measure, and
can provide the application auxiliary information about the picked primitive.
.\" Can anyone improve the "what it's for" part?
.LP
The \fIpick identifier\fP is \fBnot\fP used to determine
which primitives are pickable;
\s-2ADD NAMES TO SET\s+2, \s-2REMOVE NAMES FROM SET\s+2, and \s-2SET PICK FILTER\s+2 perform this activity.
.SH ERRORS
.IP 005
Ignoring function, function requires state (\s-2PHOP, *, STOP, *\s+2)
.SH SEE ALSO
.nf
.IP
.ta 0.5i
.SM "INITIALIZE PICK (3P)"
.SM "SET PICK FILTER (3P)"
.SM "REQUEST PICK (3P)"
.SM "GET PICK (3P)"
.SM "SAMPLE PICK (3P)"
.fi
