typedef struct _RrTextureText RrTextureText;
typedef struct _RrPixmapMask RrPixmapMask;
typedef struct _RrInstance RrInstance;
-typedef struct _RrColor color_rgb; /* XXX ugly */
+typedef struct _RrColor RrColor;
-typedef guint32 pixel32; /* XXX prefix */
-typedef guint16 pixel16;
+typedef guint32 RrPixel32;
+typedef guint16 RrPixel16;
typedef enum {
RR_RELIEF_FLAT,
RR_SURFACE_VERTICAL,
RR_SURFACE_DIAGONAL,
RR_SURFACE_CROSS_DIAGONAL,
- RR_SURFACE_PIPECROSS,
- RR_SURFACE_RECTANGLE,
RR_SURFACE_PYRAMID
} RrSurfaceColorType;
RrSurfaceColorType grad;
RrReliefType relief;
RrBevelType bevel;
- color_rgb *primary;
- color_rgb *secondary;
- color_rgb *border_color;
- color_rgb *bevel_dark;
- color_rgb *bevel_light;
+ RrColor *primary;
+ RrColor *secondary;
+ RrColor *border_color;
+ RrColor *bevel_dark;
+ RrColor *bevel_light;
gboolean interlaced;
gboolean border;
RrAppearance *parent;
gint parentx;
gint parenty;
- pixel32 *pixel_data;
+ RrPixel32 *RrPixel_data;
};
struct _RrTextureText {
RrFont *font;
RrJustify justify;
- gint shadow;
- gchar tint;
- guchar offset;
- color_rgb *color;
+ RrColor *color;
gchar *string;
};
};
struct _RrTextureMask {
- color_rgb *color;
+ RrColor *color;
RrPixmapMask *mask;
};
struct _RrTextureRGBA {
gint width;
gint height;
- pixel32 *data;
+ RrPixel32 *data;
/* cached scaled so we don't have to scale often */
gint cwidth;
gint cheight;
- pixel32 *cache;
+ RrPixel32 *cache;
};
union _RrTextureData {
gint w, h;
};
+/* these are the same on all endian machines because it seems to be dependant
+ on the endianness of the gfx card, not the cpu. */
+#define RrDefaultAlphaOffset 24
+#define RrDefaultRedOffset 16
+#define RrDefaultGreenOffset 8
+#define RrDefaultBlueOffset 0
+
RrInstance* RrInstanceNew (Display *display, gint screen);
void RrInstanceFree (RrInstance *inst);
guint RrPseudoBPC (const RrInstance *inst);
XColor* RrPseudoColors (const RrInstance *inst);
-color_rgb *RrColorNew (const RrInstance *inst, gint r, gint g, gint b);
-color_rgb *RrColorParse (const RrInstance *inst, gchar *colorname);
-void RrColorFree (color_rgb *in);
+RrColor *RrColorNew (const RrInstance *inst, gint r, gint g, gint b);
+RrColor *RrColorParse (const RrInstance *inst, gchar *colorname);
+void RrColorFree (RrColor *in);
+
+gint RrColorRed (const RrColor *c);
+gint RrColorGreen (const RrColor *c);
+gint RrColorBlue (const RrColor *c);
+gulong RrColorPixel (const RrColor *c);
RrAppearance *RrAppearanceNew (const RrInstance *inst, gint numtex);
RrAppearance *RrAppearanceCopy (RrAppearance *a);
void RrAppearanceFree (RrAppearance *a);
+int RrFontMeasureString (const RrFont *f, const gchar *str);
+int RrFontHeight (const RrFont *f);
+int RrFontMaxCharWidth (const RrFont *f);
+
void RrPaint (RrAppearance *l, Window win, gint w, gint h);
void RrMinsize (RrAppearance *l, gint *w, gint *h);
gboolean RrPixmapToRGBA(const RrInstance *inst,
Pixmap pmap, Pixmap mask,
- gint *w, gint *h, pixel32 **data);
+ gint *w, gint *h, RrPixel32 **data);
#endif /*__render_h*/