diff doodle/gtk/canvas.d @ 35:3f6bb0bb22dc

Beginnings of grid
author David Bryant <bagnose@gmail.com>
date Sun, 30 Aug 2009 22:14:01 +0930
parents c2f11e1d7470
children 1f97022e5c6d
line wrap: on
line diff
--- a/doodle/gtk/canvas.d	Sun Aug 30 15:32:12 2009 +0930
+++ b/doodle/gtk/canvas.d	Sun Aug 30 22:14:01 2009 +0930
@@ -34,13 +34,14 @@
 // x and y run right and up respectively
 
 class Canvas : Table, Viewport {
-    this(in Layer[] layers, EventHandler event_handler, in double ppi) {
+    this(in Layer[] layers, EventHandler event_handler, Grid grid, in double ppi) {
         super(3, 3, 0);
 
         mDamage = Rectangle.DEFAULT;
 
         mLayers = layers.dup;
         mEventHandler = event_handler;
+        mGrid = grid;
         mPPI = ppi;
 
         /*
@@ -134,6 +135,7 @@
 
         update_adjustments;
         update_rulers;
+        mGrid.zoom_changed(mZoom);
         queueDraw;
     }
 
@@ -194,6 +196,8 @@
                 mCanvasBounds = expand(move(layer_bounds, -layer_bounds.size), 2.0 * layer_bounds.size);
                 mViewCentre = mCanvasBounds.centre;
 
+                mGrid.zoom_changed(mZoom);
+
                 mHadConfigure = true;
             }
 
@@ -542,9 +546,9 @@
         Adjustment mVAdjustment;
         VScrollbar mVScrollbar;
 
-        // Layers:
         Layer[] mLayers;
         EventHandler mEventHandler;
+        Grid mGrid;
         double mPPI;
     }
 }