X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=render%2Frender.h;h=ad638ae8b3705d9c3709fd78fa52c4f4f097c1f2;hb=fde5ca09e9ea7ab08b6dc06723f19bad6d03af22;hp=0b8d3b4ca2d72523bc9c702620478fd50c48f22b;hpb=43d0f79057c1c4dfa1999db8fd6d9f48e5b47951;p=chaz%2Fopenbox diff --git a/render/render.h b/render/render.h index 0b8d3b4c..ad638ae8 100644 --- a/render/render.h +++ b/render/render.h @@ -2,7 +2,7 @@ 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 @@ -45,6 +45,7 @@ typedef struct _RrColor RrColor; typedef guint32 RrPixel32; typedef guint16 RrPixel16; +typedef guchar RrPixel8; typedef enum { RR_RELIEF_FLAT, @@ -120,7 +121,13 @@ struct _RrTextureText { RrFont *font; RrJustify justify; RrColor *color; - gchar *string; + const gchar *string; + gint shadow_offset_x; + gint shadow_offset_y; + RrColor *shadow_color; + guchar shadow_alpha; + gboolean shortcut; /*!< Underline a character */ + guint shortcut_pos; /*!< Position in bytes of the character to underline */ }; struct _RrPixmapMask { @@ -190,9 +197,6 @@ struct _RrAppearance { #define RrDefaultFontSize 8 #define RrDefaultFontWeight RR_FONTWEIGHT_NORMAL #define RrDefaultFontSlant RR_FONTSLANT_NORMAL -#define RrDefaultFontShadow FALSE -#define RrDefaultFontShadowOffset 1 -#define RrDefaultFontShadowTint 50 RrInstance* RrInstanceNew (Display *display, gint screen); void RrInstanceFree (RrInstance *inst); @@ -227,20 +231,24 @@ RrAppearance *RrAppearanceNew (const RrInstance *inst, gint numtex); RrAppearance *RrAppearanceCopy (RrAppearance *a); void RrAppearanceFree (RrAppearance *a); -RrFont *RrFontOpenByString (const RrInstance *inst, gchar *fontstring); -RrFont *RrFontOpen (const RrInstance *inst, gchar *name, gint size, - RrFontWeight weight, RrFontSlant slant, - gboolean shadow, gint shadowoffset, - gchar shadowtint); +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 RrFontHeight (const RrFont *f); +RrSize *RrFontMeasureString (const RrFont *f, const gchar *str, + 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); +gint RrMinWidth (RrAppearance *a); +gint RrMinHeight (RrAppearance *a); +void RrMargins (RrAppearance *a, gint *l, gint *t, gint *r, gint *b); gboolean RrPixmapToRGBA(const RrInstance *inst, Pixmap pmap, Pixmap mask,