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,
49 typedef struct PlanarSurface {
50 SurfaceColorType grad;
55 color_rgb *border_color;
58 struct Appearance *parent;
64 typedef struct NonplanarSurface {
70 NonplanarSurface nonplanar;
73 typedef struct Surface {
75 SurfaceColorType colortype;
91 typedef struct TextureText {
107 typedef struct TextureMask {
112 typedef struct TextureRGBA {
116 /* cached scaled so we don't have to scale often */
119 unsigned long *cache;
128 typedef struct Texture {
134 typedef struct Appearance {
143 extern Visual *render_visual;
144 extern int render_depth;
145 extern Colormap render_colormap;
147 void (*paint)(Window win, Appearance *l);
149 void render_startup(void);
150 void init_appearance(Appearance *l);
151 void x_paint(Window win, Appearance *l);
152 void render_shutdown(void);
153 Appearance *appearance_new(SurfaceType type, int numtex);
154 Appearance *appearance_copy(Appearance *a);
155 void appearance_free(Appearance *a);
156 void truecolor_startup(void);
157 void pseudocolor_startup(void);
158 void pixel32_to_pixmap(pixel32 *in, Pixmap out, int x, int y, int w, int h);
160 void appearance_minsize(Appearance *l, int *w, int *h);
162 void render_pixmap_to_rgba(Pixmap pmap, Pixmap mask,
163 int *w, int *h, gulong **data);
165 #endif /*__render_h*/