#! /usr/dt/bin/dtksh
#  $XConsortium: TextCutBuf1.src /main/3 1996/04/23 20:18:52 drk $

# #########################################################################
#   (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 the Text cut, copy and paste
#  facilities work.
# 

#  Pushbutton Callback: cut the currently select text
Cut()
{
   if XmTextCut $TEXT $(XtLastTimestampProcessed "-" $(XtDisplay "-" $TEXT)); 
   then
      echo "Cut occurred"
   else
      echo "No primary selection"
   fi
}

#  Pushbutton Callback: copy the currently select text
Copy()
{
   if XmTextCopy $TEXT $(XtLastTimestampProcessed "-" $(XtDisplay "-" $TEXT)); 
   then
      echo "Copy occurred"
   else
      echo "No primary selection"
   fi
}

#  Pushbutton Callback: clear the text selection
ClearSelection()
{
   XmTextClearSelection $TEXT $(XtLastTimestampProcessed "-" $(XtDisplay "-" $TEXT))
}

#  Pushbutton Callback: paste the cut buffer at the current insertion position
Paste()
{
   if XmTextPaste $TEXT; then
      echo "Paste occurred"
   else
      echo "No primary selection"
   fi
}


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

XtInitialize TOPLEVEL textCutBuf1 TextCutBuf1 "$0" "$@"
XtSetValues $TOPLEVEL allowShellResize:True

XtCreateManagedWidget FORM form XmForm $TOPLEVEL   

XtCreateManagedWidget TEXT text XmText $FORM  	topAttachment:ATTACH_FORM  	topOffset:10  	leftAttachment:ATTACH_FORM  	leftOffset:10  	rightAttachment:ATTACH_FORM  	rightOffset:10  	columns:40  	value:"This is the default string"









XtCreateManagedWidget TEXT2 text2 XmText $FORM  	topAttachment:ATTACH_WIDGET  	topWidget:$TEXT  	topOffset:10  	leftAttachment:ATTACH_FORM  	leftOffset:10  	rightAttachment:ATTACH_FORM  	rightOffset:10  	bottomAttachment:ATTACH_FORM  	bottomOffset:10  	columns:40  	editable:False


XtRealizeWidget $TOPLEVEL

XtCreateApplicationShell TOPLEVEL2 textCutBuf1a TopLevelShell

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




XtCreateManagedWidget PB1 pb1 XmPushButton $RC  	labelString:"Cut Selection"

XtAddCallback $PB1 activateCallback "Cut"

XtCreateManagedWidget PB2 pb2 XmPushButton $RC  	labelString:"Copy Selection"

XtAddCallback $PB2 activateCallback "Copy"

XtCreateManagedWidget PB3 pb3 XmPushButton $RC  	labelString:"Paste"

XtAddCallback $PB3 activateCallback "Paste"

XtCreateManagedWidget PB4 pb4 XmPushButton $RC  	labelString:"Clear Selection"

XtAddCallback $PB4 activateCallback "ClearSelection"

XtRealizeWidget $TOPLEVEL2

XtMainLoop

