Enlightenment CVS committal
Author : rbdpngn
Project : e17
Module : libs/ewl
Dir : e17/libs/ewl/src
Modified Files:
ewl_spectrum.c
Log Message:
Add a mode to the spectrum for arbitrary color base.
===================================================================
RCS file: /cvsroot/enlightenment/e17/libs/ewl/src/ewl_spectrum.c,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -3 -r1.6 -r1.7
--- ewl_spectrum.c 20 Apr 2004 21:20:22 -0000 1.6
+++ ewl_spectrum.c 27 Jul 2004 15:03:49 -0000 1.7
@@ -37,7 +37,7 @@
ewl_callback_append(w, EWL_CALLBACK_CONFIGURE,
ewl_spectrum_configure_cb, NULL);
- sp->mode = PICK_MODE_HSV_HUE;
+ sp->mode = EWL_PICK_MODE_HSV_HUE;
sp->dimensions = 2;
sp->redraw = 1;
sp->r = 255;
@@ -170,33 +170,38 @@
a = 255;
- if (pick_mode == PICK_MODE_RGB_RED) {
+ if (pick_mode == EWL_PICK_MODE_RGB) {
+ r = red * (1 - (float) j / (float) ph);
+ g = green * (1 - (float) j / (float) ph);
+ b = blue * (1 - (float) j / (float) ph);
+ }
+ else if (pick_mode == EWL_PICK_MODE_RGB_RED) {
r = red;
g = 255 * (float) i / (float) pw;
b = 255 * (float) j / (float) ph;
- } else if (pick_mode == PICK_MODE_RGB_GREEN) {
+ } else if (pick_mode == EWL_PICK_MODE_RGB_GREEN) {
r = 255 * (float) i / (float) pw;
g = green;
b = 255 * (float) j / (float) ph;
- } else if (pick_mode == PICK_MODE_RGB_BLUE) {
+ } else if (pick_mode == EWL_PICK_MODE_RGB_BLUE) {
r = 255 * (float) i / (float) pw;
g = 255 * (float) j / (float) ph;
b = blue;
- } else if (pick_mode == PICK_MODE_HSV_HUE) {
+ } else if (pick_mode == EWL_PICK_MODE_HSV_HUE) {
h = hue;
s = 1 - (float) i / (float) pw;
v = 1 - (float) j / (float) ph;
ewl_spectrum_hsv_to_rgb(h, s, v,
&r, &g, &b);
} else if (pick_mode ==
- PICK_MODE_HSV_SATURATION) {
+ EWL_PICK_MODE_HSV_SATURATION) {
h = (float) i / (float) pw *360;
s = sat;
v = 1 - (float) j / (float) ph;
ewl_spectrum_hsv_to_rgb(h, s, v,
&r, &g, &b);
- } else if (pick_mode == PICK_MODE_HSV_VALUE) {
+ } else if (pick_mode == EWL_PICK_MODE_HSV_VALUE) {
h = (float) i / (float) pw *360;
s = 1 - (float) j / (float) ph;
@@ -231,29 +236,33 @@
a = 255;
- if (pick_mode == PICK_MODE_RGB_RED) {
+ if (pick_mode == EWL_PICK_MODE_RGB) {
+ r = red * (1 - (float) j / (float) ph);
+ g = green * (1 - (float) j / (float) ph);
+ b = blue * (1 - (float) j / (float) ph);
+ } else if (pick_mode == EWL_PICK_MODE_RGB_RED) {
r = 255 * (1 - (float) j / (float) ph);
g = 0;
b = 0;
- } else if (pick_mode == PICK_MODE_RGB_GREEN) {
+ } else if (pick_mode == EWL_PICK_MODE_RGB_GREEN) {
r = 0;
g = 255 * (1 - (float) j / (float) ph);
b = 0;
- } else if (pick_mode == PICK_MODE_RGB_BLUE) {
+ } else if (pick_mode == EWL_PICK_MODE_RGB_BLUE) {
r = 0;
g = 0;
b = 255 * (1 - (float) j / (float) ph);
- } else if (pick_mode == PICK_MODE_HSV_HUE) {
+ } else if (pick_mode == EWL_PICK_MODE_HSV_HUE) {
h = 360 * (float) j / (float) ph;
s = 1.0;
v = 1.0;
ewl_spectrum_hsv_to_rgb(h, s, v, &r, &g, &b);
- } else if (pick_mode == PICK_MODE_HSV_SATURATION) {
+ } else if (pick_mode == EWL_PICK_MODE_HSV_SATURATION) {
h = hue;
s = 1 - (float) j / (float) ph;
v = val;
ewl_spectrum_hsv_to_rgb(h, s, v, &r, &g, &b);
- } else if (pick_mode == PICK_MODE_HSV_VALUE) {
+ } else if (pick_mode == EWL_PICK_MODE_HSV_VALUE) {
h = hue;
s = sat;
v = 1 - (float) j / (float) ph;
-------------------------------------------------------
This SF.Net email is sponsored by BEA Weblogic Workshop
FREE Java Enterprise J2EE developer tools!
Get your free copy of BEA WebLogic Workshop 8.1 today.
http://ads.osdn.com/?ad_id=4721&alloc_id=10040&op=click
_______________________________________________
enlightenment-cvs mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs