[murrine] New option: handlestyle = 0 for three simple lines. handlestyle = 1 for three simple lines with inse



commit 9bc120b2aecf5904cd270237991ab5f2d33ec2fe
Author: Andrea Cimitan <andrea cimitan gmail com>
Date:   Wed May 26 14:39:25 2010 +0100

    New option: handlestyle = 0 for three simple lines.
    handlestyle = 1 for three simple lines with inset.

 NEWS                     |    2 +
 schema/murrine.xml.in.in |   12 ++++
 src/murrine_draw.c       |  139 +++++++++++++++++++++++++++++++++++++---------
 src/murrine_draw_rgba.c  |   84 +++++++++++++++++++++++-----
 src/murrine_rc_style.c   |    9 +++
 src/murrine_rc_style.h   |   42 +++++++-------
 src/murrine_style.c      |   13 ++++-
 src/murrine_style.h      |    1 +
 src/murrine_types.h      |    3 +
 9 files changed, 243 insertions(+), 62 deletions(-)
---
diff --git a/NEWS b/NEWS
index 4ec2e58..b62aff7 100644
--- a/NEWS
+++ b/NEWS
@@ -18,6 +18,8 @@ Changes in this release:
 - New option: gradient_colors = { "#ffffff", "#ffffff", "#ffffff", "#ffffff" }
               to set the colors used on the gradient of many widgets.
               gradient_colors = FALSE to disable.
+- New option: handlestyle = 0 for three simple lines
+              handlestyle = 1 for three simple lines with inset.
 - New option: prelight_shade = 1.0 to select the shade level used in the
               scrollbar's slider, GtkComboBox with comboboxstyle = 1 and
               in the prelight state with gradient_colors.
diff --git a/schema/murrine.xml.in.in b/schema/murrine.xml.in.in
index 2eb8f4e..8f6f428 100644
--- a/schema/murrine.xml.in.in
+++ b/schema/murrine.xml.in.in
@@ -139,6 +139,18 @@
 		</enumeration>
 	</option>
 
+	<option type="enumeration" name="handlestyle" default="0">
+		<_long_name>Handle Style</_long_name>
+		<section>General</section>
+		<enumeration value="0">
+			<label>Small lines</label>
+		</enumeration>
+		<enumeration value="1">
+			<label>Small lines with inset</label>
+		</enumeration>
+	</option>
+
+
 	<option type="real" name="highlight_shade" default="1.1">
 		<_long_name>Highlight Shade</_long_name>
 		<_description>Increse/Decrease the highlight shade</_description>
diff --git a/src/murrine_draw.c b/src/murrine_draw.c
index 861f5b3..96b4a0f 100644
--- a/src/murrine_draw.c
+++ b/src/murrine_draw.c
@@ -591,14 +591,15 @@ static void
 murrine_draw_slider_handle (cairo_t *cr,
                             const MurrineColors    *colors,
                             const WidgetParameters *widget,
+                            const HandleParameters *handle,
                             int x, int y, int width, int height,
                             boolean horizontal)
 {
 	int num_handles = 2, bar_x, i;
-	MurrineRGB handle;
-	murrine_shade (&colors->shade[6], 0.95, &handle);
+	MurrineRGB color, inset;
+	murrine_shade (&colors->shade[6], 0.95, &color);
 
-	murrine_mix_color (&handle, &colors->bg[widget->state_type], 0.4, &handle);
+	murrine_mix_color (&color, &colors->bg[widget->state_type], 0.4, &color);
 
 	if (!horizontal)
 	{
@@ -611,13 +612,43 @@ murrine_draw_slider_handle (cairo_t *cr,
 	bar_x = width/2 - num_handles;
 
 	cairo_translate (cr, 0.5, 0.5);
-	for (i=0; i<num_handles; i++)
+
+	switch (handle->style)
 	{
-		cairo_move_to (cr, bar_x, 3.5);
-		cairo_line_to (cr, bar_x, height-4.5);
-		murrine_set_color_rgb (cr, &handle);
-		cairo_stroke (cr);
-		bar_x += 3;
+		default:
+		case 0:
+		{
+			for (i=0; i<num_handles; i++)
+			{
+				cairo_move_to (cr, bar_x, 3.5);
+				cairo_line_to (cr, bar_x, height-4.5);
+				murrine_set_color_rgb (cr, &color);
+				cairo_stroke (cr);
+
+				bar_x += 3;
+			}			
+			break;
+		}
+		case 1:
+		{	
+			murrine_shade (&colors->bg[widget->state_type], 1.08, &inset);
+
+			for (i=0; i<num_handles; i++)
+			{
+				cairo_move_to (cr, bar_x, 3.5);
+				cairo_line_to (cr, bar_x, height-4.5);
+				murrine_set_color_rgb (cr, &color);
+				cairo_stroke (cr);
+
+				cairo_move_to (cr, bar_x+1, 3.5);
+				cairo_line_to (cr, bar_x+1, height-4.5);
+				murrine_set_color_rgb (cr, &inset);
+				cairo_stroke (cr);
+
+				bar_x += 3;
+			}			
+			break;
+		}		
 	}
 }
 
@@ -720,10 +751,10 @@ murrine_draw_progressbar_fill (cairo_t *cr,
 	cairo_save (cr);
 
 	murrine_rounded_rectangle_closed (cr, 2, 1, width-4+roundness, height-2,
-	                                  roundness, MRN_CORNER_TOPLEFT | MRN_CORNER_BOTTOMLEFT);
+	                                  roundness-1, MRN_CORNER_TOPLEFT | MRN_CORNER_BOTTOMLEFT);
 	cairo_clip (cr);
 	murrine_rounded_rectangle_closed (cr, 2-roundness, 1, width-4+roundness, height-2,
-	                                  roundness, MRN_CORNER_TOPRIGHT | MRN_CORNER_BOTTOMRIGHT);
+	                                  roundness-1, MRN_CORNER_TOPRIGHT | MRN_CORNER_BOTTOMRIGHT);
 	cairo_clip (cr);
 
 	cairo_rectangle (cr, 2, 1, width-4, height-2);
@@ -785,10 +816,10 @@ murrine_draw_progressbar_fill (cairo_t *cr,
 	cairo_save (cr);
 
 	murrine_rounded_rectangle_closed (cr, 1, 0, width-2+roundness, height,
-	                                  roundness, MRN_CORNER_TOPLEFT | MRN_CORNER_BOTTOMLEFT);
+	                                  roundness-1, MRN_CORNER_TOPLEFT | MRN_CORNER_BOTTOMLEFT);
 	cairo_clip (cr);
 	murrine_rounded_rectangle_closed (cr, 1-roundness, 0, width-2+roundness, height,
-	                                  roundness, MRN_CORNER_TOPRIGHT | MRN_CORNER_BOTTOMRIGHT);
+	                                  roundness-1, MRN_CORNER_TOPRIGHT | MRN_CORNER_BOTTOMRIGHT);
 	cairo_clip (cr);
 
 	/* Draw border */
@@ -1941,14 +1972,44 @@ murrine_draw_scrollbar_slider (cairo_t *cr,
 	{
 		double bar_x = width/2-3.5;
 		int i;
-		for (i=0; i<3; i++)
-		{
-			cairo_move_to (cr, bar_x, 5);
-			cairo_line_to (cr, bar_x, height-5);
-			murrine_set_color_rgb (cr, &border);
-			cairo_stroke (cr);
 
-			bar_x += 3;
+		switch (scrollbar->handlestyle)
+		{
+			default:
+			case 0:
+			{
+				for (i=0; i<3; i++)
+				{
+					cairo_move_to (cr, bar_x, 5);
+					cairo_line_to (cr, bar_x, height-5);
+					murrine_set_color_rgb (cr, &border);
+					cairo_stroke (cr);
+
+					bar_x += 3;
+				}
+				break;
+			}
+			case 1:
+			{
+				MurrineRGB inset;				
+				murrine_shade (&fill, 1.08, &inset);
+
+				for (i=0; i<3; i++)
+				{
+					cairo_move_to (cr, bar_x, 5);
+					cairo_line_to (cr, bar_x, height-5);
+					murrine_set_color_rgb (cr, &border);
+					cairo_stroke (cr);
+
+					cairo_move_to (cr, bar_x+1, 5);
+					cairo_line_to (cr, bar_x+1, height-5);
+					murrine_set_color_rgb (cr, &inset);
+					cairo_stroke (cr);
+
+					bar_x += 3;
+				}
+				break;
+			}
 		}
 	}
 
@@ -2104,14 +2165,40 @@ murrine_draw_handle (cairo_t *cr,
 		cairo_translate (cr, x+width/2-bar_width/2, y+height/2-bar_height/2+0.5);
 	}
 
-	for (i=0; i<num_bars; i++)
+	switch (handle->style)
 	{
-		cairo_move_to (cr, 0, bar_y);
-		cairo_line_to (cr, bar_width, bar_y);
-		murrine_set_color_rgb (cr, &colors->shade[4]);
-		cairo_stroke (cr);
+		default:
+		case 0:
+		{
+			for (i=0; i<num_bars; i++)
+			{
+				cairo_move_to (cr, 0, bar_y);
+				cairo_line_to (cr, bar_width, bar_y);
+				murrine_set_color_rgb (cr, &colors->shade[4]);
+				cairo_stroke (cr);
 
-		bar_y += bar_spacing;
+				bar_y += bar_spacing;
+			}			
+			break;
+		}
+		case 1:
+		{	
+			for (i=0; i<num_bars; i++)
+			{
+				cairo_move_to (cr, 0, bar_y);
+				cairo_line_to (cr, bar_width, bar_y);
+				murrine_set_color_rgb (cr, &colors->shade[4]);
+				cairo_stroke (cr);
+
+				cairo_move_to (cr, 0, bar_y+1);
+				cairo_line_to (cr, bar_width, bar_y+1);
+				murrine_set_color_rgb (cr, &colors->shade[0]);
+				cairo_stroke (cr);
+
+				bar_y += bar_spacing;
+			}			
+			break;
+		}		
 	}
 }
 
diff --git a/src/murrine_draw_rgba.c b/src/murrine_draw_rgba.c
index 50ab2b0..ef7a1d7 100644
--- a/src/murrine_draw_rgba.c
+++ b/src/murrine_draw_rgba.c
@@ -1567,14 +1567,44 @@ murrine_rgba_draw_scrollbar_slider (cairo_t *cr,
 	{
 		double bar_x = width/2-3.5;
 		int i;
-		for (i=0; i<3; i++)
-		{
-			cairo_move_to (cr, bar_x, 5);
-			cairo_line_to (cr, bar_x, height-5);
-			murrine_set_color_rgb (cr, &border);
-			cairo_stroke (cr);
 
-			bar_x += 3;
+		switch (scrollbar->handlestyle)
+		{
+			default:
+			case 0:
+			{
+				for (i=0; i<3; i++)
+				{
+					cairo_move_to (cr, bar_x, 5);
+					cairo_line_to (cr, bar_x, height-5);
+					murrine_set_color_rgb (cr, &border);
+					cairo_stroke (cr);
+
+					bar_x += 3;
+				}
+				break;
+			}
+			case 1:
+			{
+				MurrineRGB inset;				
+				murrine_shade (&fill, 1.08, &inset);
+
+				for (i=0; i<3; i++)
+				{
+					cairo_move_to (cr, bar_x, 5);
+					cairo_line_to (cr, bar_x, height-5);
+					murrine_set_color_rgb (cr, &border);
+					cairo_stroke (cr);
+
+					cairo_move_to (cr, bar_x+1, 5);
+					cairo_line_to (cr, bar_x+1, height-5);
+					murrine_set_color_rgb (cr, &inset);
+					cairo_stroke (cr);
+
+					bar_x += 3;
+				}
+				break;
+			}
 		}
 	}
 
@@ -1640,8 +1670,6 @@ murrine_rgba_draw_handle (cairo_t *cr,
                           const HandleParameters *handle,
                           int x, int y, int width, int height)
 {
-	const MurrineRGB *dark  = &colors->shade[5];
-
 	int bar_height;
 	int bar_width  = 4;
 	int i, bar_y = 1;
@@ -1662,14 +1690,40 @@ murrine_rgba_draw_handle (cairo_t *cr,
 		cairo_translate (cr, x+width/2-bar_width/2, y+height/2-bar_height/2+0.5);
 	}
 
-	for (i=0; i<num_bars; i++)
+	switch (handle->style)
 	{
-		murrine_set_color_rgb (cr, dark);
-		cairo_move_to (cr, 0, bar_y);
-		cairo_line_to (cr, bar_width, bar_y);
-		cairo_stroke (cr);
+		default:
+		case 0:
+		{
+			for (i=0; i<num_bars; i++)
+			{
+				cairo_move_to (cr, 0, bar_y);
+				cairo_line_to (cr, bar_width, bar_y);
+				murrine_set_color_rgb (cr, &colors->shade[5]);
+				cairo_stroke (cr);
+
+				bar_y += bar_spacing;
+			}			
+			break;
+		}
+		case 1:
+		{	
+			for (i=0; i<num_bars; i++)
+			{
+				cairo_move_to (cr, 0, bar_y);
+				cairo_line_to (cr, bar_width, bar_y);
+				murrine_set_color_rgb (cr, &colors->shade[5]);
+				cairo_stroke (cr);
 
-		bar_y += bar_spacing;
+				cairo_move_to (cr, 0, bar_y+1);
+				cairo_line_to (cr, bar_width, bar_y+1);
+				murrine_set_color_rgb (cr, &colors->shade[0]);
+				cairo_stroke (cr);
+
+				bar_y += bar_spacing;
+			}			
+			break;
+		}		
 	}
 }
 
diff --git a/src/murrine_rc_style.c b/src/murrine_rc_style.c
index bd27390..fb61f68 100644
--- a/src/murrine_rc_style.c
+++ b/src/murrine_rc_style.c
@@ -51,6 +51,7 @@ enum
 	TOKEN_GLOWSTYLE,
 	TOKEN_GRADIENT_COLORS,
 	TOKEN_GRADIENT_SHADES,
+	TOKEN_HANDLESTYLE,
 	TOKEN_HIGHLIGHT_SHADE,
 	TOKEN_LIGHTBORDER_SHADE,
 	TOKEN_LIGHTBORDERSTYLE,
@@ -113,6 +114,7 @@ theme_symbols[] =
 	{ "glowstyle",           TOKEN_GLOWSTYLE },
 	{ "gradient_colors",     TOKEN_GRADIENT_COLORS },
 	{ "gradient_shades",     TOKEN_GRADIENT_SHADES },
+	{ "handlestyle",         TOKEN_HANDLESTYLE },
 	{ "highlight_shade",     TOKEN_HIGHLIGHT_SHADE },
 	{ "lightborder_shade",   TOKEN_LIGHTBORDER_SHADE },
 	{ "lightborderstyle",    TOKEN_LIGHTBORDERSTYLE },
@@ -177,6 +179,7 @@ murrine_rc_style_init (MurrineRcStyle *murrine_rc)
 	murrine_rc->expanderstyle = 0;
 	murrine_rc->has_border_colors = FALSE;
 	murrine_rc->has_gradient_colors = FALSE;
+	murrine_rc->handlestyle = 0;
 	murrine_rc->glazestyle = 1;
 	murrine_rc->glow_shade = 1.0;
 	murrine_rc->glowstyle = 0;
@@ -679,6 +682,10 @@ murrine_rc_style_parse (GtkRcStyle *rc_style,
 				token = theme_parse_gradient (settings, scanner, murrine_style->gradient_shades);
 				murrine_style->gflags |= MRN_FLAG_GRADIENT_SHADES;
 				break;
+			case TOKEN_HANDLESTYLE:
+				token = theme_parse_int (settings, scanner, &murrine_style->handlestyle);
+				murrine_style->flags |= MRN_FLAG_HANDLESTYLE;
+				break;
 			case TOKEN_HIGHLIGHT_SHADE:
 				token = theme_parse_shade (settings, scanner, &murrine_style->highlight_shade);
 				murrine_style->flags |= MRN_FLAG_HIGHLIGHT_SHADE;
@@ -868,6 +875,8 @@ murrine_rc_style_merge (GtkRcStyle *dest,
 		dest_w->glow_shade = src_w->glow_shade;
 	if (flags & MRN_FLAG_GLOWSTYLE)
 		dest_w->glowstyle = src_w->glowstyle;
+	if (flags & MRN_FLAG_HANDLESTYLE)
+		dest_w->handlestyle = src_w->handlestyle;
 	if (flags & MRN_FLAG_HIGHLIGHT_SHADE)
 		dest_w->highlight_shade = src_w->highlight_shade;
 	if (flags & MRN_FLAG_LIGHTBORDER_SHADE)
diff --git a/src/murrine_rc_style.h b/src/murrine_rc_style.h
index 52b6dc5..8517a2a 100644
--- a/src/murrine_rc_style.h
+++ b/src/murrine_rc_style.h
@@ -43,26 +43,27 @@ typedef enum
 	MRN_FLAG_GLAZESTYLE = 1 << 6,
 	MRN_FLAG_GLOW_SHADE = 1 << 7,
 	MRN_FLAG_GLOWSTYLE = 1 << 8,
-	MRN_FLAG_HIGHLIGHT_SHADE = 1 << 9,
-	MRN_FLAG_LIGHTBORDER_SHADE = 1 << 10,
-	MRN_FLAG_LIGHTBORDERSTYLE= 1 << 11,
-	MRN_FLAG_LISTVIEWHEADERSTYLE = 1 << 12,
-	MRN_FLAG_LISTVIEWSTYLE = 1 << 13,
-	MRN_FLAG_MENUBARITEMSTYLE = 1 << 14,
-	MRN_FLAG_MENUBARSTYLE = 1 << 15,
-	MRN_FLAG_MENUITEMSTYLE = 1 << 16,
-	MRN_FLAG_MENUSTYLE = 1 << 17,
-	MRN_FLAG_PRELIGHT_SHADE = 1 << 18,
-	MRN_FLAG_PROGRESSBARSTYLE = 1 << 19,
-	MRN_FLAG_RELIEFSTYLE = 1 << 20,
-	MRN_FLAG_SCROLLBARSTYLE = 1 << 21,
-	MRN_FLAG_SEPARATORSTYLE = 1 << 22,
-	MRN_FLAG_SLIDERSTYLE = 1 << 23,
-	MRN_FLAG_SPINBUTTONSTYLE = 1 << 24,
-	MRN_FLAG_STEPPERSTYLE = 1 << 25,
-	MRN_FLAG_TEXTSTYLE = 1 << 26,
-	MRN_FLAG_TEXT_SHADE = 1 << 27,
-	MRN_FLAG_TOOLBARSTYLE = 1 << 28
+	MRN_FLAG_HANDLESTYLE = 1 << 9,
+	MRN_FLAG_HIGHLIGHT_SHADE = 1 << 10,
+	MRN_FLAG_LIGHTBORDER_SHADE = 1 << 11,
+	MRN_FLAG_LIGHTBORDERSTYLE= 1 << 12,
+	MRN_FLAG_LISTVIEWHEADERSTYLE = 1 << 13,
+	MRN_FLAG_LISTVIEWSTYLE = 1 << 14,
+	MRN_FLAG_MENUBARITEMSTYLE = 1 << 15,
+	MRN_FLAG_MENUBARSTYLE = 1 << 16,
+	MRN_FLAG_MENUITEMSTYLE = 1 << 17,
+	MRN_FLAG_MENUSTYLE = 1 << 18,
+	MRN_FLAG_PRELIGHT_SHADE = 1 << 19,
+	MRN_FLAG_PROGRESSBARSTYLE = 1 << 20,
+	MRN_FLAG_RELIEFSTYLE = 1 << 21,
+	MRN_FLAG_SCROLLBARSTYLE = 1 << 22,
+	MRN_FLAG_SEPARATORSTYLE = 1 << 23,
+	MRN_FLAG_SLIDERSTYLE = 1 << 24,
+	MRN_FLAG_SPINBUTTONSTYLE = 1 << 25,
+	MRN_FLAG_STEPPERSTYLE = 1 << 26,
+	MRN_FLAG_TEXTSTYLE = 1 << 27,
+	MRN_FLAG_TEXT_SHADE = 1 << 28,
+	MRN_FLAG_TOOLBARSTYLE = 1 << 29
 } MurrineRcFlags;
 
 typedef enum
@@ -110,6 +111,7 @@ struct _MurrineRcStyle
 	guint8   expanderstyle;
 	guint8   glazestyle;
 	guint8   glowstyle;
+	guint8   handlestyle;
 	guint8   lightborderstyle;
 	guint8   listviewheaderstyle;
 	guint8   listviewstyle;
diff --git a/src/murrine_style.c b/src/murrine_style.c
index eb0d0e1..ba2aa4c 100644
--- a/src/murrine_style.c
+++ b/src/murrine_style.c
@@ -726,6 +726,7 @@ murrine_style_draw_handle (DRAW_ARGS, GtkOrientation orientation)
 
 		handle.type = MRN_HANDLE_TOOLBAR;
 		handle.horizontal = (orientation == GTK_ORIENTATION_HORIZONTAL);
+		handle.style = murrine_style->handlestyle;
 
 		murrine_set_widget_parameters (widget, style, state_type, &params);
 
@@ -738,6 +739,7 @@ murrine_style_draw_handle (DRAW_ARGS, GtkOrientation orientation)
 
 		handle.type = MRN_HANDLE_SPLITTER;
 		handle.horizontal = (orientation == GTK_ORIENTATION_HORIZONTAL);
+		handle.style = murrine_style->handlestyle;
 
 		murrine_set_widget_parameters (widget, style, state_type, &params);
 
@@ -750,6 +752,7 @@ murrine_style_draw_handle (DRAW_ARGS, GtkOrientation orientation)
 
 		handle.type = MRN_HANDLE_TOOLBAR;
 		handle.horizontal = (orientation == GTK_ORIENTATION_HORIZONTAL);
+		handle.style = murrine_style->handlestyle;
 
 		murrine_set_widget_parameters (widget, style, state_type, &params);
 
@@ -1284,7 +1287,12 @@ murrine_style_draw_box (DRAW_ARGS)
 		STYLE_FUNCTION(draw_button) (cr, &murrine_style->colors, &params, x, y, width, height, horizontal);
 
 		if (murrine_style->sliderstyle == 1)
-			STYLE_FUNCTION(draw_slider_handle) (cr, &murrine_style->colors, &params, x, y, width, height, horizontal);
+		{
+			HandleParameters handle;
+			handle.style = murrine_style->handlestyle;
+
+			STYLE_FUNCTION(draw_slider_handle) (cr, &murrine_style->colors, &params, &handle, x, y, width, height, horizontal);
+		}
 	}
 	else if (DETAIL ("optionmenu"))
 	{
@@ -1352,6 +1360,7 @@ murrine_style_draw_box (DRAW_ARGS)
 		scrollbar.has_color      = FALSE;
 		scrollbar.horizontal     = TRUE;
 		scrollbar.junction       = murrine_scrollbar_get_junction (widget);
+		scrollbar.handlestyle    = murrine_style->handlestyle;
 		scrollbar.steppers       = murrine_scrollbar_visible_steppers (widget);
 		scrollbar.style          = murrine_style->scrollbarstyle;
 		scrollbar.stepperstyle   = murrine_style->stepperstyle;
@@ -2333,6 +2342,7 @@ murrine_style_init_from_rc (GtkStyle   *style,
 	murrine_style->has_focus_color     = MURRINE_RC_STYLE (rc_style)->flags & MRN_FLAG_FOCUS_COLOR;
 	murrine_style->has_gradient_colors = MURRINE_RC_STYLE (rc_style)->has_gradient_colors;
 	murrine_style->glowstyle           = MURRINE_RC_STYLE (rc_style)->glowstyle;
+	murrine_style->handlestyle         = MURRINE_RC_STYLE (rc_style)->handlestyle;
 	murrine_style->lightborderstyle    = MURRINE_RC_STYLE (rc_style)->lightborderstyle;
 	murrine_style->listviewheaderstyle = MURRINE_RC_STYLE (rc_style)->listviewheaderstyle;
 	murrine_style->listviewstyle       = MURRINE_RC_STYLE (rc_style)->listviewstyle;
@@ -2475,6 +2485,7 @@ murrine_style_copy (GtkStyle *style, GtkStyle *src)
 	mrn_style->gradient_shades[1]  = mrn_src->gradient_shades[1];
 	mrn_style->gradient_shades[2]  = mrn_src->gradient_shades[2];
 	mrn_style->gradient_shades[3]  = mrn_src->gradient_shades[3];
+	mrn_style->handlestyle         = mrn_src->handlestyle;
 	mrn_style->has_border_colors   = mrn_src->has_border_colors;
 	mrn_style->has_focus_color     = mrn_src->has_focus_color;
 	mrn_style->has_gradient_colors = mrn_src->has_gradient_colors;
diff --git a/src/murrine_style.h b/src/murrine_style.h
index b9f949a..39f118f 100644
--- a/src/murrine_style.h
+++ b/src/murrine_style.h
@@ -59,6 +59,7 @@ struct _MurrineStyle
 	guint8   expanderstyle;
 	guint8   glazestyle;
 	guint8   glowstyle;
+	guint8   handlestyle;
 	guint8   lightborderstyle;
 	guint8   listviewheaderstyle;
 	guint8   listviewstyle;
diff --git a/src/murrine_types.h b/src/murrine_types.h
index 14b6a36..9970c7f 100644
--- a/src/murrine_types.h
+++ b/src/murrine_types.h
@@ -270,6 +270,7 @@ typedef struct
 {
 	MurrineHandleType type;
 	boolean           horizontal;
+	int               style;
 } HandleParameters;
 
 typedef struct
@@ -303,6 +304,7 @@ typedef struct
 	boolean         horizontal;
 	boolean         has_color;
 	boolean         within_bevel;
+	int             handlestyle;
 	int             style;
 	int             stepperstyle;
 	double          prelight_shade;
@@ -403,6 +405,7 @@ struct _MurrineStyleFunctions
 	void (*draw_slider_handle) (cairo_t *cr,
 	                            const MurrineColors    *colors,
 	                            const WidgetParameters *widget,
+	                            const HandleParameters *handle,
 	                            int x, int y, int width, int height,
 	                            boolean horizontal);
 



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]