home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1997 January: Mac OS SDK / Dev.CD Jan 97 SDK2.toast / Development Kits (Disc 2) / OpenDoc Development Framework / ODFDev / ODF / OS / FWGraphx / SLRender.h < prev    next >
Encoding:
Text File  |  1996-09-17  |  5.5 KB  |  221 lines  |  [TEXT/MPS ]

  1. //========================================================================================
  2. //
  3. //    File:                FWPriRas.h
  4. //    Release Version:    $ ODF 2 $
  5. //
  6. //    Copyright:    (c) 1993 - 1996 by Apple Computer, Inc., all rights reserved.
  7. //
  8. //========================================================================================
  9.  
  10. #ifndef SLRENDER_H
  11. #define SLRENDER_H
  12.  
  13. #ifndef SLGRDEF_H
  14. #include "SLGrDef.h"
  15. #endif
  16.  
  17. #ifndef SLGCONST_K
  18. #include "SLGConst.k"
  19. #endif
  20.  
  21. #ifndef SLSHATTR_H
  22. #include "SLShAttr.h"
  23. #endif
  24.  
  25. #ifndef SLICON_H
  26. #include "SLIcon.h"
  27. #endif
  28.  
  29. #ifndef SLPOLY_H
  30. #include "SLPoly.h"
  31. #endif
  32.  
  33. #ifndef SLPICTUR_H
  34. #include "SLPictur.h"
  35. #endif
  36.  
  37. #ifndef SLBITMAP_H
  38. #include "SLBitmap.h"
  39. #endif
  40.  
  41. #ifndef SLSTRREP_H
  42. #include "SLStrRep.h"
  43. #endif
  44.  
  45. #ifndef SLCHARIT_H
  46. #include "SLCharIt.h"
  47. #endif
  48.  
  49. //========================================================================================
  50. // Forward declarations
  51. //========================================================================================
  52.  
  53. struct FW_SGraphicContext;
  54.  
  55. class ODShape;
  56.  
  57. //========================================================================================
  58. // Rendering APIs
  59. //========================================================================================
  60.  
  61. // Export or Import functions for CFM-68K [sfu]
  62.  
  63. #if defined(FW_ODFLIB_IMPORT)
  64. #pragma import on
  65. #elif defined(FW_ODFLIB)
  66. #pragma export on
  67. #endif
  68.  
  69. FW_EXTERN_C_BEGIN
  70.  
  71. void         SL_API    FW_PrivRenderRect(Environment* ev,
  72.                         FW_SGraphicContext&    gc,
  73.                         const FW_SRect&        rect,
  74.                         FW_ERenderVerbs        renderVerb,
  75.                         FW_HInk                ink,
  76.                         FW_HStyle             style);
  77.  
  78. void        SL_API    FW_PrivRenderOval(Environment* ev,
  79.                         FW_SGraphicContext&    gc,
  80.                         const FW_SRect&        rect,
  81.                         FW_ERenderVerbs        renderVerb,
  82.                         FW_HInk                ink,
  83.                         FW_HStyle            style);
  84.                             
  85. void        SL_API    FW_PrivRenderRoundRect(Environment* ev,
  86.                         FW_SGraphicContext&    gc,
  87.                         const FW_SRect&        rect,
  88.                         const FW_SPoint&    ovalSize,
  89.                         FW_ERenderVerbs        renderVerb,
  90.                         FW_HInk                ink,
  91.                         FW_HStyle             style);
  92.                             
  93. void        SL_API    FW_PrivRenderArc(Environment* ev,
  94.                         FW_SGraphicContext&    gc,
  95.                         const FW_SRect&     rect, 
  96.                         short                 startAngle,
  97.                         short                 arcAngle,
  98.                         FW_ERenderVerbs        renderVerb,
  99.                         FW_HInk                ink,
  100.                         FW_HStyle            style);
  101.  
  102. void        SL_API    FW_PrivRenderLine(Environment* ev,
  103.                         FW_SGraphicContext&    gc,
  104.                         const FW_SPoint&    start, 
  105.                         const FW_SPoint&    end,
  106.                         FW_ERenderVerbs        renderVerb,
  107.                         FW_HInk                ink,
  108.                         FW_HStyle            style);
  109.  
  110. void        SL_API    FW_PrivRenderRegion(Environment* ev,
  111.                         FW_SGraphicContext& gc,
  112.                         ODShape*            odShape,
  113.                         FW_ERenderVerbs        renderVerb,
  114.                         FW_HInk                ink,
  115.                         FW_HStyle            style);
  116.                                             
  117. void        SL_API    FW_PrivRenderPolygon(Environment* ev,
  118.                         FW_SGraphicContext& gc,
  119.                         FW_HPolygon            polygon,
  120.                         FW_ERenderVerbs     renderVerb,
  121.                         FW_Boolean             autoCloseFrame,
  122.                         FW_HInk             ink,
  123.                         FW_HStyle             style);
  124.                                             
  125. void        SL_API    FW_PrivRenderTextString(Environment* ev,
  126.                         FW_SGraphicContext&    gc,
  127.                         FW_HString            string,
  128.                         const FW_SPoint&    position,
  129.                         FW_TextAlignment    textAlignment,
  130.                         FW_ERenderVerbs        renderVerb,
  131.                         FW_HInk                ink,
  132.                         FW_HFont             font);
  133.                                 
  134. void        SL_API    FW_PrivRenderTextReader(Environment* ev,
  135.                         FW_SGraphicContext&    gc,
  136.                         FW_HTextReader        reader,
  137.                         const FW_SPoint&    position,
  138.                         FW_TextAlignment    textAlignment,
  139.                         FW_ERenderVerbs        renderVerb,
  140.                         FW_HInk                ink,
  141.                         FW_HFont            font);
  142.                                 
  143. FW_Fixed    SL_API    FW_PrivRenderTextBoxString(Environment* ev,
  144.                         FW_SGraphicContext& gc,
  145.                         FW_HString            string, 
  146.                         const FW_SRect&        box,
  147.                         FW_TextBoxOptions    options,
  148.                         FW_ERenderVerbs        renderVerb,
  149.                         FW_HInk                ink,
  150.                         FW_HFont            font);
  151.  
  152. FW_Fixed    SL_API    FW_PrivRenderTextBoxReader(Environment* ev,
  153.                         FW_SGraphicContext& gc,
  154.                         FW_HTextReader        reader, 
  155.                         const FW_SRect&        box,
  156.                         FW_TextBoxOptions    options,
  157.                         FW_ERenderVerbs        renderVerb,
  158.                         FW_HInk                ink,
  159.                         FW_HFont            font);
  160.  
  161. void        SL_API    FW_PrivTextBoxSizeString(Environment* ev,
  162.                         FW_SGraphicContext&    gc,
  163.                         FW_HString            string, 
  164.                         FW_HFont            font,
  165.                         FW_TextBoxOptions    options,
  166.                         FW_SRect&            textBox);
  167.  
  168. void        SL_API    FW_PrivTextBoxSizeReader(Environment* ev,
  169.                         FW_SGraphicContext& gc,
  170.                         FW_HTextReader        reader, 
  171.                         FW_HFont            font,
  172.                         FW_TextBoxOptions    options,
  173.                         FW_SRect&            textBox);
  174.  
  175. void        SL_API    FW_PrivCalcTextExtentString(Environment* ev,
  176.                         FW_SGraphicContext& gc,
  177.                         FW_HString            string,
  178.                         FW_HFont             font, 
  179.                         FW_SPoint&             textExtent);
  180.  
  181. void        SL_API    FW_PrivCalcTextExtentReader(Environment* ev,
  182.                         FW_SGraphicContext&    gc,
  183.                         FW_HTextReader        reader,
  184.                         FW_HFont             font, 
  185.                         FW_SPoint&             textExtent);
  186.  
  187. void        SL_API    FW_PrivRenderPicture(Environment* ev,
  188.                         FW_SGraphicContext&    gc,
  189.                         FW_HPicture            picture,
  190.                         const FW_SRect&        dstRect,
  191.                         FW_ERenderVerbs        renderVerb);
  192.  
  193. void        SL_API    FW_PrivRenderBitmap(Environment* ev,
  194.                         FW_SGraphicContext&    gc,
  195.                         FW_HBitmap            bitmap,
  196.                         const FW_SRect&        srcRect,
  197.                         const FW_SRect&        dstRect,
  198.                         FW_ERenderVerbs        renderVerb,
  199.                         FW_HInk                ink);
  200.                                                     
  201. void        SL_API    FW_PrivRenderIcon(Environment* ev,
  202.                         FW_SGraphicContext&    gc,
  203.                           FW_HIcon            icon,
  204.                         const FW_SRect&        rect,
  205.                         FW_RenderIconTransform    transform,
  206.                         FW_RenderIconAlignment    alignment,
  207.                         FW_ERenderVerbs        renderVerb);
  208.  
  209. FW_EXTERN_C_END
  210.  
  211. // For CFM-68K [sfu]
  212.  
  213. #if defined(FW_ODFLIB_IMPORT)
  214. #pragma import off
  215. #elif defined(FW_ODFLIB)
  216. #pragma export off
  217. #endif
  218.  
  219. #endif // SLRENDER_H
  220.  
  221.