X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=render%2Fcolor.h;h=246af1988cf5069f0253b7357538e1668e43b65d;hb=ea2f33e9ee65856faef6617d013270e9898d9911;hp=fb669fb54f5c5ff910ad8684921141efc7a4c26b;hpb=a18c1697b1176c26e74267f2ac7a153a2cf2c442;p=chaz%2Fopenbox diff --git a/render/color.h b/render/color.h index fb669fb5..246af198 100644 --- a/render/color.h +++ b/render/color.h @@ -1,70 +1,25 @@ #ifndef __color_h #define __color_h +#include "render.h" + #include #include +#include -#ifdef HAVE_STDINT_H -# include -#else -# ifdef HAVE_SYS_TYPES_H -# include -# endif -#endif - - -#ifdef HAVE_STDINT_H -typedef uint32_t pixel32; -typedef uint16_t pixel16; -#else -typedef u_int32_t pixel32; -typedef u_int16_t pixel16; -#endif /* HAVE_STDINT_H */ - -#if (G_BYTE_ORDER == G_BIG_ENDIAN) -#define default_red_offset 0 -#define default_green_offset 8 -#define default_blue_offset 16 -#define default_alpha_offset 24 -#define render_endian MSBFirst -#else -#define default_alpha_offset 24 -#define default_red_offset 16 -#define default_green_offset 8 -#define default_blue_offset 0 -#define render_endian LSBFirst -#endif /* G_BYTE_ORDER == G_BIG_ENDIAN */ +struct _RrColor { + const RrInstance *inst; - -typedef struct color_rgb { int r; int g; int b; unsigned long pixel; GC gc; -} color_rgb; - -void color_allocate_gc(color_rgb *in); -XColor *pickColor(int r, int g, int b); -color_rgb *color_parse(char *colorname); -color_rgb *color_new(int r, int g, int b); -void color_free(color_rgb *in); -void reduce_depth(pixel32 *data, XImage *im); -void increase_depth(pixel32 *data, XImage *im); - -extern int render_red_offset; -extern int render_green_offset; -extern int render_blue_offset; - -extern int render_red_shift; -extern int render_green_shift; -extern int render_blue_shift; +}; -extern int render_red_mask; -extern int render_green_mask; -extern int render_blue_mask; +void RrColorAllocateGC(RrColor *in); +XColor *RrPickColor(const RrInstance *inst, gint r, gint g, gint b); +void RrReduceDepth(const RrInstance *inst, RrPixel32 *data, XImage *im); +void RrIncreaseDepth(const RrInstance *inst, RrPixel32 *data, XImage *im); -extern int pseudo_bpc; -#define pseudo_ncolors() (1 << (pseudo_bpc * 3)) -extern XColor *pseudo_colors; #endif /* __color_h */