GWINM2P.ITF 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. INTERFACE UNIT GWinM2P;
  2. (* A simple interface to parts of the graph module.
  3. Note that a major aim is to provide a device independant co-ord system.
  4. Therefore all windows are from (0,0) Top-Left to (1024,1024) bottom right
  5. *)
  6. ALIAS
  7. GCoord=int16;
  8. TYPE
  9. ErrType=(ErrNoErr,ErrUnknownAdapter,ErrFewerColors,ErrUnknownMode);
  10. VAR
  11. _GraphErr:ErrType;
  12. CLASS GWindow;
  13. XScale,YScale:GCoord;
  14. NumColors:INT16;
  15. ok:BOOLEAN;
  16. XL,YT,XR,YB:GCoord;
  17. PreviousMode:INT16;
  18. CurrentColor,CurrentBackColor:INT16;
  19. (* There are some private functions which I am keeping private *)
  20. STATIC PROCEDURE Open(x1,y1,x2,y2:GCoord;cr:INT16);
  21. STATIC PROCEDURE Close;
  22. STATIC PROCEDURE ReSize(x1,y1,x2,y2:GCoord);
  23. STATIC PROCEDURE SetColor(Col,BkCol:INT16);
  24. STATIC PROCEDURE Clear(BkCol:INT16);
  25. STATIC PROCEDURE Plot(x,y:GCoord;Col:INT16);
  26. STATIC FUNCTION Point(x,y:GCoord):INT16;
  27. STATIC PROCEDURE Fill(x,y:GCoord;bound:INT16;Flood:BOOLEAN);
  28. STATIC PROCEDURE Line(x1,y1,x2,y2:GCoord;Col:INT16);
  29. STATIC PROCEDURE Rectangle(left,top,width,height:GCoord;fill:INT16);
  30. STATIC PROCEDURE Polygon(nsides:INT16;px,py:ADDRESS;fill:INT16);
  31. STATIC PROCEDURE Ellipse(x,y,major,minor:GCoord;fill:INT16);
  32. STATIC PROCEDURE EllipticArc(x,y,major,minor:GCoord;StartAngle,EndAngle:INT16);
  33. STATIC PROCEDURE EllipticPie(x,y,major,minor:GCoord;Start,EndAngle,Fill:INT16);
  34. STATIC PROCEDURE Cuboid(X,Y,widht,height,depth:GCoord;top,fill:INT16);
  35. STATIC PROCEDURE CursorPosition(x,y:GCoord);
  36. STATIC FUNCTION CharHeight:INT16;
  37. STATIC FUNCTION CharWidth:INT16;
  38. END;
  39. END .