comparison doodle/dia/page_layer.d @ 57:9960c4fbd0dd

I is for Interface
author "David Bryant <bagnose@gmail.com>"
date Sun, 08 Aug 2010 22:01:54 +0930
parents 1b4c9ba58673
children c63719604adb
comparison
equal deleted inserted replaced
56:b190a9d9352e 57:9960c4fbd0dd
6 6
7 private { 7 private {
8 import doodle.cairo.routines; 8 import doodle.cairo.routines;
9 } 9 }
10 10
11 class PageLayer : Layer, Page { 11 class PageLayer : Layer, IPage {
12 this(in string name) { 12 this(in string name) {
13 super(name); 13 super(name);
14 _pageGeometry = Rectangle(Point.DEFAULT, Vector(210.0, 297.0)); 14 _pageGeometry = Rectangle(Point.DEFAULT, Vector(210.0, 297.0));
15 //_pageGeometry = Rectangle(Point.DEFAULT, Vector(100.0, 100.0)); 15 //_pageGeometry = Rectangle(Point.DEFAULT, Vector(100.0, 100.0));
16 } 16 }
19 19
20 override Rectangle bounds() const { 20 override Rectangle bounds() const {
21 return _pageGeometry; 21 return _pageGeometry;
22 } 22 }
23 23
24 override void draw(in Viewport viewport, 24 override void draw(in IViewport viewport,
25 in Rectangle pixelDamage, scope Context pixelCr, 25 in Rectangle pixelDamage, scope Context pixelCr,
26 in Rectangle modelDamage, scope Context modelCr) const { 26 in Rectangle modelDamage, scope Context modelCr) const {
27 // Make the paper white, with a border 27 // Make the paper white, with a border
28 28
29 modelCr.save; { 29 modelCr.save; {
37 rectangle(modelCr, _pageGeometry); 37 rectangle(modelCr, _pageGeometry);
38 modelCr.fill; 38 modelCr.fill;
39 } modelCr.restore; 39 } modelCr.restore;
40 } 40 }
41 41
42 // Page overrides: 42 // IPage overrides:
43 43
44 private { 44 private {
45 Rectangle _pageGeometry; 45 Rectangle _pageGeometry;
46 } 46 }
47 } 47 }