home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / ool.zip / OOL / source / xcolor.cpp < prev    next >
C/C++ Source or Header  |  1997-04-04  |  3KB  |  119 lines

  1. #include "xcolor.h"
  2.  
  3. /*@ 
  4. @class XColor
  5. @type overview
  6. @symbol _
  7. @remarks XColor represents colors in RGB format.
  8. */
  9.  
  10. /*@ XColor::XColor(LONG)
  11. @group constructors/destructors
  12. @remarks The constructor of XColor.
  13. @parameters <t '°' c=2>
  14.                 °LONG theColor      °The color to initialize. Valid values are:
  15.                                             <t '°' c=1>
  16.                                      °COL_BLACK
  17.                                      °COL_BLUE
  18.                                      °COL_RED
  19.                                      °COL_PINK
  20.                                      °COL_GREEN
  21.                                      °COL_CYAN
  22.                                      °COL_YELLOW
  23.                                      °COL_BROWN
  24.                                      °COL_DARKGRAY
  25.                                      °COL_DARKBLUE
  26.                                      °COL_DARKRED
  27.                                      °COL_DARKPINK
  28.                                      °COL_DARKGREEN
  29.                                      °COL_DARKCYAN
  30.                                      °COL_PALEGRAY
  31.                                      °COL_WHITE
  32.                                      °other: color in RGB-format, forth byte is ignored
  33.                                             </t>
  34.                 </t>
  35. */
  36. XColor :: XColor(const LONG col)
  37. {
  38.     color[3] = 0;
  39.  
  40.     switch (col)
  41.     {
  42.     case COL_BLACK:
  43.         color[0] = color[1] = color[2] = 0;
  44.         break;
  45.     case COL_BLUE:
  46.         color[0] = 255;
  47.         color[1] = 0;
  48.         color[2] = 0;
  49.         break;
  50.     case COL_RED:
  51.         color[0] = 0;
  52.         color[1] = 0;
  53.         color[2] = 255;
  54.         break;
  55.     case COL_PINK:
  56.         color[0] = 255;
  57.         color[1] = 0;
  58.         color[2] = 255;
  59.         break;
  60.     case COL_GREEN:
  61.         color[0] = 0;
  62.         color[1] = 255;
  63.         color[2] = 0;
  64.         break;
  65.     case COL_CYAN:
  66.         color[0] = 255;
  67.         color[1] = 255;
  68.         color[2] = 0;
  69.         break;
  70.     case COL_YELLOW:
  71.         color[0] = 0;
  72.         color[1] = 255;
  73.         color[2] = 255;
  74.         break;
  75.     case COL_BROWN:
  76.         color[0] = 0;
  77.         color[1] = 128;
  78.         color[2] = 128;
  79.         break;
  80.     case COL_DARKGRAY:
  81.         color[0] = color[1] = color[2] = 128;
  82.         break;
  83.     case COL_DARKBLUE:
  84.         color[0] = 128;
  85.         color[1] = 0;
  86.         color[2] = 0;
  87.         break;
  88.     case COL_DARKRED:
  89.         color[0] = 0;
  90.         color[1] = 0;
  91.         color[2] = 128;
  92.         break;
  93.     case COL_DARKPINK:
  94.         color[0] = 128;
  95.         color[1] = 0;
  96.         color[2] = 128;
  97.         break;
  98.     case COL_DARKGREEN:
  99.         color[0] = 0;
  100.         color[1] = 128;
  101.         color[2] = 0;
  102.         break;
  103.     case COL_DARKCYAN:
  104.         color[0] = 128;
  105.         color[1] = 128;
  106.         color[2] = 0;
  107.         break;
  108.     case COL_PALEGRAY:
  109.         color[0] = color[1] = color[2] = 206;
  110.         break;
  111.     case COL_WHITE:
  112.         color[0] = color[1] = color[2] = 255;
  113.         break;
  114.     default:
  115.         memcpy(&color[0], &col, 4);
  116.     }
  117. }
  118.  
  119.