1
0
mirror of https://github.com/gryf/wmaker.git synced 2025-12-20 21:08:08 +01:00

Some more fixes from Alban to the color panel.

This commit is contained in:
dan
2000-01-07 22:17:59 +00:00
parent 503c1e8864
commit ae22c4dc1d

View File

@@ -1094,6 +1094,7 @@ makeColorPanel(WMScreen *scrPtr, char *name)
WMAddPopUpButtonItem(panel->colorListListMenuBtn, "Rename..."); WMAddPopUpButtonItem(panel->colorListListMenuBtn, "Rename...");
WMAddPopUpButtonItem(panel->colorListListMenuBtn, "Remove"); WMAddPopUpButtonItem(panel->colorListListMenuBtn, "Remove");
WMSetPopUpButtonItemEnabled(panel->colorListListMenuBtn, CLmenuAdd, 0);
WMSetPopUpButtonItemEnabled(panel->colorListListMenuBtn, CLmenuRename, 0); WMSetPopUpButtonItemEnabled(panel->colorListListMenuBtn, CLmenuRename, 0);
WMSetPopUpButtonItemEnabled(panel->colorListListMenuBtn, CLmenuRemove, 0); WMSetPopUpButtonItemEnabled(panel->colorListListMenuBtn, CLmenuRemove, 0);
@@ -2177,11 +2178,11 @@ wheelRender(W_ColorPanel *panel)
bp = image->data[2] + (ofs << shift); bp = image->data[2] + (ofs << shift);
if (wheelInsideColorWheel(panel, ofs)) { if (wheelInsideColorWheel(panel, ofs)) {
*rp = (unsigned int)(panel->wheelMtrx->values[ *rp = (unsigned char)(panel->wheelMtrx->values[
panel->wheelMtrx->data[0][ofs] ]); panel->wheelMtrx->data[0][ofs] ]);
*gp = (unsigned int)(panel->wheelMtrx->values[ *gp = (unsigned char)(panel->wheelMtrx->values[
panel->wheelMtrx->data[1][ofs] ]); panel->wheelMtrx->data[1][ofs] ]);
*bp = (unsigned int)(panel->wheelMtrx->values[ *bp = (unsigned char)(panel->wheelMtrx->values[
panel->wheelMtrx->data[2][ofs] ]); panel->wheelMtrx->data[2][ofs] ]);
} }
else { else {
@@ -2466,10 +2467,8 @@ wheelUpdateBrightnessGradient(W_ColorPanel *panel, CPColor topColor)
to.red = to.green = to.blue = 0; to.red = to.green = to.blue = 0;
if (topColor.set == cpHSV) { if (topColor.set == cpHSV)
topColor.hsv.value = 255;
convertCPColor(&topColor); convertCPColor(&topColor);
}
sliderImg = RRenderGradient(16, 153, &(topColor.rgb), &to, RGRD_VERTICAL); sliderImg = RRenderGradient(16, 153, &(topColor.rgb), &to, RGRD_VERTICAL);
sliderPxmp = WMCreatePixmapFromRImage(WMWidgetScreen(panel->win), sliderPxmp = WMCreatePixmapFromRImage(WMWidgetScreen(panel->win),
@@ -3523,11 +3522,12 @@ colorListListMenuNew(W_ColorPanel *panel)
static void static void
wheelInit(W_ColorPanel *panel) wheelInit(W_ColorPanel *panel)
{ {
CPColor cpColor;
if (panel->color.set != cpHSV) if (panel->color.set != cpHSV)
convertCPColor(&panel->color); convertCPColor(&panel->color);
WMSetSliderValue(panel->wheelBrightnessS, 255 - panel->color.hsv.value); WMSetSliderValue(panel->wheelBrightnessS, 255 - panel->color.hsv.value);
wheelUpdateBrightnessGradient(panel, panel->color);
panel->colx = 2 + rint((colorWheelSize / 2.0) * panel->colx = 2 + rint((colorWheelSize / 2.0) *
(1 + ( panel->color.hsv.saturation/255.0) * (1 + ( panel->color.hsv.saturation/255.0) *
@@ -3537,6 +3537,11 @@ wheelInit(W_ColorPanel *panel)
sin(- panel->color.hsv.hue*M_PI/180.0))); sin(- panel->color.hsv.hue*M_PI/180.0)));
wheelCalculateValues(panel, panel->color.hsv.value); wheelCalculateValues(panel, panel->color.hsv.value);
cpColor = panel->color;
cpColor.hsv.value = 255;
cpColor.set = cpHSV;
wheelUpdateBrightnessGradient(panel, cpColor);
} }