X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=render%2Frender.h;h=8363dd9095ded90a14d25d0bb1b950de11c9cf5c;hb=88097ba46cf4003f62effdc8b3aea64cdce6479f;hp=8b4ccdc299dc5539c5b3c2cf0364da832bdd7956;hpb=6682d070c391f8c09d561dde67e49733a2377681;p=chaz%2Fopenbox diff --git a/render/render.h b/render/render.h index 8b4ccdc2..8363dd90 100644 --- a/render/render.h +++ b/render/render.h @@ -6,35 +6,6 @@ #include #include #include "color.h" -#include "font.h" - -#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_ENDIAN == G_BIG_ENDIAN) -#define default_red_shift 0 -#define default_green_shift 8 -#define default_blue_shift 16 -#define endian MSBFirst -#else -#define default_red_shift 16 -#define default_green_shift 8 -#define default_blue_shift 0 -#define endian LSBFirst -#endif /* G_ENDIAN == G_BIG_ENDIAN */ typedef enum { Surface_Planar, @@ -98,16 +69,35 @@ typedef struct Surface { SurfaceData data; } Surface; +typedef struct { + XftFont *xftfont; + int height; +} ObFont; + +typedef enum { + Justify_Center, + Justify_Left, + Justify_Right +} Justify; + typedef struct TextureText { ObFont *font; + Justify justify; int shadow; - int offset; + unsigned char tint; + unsigned char offset; color_rgb *color; char *string; -} TextureText; +} TextureText; + +typedef struct { + Pixmap mask; + guint w, h; +} pixmap_mask; typedef struct TextureMask { color_rgb *color; + pixmap_mask *mask; } TextureMask; typedef struct TextureRGBA { @@ -137,13 +127,14 @@ extern Visual *render_visual; extern int render_depth; extern Colormap render_colormap; -void (*paint)(Window win, Appearance *l, int w, int h); +void (*paint)(Window win, Appearance *l, int x, int y, int w, int h); void render_startup(void); void init_appearance(Appearance *l); -void x_paint(Window win, Appearance *l, int w, int h); +void x_paint(Window win, Appearance *l, int x, int y, int w, int h); void render_shutdown(void); Appearance *appearance_new(SurfaceType type, int numtex); Appearance *appearance_copy(Appearance *a); void appearance_free(Appearance *a); +void truecolor_startup(void); #endif /*__render_h*/