5 #define _XFT_NO_COMPAT_ /* no Xft 1 API */
6 #include <X11/Xft/Xft.h>
9 #include "kernel/geom.h"
28 Background_ParentRelative,
30 Background_Horizontal,
33 Background_CrossDiagonal,
48 typedef struct PlanarSurface {
49 SurfaceColorType grad;
54 color_rgb *border_color;
55 color_rgb *bevel_dark;
56 color_rgb *bevel_light;
59 struct Appearance *parent;
65 typedef struct NonplanarSurface {
71 NonplanarSurface nonplanar;
74 typedef struct Surface {
76 SurfaceColorType colortype;
92 typedef struct TextureText {
108 typedef struct TextureMask {
113 typedef struct TextureRGBA {
117 /* cached scaled so we don't have to scale often */
129 typedef struct Texture {
135 typedef struct Appearance {
144 extern Visual *render_visual;
145 extern int render_depth;
146 extern Colormap render_colormap;
148 void (*paint)(Window win, Appearance *l);
150 void render_startup(void);
151 void init_appearance(Appearance *l);
152 void x_paint(Window win, Appearance *l);
153 void render_shutdown(void);
154 Appearance *appearance_new(SurfaceType type, int numtex);
155 Appearance *appearance_copy(Appearance *a);
156 void appearance_free(Appearance *a);
157 void truecolor_startup(void);
158 void pseudocolor_startup(void);
159 void pixel32_to_pixmap(pixel32 *in, Pixmap out, int x, int y, int w, int h);
161 void appearance_minsize(Appearance *l, int *w, int *h);
163 gboolean render_pixmap_to_rgba(Pixmap pmap, Pixmap mask,
164 int *w, int *h, pixel32 **data);
166 #endif /*__render_h*/