Subversion Repositories Kolibri OS

Rev

Rev 8330 | Rev 8443 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | Download | RSS feed

  1. collection_int text_colors;
  2.  
  3. struct color_spec {
  4.         char *name;
  5.         int rgb;
  6. };
  7.  
  8. struct color_spec color_specs[] = {
  9.         "aliceblue",        0xF0F8FF, "antiquewhite",     0xFAEBD7,     "aqua",             0x00FFFF, "aquamarine",       0x7FFFD4,
  10.         "azure",            0xF0FFFF, "beige",            0xF5F5DC,     "bisque",           0xFFE4C4, "black",            0x000000,
  11.         "blanchedalmond",   0xFFEBCD, "blue",             0x0000FF,     "blueviolet",       0x8A2BE2, "brown",            0xA52A2A,
  12.         "burlywood",        0xDEB887, "cadetblue",        0x5F9EA0,     "chartreuse",       0x7FFF00, "chocolate",        0xD2691E,
  13.         "coral",            0xFF7F50, "cornflowerblue",   0x6495ED,     "cornsilk",         0xFFF8DC, "crimson",          0xDC143C,
  14.         "cyan",             0x00FFFF, "darkblue",         0x00008B,     "darkcyan",         0x008B8B, "darkgoldenrod",    0xB8860B,
  15.         "darkgray",         0xA9A9A9, "darkgreen",        0x006400,     "darkkhaki",        0xBDB76B, "darkmagenta",      0x8B008B,
  16.         "darkolivegreen",   0x556B2F, "darkorange",       0xFF8C00,     "darkorchid",       0x9932CC, "darkred",          0x8B0000,
  17.         "darksalmon",       0xE9967A, "darkseagreen",     0x8FBC8F,     "darkslateblue",    0x483D8B, "darkslategray",    0x2F4F4F,
  18.         "darkturquoise",    0x00CED1, "darkviolet",       0x9400D3,     "deeppink",         0xFF1493, "deepskyblue",      0x00BFFF,
  19.         "dimgray",          0x696969, "dodgerblue",       0x1E90FF,     "firebrick",        0xB22222, "floralwhite",      0xFFFAF0,
  20.         "forestgreen",      0x228B22, "fuchsia",          0xFF00FF,     "gainsboro",        0xDCDCDC, "ghostwhite",       0xF8F8FF,
  21.         "gold",             0xFFD700, "goldenrod",        0xDAA520,     "gray",             0x808080, "green",            0x008000,
  22.         "greenyellow",      0xADFF2F, "honeydew",         0xF0FFF0,     "hotpink",          0xFF69B4, "indianred",        0xCD5C5C,
  23.         "indigo",           0x4B0082, "ivory",            0xFFFFF0,     "khaki",            0xF0E68C, "lavender",         0xE6E6FA,
  24.         "lavenderblush",    0xFFF0F5, "lawngreen",        0x7CFC00,     "lemonchiffon",     0xFFFACD, "lightblue",        0xADD8E6,
  25.         "lightcoral",       0xF08080, "lightcyan",        0xE0FFFF,     "lightgreen",       0x90EE90, "lightgrey",        0xD3D3D3,
  26.         "lightpink",        0xFFB6C1, "lightsalmon",      0xFFA07A,     "lightseagreen",    0x20B2AA, "lightskyblue",     0x87CEFA,
  27.         "lightslategray",   0x778899, "lightsteelblue",   0xB0C4DE,     "lightyellow",      0xFFFFE0, "lime",             0x00FF00,
  28.         "limegreen",        0x32CD32, "linen",            0xFAF0E6,     "magenta",          0xFF00FF, "maroon",           0x800000,
  29.         "mediumaquamarine", 0x66CDAA, "mediumblue",       0x0000CD,     "mediumorchid",     0xBA55D3, "mediumpurple",     0x9370DB,
  30.         "mediumseagreen",   0x3CB371, "mediumslateblue",  0x7B68EE,     "mediumspringgreen",0x00FA9A, "mediumturquoise",  0x48D1CC,
  31.         "mediumvioletred",  0xC71585, "midnightblue",     0x191970,     "mintcream",        0xF5FFFA, "mistyrose",        0xFFE4E1,
  32.         "moccasin",         0xFFE4B5, "navajowhite",      0xFFDEAD,     "navy",             0x000080, "oldlace",          0xFDF5E6,
  33.         "olive",            0x808000, "olivedrab",        0x6B8E23,     "orange",           0xFFA500, "orangered",        0xFF4500,
  34.         "orchid",           0xDA70D6, "palegoldenrod",    0xEEE8AA,     "palegreen",        0x98FB98, "paleturquoise",    0xAFEEEE,
  35.         "palevioletred",    0xDB7093, "papayawhip",       0xFFEFD5,     "peachpuff",        0xFFDAB9, "peru",             0xCD853F,
  36.         "pink",             0xFFC0CB, "plum",             0xDDA0DD,     "powderblue",       0xB0E0E6, "purple",           0x800080,
  37.         "red",              0xFF0000, "rosybrown",        0xBC8F8F,     "royalblue",        0x4169E1, "saddlebrown",      0x8B4513,
  38.         "salmon",           0xFA8072, "sandybrown",       0xF4A460,     "seagreen",         0x2E8B57, "seashell",         0xFFF5EE,
  39.         "sienna",           0xA0522D, "silver",           0xC0C0C0,     "skyblue",          0x87CEEB, "slateblue",        0x6A5ACD,
  40.         "slategray",        0x708090, "snow",             0xFFFAFA,     "springgreen",      0x00FF7F, "steelblue",        0x4682B4,
  41.         "tan",              0xD2B48C, "teal",             0x008080,     "thistle",          0xD8BFD8, "tomato",           0xFF6347,
  42.         "turquoise",        0x40E0D0, "violet",           0xEE82EE,     "wheat",            0xF5DEB3, "white",            0xFFFFFF,
  43.         "whitesmoke",       0xF5F5F5, "yellow",           0xFFFF00,     "yellowgreen",      0x9ACD32, 0};
  44.  
  45. dword GetColor(char* color_str)
  46. {
  47.         int ii;
  48.         dword textlen=0;
  49.         dword color=0;
  50.  
  51.         strlwr(color_str);
  52.         if (ESBYTE[color_str] == '#')
  53.         {
  54.                 textlen = strlen(color_str);
  55.                 if (textlen==7) || (textlen==4)
  56.                 {
  57.                         FOR (ii=1;  ii<textlen;  ii++)
  58.                         {
  59.                                 BL = ESBYTE[color_str+ii];
  60.                                 IF ((BL>='0') && (BL<='9')) BL -= '0';
  61.                                 //IF ((BL>='A') && (BL<='F')) BL -= 'A'-10;
  62.                                 IF ((BL>='a') && (BL<='f')) BL -= 'a'-10;
  63.                                 color = color*0x10 + BL;
  64.                                 if (textlen==4) color = color*0x10 + BL; //#abc ->> #aabbcc
  65.                         }
  66.                         return color;
  67.                 }
  68.         }      
  69.         else
  70.         {
  71.                 for (ii=0; color_specs[ii].name!=0; ii++)
  72.                 {
  73.                         if (streq(color_str, color_specs[ii].name))
  74.                                 return color_specs[ii].rgb;
  75.                 }
  76.         }
  77.         return text_colors.get(0);
  78. }
  79.