home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / odtlktv4.zip / ODTLKT / TOOLKIT / IDL / TRNSFORM.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 _TRNSFORM_
  17. #define _TRNSFORM_
  18.  
  19. #ifndef _TRNSFRMB_
  20. #include "TrnsfrmB.idl"
  21. #endif
  22.  
  23. //==============================================================================
  24. // Constants & types defined in this interface
  25. //==============================================================================
  26. #ifdef _PLATFORM_OS2_
  27. struct OS2MATRIXLF {
  28.    long  fxM11;
  29.    long  fxM12;
  30.    long  lM13;
  31.    long  fxM21;
  32.    long  fxM22;
  33.    long  lM23;
  34.    long  lM31;
  35.    long  lM32;
  36.    long  lM33;
  37. };
  38. typedef OS2MATRIXLF MATRIXLF;
  39. #endif // _PLATFORM_OS2_
  40.  
  41. //==============================================================================
  42. // Classes defined in this interface
  43. //==============================================================================
  44.  
  45. interface  ODTransform;
  46.  
  47. //==============================================================================
  48. // Classes used by this interface
  49. //==============================================================================
  50.  
  51. interface ODShape;
  52. interface ODStorageUnit;
  53.  
  54. //==============================================================================
  55. // ODTransform
  56. //==============================================================================
  57.  
  58. #if defined(_PLATFORM_MACINTOSH_) || defined(_PLATFORM_OS2_)
  59.  
  60. interface ODTransform :  ODBaseTransform
  61. {
  62.    void InitTransform();
  63.  
  64. #ifdef _PLATFORM_OS2_
  65.  
  66.    void GetMATRIXLF(out MATRIXLF mtx);
  67.  
  68.    void SetMATRIXLF(in MATRIXLF mtx);
  69.  
  70.    void TransformPoints(in ODByteArray points, in ODULong npoints);
  71.  
  72. #else
  73.   ODBoolean IsQDOffset();
  74.  
  75.     Point GetQDOffset();
  76.  
  77.     ODTransform SetQDOffset(in Point point);
  78. #endif // ! _PLATFORM_OS2_
  79.  
  80. #ifdef __SOMIDL__
  81.   implementation
  82.   {
  83.     releaseorder:
  84.       InitTransform,
  85. #ifndef _PLATFORM_OS2_
  86.       IsQDOffset,
  87.       GetQDOffset,
  88.       SetQDOffset;
  89. #else
  90.       GetMATRIXLF,
  91.       SetMATRIXLF,
  92.       reserved,
  93.       TransformPoints;
  94.  
  95. #endif // ! _PLATFORM_OS2_
  96.  
  97.     majorversion = 1; minorversion = 0;
  98.  
  99.     functionprefix = ODTransform__;
  100.  
  101.   };
  102. #endif
  103. };
  104.  
  105. #endif // _PLATFORM_MACINTOSH_ || _PLATFORM_OS2_
  106.  
  107. #endif // _TRNSFORM_
  108.  
  109.