annotate dia/grid_layer.d @ 22:17c2df87b459

Package refactoring.
author "David Bryant <bagnose@gmail.com>"
date Wed, 15 Jul 2009 23:31:29 +0930
parents grid_layer.d@c643c04e3f5e
children a24c13bb9c98
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
22
17c2df87b459 Package refactoring.
"David Bryant <bagnose@gmail.com>"
parents: 17
diff changeset
1 module dia.grid_layer;
16
9e63308b749c * Fix up public/private includes
David Bryant <daveb@acres.com.au>
parents: 12
diff changeset
2
17
c643c04e3f5e Checkpoint
David Bryant <daveb@acres.com.au>
parents: 16
diff changeset
3 // TODO fix imports
11
fb571a3b1f0d Checkpoint
"David Bryant <bagnose@gmail.com>"
parents:
diff changeset
4 import icanvas;
fb571a3b1f0d Checkpoint
"David Bryant <bagnose@gmail.com>"
parents:
diff changeset
5 import tk.geometry;
fb571a3b1f0d Checkpoint
"David Bryant <bagnose@gmail.com>"
parents:
diff changeset
6 import cairo.Context;
fb571a3b1f0d Checkpoint
"David Bryant <bagnose@gmail.com>"
parents:
diff changeset
7 import cairo_support;
fb571a3b1f0d Checkpoint
"David Bryant <bagnose@gmail.com>"
parents:
diff changeset
8 import std.math;
fb571a3b1f0d Checkpoint
"David Bryant <bagnose@gmail.com>"
parents:
diff changeset
9
fb571a3b1f0d Checkpoint
"David Bryant <bagnose@gmail.com>"
parents:
diff changeset
10 interface Grid {
fb571a3b1f0d Checkpoint
"David Bryant <bagnose@gmail.com>"
parents:
diff changeset
11 }
fb571a3b1f0d Checkpoint
"David Bryant <bagnose@gmail.com>"
parents:
diff changeset
12
fb571a3b1f0d Checkpoint
"David Bryant <bagnose@gmail.com>"
parents:
diff changeset
13 class GridLayer : Layer, Grid {
fb571a3b1f0d Checkpoint
"David Bryant <bagnose@gmail.com>"
parents:
diff changeset
14 override Rectangle bounds() const {
fb571a3b1f0d Checkpoint
"David Bryant <bagnose@gmail.com>"
parents:
diff changeset
15 // We don't require any geometry
fb571a3b1f0d Checkpoint
"David Bryant <bagnose@gmail.com>"
parents:
diff changeset
16 return Rectangle();
fb571a3b1f0d Checkpoint
"David Bryant <bagnose@gmail.com>"
parents:
diff changeset
17 }
fb571a3b1f0d Checkpoint
"David Bryant <bagnose@gmail.com>"
parents:
diff changeset
18
12
a093c4fbdd43 Checkpoint
"David Bryant <bagnose@gmail.com>"
parents: 11
diff changeset
19 override void draw(const Viewport viewport, in Rectangle damage,
a093c4fbdd43 Checkpoint
"David Bryant <bagnose@gmail.com>"
parents: 11
diff changeset
20 Context model_cr, Context screen_cr) const {
11
fb571a3b1f0d Checkpoint
"David Bryant <bagnose@gmail.com>"
parents:
diff changeset
21 double zoom = viewport.zoom;
fb571a3b1f0d Checkpoint
"David Bryant <bagnose@gmail.com>"
parents:
diff changeset
22
fb571a3b1f0d Checkpoint
"David Bryant <bagnose@gmail.com>"
parents:
diff changeset
23 double start_x = modf(damage.min_corner.x, zoom);
fb571a3b1f0d Checkpoint
"David Bryant <bagnose@gmail.com>"
parents:
diff changeset
24 }
fb571a3b1f0d Checkpoint
"David Bryant <bagnose@gmail.com>"
parents:
diff changeset
25
fb571a3b1f0d Checkpoint
"David Bryant <bagnose@gmail.com>"
parents:
diff changeset
26 private {
fb571a3b1f0d Checkpoint
"David Bryant <bagnose@gmail.com>"
parents:
diff changeset
27 }
fb571a3b1f0d Checkpoint
"David Bryant <bagnose@gmail.com>"
parents:
diff changeset
28 }