]> Dogcows Code - chaz/openbox/blobdiff - render/render.h
scary commit..but here goes.
[chaz/openbox] / render / render.h
index 38bcdeb5d225c6e98de12b7c17a6459a03cda209..d03db8d5801654cae37034f78fead09318a87846 100644 (file)
@@ -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
@@ -25,8 +25,7 @@
 #include "version.h"
 
 #include <X11/Xlib.h> /* some platforms dont include this as needed for Xft */
-#define _XFT_NO_COMPAT_ /* no Xft 1 API */
-#include <X11/Xft/Xft.h>
+#include <pango/pangoxft.h>
 #include <glib.h>
 
 G_BEGIN_DECLS
@@ -62,13 +61,13 @@ typedef enum {
     RR_SURFACE_NONE,
     RR_SURFACE_PARENTREL,
     RR_SURFACE_SOLID,
-    RR_SURFACE_SPLIT,
+    RR_SURFACE_SPLIT_VERTICAL,
     RR_SURFACE_HORIZONTAL,
     RR_SURFACE_VERTICAL,
     RR_SURFACE_DIAGONAL,
     RR_SURFACE_CROSS_DIAGONAL,
     RR_SURFACE_PYRAMID,
-    RR_SURFACE_OSX
+    RR_SURFACE_MIRROR_HORIZONTAL
 } RrSurfaceColorType;
 
 typedef enum {
@@ -85,6 +84,20 @@ typedef enum {
     RR_JUSTIFY_RIGHT
 } RrJustify;
 
+typedef enum {
+    RR_FONTWEIGHT_LIGHT,
+    RR_FONTWEIGHT_NORMAL,
+    RR_FONTWEIGHT_SEMIBOLD,
+    RR_FONTWEIGHT_BOLD,
+    RR_FONTWEIGHT_ULTRABOLD
+} RrFontWeight;
+
+typedef enum {
+    RR_FONTSLANT_NORMAL,
+    RR_FONTSLANT_ITALIC,
+    RR_FONTSLANT_OBLIQUE
+} RrFontSlant;
+
 struct _RrSurface {
     RrSurfaceColorType grad;
     RrReliefType relief;
@@ -108,6 +121,10 @@ struct _RrTextureText {
     RrJustify justify;
     RrColor *color;
     gchar *string;
+    gint shadow_offset_x;
+    gint shadow_offset_y;
+    RrColor *shadow_color;
+    gchar shadow_alpha;
 };
 
 struct _RrPixmapMask {
@@ -173,6 +190,11 @@ struct _RrAppearance {
 #define RrDefaultGreenOffset 8
 #define RrDefaultBlueOffset 0
 
+#define RrDefaultFontFamily       "arial,sans"
+#define RrDefaultFontSize         8
+#define RrDefaultFontWeight       RR_FONTWEIGHT_NORMAL
+#define RrDefaultFontSlant        RR_FONTSLANT_NORMAL
+
 RrInstance* RrInstanceNew (Display *display, gint screen);
 void        RrInstanceFree (RrInstance *inst);
 
@@ -206,9 +228,14 @@ RrAppearance *RrAppearanceNew  (const RrInstance *inst, gint numtex);
 RrAppearance *RrAppearanceCopy (RrAppearance *a);
 void          RrAppearanceFree (RrAppearance *a);
 
-RrSize *RrFontMeasureString (const RrFont *f, const gchar *str);
-gint RrFontHeight        (const RrFont *f);
-gint RrFontMaxCharWidth  (const RrFont *f);
+RrFont *RrFontOpen          (const RrInstance *inst, 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_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);
This page took 0.02777 seconds and 4 git commands to generate.