X-Git-Url: http://git.kpe.io/?a=blobdiff_plain;f=include%2Fsgp.h;h=0a5fe0344ea7a9c9bd5359d750a7106f703b1a08;hb=6bfb747f8163381d94a02c03a0351e9ca6815d22;hp=32abbc405e2baae7c0ae11aec3903ac943a2c191;hpb=08a5cd04c3994d5ea24713b9b000791bd2e406fe;p=ctsim.git diff --git a/include/sgp.h b/include/sgp.h index 32abbc4..0a5fe03 100644 --- a/include/sgp.h +++ b/include/sgp.h @@ -9,7 +9,7 @@ ** This is part of the CTSim program ** Copyright (C) 1983-2000 Kevin Rosenberg ** -** $Id: sgp.h,v 1.12 2000/07/29 19:50:08 kevin Exp $ +** $Id: sgp.h,v 1.15 2000/08/27 20:32:55 kevin Exp $ ** ** This program is free software; you can redistribute it and/or modify ** it under the terms of the GNU General Public License (version 2) as @@ -68,7 +68,7 @@ public: }; #ifdef HAVE_WXWINDOWS - SGPDriver (wxDC* pDC, const char* szWinTitle = "", int xsize = 640, int ysize = 480); + SGPDriver (wxDC* pDC, int xsize = 640, int ysize = 480); #endif SGPDriver (const char* szWinTitle = "", int xsize = 640, int ysize = 480); @@ -137,6 +137,10 @@ private: static RGBColor s_aRGBColor[]; static int s_iRGBColorCount; +#if HAVE_WXWINDOWS + wxPen m_pen; +#endif + public: enum { // linestyles LS_NOLINE = 0, @@ -167,7 +171,7 @@ public: SGP (const SGPDriver& driver); void drawCircle (const double r); - void drawArc (double start, double stop, const double r); + void drawArc (const double r, double start, double stop); void drawRect (double xmin, double ymin, double xmax, double ymax); void lineAbs(double x, double y); void moveAbs(double x, double y); @@ -191,7 +195,12 @@ public: void setTextSize (double height); void setTextAngle (double angle); void setTextColor (int iFGcolor, int iBGcolor); + void setPenWidth (int width); void setMarker (int idMarker, int color); + void setRasterOp (int ro); + + void getTextExtent (const char *szText, double* x, double* y); + double getCharHeight (); void ctmClear (); void ctmSet (const TransformationMatrix2D& m); @@ -232,6 +241,26 @@ enum { C_WHITE = 15, }; +enum RasterOp { + RO_AND = 1, + RO_AND_INVERT, + RO_AND_REVERSE, + RO_CLEAR, + RO_COPY, + RO_EQUIV, + RO_INVERT, + RO_NAND, + RO_NOR, + RO_NO_OP, + RO_OR, + RO_OR_INVERT, + RO_OR_REVERSE, + RO_SET, + RO_SRC_INVERT, + RO_XOR, +}; + + class RGBColor { private: short int r;