From 3b3b6cb0abf2bab0a145df00184fc96677870ec8 Mon Sep 17 00:00:00 2001 From: Milan Crha Date: Tue, 2 Nov 2010 11:16:48 +0100 Subject: Add forgotten cairo_destroy() calls --- widgets/table/e-table-header-utils.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'widgets/table/e-table-header-utils.c') diff --git a/widgets/table/e-table-header-utils.c b/widgets/table/e-table-header-utils.c index 16e0a1948c..19a493b0f4 100644 --- a/widgets/table/e-table-header-utils.c +++ b/widgets/table/e-table-header-utils.c @@ -290,8 +290,10 @@ e_table_header_draw_button (GdkDrawable *drawable, ETableCol *ecol, inner_width = button_width - 2 * (xthick + HEADER_PADDING); inner_height = button_height - 2 * (ythick + HEADER_PADDING); - if (inner_width < 1 || inner_height < 1) + if (inner_width < 1 || inner_height < 1) { + cairo_destroy (cr); return; /* nothing fits */ + } inner_x = x + xthick + HEADER_PADDING; inner_y = y + ythick + HEADER_PADDING; @@ -314,8 +316,10 @@ e_table_header_draw_button (GdkDrawable *drawable, ETableCol *ecol, g_return_if_reached (); } - if (inner_width < 1) + if (inner_width < 1) { + cairo_destroy (cr); return; /* nothing else fits */ + } layout = build_header_layout (widget, ecol->text); pango_layout_set_ellipsize (layout, PANGO_ELLIPSIZE_END); -- cgit v1.2.3 From 7e9fc6d2b61287deaac0fa17e4dc19164c9ad51f Mon Sep 17 00:00:00 2001 From: Matthew Barnes Date: Sun, 7 Nov 2010 21:13:03 -0500 Subject: Coding style and whitespace cleanup. --- widgets/table/e-table-header-utils.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'widgets/table/e-table-header-utils.c') diff --git a/widgets/table/e-table-header-utils.c b/widgets/table/e-table-header-utils.c index 19a493b0f4..56fa44a3c6 100644 --- a/widgets/table/e-table-header-utils.c +++ b/widgets/table/e-table-header-utils.c @@ -379,7 +379,7 @@ e_table_header_draw_button (GdkDrawable *drawable, ETableCol *ecol, } #endif gdk_cairo_set_source_pixbuf (cr, ecol->pixbuf, - xpos, inner_y + (inner_height - clip_height) / 2); + xpos, inner_y + (inner_height - clip_height) / 2); cairo_paint (cr); } else { pango_layout_set_width (layout, inner_width * PANGO_SCALE); -- cgit v1.2.3 From b754e4a5d2f9b19ab7d70f79bad698c0fc69beff Mon Sep 17 00:00:00 2001 From: Matthew Barnes Date: Sat, 15 Jan 2011 10:12:53 -0500 Subject: Adapt ETableHeaderItem to latest gtk+-3.0 API. --- widgets/table/e-table-header-utils.c | 25 ++++++++++++------------- 1 file changed, 12 insertions(+), 13 deletions(-) (limited to 'widgets/table/e-table-header-utils.c') diff --git a/widgets/table/e-table-header-utils.c b/widgets/table/e-table-header-utils.c index 56fa44a3c6..da60ce03d9 100644 --- a/widgets/table/e-table-header-utils.c +++ b/widgets/table/e-table-header-utils.c @@ -237,7 +237,7 @@ make_composite_pixmap (GdkDrawable *drawable, GdkGC *gc, * Draws a button suitable for a table header. **/ void -e_table_header_draw_button (GdkDrawable *drawable, ETableCol *ecol, +e_table_header_draw_button (cairo_t *cr, ETableCol *ecol, GtkStyle *style, GtkStateType state, GtkWidget *widget, gint x, gint y, gint width, gint height, @@ -249,10 +249,9 @@ e_table_header_draw_button (GdkDrawable *drawable, ETableCol *ecol, gint inner_width, inner_height; gint arrow_width = 0, arrow_height = 0; PangoLayout *layout; - cairo_t *cr; static gpointer g_label = NULL; - g_return_if_fail (drawable != NULL); + g_return_if_fail (cr != NULL); g_return_if_fail (ecol != NULL); g_return_if_fail (E_IS_TABLE_COL (ecol)); g_return_if_fail (style != NULL); @@ -272,8 +271,7 @@ e_table_header_draw_button (GdkDrawable *drawable, ETableCol *ecol, gtk_widget_realize (g_label); } - cr = gdk_cairo_create (drawable); - + cairo_save (cr); gdk_cairo_set_source_color (cr, >k_widget_get_style (GTK_WIDGET (g_label))->fg[state]); xthick = style->xthickness; @@ -281,8 +279,8 @@ e_table_header_draw_button (GdkDrawable *drawable, ETableCol *ecol, /* Button bevel */ - gtk_paint_box (style, drawable, state, GTK_SHADOW_OUT, - NULL, widget, "button", + gtk_paint_box (style, cr, state, GTK_SHADOW_OUT, + widget, "button", x, y, button_width, button_height); /* Inside area */ @@ -291,7 +289,7 @@ e_table_header_draw_button (GdkDrawable *drawable, ETableCol *ecol, inner_height = button_height - 2 * (ythick + HEADER_PADDING); if (inner_width < 1 || inner_height < 1) { - cairo_destroy (cr); + cairo_restore (cr); return; /* nothing fits */ } @@ -313,11 +311,12 @@ e_table_header_draw_button (GdkDrawable *drawable, ETableCol *ecol, inner_width -= arrow_width + HEADER_PADDING; break; default: + cairo_restore (cr); g_return_if_reached (); } if (inner_width < 1) { - cairo_destroy (cr); + cairo_restore (cr); return; /* nothing else fits */ } @@ -397,8 +396,8 @@ e_table_header_draw_button (GdkDrawable *drawable, ETableCol *ecol, if (ecol->icon_name == NULL) inner_width += arrow_width + HEADER_PADDING; - gtk_paint_arrow (style, drawable, state, - GTK_SHADOW_NONE, NULL, widget, "header", + gtk_paint_arrow (style, cr, state, + GTK_SHADOW_NONE, widget, "header", (arrow == E_TABLE_COL_ARROW_UP) ? GTK_ARROW_UP : GTK_ARROW_DOWN, (ecol->icon_name == NULL), inner_x + inner_width - arrow_width, @@ -408,10 +407,10 @@ e_table_header_draw_button (GdkDrawable *drawable, ETableCol *ecol, } default: + cairo_restore (cr); g_return_if_reached (); } g_object_unref (layout); - - cairo_destroy (cr); + cairo_restore (cr); } -- cgit v1.2.3 From 6af0c53b697c6981c1470c177b2c37e081635258 Mon Sep 17 00:00:00 2001 From: Matthew Barnes Date: Sat, 29 Jan 2011 10:50:53 -0500 Subject: Coding style and whitespace cleanup. --- widgets/table/e-table-header-utils.c | 23 +++++++++++++---------- 1 file changed, 13 insertions(+), 10 deletions(-) (limited to 'widgets/table/e-table-header-utils.c') diff --git a/widgets/table/e-table-header-utils.c b/widgets/table/e-table-header-utils.c index da60ce03d9..55e90159c6 100644 --- a/widgets/table/e-table-header-utils.c +++ b/widgets/table/e-table-header-utils.c @@ -272,7 +272,8 @@ e_table_header_draw_button (cairo_t *cr, ETableCol *ecol, } cairo_save (cr); - gdk_cairo_set_source_color (cr, >k_widget_get_style (GTK_WIDGET (g_label))->fg[state]); + gdk_cairo_set_source_color ( + cr, >k_widget_get_style (GTK_WIDGET (g_label))->fg[state]); xthick = style->xthickness; ythick = style->ythickness; @@ -321,7 +322,7 @@ e_table_header_draw_button (cairo_t *cr, ETableCol *ecol, } layout = build_header_layout (widget, ecol->text); - pango_layout_set_ellipsize (layout, PANGO_ELLIPSIZE_END); + pango_layout_set_ellipsize (layout, PANGO_ELLIPSIZE_END); /* Pixbuf or label */ if (ecol->icon_name != NULL) { @@ -351,10 +352,12 @@ e_table_header_draw_button (cairo_t *cr, ETableCol *ecol, ypos = inner_y; - pango_layout_set_width (layout, (inner_width - (xpos - inner_x)) * PANGO_SCALE); + pango_layout_set_width ( + layout, (inner_width - (xpos - inner_x)) * + PANGO_SCALE); - cairo_move_to (cr, xpos + pwidth + 1, ypos); - pango_cairo_show_layout (cr, layout); + cairo_move_to (cr, xpos + pwidth + 1, ypos); + pango_cairo_show_layout (cr, layout); } /* FIXME: For some reason, under clutter gdk_draw_rgb_image_dithalign crashes @@ -377,14 +380,14 @@ e_table_header_draw_button (cairo_t *cr, ETableCol *ecol, g_object_unref (pixmap); } #endif - gdk_cairo_set_source_pixbuf (cr, ecol->pixbuf, + gdk_cairo_set_source_pixbuf (cr, ecol->pixbuf, xpos, inner_y + (inner_height - clip_height) / 2); - cairo_paint (cr); + cairo_paint (cr); } else { - pango_layout_set_width (layout, inner_width * PANGO_SCALE); + pango_layout_set_width (layout, inner_width * PANGO_SCALE); - cairo_move_to (cr, inner_x, inner_y); - pango_cairo_show_layout (cr, layout); + cairo_move_to (cr, inner_x, inner_y); + pango_cairo_show_layout (cr, layout); } switch (arrow) { -- cgit v1.2.3 From 8efc1bc6f91e06ca61b00eb8119c9c36697e43a6 Mon Sep 17 00:00:00 2001 From: Kjartan Maraas Date: Tue, 8 Feb 2011 11:57:50 -0500 Subject: Bug 641756 - Fix warnings from GCC 4.6 GCC learned how to find dead assignments. --- widgets/table/e-table-header-utils.c | 24 +----------------------- 1 file changed, 1 insertion(+), 23 deletions(-) (limited to 'widgets/table/e-table-header-utils.c') diff --git a/widgets/table/e-table-header-utils.c b/widgets/table/e-table-header-utils.c index 55e90159c6..2fe6a56089 100644 --- a/widgets/table/e-table-header-utils.c +++ b/widgets/table/e-table-header-utils.c @@ -327,16 +327,14 @@ e_table_header_draw_button (cairo_t *cr, ETableCol *ecol, /* Pixbuf or label */ if (ecol->icon_name != NULL) { gint pwidth, pheight; - gint clip_width, clip_height; + gint clip_height; gint xpos; - /* GdkPixmap *pixmap; */ g_return_if_fail (ecol->pixbuf != NULL); pwidth = gdk_pixbuf_get_width (ecol->pixbuf); pheight = gdk_pixbuf_get_height (ecol->pixbuf); - clip_width = MIN (pwidth, inner_width); clip_height = MIN (pheight, inner_height); xpos = inner_x; @@ -360,26 +358,6 @@ e_table_header_draw_button (cairo_t *cr, ETableCol *ecol, pango_cairo_show_layout (cr, layout); } - /* FIXME: For some reason, under clutter gdk_draw_rgb_image_dithalign crashes - * Debug that later */ -#if 0 - pixmap = make_composite_pixmap (drawable, gc, - ecol->pixbuf, &style->bg[state], - clip_width, clip_height, - xpos, - inner_y + (inner_height - clip_height) / 2); - - gdk_gc_set_clip_rectangle (gc, NULL); - - if (pixmap) { - gdk_draw_drawable (drawable, gc, pixmap, - 0, 0, - xpos, - inner_y + (inner_height - clip_height) / 2, - clip_width, clip_height); - g_object_unref (pixmap); - } -#endif gdk_cairo_set_source_pixbuf (cr, ecol->pixbuf, xpos, inner_y + (inner_height - clip_height) / 2); cairo_paint (cr); -- cgit v1.2.3 From 578214584caa7805edca09b27e2306dc31d80fb6 Mon Sep 17 00:00:00 2001 From: Matthew Barnes Date: Sat, 7 May 2011 12:22:36 -0400 Subject: Whitespace and coding style cleanups. --- widgets/table/e-table-header-utils.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'widgets/table/e-table-header-utils.c') diff --git a/widgets/table/e-table-header-utils.c b/widgets/table/e-table-header-utils.c index 2fe6a56089..8911867652 100644 --- a/widgets/table/e-table-header-utils.c +++ b/widgets/table/e-table-header-utils.c @@ -124,7 +124,9 @@ make_composite_pixmap (GdkDrawable *drawable, GdkGC *gc, pheight = gdk_pixbuf_get_height (pixbuf); g_return_val_if_fail (width <= pwidth && height <= pheight, NULL); - color = ((bg->red & 0xff00) << 8) | (bg->green & 0xff00) | ((bg->blue & 0xff00) >> 8); + color = ((bg->red & 0xff00) << 8) | + (bg->green & 0xff00) | + ((bg->blue & 0xff00) >> 8); if (width >= pwidth && height >= pheight) { tmp = gdk_pixbuf_new (GDK_COLORSPACE_RGB, FALSE, 8, width, height); -- cgit v1.2.3 From c24038c4f62f37b89d1bda9542ca5ccc843d4ea0 Mon Sep 17 00:00:00 2001 From: Milan Crha Date: Fri, 27 May 2011 15:23:07 +0200 Subject: Bug #646109 - Fix use of include to make sure translations work --- widgets/table/e-table-header-utils.c | 2 ++ 1 file changed, 2 insertions(+) (limited to 'widgets/table/e-table-header-utils.c') diff --git a/widgets/table/e-table-header-utils.c b/widgets/table/e-table-header-utils.c index 8911867652..174d20a1de 100644 --- a/widgets/table/e-table-header-utils.c +++ b/widgets/table/e-table-header-utils.c @@ -22,7 +22,9 @@ * */ +#ifdef HAVE_CONFIG_H #include +#endif #include /* strlen() */ #include -- cgit v1.2.3 From 7132d0f0c2b8494b3962792cd77ce3fcb5313687 Mon Sep 17 00:00:00 2001 From: Matthew Barnes Date: Sat, 28 May 2011 10:18:56 -0400 Subject: Including directly is rarely needed. --- widgets/table/e-table-header-utils.c | 1 - 1 file changed, 1 deletion(-) (limited to 'widgets/table/e-table-header-utils.c') diff --git a/widgets/table/e-table-header-utils.c b/widgets/table/e-table-header-utils.c index 174d20a1de..659677eceb 100644 --- a/widgets/table/e-table-header-utils.c +++ b/widgets/table/e-table-header-utils.c @@ -27,7 +27,6 @@ #endif #include /* strlen() */ -#include #include -- cgit v1.2.3 From 777c1cbd40eb63365f2c28e38f6a93beb2d1c9d1 Mon Sep 17 00:00:00 2001 From: Matthew Barnes Date: Tue, 16 Aug 2011 11:25:56 -0400 Subject: Coding style and whitespace cleanup. --- widgets/table/e-table-header-utils.c | 37 ++++++++++++++++++++++++------------ 1 file changed, 25 insertions(+), 12 deletions(-) (limited to 'widgets/table/e-table-header-utils.c') diff --git a/widgets/table/e-table-header-utils.c b/widgets/table/e-table-header-utils.c index 659677eceb..34f93a701b 100644 --- a/widgets/table/e-table-header-utils.c +++ b/widgets/table/e-table-header-utils.c @@ -35,8 +35,9 @@ #include "e-table-defines.h" #include "e-table-header-utils.h" -static PangoLayout* -build_header_layout (GtkWidget *widget, const gchar *str) +static PangoLayout * +build_header_layout (GtkWidget *widget, + const gchar *str) { PangoLayout *layout; @@ -69,7 +70,8 @@ build_header_layout (GtkWidget *widget, const gchar *str) * Return value: The height of the button, in pixels. **/ gdouble -e_table_header_compute_height (ETableCol *ecol, GtkWidget *widget) +e_table_header_compute_height (ETableCol *ecol, + GtkWidget *widget) { gint ythick; gint height; @@ -112,9 +114,14 @@ e_table_header_width_extras (GtkStyle *style) */ #if 0 static GdkPixmap * -make_composite_pixmap (GdkDrawable *drawable, GdkGC *gc, - GdkPixbuf *pixbuf, GdkColor *bg, gint width, gint height, - gint dither_xofs, gint dither_yofs) +make_composite_pixmap (GdkDrawable *drawable, + GdkGC *gc, + GdkPixbuf *pixbuf, + GdkColor *bg, + gint width, + gint height, + gint dither_xofs, + gint dither_yofs) { gint pwidth, pheight; GdkPixmap *pixmap; @@ -240,12 +247,18 @@ make_composite_pixmap (GdkDrawable *drawable, GdkGC *gc, * Draws a button suitable for a table header. **/ void -e_table_header_draw_button (cairo_t *cr, ETableCol *ecol, - GtkStyle *style, GtkStateType state, - GtkWidget *widget, - gint x, gint y, gint width, gint height, - gint button_width, gint button_height, - ETableColArrow arrow) +e_table_header_draw_button (cairo_t *cr, + ETableCol *ecol, + GtkStyle *style, + GtkStateType state, + GtkWidget *widget, + gint x, + gint y, + gint width, + gint height, + gint button_width, + gint button_height, + ETableColArrow arrow) { gint xthick, ythick; gint inner_x, inner_y; -- cgit v1.2.3