home *** CD-ROM | disk | FTP | other *** search
/ Fresh Fish 6 / FreshFish_September1994.bin / bbs / misc / cp-4.3.lha / cP / Source / cp.h next >
C/C++ Source or Header  |  1994-08-03  |  5KB  |  261 lines

  1. #include <stdio.h>
  2. #include <string.h>
  3. #include <math.h>
  4. #include <ctype.h>
  5. #include <exec/types.h>
  6. #include <exec/memory.h>
  7. #include <exec/lists.h>
  8. #include <dos/dos.h>
  9. #include <dos/dostags.h>
  10. #include <graphics/rastport.h>
  11. #include <graphics/gfxmacros.h>
  12. #include <intuition/intuition.h>
  13. #include <proto/exec.h>
  14. #include <proto/dos.h>
  15. #include <proto/intuition.h>
  16. #include <proto/gadtools.h>
  17. #include <proto/graphics.h>
  18. #include <proto/layers.h>
  19. #include <proto/utility.h>
  20. #include <proto/asl.h>
  21. #include <proto/diskfont.h>
  22. #include <devices/printer.h>
  23. #include <devices/prtbase.h>
  24. #include <rexx/storage.h>
  25. #include <rexx/rxslib.h>
  26.  
  27. #include "simplerexx.h"
  28. #include "plotgui.h"
  29.  
  30. extern BPTR _Backstdout;      /* keep stdout till we get past startup */
  31.  
  32. #define __USE_SYSBASE
  33. #define NT_DATA 250;
  34.  
  35. #define SAIHEIGHT 10
  36. #define SAIWIDTH  15
  37. #define SAIXOFF   -1
  38. #define SAIYOFF    0
  39. #define WAITHEIGHT 9
  40. #define WAITWIDTH 15        /* for our various pointers */
  41. #define WAITXOFF   1
  42. #define WAITYOFF   1
  43. #define XPWIDTH    5
  44. #define XPHEIGHT   7
  45. #define XPXOFF    -3
  46. #define XPYOFF    -3
  47. #define ROBOTHEIGHT 23
  48. #define ROBOTWIDTH  16
  49. #define ROBOTXOFF   -1
  50. #define ROBOTYOFF    0
  51. #define BOOMHEIGHT 20
  52. #define BOOMWIDTH  16
  53. #define BOOMXOFF   -1
  54. #define BOOMYOFF    0
  55. #define IDWIDTH   15
  56. #define IDHEIGHT  15
  57. #define IDXOFF    -8
  58. #define IDYOFF    -7
  59. #define MSWIDTH   15
  60. #define MSHEIGHT  15
  61. #define MSXOFF    -8
  62. #define MSYOFF    -7
  63.  
  64. extern USHORT __chip SAIPointer[];
  65. extern USHORT __chip WAITPointer[];
  66. extern USHORT __chip XPPointer[]; 
  67. extern USHORT __chip ROBOTPointer[];
  68. extern USHORT __chip IDPointer[]; 
  69. extern USHORT __chip MSPointer[]; 
  70.  
  71.  
  72. int OpenGTXScreen( void );
  73.  
  74. int OpenGTXWindow(int (* )());
  75.  
  76. struct TextFont *OpencPFont( void );
  77.  
  78. void Death(int);
  79.  
  80. struct Point {
  81.      struct Point *NextPoint;
  82.      double  xval;
  83.      double  yval;
  84. };
  85.  
  86. struct Set {
  87.      struct Node snode;
  88.      struct Point *FirstPoint;
  89.      char  fn[255];
  90.      int    npt;
  91.      double  xmin;
  92.      double  xmax;
  93.      double  ymin;
  94.      double  ymax;
  95. };
  96.  
  97. struct World {
  98.      double xdelta;
  99.      double ydelta;
  100.      double xmax;
  101.      double xmin;
  102.      double ymax;
  103.      double ymin;
  104. };
  105.  
  106. struct CurView {
  107.      double xmax;
  108.      double xmin;
  109.      double ymax;
  110.      double ymin;
  111.      double xdelta;
  112.      double ydelta;
  113.      double xtik;
  114.      double ytik;
  115.      WORD xsubt;
  116.      WORD ysubt;
  117.      BOOL xmode;
  118.      BOOL ymode;
  119.      WORD xprec;
  120.      WORD yprec;
  121.      double xfact;
  122.      double yfact;
  123.      LONG xdec;
  124.      LONG ydec;
  125. };
  126.  
  127. extern struct World wd;
  128. extern struct CurView cv;
  129. extern struct CurView ov;
  130. extern struct List *SetList;
  131. extern struct TextAttr *cPFont;
  132. extern struct TextFont *fontPtr;
  133. extern UBYTE *path;
  134. extern UBYTE *MyName;
  135. extern UBYTE *XLAB;
  136. extern UBYTE *YLAB;
  137. extern UBYTE *TITLE;
  138. extern struct RastPort *rp;
  139. extern struct ViewPort *vp;
  140. extern LONG thin;
  141. extern LONG points;
  142. extern BOOL grid;
  143. extern BOOL LOGX;
  144. extern BOOL LOGY;
  145. extern BOOL MONO;
  146. extern BOOL sym;
  147. extern BOOL DEFS;
  148. extern BOOL CPANEL;
  149. extern BOOL NOFNAME;
  150. extern BOOL BEHIND;
  151. extern BOOL FEED;
  152. extern BOOL RealTime;
  153. extern WORD WIDTH;
  154. extern WORD HEIGHT;
  155. extern WORD xoff;
  156. extern WORD yoff;
  157. extern LONG Disp;
  158. extern UWORD SWIDTH;
  159. extern UWORD SHEIGHT;
  160. extern WORD GADHEIGHT;
  161. extern WORD GADWIDTH;
  162. extern WORD lastcolor;
  163. extern WORD depth;
  164.  
  165. extern LONG precision;
  166.  
  167. extern AREXXCONTEXT    RexxStuff;
  168.  
  169. BOOL AddSet( UBYTE * );
  170.  
  171. BPTR OpenFile( UBYTE * );
  172.  
  173. struct Point *File2Set( BPTR , struct Set * );
  174.  
  175. void FreePoints(struct Point * );
  176.  
  177. void FreeAllSets( void );
  178.  
  179. void DrawView( BOOL );
  180.  
  181. void FindWorld ( void );
  182.  
  183. void DrawSet ( struct Point * );
  184.  
  185. void DrawAllSets ( void );
  186.  
  187. void SymAllSets ( void );
  188.  
  189. void SymSet ( struct Point * );
  190.  
  191. void tik(double vmin, double vmax, double *tick, WORD *nsubt, BOOL *mode, WORD *prec);
  192.  
  193. void DrawColorBox( WORD, WORD, WORD, WORD, WORD);
  194.  
  195. WORD DrawFileNameBoxes( WORD);
  196.  
  197. void Erase( BOOL );
  198.  
  199. int CrossHair( void );
  200.  
  201. WORD Dump( void );
  202. void DrawLogo( void );
  203.  
  204. void XAxis( void );
  205. void YAxis( void );
  206. void linXAxis( void );
  207. void linYAxis( void );
  208. void logXAxis( void );
  209. void logYAxis( void );
  210.  
  211. BOOL AddNewSet( void );
  212.  
  213. void Zoom( void );
  214.  
  215. void Grid( void );
  216. void logXGrid( void );
  217. void logYGrid( void );
  218. void linXGrid( void );
  219. void linYGrid( void );
  220.  
  221. void E2xTen( UBYTE *s);
  222.  
  223. void Round( double * );
  224.  
  225. void CalcMode ( double, double *);
  226.  
  227. void Identify( WORD, WORD , BOOL);
  228.  
  229. void ticX( double, BOOL);
  230. void ticY( double, BOOL);
  231.  
  232. LONG ScaleX( double );
  233. LONG ScaleY( double );
  234.  
  235. void LabelY( UBYTE * );
  236. void LabelTitle( void );
  237.  
  238. double ZoomX( WORD );
  239. double ZoomY( WORD );
  240.  
  241. LONG linX( double );
  242. LONG linY( double );
  243.  
  244. double linZoomX( WORD );
  245. double linZoomY( WORD );
  246.  
  247. LONG logX( double );
  248. LONG logY( double );
  249.  
  250. double logZoomX( WORD );
  251. double logZoomY( WORD );
  252.  
  253. LONG HandleARexxMes( void );
  254.  
  255. int NewDepth( WORD );
  256. void VertText(struct RastPort *, UBYTE *, LONG );
  257.  
  258. int UnZoom( void );
  259.  
  260. int Measure(WORD, WORD);
  261.