Mercurial > projects > doodle
view page_layer.d @ 10:71ca82e0eb76
Checkpoint
author | "David Bryant <bagnose@gmail.com>" |
---|---|
date | Sat, 11 Jul 2009 22:49:41 +0930 |
parents | |
children | fb571a3b1f0d |
line wrap: on
line source
import icanvas; import tk.geometry; import cairo.Context; import cairo_support; interface Page { } class PageLayer : Layer, Page { void draw(const Viewport viewport, in Rectangle damage, Context cr) const { // Make the paper white, with a border Point screen_page_left_bottom = viewport.model_to_screen(mPageLeftBottom); Point screen_page_right_top = viewport.model_to_screen(mPageRightTop); cr.setSourceRgba(1.0, 1.0, 1.0, 1.0); draw_rectangle(cr, Rectangle(screen_page_left_bottom, screen_page_right_top)); cr.fill(); cr.setSourceRgba(0.0, 0.0, 0.0, 1.0); draw_rectangle(cr, Rectangle(screen_page_left_bottom, screen_page_right_top)); cr.stroke(); } private { Point mPageLeftBottom; // model: bottom left corner of page Point mPageRightTop; // model: top right corner of page } }