home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / opendc12.zip / od124os2.exe / od12osr1.exe / src / Canvas.idl < prev    next >
Text File  |  1997-03-21  |  7KB  |  221 lines

  1. /* @(#)Z 1.7 com/src/imaging/idl/Canvas.idl, odimaging, od96os2, odos29712d 97/03/21 17:18:20 (96/10/29 09:25:44) */
  2. //#====START_GENERATED_PROLOG======================================
  3. //#
  4. //#
  5. //#   COMPONENT_NAME: odimaging
  6. //#
  7. //#   CLASSES: none
  8. //#
  9. //#   ORIGINS: 82,27
  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. /********************************************************************/
  30. /*  Licensed Materials - Property of IBM                            */
  31. /*                                                                  */
  32. /*                                                                  */
  33. /* Copyright (C) International Business Machines Corp., 1994.       */
  34. /* Copyright (C) Apple Computer, Inc., 1994                         */
  35. /*                                                                  */
  36. /*  US Government Users Restricted Rights -                         */
  37. /*  Use, duplication, or disclosure restricted                      */
  38. /*  by GSA ADP Schedule Contract with IBM Corp.                     */
  39. /*                                                                  */
  40. /*                                                                  */
  41. /********************************************************************/
  42. #ifdef __PRIVATE__
  43. //# IBM Change History (most recent first):                         */
  44. //#         4/02/96 jab  Added additional parameters to             */
  45. //#                      CreatePlatformCanvas.                */
  46. //#         3/13/96 jab  Removed override of Invalidate and         */
  47. //#                      Validate until it is needed on non-Mac     */
  48. //#                      platforms.                                 */
  49. //#                      Removed double underscores from function   */
  50. //#                      prefix.                                    */
  51. //#         2/22/96 jab  Merge with DR4 and OS/2 Feb. 13 drop.      */
  52. //#                      Changes for platform independent code.     */
  53. //# 122394  6/01/95 map  Fix again problem with //# comments        */
  54. //# 120349  5/15/95 map  Fix problem with //# comment on #endifs    */
  55. //# 120349  5/15/95 map  Fix up IDL copyright                       */
  56. //#******************************************************************/
  57. //#
  58. //#    File:        Canvas.idl
  59. //#
  60. //#    Contains:    ODCanvas, a Macintosh drawing environment
  61. //#
  62. //#    Owned by:    Jens Alfke
  63. //#
  64. //#    Copyright:    (r) 1993 - 1995 by Apple Computer, Inc., all rights reserved.
  65. //#
  66. //#    Change History (most recent first):
  67. //#
  68. //#         <8>      9/8/95    jpa        IDL cleanup [1281687]
  69. //#         <7>      8/7/95    JBS        1275083 added overrides Invalidate &
  70. //#                                    Validate
  71. //#         <6>      6/1/95    jpa        Made InitCanvas private [1249200]
  72. //#         <5>     5/25/95    jpa        Use new GX headers [1241078, 1253324]
  73. //#         <4>     12/5/94    jpa        Code review fixes. [1203923]
  74. //#         <3>     8/17/94    jpa        Added "functionprefix" directive. [1181512]
  75. //#         <2>      8/8/94    jpa        API changes for multiformat canvases & bias
  76. //#                                    transforms [1179683, 1178688]
  77. //#        <10>      6/7/94    RR        Privatize change history
  78. //#         <9>     5/26/94    jpa        Moved methods to CanvasB.idl.
  79. //#         <8>      5/4/94    RR        Comment out union for now
  80. //#
  81. //#    To Do:
  82. //# In Progress:
  83. //#        
  84. #else
  85. //#    Copyright:    (r) 1993 - 1995 by Apple Computer, Inc., all rights reserved.
  86. #endif
  87.  
  88. #ifndef _CANVAS_
  89. #define _CANVAS_
  90.  
  91. #ifndef _CANVASB_
  92. #include "CanvasB.idl"      // base class
  93. #endif
  94.  
  95. #if defined( _PLATFORM_OS2_ ) || defined(_PLATFORM_WIN32_) || defined(_PLATFORM_AIX_)
  96. #ifndef _PLATCANV_
  97. #include "PlatCanv.idl"
  98. #endif
  99. #endif // IBM Platforms
  100.  
  101. //==============================================================================
  102. // Mac OS types used in this interface
  103. //==============================================================================
  104.  
  105. /*
  106. #pragma somemittypes off
  107. */
  108.  
  109. typedef unsigned long GrafPtr;        //# C definition is in <QuickDraw.h>
  110.  
  111. /*
  112. #pragma somemittypes on
  113. */
  114.  
  115. //==============================================================================
  116. // Classes defined in this interface
  117. //==============================================================================
  118.  
  119. interface  ODCanvas;
  120.  
  121. //==============================================================================
  122. // ODCanvas
  123. //==============================================================================
  124.  
  125. interface ODCanvas :  ODBaseCanvas
  126. {
  127.     //*********************
  128.     // MACINTOSH SPECIFIC
  129.     //*********************
  130.  
  131. #ifdef _PLATFORM_MACINTOSH_
  132.   GrafPtr  GetQDPort( );
  133.   
  134.   ODPlatformCanvas  GetGXViewport( );  // Really a gxViewport; see <graphics types.h>
  135. #endif // _PLATFORM_MACINTOSH_
  136.  
  137. #ifdef __PRIVATE__
  138.   void InitCanvas(in ODGraphicsSystem graphicsSystem,
  139.           in ODPlatformCanvas    platformCanvas,
  140.           in ODBoolean isDynamic,
  141.           in ODBoolean isOffscreen);
  142. #endif  // __PRIVATE__
  143.  
  144.     //*********************
  145.     // IBM CROSS PLATFORM SOLUTION
  146.     //*********************
  147. #if defined( _PLATFORM_OS2_ ) || defined(_PLATFORM_WIN32_) || defined(_PLATFORM_AIX_)
  148.  
  149.   ODPlatformCanvas CreatePlatformCanvas( in ODGraphicsSystem aSystemType,
  150.                      in ODBoolean isDynamic,
  151.                      in ODBoolean isOffScreen );
  152.  
  153. #endif  // IBM Platforms
  154.  
  155.  
  156. #ifdef __SOMIDL__
  157.   implementation
  158.   {
  159.     majorversion = 1; minorversion = 0;
  160.         
  161.     releaseorder:
  162. #ifdef _PLATFORM_MACINTOSH_
  163.         GetQDPort,
  164.         GetGXViewport,
  165.  
  166. #ifdef __PRIVATE__
  167.         InitCanvas;
  168. #else
  169.         reserved1;
  170. #endif  // __PRIVATE__
  171.  
  172.     override:
  173.     HasPlatformCanvas,
  174.     GetPlatformCanvas,
  175.     SetPlatformCanvas,
  176.     Invalidate,
  177.     Validate;
  178.  
  179. #endif  // _PLATFORM_MACINTOSH_
  180.  
  181.  
  182. #if defined( _PLATFORM_OS2_ ) || defined(_PLATFORM_WIN32_) || defined(_PLATFORM_AIX_)
  183.  
  184. #ifdef __PRIVATE__
  185.         InitCanvas,
  186. #else
  187.         reserved1,
  188. #endif  // __PRIVATE__
  189.  
  190.         CreatePlatformCanvas;
  191.  
  192.     override:
  193.     HasPlatformCanvas,
  194.     GetPlatformCanvas,
  195.     SetPlatformCanvas;
  196.  
  197. #endif // IBM Platforms
  198.     
  199.     functionprefix = ODCanvas;
  200.     
  201. #ifdef __PRIVATE__
  202.  
  203. #if defined( _PLATFORM_OS2_ ) || defined(_PLATFORM_WIN32_) || defined(_PLATFORM_AIX_)
  204.         ODPlatformCanvas  fPlatformCanvas;
  205. #endif  // IBM Platforms
  206.  
  207. #ifdef _PLATFORM_MACINTOSH_
  208.         ODPlatformCanvas  fQDCanvas;
  209.         ODPlatformCanvas  fGXCanvas;
  210. #endif  // _PLATFORM_MACINTOSH_
  211.  
  212. #endif  // __PRIVATE__ 
  213.   };
  214. #endif
  215. };
  216.  
  217. #endif // _CANVAS_
  218.  
  219.  
  220.  
  221.