gtk-css-engine r103 - in trunk: . libccd/ccd libccd/examples src themes/gtk-css-test/gtk-2.0



Author: robsta
Date: Fri Sep 12 16:40:20 2008
New Revision: 103
URL: http://svn.gnome.org/viewvc/gtk-css-engine?rev=103&view=rev

Log:
* libccd/ccd/ccd-background.c:
* libccd/ccd/ccd-background.h:
* libccd/ccd/ccd-border.c:
* libccd/ccd/ccd-border.h:
* libccd/ccd/ccd-gtk-style.c:
* libccd/ccd/ccd-style.c:
* src/gce-style.c:
Draw gap-boxes with rounded corners correctly.


Modified:
   trunk/   (props changed)
   trunk/ChangeLog
   trunk/libccd/ccd/ccd-background.c
   trunk/libccd/ccd/ccd-background.h
   trunk/libccd/ccd/ccd-border.c
   trunk/libccd/ccd/ccd-border.h
   trunk/libccd/ccd/ccd-gtk-style.c
   trunk/libccd/ccd/ccd-style.c
   trunk/libccd/examples/internal.c
   trunk/src/gce-style.c
   trunk/themes/gtk-css-test/gtk-2.0/styles.css

Modified: trunk/libccd/ccd/ccd-background.c
==============================================================================
--- trunk/libccd/ccd/ccd-background.c	(original)
+++ trunk/libccd/ccd/ccd-background.c	Fri Sep 12 16:40:20 2008
@@ -86,13 +86,13 @@
 }
 
 /**
- * ccd_background_draw:
+ * ccd_background_fill:
  *
  * This function requires that a closed path exists, which is filled with 
  * the background. The path is not modified.
  **/
 void
-ccd_background_draw (ccd_background_color_t const	*bg_color, 
+ccd_background_fill (ccd_background_color_t const	*bg_color, 
 		     ccd_background_image_t const	*bg_image,
 		     cairo_t				*cr,
 		     int32_t				 x,

Modified: trunk/libccd/ccd/ccd-background.h
==============================================================================
--- trunk/libccd/ccd/ccd-background.h	(original)
+++ trunk/libccd/ccd/ccd-background.h	Fri Sep 12 16:40:20 2008
@@ -53,7 +53,7 @@
 bool ccd_background_parse (ccd_background_t *self, char const *property, 
 			   CRTerm const *values);
 
-void ccd_background_draw (ccd_background_color_t const *bg_color, 
+void ccd_background_fill (ccd_background_color_t const *bg_color, 
 			  ccd_background_image_t const *bg_image,
 			  cairo_t *cr, int32_t x, int32_t y, 
 			  int32_t width, int32_t height);

Modified: trunk/libccd/ccd/ccd-border.c
==============================================================================
--- trunk/libccd/ccd/ccd-border.c	(original)
+++ trunk/libccd/ccd/ccd-border.c	Fri Sep 12 16:40:20 2008
@@ -461,6 +461,11 @@
 	return true;
 }
 
+/**
+ * line:
+ * @stroke:	a #ccd_border_stroke_t or %NULL.
+ *
+ **/
 static void
 line (ccd_border_stroke_t const	*stroke,
       cairo_t			*cr,
@@ -622,18 +627,20 @@
 
 	join (before, after, cr, xc, yc, radius, angle1, angle2);
 
-	cairo_set_line_width (cr, before->width);
-
-	/* TODO draw with gradient if colors are different. */
+	/* TODO draw with gradient if colors are different. 
+	 * Probably requires that the join has all the color information. */
 	if (before) {
+		cairo_set_line_width (cr, before->width);
 		cairo_set_source_rgb (cr,
 				      before->color.red, before->color.green, 
 				      before->color.blue);
 	} else if (after) {
+		cairo_set_line_width (cr, after->width);
 		cairo_set_source_rgb (cr,
 				      after->color.red, after->color.green, 
 				      after->color.blue);
 	} else {
+		cairo_set_line_width (cr, 1.);
 		cairo_set_source_rgb (cr, 0., 0., 0.);
 	}
 	
@@ -668,6 +675,7 @@
 	ccd_border_join_t const		*right_bottom,
 	ccd_border_stroke_t const	*bottom,
 	ccd_border_join_t const		*bottom_left,
+	uint32_t			 visibility_flags, 
 	cairo_t				*cr,
 	double				 x,
 	double				 y,
@@ -681,9 +689,12 @@
 	double		x1, x2, y1, y2;
 	double		xc, yc;
 
+	/* TODO this can be simplified by just using x2,y2.
+	 * However, the initial cairo_move_to() still has to be calculated somehow. */
+
 	if (left) {
 		line_func = get_line_draw_func (left, path_only);
-		xoff = left->width / 2.;
+		xoff = left ? left->width / 2. : 0;
 		yoff = bottom_left && bottom_left->radius_spec ? bottom_left->radius : 0;
 		x1 = x + xoff;
 		y1 = y + height - yoff;
@@ -691,82 +702,91 @@
 		y2 = y + (left_top && left_top->radius_spec ? left_top->radius : 0);
 
 		cairo_move_to (cr, x1, y1);
-		line_func (left, cr, x1, y1, x2, y2);
+
+		if (path_only || !(CCD_BORDER_VISIBILITY_HIDE_LEFT & visibility_flags))
+			line_func (left, cr, x1, y1, x2, y2);
 	}
 
 	if (left_top) {
 		join_func = get_join_draw_func (left, top, path_only);
-		xoff = left->width / 2.;
-		yoff = top->width / 2.;
+		xoff = left ? left->width / 2. : 0;
+		yoff = top ? top->width / 2. : 0;
 		xc = x + left_top->radius + xoff;
 		yc = y + left_top->radius + yoff;
-		join_func (left, top, cr, xc, yc,
-			   left_top->radius, _PI, 3 * _PI / 2);
+		if (path_only || !(CCD_BORDER_VISIBILITY_HIDE_LEFT_TOP & visibility_flags))
+			join_func (left, top, cr, xc, yc,
+				   left_top->radius, _PI, 3 * _PI / 2);
 	}
 
 	if (top) {
 		line_func = get_line_draw_func (top, path_only);
 		xoff = left_top && left_top->radius_spec ? left_top->radius : 0;
-		yoff = top->width / 2.;
+		yoff = top ? top->width / 2. : 0;
 		x1 = x + xoff;
 		y1 = y + yoff;
 		x2 = x + width - (top_right && top_right->radius_spec ?
 					top_right->radius : 0); 
 		y2 = y1;
-		line_func (top, cr, x1, y1, x2, y2);
+		if (path_only || !(CCD_BORDER_VISIBILITY_HIDE_TOP & visibility_flags))
+			line_func (top, cr, x1, y1, x2, y2);
 	}
 
 	if (top_right) {
 		join_func = get_join_draw_func (top, right, path_only);
-		xoff = right->width / 2.;
-		yoff = top->width / 2.;
+		xoff = right ? right->width / 2. : 0;
+		yoff = top ? top->width / 2. : 0;
 		xc = x + width - top_right->radius - xoff;
 		yc = y + top_right->radius + yoff;
-		join_func (top, right, cr, xc, yc,
-			   top_right->radius, 3 * _PI / 2., 0);
+		if (path_only || !(CCD_BORDER_VISIBILITY_HIDE_TOP_RIGHT & visibility_flags))
+			join_func (top, right, cr, xc, yc,
+				   top_right->radius, 3 * _PI / 2., 0);
 	}
 
 	if (right) {
 		line_func = get_line_draw_func (right, path_only);
-		xoff = right->width / 2.;
+		xoff = right ? right->width / 2. : 0;
 		yoff = top_right && top_right->radius_spec ? top_right->radius : 0;
 		x1 = x + width - xoff;
 		y1 = y + yoff;
 		x2 = x1;
 		y2 = y + height - (right_bottom && right_bottom->radius_spec ?
 					right_bottom->radius : 0);
-		line_func (right, cr, x1, y1, x2, y2);
+		if (path_only || !(CCD_BORDER_VISIBILITY_HIDE_RIGHT & visibility_flags))
+			line_func (right, cr, x1, y1, x2, y2);
 	}
 
 	if (right_bottom) {
 		join_func = get_join_draw_func (right, bottom, path_only);
-		xoff = right->width / 2.;
-		yoff = bottom->width / 2.;
+		xoff = right ? right->width / 2. : 0;
+		yoff = bottom ? bottom->width / 2. : 0;
 		xc = x + width - right_bottom->radius - xoff;
 		yc = y + height - right_bottom->radius - yoff;
-		join_func (right, bottom, cr, xc, yc,
-			   right_bottom->radius, 0, _PI / 2.);
+		if (path_only || !(CCD_BORDER_VISIBILITY_HIDE_RIGHT_BOTTOM & visibility_flags))
+			join_func (right, bottom, cr, xc, yc,
+				   right_bottom->radius, 0, _PI / 2.);
 	}
 
 	if (bottom) {
 		line_func = get_line_draw_func (bottom, path_only);
 		xoff = right_bottom && right_bottom->radius_spec ? right_bottom->radius : 0;
-		yoff = bottom->width / 2.;
+		yoff = bottom ? bottom->width / 2. : 0;
 		x1 = x + width - xoff;
 		y1 = y + height - yoff;
 		x2 = x + (bottom_left && bottom_left->radius_spec ? bottom_left->radius : 0);
 		y2 = y1;
-		line_func (bottom, cr, x1, y1, x2, y2);
+		if (path_only || !(CCD_BORDER_VISIBILITY_HIDE_BOTTOM & visibility_flags))
+			line_func (bottom, cr, x1, y1, x2, y2);
 	}
 
 	if (bottom_left) {
 		join_func = get_join_draw_func (bottom, left, path_only);
-		xoff = left->width / 2.;
-		yoff = bottom->width / 2.;
+		xoff = left ? left->width / 2. : 0;
+		yoff = bottom ? bottom->width / 2. : 0;
 		xc = x + bottom_left->radius + xoff;
 		yc = y + height - bottom_left->radius - yoff;
-		join_func (bottom, left, cr, xc, yc,
-			   bottom_left->radius, _PI / 2., _PI);
+		if (path_only || !(CCD_BORDER_VISIBILITY_HIDE_BOTTOM_LEFT & visibility_flags))
+			join_func (bottom, left, cr, xc, yc,
+				   bottom_left->radius, _PI / 2., _PI);
 	}
 }
 
@@ -787,7 +807,7 @@
 {
 	border (left, left_top, top, top_right, 
 		right, right_bottom, bottom, bottom_left,
-		cr, x, y, width, height, true);
+		CCD_BORDER_VISIBILITY_SHOW_ALL, cr, x, y, width, height, true);
 
 	cairo_close_path (cr);
 }
@@ -801,6 +821,7 @@
 		 ccd_border_join_t const	*right_bottom,
 		 ccd_border_stroke_t const	*bottom,
 		 ccd_border_join_t const	*bottom_left,
+		 uint32_t			 visibility_flags, 
 		 cairo_t			*cr,
 		 double				 x,
 		 double				 y,
@@ -809,7 +830,7 @@
 {
 	border (left, left_top, top, top_right, 
 		right, right_bottom, bottom, bottom_left,
-		cr, x, y, width, height, false);
+		visibility_flags, cr, x, y, width, height, false);
 }
 
 void

Modified: trunk/libccd/ccd/ccd-border.h
==============================================================================
--- trunk/libccd/ccd/ccd-border.h	(original)
+++ trunk/libccd/ccd/ccd-border.h	Fri Sep 12 16:40:20 2008
@@ -42,6 +42,18 @@
 	CCD_BORDER_STYLE_OUTSET
 } ccd_border_style_t;
 
+typedef enum {
+	CCD_BORDER_VISIBILITY_SHOW_ALL		= 0,
+	CCD_BORDER_VISIBILITY_HIDE_LEFT		= 1 << 0,
+	CCD_BORDER_VISIBILITY_HIDE_LEFT_TOP	= 1 << 1,
+	CCD_BORDER_VISIBILITY_HIDE_TOP		= 1 << 2,
+	CCD_BORDER_VISIBILITY_HIDE_TOP_RIGHT	= 1 << 3,
+	CCD_BORDER_VISIBILITY_HIDE_RIGHT	= 1 << 4,
+	CCD_BORDER_VISIBILITY_HIDE_RIGHT_BOTTOM	= 1 << 5,
+	CCD_BORDER_VISIBILITY_HIDE_BOTTOM	= 1 << 6,
+	CCD_BORDER_VISIBILITY_HIDE_BOTTOM_LEFT	= 1 << 7
+} ccd_border_visibility_t;
+
 /*
  * Remember which properties were set explicitely, e.g. using "border-top", 
  * so it's not overwritten by a subsequent "border" property.
@@ -137,7 +149,7 @@
 		      ccd_border_join_t const *right_bottom,
 		      ccd_border_stroke_t const *bottom, 
 		      ccd_border_join_t const *bottom_left,
-		      cairo_t *cr, 
+		      uint32_t visibility_flags, cairo_t *cr, 
 		      double x, double y, double width, double height);
 
 void ccd_border_dump		(ccd_border_t const *self);

Modified: trunk/libccd/ccd/ccd-gtk-style.c
==============================================================================
--- trunk/libccd/ccd/ccd-gtk-style.c	(original)
+++ trunk/libccd/ccd/ccd-gtk-style.c	Fri Sep 12 16:40:20 2008
@@ -44,70 +44,155 @@
 		    int32_t		 gap_start,
 		    int32_t		 gap_width)
 {
-	ccd_background_draw (self->bg_color, self->bg_image,
+	/* The rounding radii will have to be adjusted for certain gap
+	 * positions, so we work on a copied set of them. */
+	ccd_border_join_t left_top;
+	ccd_border_join_t top_right;
+	ccd_border_join_t right_bottom;
+	ccd_border_join_t bottom_left;
+
+	CCD_BORDER_JOIN_ASSIGN (left_top, self->left_top);
+	CCD_BORDER_JOIN_ASSIGN (top_right, self->top_right);
+	CCD_BORDER_JOIN_ASSIGN (right_bottom,  self->right_bottom);
+	CCD_BORDER_JOIN_ASSIGN (bottom_left, self->bottom_left);
+
+	switch (gap_side) {
+	case GTK_POS_LEFT:
+		if (bottom_left.radius > height - gap_start - gap_width)
+			bottom_left.radius = height - gap_start - gap_width;
+		if (left_top.radius > gap_start)
+			left_top.radius = gap_start;
+		break;
+	case GTK_POS_TOP:
+		if (left_top.radius > gap_start)
+			left_top.radius = gap_start;
+		if (top_right.radius > width - gap_start - gap_width)
+			top_right.radius = width - gap_start - gap_width;
+		break;
+	case GTK_POS_RIGHT:
+		if (top_right.radius > gap_start)
+			top_right.radius = gap_start;
+		if (right_bottom.radius > height - gap_start - gap_width)
+			right_bottom.radius = height - gap_start - gap_width;
+		break;
+	case GTK_POS_BOTTOM:
+		if (bottom_left.radius > gap_start)
+			bottom_left.radius = gap_start;
+		if (right_bottom.radius > width - gap_start - gap_width)
+			right_bottom.radius = width - gap_start - gap_width;
+		break;
+	default:
+		g_assert_not_reached ();
+		return;	/* prevent error building without assertions */
+	}
+
+	if (left_top.radius < 0)	left_top.radius = 0;
+	if (top_right.radius < 0)	top_right.radius = 0;
+	if (right_bottom.radius < 0)	right_bottom.radius = 0;
+	if (bottom_left.radius < 0)	bottom_left.radius = 0;
+
+	ccd_border_path (&self->left, &left_top, 
+			 &self->top, &top_right,
+			 &self->right, &right_bottom,
+			 &self->bottom, &bottom_left,
+			 cr, x, y, width, height);
+
+	ccd_background_fill (self->bg_color, self->bg_image,
 			     cr, x, y, width, height);
 
-	/* TODO take care about roundings on the gap side. */
+	cairo_new_path (cr);
 
 	switch (gap_side) {
 	case GTK_POS_LEFT:
+		/* Draw gap only if it's not over the whole border. */
 		if (gap_start > y || gap_width < height) {
-			/* Draw gap only if it's not over the whole border. */
-			ccd_border_draw (&self->left, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
-					 cr, x, y, 0, gap_start);
-			ccd_border_draw (&self->left, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
+			/* With Gtk+ the portion following the gap might not be visible. */
+			if (gap_start + gap_width < height) {
+				ccd_border_draw (&self->left, NULL, NULL, NULL,
+					 NULL, NULL, NULL, &bottom_left,
+					 CCD_BORDER_VISIBILITY_HIDE_BOTTOM_LEFT,
 					 cr, x, y + gap_start + gap_width, 
 					 0, height - gap_start - gap_width);
+			}
+			ccd_border_draw (&self->left, &left_top, NULL, NULL,
+					 NULL, NULL, NULL, NULL,
+					 CCD_BORDER_VISIBILITY_HIDE_LEFT_TOP,
+					 cr, x, y, 0, gap_start);
 		}
-		ccd_border_draw (NULL, NULL, 
-				 &self->top, &self->top_right,
-				 &self->right, &self->right_bottom,
-				 &self->bottom, NULL,
+		ccd_border_draw (NULL, &left_top,
+				 &self->top, &top_right,
+				 &self->right, &right_bottom,
+				 &self->bottom, &bottom_left,
+				 CCD_BORDER_VISIBILITY_SHOW_ALL,
 				 cr, x, y, width, height);
 		break;
 	case GTK_POS_TOP:
+		/* Draw gap only if it's not over the whole border. */
 		if (gap_start > x || gap_width < width) {
-			/* Draw gap only if it's not over the whole border. */
-			ccd_border_draw (NULL, NULL, &self->top, NULL, NULL, NULL, NULL, NULL,
+			ccd_border_draw (NULL, &left_top, &self->top, NULL,
+					 NULL, NULL, NULL, NULL,
+					 CCD_BORDER_VISIBILITY_HIDE_LEFT_TOP,
 					 cr, x, y, gap_start, 0);
-			ccd_border_draw (NULL, NULL, &self->top, NULL, NULL, NULL, NULL, NULL,
+			/* With Gtk+ the portion following the gap might not be visible. */
+			if (gap_start + gap_width < width) {
+				ccd_border_draw (NULL, NULL, &self->top, &top_right,
+					 NULL, NULL, NULL, NULL,
+					 CCD_BORDER_VISIBILITY_HIDE_TOP_RIGHT,
 					 cr, x + gap_start + gap_width, y, 
 					 width - gap_start - gap_width, 0);
+			}
 		}
-		ccd_border_draw (&self->left, NULL, 
-				 NULL, NULL,
-				 &self->right, &self->right_bottom,
-				 &self->bottom, &self->bottom_left,
+		ccd_border_draw (&self->left, &left_top, 
+				 NULL, &top_right,
+				 &self->right, &right_bottom,
+				 &self->bottom, &bottom_left,
+				 CCD_BORDER_VISIBILITY_SHOW_ALL,
 				 cr, x, y, width, height);
 		break;
 	case GTK_POS_RIGHT:
+		/* Draw gap only if it's not over the whole border. */
 		if (gap_start > y || gap_width < height) {
-			/* Draw gap only if it's not over the whole border. */
-			ccd_border_draw (NULL, NULL, NULL, NULL, &self->right, NULL, NULL, NULL,
+			ccd_border_draw (NULL, NULL, NULL, &top_right,
+					 &self->right, NULL, NULL, NULL,
+					 CCD_BORDER_VISIBILITY_HIDE_TOP_RIGHT,
 					 cr, x + width, y, 0, gap_start);
-			ccd_border_draw (NULL, NULL, NULL, NULL, &self->right, NULL, NULL, NULL,
+			/* With Gtk+ the portion following the gap might not be visible. */
+			if (gap_start + gap_width < height) {
+				ccd_border_draw (NULL, NULL, NULL, NULL,
+					 &self->right, &right_bottom, NULL, NULL,
+					 CCD_BORDER_VISIBILITY_HIDE_RIGHT_BOTTOM,
 					 cr, x + width, y + gap_start + gap_width, 
 					 0, height - gap_start - gap_width);
+			}
 		}
-		ccd_border_draw (&self->left, &self->left_top,
-				 &self->top, NULL, 
-				 NULL, NULL,
-				 &self->bottom, &self->bottom_left,
+		ccd_border_draw (&self->left, &left_top,
+				 &self->top, &top_right, 
+				 NULL, &right_bottom,
+				 &self->bottom, &bottom_left,
+				 CCD_BORDER_VISIBILITY_SHOW_ALL,
 				 cr, x, y, width, height);
 		break;
 	case GTK_POS_BOTTOM:
+		/* Draw gap only if it's not over the whole border. */
 		if (gap_start > x || gap_width < width) {
-			/* Draw gap only if it's not over the whole border. */
-			ccd_border_draw (NULL, NULL, NULL, NULL, NULL, NULL, &self->bottom, NULL,
+			ccd_border_draw (NULL, NULL, NULL, NULL,
+					 NULL, NULL, &self->bottom, &bottom_left,
+					 CCD_BORDER_VISIBILITY_HIDE_BOTTOM_LEFT,
 					 cr, x, y + height, gap_start, 0);
-			ccd_border_draw (NULL, NULL, NULL, NULL, NULL, NULL, &self->bottom, NULL,
+			/* With Gtk+ the portion following the gap might not be visible. */
+			if (gap_start + gap_width < width) {
+				ccd_border_draw (NULL, NULL, NULL, NULL,
+					 NULL, &right_bottom, &self->bottom, NULL,
+					 CCD_BORDER_VISIBILITY_HIDE_RIGHT_BOTTOM,
 					 cr, x + gap_start + gap_width, y + height,
 					 width - gap_start - gap_width, 0);
+			}
 		}
-		ccd_border_draw (&self->left, &self->left_top,
-				 &self->top, &self->top_right,
-				 &self->right, NULL,
-				 NULL, NULL,
+		ccd_border_draw (&self->left, &left_top,
+				 &self->top, &top_right,
+				 &self->right, &right_bottom,
+				 NULL, &bottom_left,
+				 CCD_BORDER_VISIBILITY_SHOW_ALL,
 				 cr, x, y, width, height);
 		break;
 	default:

Modified: trunk/libccd/ccd/ccd-style.c
==============================================================================
--- trunk/libccd/ccd/ccd-style.c	(original)
+++ trunk/libccd/ccd/ccd-style.c	Fri Sep 12 16:40:20 2008
@@ -63,9 +63,10 @@
 			 * account for that. */
 			off = stroke->width / 2.;
 
-			ccd_border_draw (NULL, NULL, stroke, NULL, NULL, NULL, NULL, NULL,
-						cr, x1, y1 - off, x2 - x1, 0);
-
+			ccd_border_draw (NULL, NULL, stroke, NULL,
+					 NULL, NULL, NULL, NULL,
+					 CCD_BORDER_VISIBILITY_SHOW_ALL,
+					 cr, x1, y1 - off, x2 - x1, 0);
 		}
 	} else {
 		/* Vertical: try to use left, then right border.
@@ -76,8 +77,10 @@
 			 * account for that. */
 			off = stroke->width / 2.;
 
-			ccd_border_draw (stroke, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
-						cr, x1 - off, y1, 0, y2 - y1);
+			ccd_border_draw (stroke, NULL, NULL, NULL,
+					 NULL, NULL, NULL, NULL,
+					 CCD_BORDER_VISIBILITY_SHOW_ALL,
+					 cr, x1 - off, y1, 0, y2 - y1);
 		}
 	}
 
@@ -107,6 +110,7 @@
 			 &self->top, &self->top_right,
 			 &self->right, &self->right_bottom,
 			 &self->bottom, &self->bottom_left,
+			 CCD_BORDER_VISIBILITY_SHOW_ALL,
 			 cr, x, y, width, height);
 }
 
@@ -129,23 +133,22 @@
 			  int32_t		 width,
 			  int32_t		 height)
 {
-	cairo_save (cr);
-
 	ccd_border_path (&self->left, &self->left_top, 
 			 &self->top, &self->top_right,
 			 &self->right, &self->right_bottom,
 			 &self->bottom, &self->bottom_left,
 			 cr, x, y, width, height);
 
-	ccd_background_draw (self->bg_color, self->bg_image,
+	ccd_background_fill (self->bg_color, self->bg_image,
 			     cr, x, y, width, height);
 
-	cairo_restore (cr);
+	cairo_new_path (cr);
 
 	ccd_border_draw (&self->left, &self->left_top, 
 			 &self->top, &self->top_right,
 			 &self->right, &self->right_bottom,
 			 &self->bottom, &self->bottom_left,
+			 CCD_BORDER_VISIBILITY_SHOW_ALL,
 			 cr, x, y, width, height);
 }
 

Modified: trunk/libccd/examples/internal.c
==============================================================================
--- trunk/libccd/examples/internal.c	(original)
+++ trunk/libccd/examples/internal.c	Fri Sep 12 16:40:20 2008
@@ -61,6 +61,7 @@
 			 &border.top, NULL,
 			 &border.right, NULL,
 			 &border.bottom, NULL,
+			 CCD_BORDER_VISIBILITY_SHOW_ALL,
 			 cr, x, y, width, height);
 }
 

Modified: trunk/src/gce-style.c
==============================================================================
--- trunk/src/gce-style.c	(original)
+++ trunk/src/gce-style.c	Fri Sep 12 16:40:20 2008
@@ -844,9 +844,6 @@
 	GceNode *node;
 	GceNode *base;
 
-if (GTK_IS_VSCROLLBAR (widget) && GTK_WIDGET_IS_SENSITIVE(widget) && arrow == GTK_ARROW_DOWN)
-	printf ("foo\n");
-
 	base = gce_node_cache_fetch_node ();
 	base->widget = widget;
 	base->class_name = gce_maps_get_detail (detail);

Modified: trunk/themes/gtk-css-test/gtk-2.0/styles.css
==============================================================================
--- trunk/themes/gtk-css-test/gtk-2.0/styles.css	(original)
+++ trunk/themes/gtk-css-test/gtk-2.0/styles.css	Fri Sep 12 16:40:20 2008
@@ -106,12 +106,12 @@
 box {
 	background: khaki;
 	border: 1px solid black;
-	border-top-left-radius: 2;
-	border-bottom-right-radius: 5;
+	border-radius: 15;
 }
 
-arrow[orientation=down] {
-/*	background-image: url(arrow-down.png); */
-	background-image: url(foo.svg);
+shadow {
+	background: khaki;
+	border: 1px solid black;
+	border-radius: 15;
 }
 



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