In /rgb 3 mode: If skin colors are compatible with /rgb 3, they are the ideal colors for matching, and those you add when loading low-color images or typing 'Backspace' in Palette. Otherwise the ideal color set is hard-coded black/dark_blue/grey/white

git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@1603 416bcca6-2ee7-4201-b75f-2eb2f807beb1
This commit is contained in:
Yves Rizoud 2010-09-02 00:39:43 +00:00
parent a61bb9893c
commit cf8af1902c
2 changed files with 18 additions and 4 deletions

View File

@ -2844,14 +2844,28 @@ const T_Components * Favorite_GUI_color(byte color_index)
{
static const T_Components cpc_colors[4] = {
{ 0, 0, 0},
{ 0, 0,128}, // Dark blue
{128,128,128}, // Grey
{ 0,255,128}, // Soft light green
{255,255,255}
};
if (RGB_scale==3)
{
// Check if ALL GUI colors are compatible with /rgb 3
int i;
for (i=0; i<4; i++)
{
T_Components col;
col=Gfx->Default_palette[Gfx->Color[i]];
if ((col.R!=255 && col.R!=128 && col.R!=0)
||(col.G!=255 && col.G!=128 && col.G!=0)
||(col.B!=255 && col.B!=128 && col.B!=0))
// Specialized colors for CPC palette
return &cpc_colors[color_index];
}
// Skin has suitable colors
return &(Gfx->Default_palette[Gfx->Color[color_index]]);
}
else
// Should be Config.Fav_menu_colors[index] if using user colors
return &(Gfx->Default_palette[Gfx->Color[color_index]]);

View File

@ -2762,8 +2762,8 @@ void Compute_optimal_menu_colors(T_Components * palette)
const int tolerence=16;
const T_Components cpc_colors[4] = {
{ 0, 0, 0},
{ 0, 0,128}, // Dark blue
{128,128,128}, // Grey
{ 0,255,128}, // Soft light green
{255,255,255}
};