]> git.cworth.org Git - akamaru/blobdiff - main.c
New feature: polygons can now enclose objects.
[akamaru] / main.c
diff --git a/main.c b/main.c
index fd1318fd8eeacfad574f6507f79fc9e887e3abc4..15fbce446fbc41771d509ec9f29ad86a6141c7c4 100644 (file)
--- a/main.c
+++ b/main.c
@@ -279,7 +279,7 @@ model_init_dock (Model *model)
 
   model->polygons = g_new (Polygon, 1);
   model->num_polygons = 1;
-  polygon_init_rectangle (&model->polygons[0], -400, 300, 1400, 350);
+  polygon_init_enclosing_rectangle (&model->polygons[0], 10, 10, 700, 500);
 
   model->anchors[0].x = 300;
   model->anchors[0].y = 300;
@@ -441,14 +441,22 @@ draw_polygons (cairo_t *cr, Model *model, Color *color)
 
   for (i = 0; i < model->num_polygons; i++) {
     p = &model->polygons[i];
-    cairo_set_source_rgba (cr, color->red, color->green, color->blue, 0.4);
-
     
     for (j = 0; j < p->num_points; j++)
       cairo_line_to (cr, p->points[j].x, p->points[j].y);
     cairo_close_path (cr);
+
+    if (p->enclosing) {
+      cairo_set_source_rgba (cr, color->red, color->green, color->blue, 0.1);
+      cairo_fill_preserve (cr);
+    }
+
+    cairo_set_source_rgba (cr, color->red, color->green, color->blue, 0.4);
+    if (p->enclosing)
+      cairo_stroke (cr);
+    else
+      cairo_fill (cr);
   }
-  cairo_fill (cr);
 
 }