render.h for the Openbox window manager
Copyright (c) 2006 Mikael Magnusson
- Copyright (c) 2003 Ben Jansens
+ Copyright (c) 2003-2007 Dana Jansens
Copyright (c) 2003 Derek Foreman
This program is free software; you can redistribute it and/or modify
typedef guint32 RrPixel32;
typedef guint16 RrPixel16;
+typedef guchar RrPixel8;
typedef enum {
RR_RELIEF_FLAT,
RrFont *font;
RrJustify justify;
RrColor *color;
- gchar *string;
- gint shadow_offset;
- gchar shadow_tint;
+ const gchar *string;
+ gint shadow_offset_x;
+ gint shadow_offset_y;
+ RrColor *shadow_color;
+ gchar shadow_alpha;
};
struct _RrPixmapMask {
RrAppearance *RrAppearanceCopy (RrAppearance *a);
void RrAppearanceFree (RrAppearance *a);
-RrFont *RrFontOpen (const RrInstance *inst, gchar *name, gint size,
+RrFont *RrFontOpen (const RrInstance *inst, const gchar *name, gint size,
RrFontWeight weight, RrFontSlant slant);
RrFont *RrFontOpenDefault (const RrInstance *inst);
void RrFontClose (RrFont *f);
RrSize *RrFontMeasureString (const RrFont *f, const gchar *str,
- gint shadow_offset);
-gint RrFontHeight (const RrFont *f, gint shadow_offset);
+ gint shadow_offset_x, gint shadow_offset_y);
+gint RrFontHeight (const RrFont *f, gint shadow_offset_y);
gint RrFontMaxCharWidth (const RrFont *f);
-void RrPaint (RrAppearance *a, Window win, gint w, gint h);
-void RrMinsize (RrAppearance *a, gint *w, gint *h);
-void RrMargins (RrAppearance *a, gint *l, gint *t, gint *r, gint *b);
+/* Paint into the appearance. The old pixmap is returned (if there was one). It
+ is the responsibility of the caller to call XFreePixmap on the return when
+ it is non-null. */
+Pixmap RrPaintPixmap (RrAppearance *a, gint w, gint h);
+void RrPaint (RrAppearance *a, Window win, gint w, gint h);
+void RrMinsize (RrAppearance *a, gint *w, gint *h);
+void RrMargins (RrAppearance *a, gint *l, gint *t, gint *r, gint *b);
gboolean RrPixmapToRGBA(const RrInstance *inst,
Pixmap pmap, Pixmap mask,