home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / ool_main.zip / ool / include / xcolor.h < prev    next >
Text File  |  1998-04-12  |  3KB  |  68 lines

  1. #ifndef __OOL_XCOLOR_H__
  2. #define __OOL_XCOLOR_H__
  3.  
  4. /*===========================================================================*/
  5. /* OOL ------------------- the Open Object Library ------------------- r 1.0 */
  6. /*===========================================================================*/
  7. /*                              class: XColor                                */
  8. /*                       derived from: XObject                               */
  9. /*                        last update: 12/96                                 */
  10. /*                      programmed by: Stefan von Brauk (sbrauk@gwdg.de)     */
  11. /*===========================================================================*/
  12.  
  13.  
  14.  
  15. #include "xobject.h"
  16. #include "string.h"
  17.  
  18. #define COL_BLACK                        1
  19. #define COL_BLUE                         2
  20. #define COL_RED                          3
  21. #define COL_PINK                         4
  22. #define COL_GREEN                        5
  23. #define COL_CYAN                         6
  24. #define COL_YELLOW                       7
  25. #define COL_BROWN                        8
  26. #define COL_DARKGRAY                     9
  27. #define COL_DARKBLUE                     10
  28. #define COL_DARKRED                      11
  29. #define COL_DARKPINK                     12
  30. #define COL_DARKGREEN                    13
  31. #define COL_DARKCYAN                     14
  32. #define COL_PALEGRAY                     15
  33. #define COL_WHITE                        16
  34.  
  35.  
  36. class _export_ XColor: public XObject
  37. {
  38.    private:
  39.       char color[4];
  40.    public:
  41.       XColor( const LONG col = COL_WHITE);
  42.       XColor( const char red, const char green, const char blue)
  43.          {
  44.             color[2] = red;
  45.             color[1] = green;
  46.             color[0] = blue;
  47.             color[3] = 0;
  48.          }
  49.       virtual ~XColor() {;}
  50.       void SetColor( const LONG col) { memcpy(&color[0], &col, 3); }
  51.       void SetRed( const char red) { color[2] =  red; }
  52.       void SetGreen( const char green) { color[1] =  green; }
  53.       void SetBlue( const char blue) { color[0] = blue; }
  54.       char GetRed(void) const { return color[2]; }
  55.       char GetGreen(void) const { return color[1]; }
  56.       char GetBlue(void) const { return color[0]; }
  57.       LONG GetColor(void) const
  58.          {
  59.             LONG c=0;
  60.             memcpy( &c, &color[0], 3);
  61.             return c;
  62.          }
  63.       XColor operator =(const XColor& col) { memcpy(&color, &col.color, sizeof(4)); return *this; }
  64. };
  65.  
  66.  
  67. #endif
  68.