Mercurial > projects > doodle
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 } |