Index: gdk/gdkpango.c
===================================================================
RCS file: /cvs/gnome/gtk+/gdk/gdkpango.c,v
retrieving revision 1.43
diff -u -d -p -r1.43 gdkpango.c
--- gdk/gdkpango.c	16 May 2005 19:37:34 -0000	1.43
+++ gdk/gdkpango.c	14 Jun 2005 21:51:28 -0000
@@ -349,6 +349,45 @@ gdk_pango_renderer_draw_error_underline 
 }
 
 static void
+gdk_pango_renderer_draw_trapezoid (PangoRenderer  *renderer,
+				   PangoRenderPart part,
+				   double          y1,
+				   double          x11,
+				   double          x21,
+				   double          y2,
+				   double          x12,
+				   double          x22)
+{
+  GdkPangoRenderer *gdk_renderer = GDK_PANGO_RENDERER (renderer);
+  GdkPangoRendererPrivate *priv = gdk_renderer->priv;
+  cairo_t *cr;
+
+  cr = get_cairo_context (gdk_renderer, part);
+
+  if (priv->embossed)
+    {
+      cairo_save (cr);
+      emboss_context (cr);
+
+      cairo_move_to (cr, x11, y1);
+      cairo_line_to (cr, x21, y1);
+      cairo_line_to (cr, x22, y2);
+      cairo_line_to (cr, x21, y2);
+      cairo_close_path (cr);
+      cairo_fill (cr);
+
+      cairo_restore (cr);
+    }
+
+  cairo_move_to (cr, x11, y1);
+  cairo_line_to (cr, x21, y1);
+  cairo_line_to (cr, x22, y2);
+  cairo_line_to (cr, x21, y2);
+  cairo_close_path (cr);
+  cairo_fill (cr);
+}
+
+static void
 gdk_pango_renderer_part_changed (PangoRenderer   *renderer,
 				 PangoRenderPart  part)
 {
@@ -494,6 +533,7 @@ gdk_pango_renderer_class_init (GdkPangoR
   renderer_class->draw_glyphs = gdk_pango_renderer_draw_glyphs;
   renderer_class->draw_rectangle = gdk_pango_renderer_draw_rectangle;
   renderer_class->draw_error_underline = gdk_pango_renderer_draw_error_underline;
+  renderer_class->draw_trapezoid = gdk_pango_renderer_draw_trapezoid;
   renderer_class->part_changed = gdk_pango_renderer_part_changed;
   renderer_class->begin = gdk_pango_renderer_begin;
   renderer_class->end = gdk_pango_renderer_end;
