/* C code generated by:							*/
/* Visual Arts Version 2.1						*/
/* Copyright (c)1994-95 Danny Y. Wong  All rights reserved		*/
/* Calgary, Alberta (CANADA)                        			*/

extern struct Window  *ClipBoardWnd;
extern struct Gadget *ClipBoardGadgets[ClipBoardNumGads];
extern void CreateClipBoardLists(void);
extern UBYTE *DevicesLabels[];

struct List *ClipBoardLists[1];

long gclipdevice = 0;      // global to hold the clipboard device # 0 -9

void CreateClipBoardLists(void)
{
  short i;

  i=0;
  while (DevicesLabels[i])
     AddNewNode(ClipBoardLists[0], DevicesLabels[i++]);

}

			 /* gadget functions */

int writeObj(struct VAobject VAObject)
{
  BOOL ok;
  
  // get the text from the string gadget and write to clipboard
  
  ok = CBWriteLine(gclipdevice, GetString(ClipBoardGadgets[ID_entry]));
  if (ok)
  {
    GT_SetGadgetAttrs(ClipBoardGadgets[ID_Display], ClipBoardWnd, NULL,
       GTTX_Text, "", TAG_DONE);
    GT_SetGadgetAttrs(ClipBoardGadgets[ID_entry], ClipBoardWnd, NULL,
       GTST_String, "", TAG_DONE);
  }
  return(1L);
}
/*	Button  Write		 */ 

int quitObj(struct VAobject VAObject)
{
  return(-1L);
}
/*	Button  Quit		 */ 

int entryObj(struct VAobject VAObject)
{
  return(1L);
}
/*	String  Entry		 */ 

int deviceObj(struct VAobject VAObject)
{
  BOOL ok;
  char text[80];
  
  gclipdevice = VAObject.va_IntuiMsg->Code;  // get the device # from cycle
  ok = CBReadLine(gclipdevice, text);        // read the clipboard
  if (ok)                                    // show the retreived text
    GT_SetGadgetAttrs(ClipBoardGadgets[ID_Display], ClipBoardWnd, NULL,
       GTTX_Text, text, TAG_DONE);
  else                                      // empty clipboard
    GT_SetGadgetAttrs(ClipBoardGadgets[ID_Display], ClipBoardWnd, NULL,
       GTTX_Text, "", TAG_DONE);
  return(1L);
}
/*	Cycle  Device		 */ 

