home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / odtlktv4.zip / ODTLKT / TOOLKIT / IDL / LINKSRC.IDL < prev    next >
Text File  |  1995-12-13  |  3KB  |  109 lines

  1. /********************************************************************/
  2. /*  Licensed Materials - Property of IBM                            */
  3. /*                                                                  */
  4. /*                                                                  */
  5. /* Copyright (C) International Business Machines Corp., 1994.       */
  6. /* Copyright (C) Apple Computer, Inc., 1994                         */
  7. /*                                                                  */
  8. /*  US Government Users Restricted Rights -                         */
  9. /*  Use, duplication, or disclosure restricted                      */
  10. /*  by GSA ADP Schedule Contract with IBM Corp.                     */
  11. /*                                                                  */
  12. /*                                                                  */
  13. /********************************************************************/
  14.  
  15.  
  16. #ifndef _LINKSRC_
  17. #define _LINKSRC_
  18.  
  19. #ifndef _LINKSRCB_
  20. #include "LinkSrcB.idl"
  21. #endif
  22.  
  23. #ifndef _ODDEFS_
  24. #include "IODDefs.idl"
  25. #endif
  26.  
  27. //==============================================================================
  28. // Theory of Operation
  29. //==============================================================================
  30.  
  31. /*
  32.   This class is used to represent the source side of OpenDoc links. ODDrafts
  33.   create and own these links. The source ODPart will ask the draft to create
  34.   an ODLinkSource and an ODLink pair, and return the ODLink object to the
  35.   the destination part.  The destination part uses the ODLink object to
  36.   extract the contents of the link.
  37. */
  38.  
  39. //==============================================================================
  40. // Classes defined in this interface
  41. //==============================================================================
  42.  
  43. interface  ODLinkSource;
  44.  
  45. //==============================================================================
  46. // Classes used by this interface
  47. //==============================================================================
  48.  
  49. interface ODStorageUnit;
  50. interface ODPart;
  51. interface ODLink;
  52.  
  53.  
  54. //==============================================================================
  55. // ODLinkSource
  56. //==============================================================================
  57.  
  58. #if defined(_PLATFORM_MACINTOSH_) || defined(_PLATFORM_OS2_)
  59.  
  60. interface ODLinkSource : ODBaseLinkSource
  61. {
  62. #ifdef _PLATFORM_OS2_
  63.   void SetDescription (in ODLinkDescription desc);
  64.     // Called by source Part to set its description.
  65.  
  66.   void GetDescription (out ODLinkDescription desc);
  67.     // Called by source Part to get its description.
  68.  
  69. #endif /*_PLATFORM_OS2_*/
  70.  
  71. #ifdef __SOMIDL__
  72.   implementation
  73.   {
  74.   functionprefix = ODLinkSource;
  75.   override:
  76.     somInit,
  77.     somUninit,
  78.     Release,
  79.     Externalize,
  80.     ReleaseAll,
  81.     CloneInto,
  82.     SetAutoUpdate,
  83.     ShowSourceContent,
  84.     SetSourcePart;
  85.  
  86.   releaseorder:
  87. #ifdef _PLATFORM_OS2_
  88.     SetDescription,
  89.     GetDescription,
  90. #endif /*_PLATFORM_OS2_*/
  91.       reserved1,
  92.       reserved2,
  93. #ifdef _PLATFORM_MACINTOSH_
  94.       reserved3,
  95.       reserved4,
  96. #endif
  97.       reserved5,
  98.       reserved6;
  99.  
  100.   majorversion = 1; minorversion = 0;
  101.  
  102.   };
  103. #endif // __SOMIDL_
  104. };
  105.  
  106. #endif // _PLATFORM_MACINTOSH_
  107.  
  108. #endif // _LINKSRC_
  109.