home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / opendc12.zip / od124os2.exe / od12otk1.exe / include / Link.idl < prev    next >
Text File  |  1997-04-02  |  5KB  |  137 lines

  1. /* @(#) 1.20 com/src/storage/idl/Link.idl, oddataxfer, od96os2, odos29712d 10/31/96 07:56:42 [3/21/97 17:20:08] */
  2. //#====START_GENERATED_PROLOG======================================
  3. //#
  4. //#
  5. //#   COMPONENT_NAME: oddataxfer
  6. //#
  7. //#   CLASSES: none
  8. //#
  9. //#   ORIGINS: 82,27,94
  10. //#
  11. //#
  12. //#   (C) COPYRIGHT International Business Machines Corp. 1995,1996
  13. //#   All Rights Reserved
  14. //#   Licensed Materials - Property of IBM
  15. //#   US Government Users Restricted Rights - Use, duplication or
  16. //#   disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
  17. //#
  18. //#   IBM DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
  19. //#   ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
  20. //#   PURPOSE. IN NO EVENT SHALL IBM BE LIABLE FOR ANY SPECIAL, INDIRECT OR
  21. //#   CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF
  22. //#   USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
  23. //#   OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE
  24. //#   OR PERFORMANCE OF THIS SOFTWARE.
  25. //#
  26. //#====END_GENERATED_PROLOG========================================
  27. //#
  28.  
  29. //#     Copyright:      (R) 1993 - 1995 by Apple Computer, Inc., all rights reserved.
  30.  
  31. #ifndef _LINK_
  32. #define _LINK_
  33.  
  34. #ifndef _LINKB_
  35. #include "LinkB.idl"
  36. #endif
  37.  
  38. #ifdef _PLATFORM_OS2_
  39.   #ifndef _IODDEFS_
  40.   #include <IODDefs.idl>
  41.   #endif
  42. #endif
  43.  
  44. //==============================================================================
  45. // Theory of Operation (Copied from Feb-13 build)
  46. //==============================================================================
  47.  
  48. /*
  49.   This class is used to represent the destination side of OpenDoc links.
  50.   ODDrafts create and own these links. The source ODPart will ask the draft
  51.   to create an ODLinkSource and an ODLink pair, and return the ODLink
  52.   object to the the destination part.  The destination part uses the ODLink
  53.   object to extract the contents of the link.
  54. */
  55.  
  56. //==============================================================================
  57. // Classes defined in this interface
  58. //==============================================================================
  59.  
  60. interface  ODLink;
  61.  
  62. //==============================================================================
  63. // Classes used by this interface
  64. //==============================================================================
  65.  
  66. interface       ODStorageUnit;
  67. interface       ODLinkSource;
  68.  
  69.  
  70. //==============================================================================
  71. // ODLink
  72. //==============================================================================
  73.  
  74. interface ODLink : ODBaseLink
  75. {
  76. #ifdef _PLATFORM_OS2_
  77.         void SetDescription (in ODLinkDescription Desc);
  78.            // called by target Part to set its description.
  79.  
  80.         void GetDescription (out ODLinkDescription Desc);
  81.            // called by target Part to retrieve the description of itself.
  82.  
  83.         ODBoolean IsRegistered();
  84.            // Returns whether of not this LinkTarget is registered to receive automatic updates.
  85.  
  86. #endif // _PLATFORM_OS2_
  87.  
  88. #ifdef __SOMIDL__
  89. #if defined(_PLATFORM_MACINTOSH_) || defined(_PLATFORM_WIN32_) || defined(_PLATFORM_OS2_) || defined(_PLATFORM_AIX_)
  90.         implementation
  91.         {
  92.                 majorversion = 1; minorversion = 0;
  93.  
  94.                 functionprefix = ODLink;
  95.  
  96.                 override:
  97.                         somUninit,
  98.                         Release,
  99.                         Externalize,
  100.                         ReleaseAll,
  101.                 #if defined(_PLATFORM_MACINTOSH_) || defined(_PLATFORM_WIN32_)
  102.                         ShowLinkDestinationInfo,
  103.                 #endif
  104.                         CloneInto;
  105.  
  106.                 releaseorder:
  107.                 #ifdef _PLATFORM_OS2_
  108.                         SetDescription,
  109.                         GetDescription,
  110.                         IsRegistered,
  111.                 #endif
  112.                         reserved1,
  113.                         reserved2,
  114.                         reserved3,
  115.                         reserved4,
  116.                         reserved5,
  117.                         reserved6,
  118.                         reserved7,
  119.                         reserved8,
  120.                         reserved9,
  121.                         reserved10;
  122.  
  123.                         passthru C_xh = ""
  124.                                                         "#ifdef _PLATFORM_OS2_"
  125.                                                         "#ifndef _ODTYPESB_"
  126.                                                         "#include <ODTypesB.xh>"
  127.                                                         "#endif"
  128.                                                         "#endif"
  129.                                                         "";
  130.  
  131.         };
  132. #endif //# _PLATFORM_MACINTOSH_ or _PLATFORM_WIN32_ or _PLATFORM_OS2_
  133. #endif //# __SOMIDL__
  134. };
  135.  
  136. #endif // _LINK_
  137.