home *** CD-ROM | disk | FTP | other *** search
/ Gold Fish 2 / goldfish_vol2_cd1.bin / files / dev / obero / oberon-a / source / amiga / clipboard.mod < prev    next >
Text File  |  1994-08-08  |  3KB  |  96 lines

  1. (***************************************************************************
  2.  
  3.      $RCSfile: ClipBoard.mod $
  4.   Description: clipboard.device structure definitions
  5.  
  6.    Created by: fjc (Frank Copeland)
  7.     $Revision: 3.2 $
  8.       $Author: fjc $
  9.         $Date: 1994/08/08 00:49:51 $
  10.  
  11.   $VER: clipboard.h 36.5 (2.11.90)
  12.   Includes Release 40.15
  13.  
  14.   (C) Copyright 1985-1993 Commodore-Amiga, Inc.
  15.       All Rights Reserved
  16.  
  17.   Oberon-A interface Copyright © 1994, Frank Copeland.
  18.   This file is part of the Oberon-A Interface.
  19.   See Oberon-A.doc for conditions of use and distribution.
  20.  
  21. ***************************************************************************)
  22.  
  23. MODULE ClipBoard;
  24.  
  25. (*
  26. ** $C- CaseChk       $I- IndexChk  $L+ LongAdr   $N- NilChk
  27. ** $P- PortableCode  $R- RangeChk  $S- StackChk  $T- TypeChk
  28. ** $V- OvflChk       $Z- ZeroVars
  29. *)
  30.  
  31. IMPORT E := Exec;
  32.  
  33. CONST
  34.  
  35.   post *                = E.cmdNonstd+0;
  36.   currentReadId *       = E.cmdNonstd+1;
  37.   currentWriteId *      = E.cmdNonstd+2;
  38.   changeHook *          = E.cmdNonstd+3;
  39.  
  40.   errObsoleteId *        = 1;
  41.  
  42. TYPE
  43.  
  44.   ClipboardUnitPartialPtr * = CPOINTER TO ClipboardUnitPartial;
  45.   ClipboardUnitPartial * = RECORD (E.Node) (* list of units *)
  46.     unitNum * : E.ULONG;                   (* unit number for this unit *)
  47.     (* the remaining unit data is private to the device *)
  48.   END; (* ClipboardUnitPartial *)
  49.  
  50.  
  51. TYPE
  52.  
  53.   IOClipReqPtr * = CPOINTER TO IOClipReq;
  54.   IOClipReq * = RECORD (E.Message)
  55.     device *  : E.DevicePtr;   (* device node pointer *)
  56.     unit *    : ClipboardUnitPartialPtr; (* unit node pointer *)
  57.     command * : E.UWORD;       (* device command *)
  58.     flags *   : E.BSET;        (* including QUICK and SATISFY *)
  59.     error *   : SHORTINT;      (* error or warning num *)
  60.     actual *  : E.ULONG;       (* number of bytes transferred *)
  61.     ioLength *: E.ULONG;       (* number of bytes requested *)
  62.     data *    : E.APTR;        (* either clip stream or post port *)
  63.     offset *  : E.ULONG;       (* offset in clip stream *)
  64.     clipID *  : LONGINT;       (* ordinal clip identifier *)
  65.   END; (* IOClipReq *)
  66.  
  67. CONST
  68.  
  69.   primaryClip *    = 0;       (* primary clip unit *)
  70.  
  71. TYPE
  72.  
  73.   SatisfyMsgPtr * = CPOINTER TO SatisfyMsg;
  74.   SatisfyMsg * = RECORD (E.Message) (* the length will be 6 *)
  75.     unit *   : E.UWORD;             (* which clip unit this is *)
  76.     clipID * : LONGINT;             (* the clip identifier of the post *)
  77.   END; (* SatisfyMsg *)
  78.  
  79. TYPE
  80.  
  81.   ClipHookMsgPtr * = CPOINTER TO ClipHookMsg;
  82.   ClipHookMsg * = RECORD
  83.     type *      : E.ULONG; (* zero for this structure format *)
  84.     changeCmd * : LONGINT; (* command that caused this hook invocation: *)
  85.                            (*   either cmdUpdate or cbdPost *)
  86.     clipID *    : LONGINT; (* the clip identifier of the new data *)
  87.   END; (* ClipHookMsg *)
  88.  
  89.  
  90. CONST
  91.  
  92.   name * = "clipboard.device";
  93.  
  94.  
  95. END ClipBoard.
  96.