GWINM2P.DEF 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. DEFINITION MODULE 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. CONST
  7. GCoord::=INTEGER;
  8. TYPE
  9. ErrType=(ErrNoErr,ErrUnknownAdapter,ErrFewerColors,ErrUnknownMode);
  10. VAR
  11. _GraphErr:ErrType;
  12. CLASS GWindow;
  13. XScale,YScale:GCoord;
  14. NumColors:INTEGER;
  15. ok:BOOLEAN;
  16. XL,YT,XR,YB:GCoord;
  17. PreviousMode:INTEGER;
  18. CurrentColor,CurrentBackColor:INTEGER;
  19. (* There are some private functions which I am keeping private *)
  20. PROCEDURE Open(x1,y1,x2,y2:GCoord;ColsReq:INTEGER);
  21. PROCEDURE Close;
  22. PROCEDURE ReSize(x1,y1,x2,y2:GCoord);
  23. PROCEDURE SetColor(Col,BkCol:INTEGER);
  24. PROCEDURE Clear(BkCol:INTEGER);
  25. PROCEDURE Plot(x,y:GCoord;Col:INTEGER);
  26. PROCEDURE Point(x,y:GCoord):INTEGER;
  27. PROCEDURE Fill(x,y:GCoord;bound:INTEGER;Flood:BOOLEAN);
  28. PROCEDURE Line(x1,y1,x2,y2:GCoord;Col:INTEGER);
  29. PROCEDURE Rectangle(left,top,width,height:GCoord;fill:INTEGER);
  30. PROCEDURE Polygon(nsides:INTEGER;px,py:ADDRESS;fill:INTEGER);
  31. PROCEDURE Ellipse(x,y,major,minor:GCoord;fill:INTEGER);
  32. PROCEDURE EllipticArc(x,y,major,minor:GCoord;StartAngle,EndAngle:INTEGER);
  33. PROCEDURE EllipticPie(x,y,major,minor:GCoord;Start,EndAngle,FillQ:INTEGER);
  34. PROCEDURE Cuboid(X,Y,width,height,depth:GCoord;top,fill:INTEGER);
  35. PROCEDURE CursorPosition(x,y:GCoord);
  36. PROCEDURE CharHeight():INTEGER;
  37. PROCEDURE CharWidth():INTEGER;
  38. PROCEDURE VectorFromAngle(Ang:INTEGER;VAR X,Y:GCoord);
  39. PROCEDURE ArcServer(X,Y,Major,Minor:GCoord;StartA,EndA:INTEGER;Pie,FillQ:BOOLEAN);
  40. PROCEDURE AffixColor(Col,BkCol:INTEGER);
  41. PROCEDURE XReal(x:GCoord):GCoord;
  42. PROCEDURE YReal(x:GCoord):GCoord;
  43. PROCEDURE XPhys(x:GCoord):GCoord;
  44. PROCEDURE YPhys(x:GCoord):GCoord;
  45. PROCEDURE Colour(x:INTEGER):INTEGER;
  46. END GWindow;
  47. END GWinM2P.