| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748 |
- DEFINITION MODULE GWinC2M;
- (* A simple interface to parts of the graph module.
- Note that a major aim is to provide a device independant co-ord system.
- Therefore all windows are from (0,0) Top-Left to (1024,1024) bottom right
- *)
- (*# data(class_hierarchy=>off,cpp_compatible_class=>on) *)
- (*# module(implementation=>off,init_code=>off) *)
- (*# call(c_conv=>on)*)
- CONST
- GCoord::=INTEGER;
- TYPE
- ErrType=(ErrNoErr,ErrUnknownAdapter,ErrFewerColors,ErrUnknownMode);
- VAR
- _GraphErr:ErrType;
- (*# save*)
- (*# name(prefix=>c)*)
- PROCEDURE cputs(X:ADDRESS);
- (*# restore *)
- CLASS GWindow;
- XScale,YScale:GCoord;
- NumColors:INTEGER;
- ok:BOOLEAN;
- XL,YT,XR,YB:GCoord;
- PreviousMode:INTEGER;
- CurrentColor,CurrentBackColor:INTEGER;
- (* There are some private functions which I am keeping private *)
- PROCEDURE ct__@Fssssi(x1,y1,x2,y2:GCoord;cr:INTEGER);
- PROCEDURE dt__;
- PROCEDURE ReSize(x1,y1,x2,y2:GCoord);
- PROCEDURE SetColor(Col,BkCol:INTEGER);
- PROCEDURE Clear(BkCol:INTEGER);
- PROCEDURE Plot(x,y:GCoord;Col:INTEGER);
- PROCEDURE Point(x,y:GCoord):INTEGER;
- PROCEDURE Fill(x,y:GCoord;bound:INTEGER;Flood:BOOLEAN);
- PROCEDURE Line(x1,y1,x2,y2:GCoord;Col:INTEGER);
- PROCEDURE Rectangle(left,top,width,height:GCoord;fill:INTEGER);
- PROCEDURE Polygon(nsides:INTEGER;px,py:ADDRESS;fill:INTEGER);
- PROCEDURE Ellipse(x,y,major,minor:GCoord;fill:INTEGER);
- PROCEDURE EllipticArc(x,y,major,minor:GCoord;StartAngle,EndAngle:INTEGER);
- PROCEDURE EllipticPie(x,y,major,minor:GCoord;Start,EndAngle,Fill:INTEGER);
- PROCEDURE Cuboid(X,Y,widht,height,depth:GCoord;top,fill:INTEGER);
- PROCEDURE CursorPosition(x,y:GCoord);
- PROCEDURE CharHeight():INTEGER;
- PROCEDURE CharWidth():INTEGER;
- END GWindow;
- END GWinC2M.
|