#include #include COLOR RGB2COLOR(unsigned char red, unsigned char green, unsigned char blue) { COLOR def = MAKE_COLOR(red, green, blue); // Se nel colore non compare l'indice cerca di calcolarlo const unsigned char color_index = (unsigned char)(def >> 12); if (color_index <= 0x0 || color_index > 0xF) { const COLOR native_color[11] = { COLOR_RED, COLOR_GREEN, COLOR_BLUE, COLOR_CYAN, COLOR_MAGENTA, COLOR_YELLOW, COLOR_BLACK, COLOR_DKGRAY, COLOR_GRAY, COLOR_LTGRAY, COLOR_WHITE }; def &= 0x00FFFFFF; for (int c = 0; c < 11; c++) { // Confronta solo la terna R,G,B if (def == (native_color[c] & 0x00FFFFFF)) { def = native_color[c]; break; } } } return def; } COLOR choose_color(COLOR col, WINDOW win) { return os_choose_color(col, win); }