X-Git-Url: http://git.kpe.io/?p=ctsim.git;a=blobdiff_plain;f=include%2Fsgp.h;h=62407526e47f75efe1c439429086382400c57a12;hp=b2d31eec0fbf7818e2d1728a3ac1deba444337fc;hb=1e88cf0f7fa4f690ea9f110e8ed3f2b5338d0a10;hpb=711cae0ee02e046370fdb4d6c6f440596ff71980 diff --git a/include/sgp.h b/include/sgp.h index b2d31ee..6240752 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.11 2000/07/28 08:28:08 kevin Exp $ +** $Id: sgp.h,v 1.14 2000/08/25 15:59:13 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); @@ -100,6 +100,7 @@ public: }; +class RGBColor; class SGP { private: int m_iPhysicalXSize; // Physical Window size @@ -133,6 +134,13 @@ private: void calc_transform (); + static RGBColor s_aRGBColor[]; + static int s_iRGBColorCount; + +#if HAVE_WXWINDOWS + wxPen* m_pPen; +#endif + public: enum { // linestyles LS_NOLINE = 0, @@ -188,6 +196,7 @@ public: void setTextAngle (double angle); void setTextColor (int iFGcolor, int iBGcolor); void setMarker (int idMarker, int color); + void setRasterOp (int ro); void ctmClear (); void ctmSet (const TransformationMatrix2D& m); @@ -209,4 +218,65 @@ public: }; +enum { + C_BLACK = 0, // color codes + C_BLUE = 1, + C_GREEN = 2, + C_CYAN = 3, + C_RED = 4, + C_MAGENTA = 5, + C_BROWN = 6, + C_GRAY = 7, + C_LTGRAY = 8, + C_LTBLUE = 9, + C_LTGREEN = 10, + C_LTCYAN = 11, + C_LTRED = 12, + C_LTMAGENTA = 13, + C_YELLOW = 14, + 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; + short int g; + short int b; + + public: + RGBColor (int r, int g, int b) + : r(r), g(g), b(b) + {} + + int getRed () const + { return r; } + + int getGreen () const + { return g; } + + int getBlue () const + { return b; } + +}; + #endif