Updating branch refs/heads/master to 39d67c146f82f0bc341cf62918220b3627b2ffa5 (commit) from 1ff854f50179fa83b82502d5d44cbe47f7ee6833 (commit)
commit 39d67c146f82f0bc341cf62918220b3627b2ffa5 Author: Peter de Ridder <pe...@xfce.org> Date: Thu Apr 26 21:51:18 2012 +0200 Added Gtk 3.4 support to the engine Themes are not updated default themes only support Gtk 3.2 gtk-3.0/xfce_engine.c | 80 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 80 insertions(+), 0 deletions(-) diff --git a/gtk-3.0/xfce_engine.c b/gtk-3.0/xfce_engine.c index acad345..7070c18 100644 --- a/gtk-3.0/xfce_engine.c +++ b/gtk-3.0/xfce_engine.c @@ -504,8 +504,16 @@ static void xfce_draw_frame(GtkThemingEngine * engine, cairo_t * cr, gdouble x, switch (border_style) { +#if GTK_CHECK_VERSION(3,4,0) + case GTK_BORDER_STYLE_HIDDEN: +#endif case GTK_BORDER_STYLE_NONE: break; +#if GTK_CHECK_VERSION(3,4,0) + case GTK_BORDER_STYLE_DOTTED: + case GTK_BORDER_STYLE_DASHED: + case GTK_BORDER_STYLE_DOUBLE: +#endif case GTK_BORDER_STYLE_SOLID: gdk_cairo_set_source_rgba(cr, &dark); if ((xt > 1) && (yt > 1)) @@ -519,6 +527,78 @@ static void xfce_draw_frame(GtkThemingEngine * engine, cairo_t * cr, gdouble x, } cairo_stroke(cr); break; +#if GTK_CHECK_VERSION(3,4,0) + case GTK_BORDER_STYLE_GROOVE: + color_dark2light(&dark, &light); + if ((xt > 1) && (yt > 1)) + { + gdk_cairo_set_source_rgba(cr, &light); + cairo_move_to(cr, x + 0.5, y + height - 0.5); + cairo_line_to(cr, x + width - 0.5, y + height - 0.5); + cairo_line_to(cr, x + width - 0.5, y + 0.5); + cairo_stroke(cr); + + gdk_cairo_set_source_rgba(cr, &dark); + cairo_move_to(cr, x + width - 1.5, y + 0.5); + cairo_line_to(cr, x + 0.5, y + 0.5); + cairo_line_to(cr, x + 0.5, y + height - 1.5); + cairo_stroke(cr); + + gdk_cairo_set_source_rgba(cr, &light); + cairo_move_to(cr, x + width - 1.5, y + 1.5); + cairo_line_to(cr, x + 1.5, y + 1.5); + cairo_line_to(cr, x + 1.5, y + height - 1.5); + cairo_stroke(cr); + + gdk_cairo_set_source_rgba(cr, &dark); + cairo_move_to(cr, x + 1.5, y + height - 1.5); + cairo_line_to(cr, x + width - 1.5, y + height - 1.5); + cairo_line_to(cr, x + width - 1.5, y + 1.5); + cairo_stroke(cr); + } + else if ((xt > 0) && (yt > 0)) + { + gdk_cairo_set_source_rgba(cr, &dark); + cairo_rectangle(cr, x + 0.5, y + 0.5, width - 1, height - 1); + cairo_stroke(cr); + } + break; + case GTK_BORDER_STYLE_RIDGE: + color_dark2light(&dark, &light); + if ((xt > 1) && (yt > 1)) + { + gdk_cairo_set_source_rgba(cr, &dark); + cairo_move_to(cr, x + 0.5, y + height - 0.5); + cairo_line_to(cr, x + width - 0.5, y + height - 0.5); + cairo_line_to(cr, x + width - 0.5, y + 0.5); + cairo_stroke(cr); + + gdk_cairo_set_source_rgba(cr, &light); + cairo_move_to(cr, x + width - 1.5, y + 0.5); + cairo_line_to(cr, x + 0.5, y + 0.5); + cairo_line_to(cr, x + 0.5, y + height - 1.5); + cairo_stroke(cr); + + gdk_cairo_set_source_rgba(cr, &dark); + cairo_move_to(cr, x + width - 1.5, y + 1.5); + cairo_line_to(cr, x + 1.5, y + 1.5); + cairo_line_to(cr, x + 1.5, y + height - 1.5); + cairo_stroke(cr); + + gdk_cairo_set_source_rgba(cr, &light); + cairo_move_to(cr, x + 1.5, y + height - 1.5); + cairo_line_to(cr, x + width - 1.5, y + height - 1.5); + cairo_line_to(cr, x + width - 1.5, y + 1.5); + cairo_stroke(cr); + } + else if ((xt > 0) && (yt > 0)) + { + gdk_cairo_set_source_rgba(cr, &light); + cairo_rectangle(cr, x + 0.5, y + 0.5, width - 1, height - 1); + cairo_stroke(cr); + } + break; +#endif case GTK_BORDER_STYLE_INSET: gtk_theming_engine_get(engine, state, XFCE_SMOOTH_EDGE, &smooth_edge, NULL); color_dark2light_mid(&dark, &light, &mid); _______________________________________________ Xfce4-commits mailing list Xfce4-commits@xfce.org https://mail.xfce.org/mailman/listinfo/xfce4-commits