#! /usr/dt/bin/dtksh

##########################################################################
#  (c) Copyright 1993, 1994 Hewlett-Packard Company	
#  (c) Copyright 1993, 1994 International Business Machines Corp.
#  (c) Copyright 1993, 1994 Sun Microsystems, Inc.
#  (c) Copyright 1993, 1994 Unix System Labs, Inc., a subsidiary of
#      Novell, Inc.
##########################################################################


#
# This sample shell script demonstrates how to create a list widget, and
# verifies that the XmListItemPos command operates correctly.  The list
# contains multiple items with the label "item4"; XmListItemPos will
# return the position of the first occurrence.  By selecting the push
# button labeled "Delete First Item", you can delete the first item
# labeled "item4"; the next call to XmListItemPos should now return
# the position of the next item labeled "item4".
#

# Pushbutton Callback: prints the position occupied by the first occurrence
#                      of the "item4" label.
GetItemPosition()
{
   XmListItemPos POS $LIST "item4"
   echo "First position for item4 is: "$POS
}

# Pushbutton Callback: deletes the first item in the list.
DelFirstItem()
{
   XmListDeletePos $LIST 1
}

######################### Create the Main UI #################################

XtInitialize TOPLEVEL listItemPos1 ListItemPos1 "$0" "$@"
XtSetValues $TOPLEVEL allowShellResize:True

XmCreateScrolledList LIST $TOPLEVEL list \
	itemCount:11 \
	items:"item4,item2,item4,item3,item5,item6,item7,item8,item9,item4,item11" \
	visibleItemCount:15 \
	listSizePolicy:VARIABLE
XtSetValues $LIST \
	selectedItemCount:3 \
	selectedItems:"item2,item4,item6"
XtManageChild $LIST

XtRealizeWidget $TOPLEVEL

XtCreateApplicationShell TOPLEVEL2 ListItemPos1a TopLevelShell

XtCreateManagedWidget RC rc XmRowColumn $TOPLEVEL2 \
         orientation:HORIZONTAL \
         numColumns:2 \
         packing:PACK_COLUMN 

XtCreateManagedWidget PB1 pb1 XmPushButton $RC \
	labelString:"Get Position Of item4"
XtAddCallback $PB1 activateCallback "GetItemPosition"

XtCreateManagedWidget PB2 pb2 XmPushButton $RC \
	labelString:"Delete First Item"
XtAddCallback $PB2 activateCallback "DelFirstItem"

XtRealizeWidget $TOPLEVEL2

XtMainLoop
