home *** CD-ROM | disk | FTP | other *** search
/ The Developer Connection…ice Driver Kit for OS/2 3 / DEV3-D1.ISO / source / bento / headers / clipbd.h < prev    next >
Encoding:
C/C++ Source or Header  |  1994-03-02  |  3.2 KB  |  112 lines

  1. /*
  2.     File:        Clipbd.h
  3.  
  4.     Contains:    Class definition for XMPClipboard.
  5.  
  6.     Written by:    Vincent Lo
  7.  
  8.     Copyright:    ⌐ 1993 by Apple Computer, Inc., all rights reserved.
  9.  
  10.     Change History (most recent first):
  11.  
  12.         <12>     2/15/94    CC        Bug #1142933 - Added key parameter to
  13.                                     SetPlatformClipboard.
  14.         <11>      2/4/94    VL        Moved to PPC Header and began code cleanup.
  15.         <10>     1/21/94    CC        Replaced GetTimeStamp()with GetChangeID;
  16.                                     Lock() returns boolean result and returns
  17.                                     key in second parameter.
  18.          <9>     1/14/94    CC        Added type XMPClipboardKey, added key
  19.                                     parameter to various routines, replaced
  20.                                     GetGeneration() with GetTimeStamp.
  21.          <8>     12/2/93    CC        Added Lock(), Unlock(), and GetGeneration()
  22.          <7>    10/27/93    CC        Moved clipboard focus constant to
  23.                                     Arbitrat.h
  24.          <6>    10/27/93    CC        Added methods to transfer to/from the
  25.                                     platform clipboard.
  26.          <5>    10/20/93    CC        Added session parameter to XMPClipboard
  27.                                     constructor; added SetPlatformClipboard
  28.                                     method; added code to create the clipboard
  29.                                     container.
  30.          <4>      7/1/93    VL        Made this into an abstract base class.
  31.          <3>     4/29/93    VL        8.3 Name Change.
  32.          <2>     4/23/93    VL        Added Initialize and Purge.
  33.          <1>      4/8/93    VL        first checked in
  34.  
  35.     To Do:
  36. */
  37.  
  38. #ifndef _CLIPBD_
  39. #define _CLIPBD_
  40.  
  41. #ifndef _XMPTYPES_
  42. #include "XMPTypes.h"
  43. #endif
  44.  
  45. #ifndef _XMPOBJ_
  46. #include "XMPObj.h"
  47. #endif
  48.  
  49. //=====================================================================================
  50. // Types defined in this interface
  51. //=====================================================================================
  52. typedef XMPULong XMPClipboardKey;
  53.  
  54. //=====================================================================================
  55. // Classes defined in this interface
  56. //=====================================================================================
  57. class XMPAbsClipboard;
  58.  
  59. //=====================================================================================
  60. // Classes used by this interface
  61. //=====================================================================================
  62. class XMPStorageUnit;
  63. class XMPSession;
  64. class XMPPlatformTypeSet;
  65.  
  66. //=====================================================================================
  67. // XMPClipboard
  68. //=====================================================================================
  69.  
  70. class XMPAbsClipboard : public XMPObject
  71. {
  72. public:
  73.         
  74.     XMPAbsClipboard() : XMPObject() {}
  75.     
  76.     XMPVMethod ~XMPAbsClipboard() {}
  77.     
  78.     XMPVMethod XMPSize Purge(XMPSize size)
  79.         = 0;
  80.  
  81.     XMPVMethod XMPBoolean Lock(XMPULong wait, XMPClipboardKey* key)
  82.         = 0;
  83.                                
  84.     XMPVMethod void Unlock(XMPClipboardKey key)
  85.         = 0;
  86.  
  87.     XMPVMethod XMPChangeID GetChangeID()
  88.         = 0;
  89.                               
  90.     XMPVMethod void Clear(XMPClipboardKey key)
  91.         = 0;
  92.         
  93.     XMPVMethod XMPStorageUnit* GetContentStorageUnit(XMPClipboardKey key)
  94.         = 0;
  95.         
  96.     XMPVMethod void SetPlatformClipboard(
  97.                         XMPPlatformTypeSet* typeSet,
  98.                         XMPClipboardKey key)
  99.         = 0;
  100.  
  101.     XMPVMethod void ExportClipboard(XMPClipboardKey key)
  102.         = 0;
  103. };
  104.  
  105. #ifdef PLATFORM_MACINTOSH
  106. #ifndef _CLIPBDM_
  107. #include "ClipbdM.h"
  108. #endif
  109. #endif
  110.  
  111. #endif // _CLIPBD_
  112.