aboutsummaryrefslogtreecommitdiff
path: root/generic/Color.h
diff options
context:
space:
mode:
authorlecoanet2002-02-18 16:03:54 +0000
committerlecoanet2002-02-18 16:03:54 +0000
commit6b36f92065f054abd810d956169a87180677d4f7 (patch)
treed2d16c8be93c67d15670eccce326dba5276acda1 /generic/Color.h
parent67dd05047282a179b5fac88564bb3494a69ecd23 (diff)
downloadtkzinc-6b36f92065f054abd810d956169a87180677d4f7.zip
tkzinc-6b36f92065f054abd810d956169a87180677d4f7.tar.gz
tkzinc-6b36f92065f054abd810d956169a87180677d4f7.tar.bz2
tkzinc-6b36f92065f054abd810d956169a87180677d4f7.tar.xz
Passage des couleurs en gradients pour uniformiser
Diffstat (limited to 'generic/Color.h')
-rw-r--r--generic/Color.h14
1 files changed, 7 insertions, 7 deletions
diff --git a/generic/Color.h b/generic/Color.h
index efbd2b7..bf23af3 100644
--- a/generic/Color.h
+++ b/generic/Color.h
@@ -39,10 +39,10 @@ typedef struct _GradientColor {
* This is in percent of the gradient total size. */
unsigned char control; /* Middle-shade position in percent of this color
* size along the gradient axis. */
- unsigned char alpha;
- XColor *shades[1]; /* The real shades used to draw this color segment.
- * The number of shades is constant for all the colors
- * of a given gradient and is setup in num_shades. */
+ unsigned char alpha; /* The color alpha channel in percent */
+ unsigned char mid_alpha;
+ XColor *rgb; /* The actual color description */
+ XColor *mid_rgb;
} ZnGradientColor;
typedef struct _Gradient {
@@ -54,9 +54,8 @@ typedef struct _Gradient {
int angle; /* Angle spec for an axial gradient (Degrees). */
ZnPoint p; /* Center for a radial gradiant. */
} g;
- int num_shades; /* Number of shades used for each color */
int num_colors; /* Number of colors in gradient spec. */
- ZnGradientColor *colors[1];
+ ZnGradientColor colors[1];
} ZnGradient;
@@ -71,12 +70,13 @@ ZnGradient *ZnGetGradientByValue(ZnGradient *gradient);
ZnGradient *ZnGetReliefGradient(Tcl_Interp *interp, Tk_Window tkwin,
Tk_Uid name);
ZnBool ZnGradientFlat(ZnGradient *grad);
-XColor *ZnGetGradientColor(Tk_Window tkwin, ZnGradient *gradient,
+XColor *ZnGetGradientColor(ZnGradient *gradient,
ZnReal position, int *alpha);
char *ZnNameOfGradient(ZnGradient *gradient);
void ZnFreeGradient(ZnGradient *gradient);
void ZnDeleteGradientName(char *name);
ZnBool ZnNameGradient(Tcl_Interp *interp, Tk_Window tkwin,
char *grad_descr, char *name);
+int ZnComposeAlpha(int alpha1, int alpha2);
#endif /* _Color_h */