home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / odtlktv4.zip / ODTLKT / TOOLKIT / IDL / TRNSFRMB.IDL < prev    next >
Text File  |  1995-12-13  |  4KB  |  125 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. #ifndef _TRNSFRMB_
  16. #define _TRNSFRMB_
  17.  
  18. #ifndef _REFCTOBJ_
  19. #include "RefCtObj.idl"
  20. #endif
  21.  
  22. //==============================================================================
  23. // Classes defined in this interface
  24. //==============================================================================
  25.  
  26. interface  ODBaseTransform;
  27.  
  28. //==============================================================================
  29. // Classes used by this interface
  30. //==============================================================================
  31.  
  32. interface ODTransform;
  33. interface ODShape;
  34. interface ODStorageUnit;
  35.  
  36. //==============================================================================
  37. // ODTransform
  38. //==============================================================================
  39.  
  40. interface ODBaseTransform :  ODRefCntObject
  41. {
  42.  
  43.   ODTransform    NewTransform();
  44.     ODTransform    Copy();
  45.  
  46.     ODTransformType  GetType();
  47.     void      GetOffset(out ODPoint offset);
  48.     void      GetPreScaleOffset(out ODPoint offset);
  49.     void      GetScale(out ODPoint scale);
  50.     void      GetMatrix(out ODMatrix matrix);
  51.     ODBoolean    HasMatrix();
  52.  
  53.     ODBoolean    IsSameAs(in ODTransform compareTransform);
  54.  
  55.     ODTransform    Reset();
  56.     ODTransform    SetMatrix(in ODMatrix matrix);
  57.     ODTransform    CopyFrom(in ODTransform sourceTransform);
  58.  
  59.     ODTransform    SetOffset(in ODPoint point);
  60.     ODTransform    MoveBy(in ODPoint point);
  61.     ODTransform    ScaleBy( in ODPoint scale);
  62.     ODTransform    ScaleDownBy( in ODPoint scale);
  63.  
  64.     ODTransform    Invert( );
  65.     ODTransform    PreCompose(in ODTransform transform);
  66.     ODTransform    PostCompose(in ODTransform transform);
  67.  
  68.     void      TransformPoint(inout ODPoint point);
  69.     void      InvertPoint(inout ODPoint point);
  70.     void      TransformShape(in ODShape shape);
  71.     void      InvertShape(in ODShape shape);
  72.  
  73.     void      WriteTo(in ODStorageUnit storageUnit);
  74.     void      ReadFrom(in ODStorageUnit storageUnit);
  75.  
  76.  
  77. #ifdef __SOMIDL__
  78.   implementation
  79.   {
  80.     override:
  81.       somInit,
  82.       somUninit,
  83.       Purge,
  84.       Release;
  85.  
  86.     releaseorder:
  87.       GetType,
  88.       GetOffset,
  89.       GetPreScaleOffset,
  90.       GetScale,
  91.       GetMatrix,
  92.       HasMatrix,
  93.       IsSameAs,
  94.       Reset,
  95.       SetMatrix,
  96.       Copy,
  97.       CopyFrom,
  98.       SetOffset,
  99.       MoveBy,
  100.       ScaleBy,
  101.       ScaleDownBy,
  102.       Invert,
  103.       PreCompose,
  104.       PostCompose,
  105.       TransformPoint,
  106.       InvertPoint,
  107.       TransformShape,
  108.       InvertShape,
  109.       WriteTo,
  110.       ReadFrom,
  111.       NewTransform,
  112.       reserved1,
  113.       reserved2;
  114.  
  115.     majorversion = 1; minorversion = 0;
  116.  
  117.     functionprefix = ODBaseTransform__;
  118.  
  119.   };
  120. #endif
  121. };
  122.  
  123. #endif // _TRNSFRMB_
  124.  
  125.