diff page_layer.d @ 12:a093c4fbdd43

Checkpoint
author "David Bryant <bagnose@gmail.com>"
date Sun, 12 Jul 2009 00:39:35 +0930
parents fb571a3b1f0d
children 9e63308b749c
line wrap: on
line diff
--- a/page_layer.d	Sat Jul 11 23:32:22 2009 +0930
+++ b/page_layer.d	Sun Jul 12 00:39:35 2009 +0930
@@ -7,7 +7,8 @@
 }
 
 class PageLayer : Layer, Page {
-    this() {
+    this(in string name) {
+        super(name);
         mPageGeometry = Rectangle(Point.DEFAULT,
                                   Vector(210.0, 297.0));
     }
@@ -16,16 +17,29 @@
         return mPageGeometry;
     }
 
-    override void draw(const Viewport viewport, in Rectangle damage, Context cr) const {
+    override void draw(const Viewport viewport, in Rectangle damage,
+                       Context model_cr, Context screen_cr) const {
         // Make the paper white, with a border
 
-        cr.setSourceRgba(1.0, 1.0, 1.0, 1.0);
-        rectangle(cr, viewport.model_to_screen(mPageGeometry));
-        cr.fill();
+        /*
+        model_cr.setSourceRgba(1.0, 1.0, 1.0, 1.0);
+        rectangle(model_cr, mPageGeometry);
+        model_cr.fill();
 
-        cr.setSourceRgba(0.0, 0.0, 0.0, 1.0);
-        rectangle(cr, viewport.model_to_screen(mPageGeometry));
-        cr.stroke();
+        model_cr.setSourceRgba(0.0, 0.0, 0.0, 1.0);
+        rectangle(model_cr, mPageGeometry);
+        rectangle(model_cr, Rectangle(mPageGeometry.position, mPageGeometry.size / 2.0));
+        model_cr.stroke();
+        */
+
+        screen_cr.setSourceRgba(1.0, 1.0, 1.0, 1.0);
+        rectangle(screen_cr, viewport.model_to_screen(mPageGeometry));
+        screen_cr.fill();
+
+        screen_cr.setSourceRgba(0.0, 0.0, 0.0, 1.0);
+        rectangle(screen_cr, viewport.model_to_screen(mPageGeometry));
+        rectangle(screen_cr, viewport.model_to_screen(Rectangle(mPageGeometry.position, mPageGeometry.size / 2.0)));
+        screen_cr.stroke();
     }
 
     private {