X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=render%2Frender.h;h=e4ca914b96172f16257a5ab17f7388e0b2fb5bc7;hb=de0873824e3072bf6c6f8ae24569ef7bf7a0017a;hp=a327756f7c6275bbcc89419a1ee3596a60910a7b;hpb=a79651294c54a784b34c85e3832e8c7ca4f3aa17;p=chaz%2Fopenbox diff --git a/render/render.h b/render/render.h index a327756f..e4ca914b 100644 --- a/render/render.h +++ b/render/render.h @@ -22,7 +22,7 @@ #define __render_h #include "geom.h" -#include "version.h" +#include "render/version.h" #include /* some platforms dont include this as needed for Xft */ #include @@ -45,6 +45,7 @@ typedef struct _RrColor RrColor; typedef guint32 RrPixel32; typedef guint16 RrPixel16; +typedef guchar RrPixel8; typedef enum { RR_RELIEF_FLAT, @@ -84,6 +85,14 @@ typedef enum { RR_JUSTIFY_RIGHT } RrJustify; +/* Put middle first so it's the default */ +typedef enum { + RR_ELLIPSIZE_MIDDLE, + RR_ELLIPSIZE_NONE, + RR_ELLIPSIZE_START, + RR_ELLIPSIZE_END +} RrEllipsizeMode; + typedef enum { RR_FONTWEIGHT_LIGHT, RR_FONTWEIGHT_NORMAL, @@ -105,7 +114,7 @@ struct _RrSurface { RrColor *primary; RrColor *secondary; RrColor *border_color; - RrColor *bevel_dark; + RrColor *bevel_dark; RrColor *bevel_light; RrColor *interlace_color; gboolean interlaced; @@ -114,17 +123,24 @@ struct _RrSurface { gint parentx; gint parenty; RrPixel32 *pixel_data; + gint bevel_dark_adjust; /* 0-255, default is 64 */ + gint bevel_light_adjust; /* 0-255, default is 128 */ + RrColor *split_primary; + RrColor *split_secondary; }; struct _RrTextureText { RrFont *font; RrJustify justify; RrColor *color; - gchar *string; + const gchar *string; gint shadow_offset_x; gint shadow_offset_y; RrColor *shadow_color; - gchar shadow_alpha; + guchar shadow_alpha; + gboolean shortcut; /*!< Underline a character */ + guint shortcut_pos; /*!< Position in bytes of the character to underline */ + RrEllipsizeMode ellipsize; }; struct _RrPixmapMask { @@ -143,6 +159,7 @@ struct _RrTextureMask { struct _RrTextureRGBA { gint width; gint height; + gint alpha; RrPixel32 *data; /* cached scaled so we don't have to scale often */ gint cwidth; @@ -227,9 +244,10 @@ GC RrColorGC (RrColor *c); RrAppearance *RrAppearanceNew (const RrInstance *inst, gint numtex); RrAppearance *RrAppearanceCopy (RrAppearance *a); void RrAppearanceFree (RrAppearance *a); +void RrAppearanceAddTextures(RrAppearance *a, gint numtex); -RrFont *RrFontOpen (const RrInstance *inst, gchar *name, gint size, - RrFontWeight weight, RrFontSlant slant); +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, @@ -242,7 +260,9 @@ gint RrFontMaxCharWidth (const RrFont *f); 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 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,