Mercurial > projects > doodle
view doodle/dia/layer_stack.d @ 84:cdd4fc728d94
Renamed Drawable to Renderer
author | daveb |
---|---|
date | Mon, 16 Aug 2010 17:23:09 +0930 |
parents | b759414d2b72 |
children | 100dd23c7bdf |
line wrap: on
line source
module doodle.dia.layer_stack; public { import doodle.dia.icanvas; } final class LayerStack { this(in Layer[] layers) { _layers = layers.dup; } Rectangle bounds() const { // Take the union of all layer bounds Rectangle bounds = Rectangle.DEFAULT; foreach (layer; _layers) { bounds = bounds | layer.bounds; } assert(bounds.valid); return bounds; } void draw(in Rectangle screenDamage, scope Renderer screenRenderer, in Rectangle modelDamage, scope Renderer modelRenderer) { foreach(layer; _layers) { layer.draw(screenDamage, screenRenderer, modelDamage, modelRenderer); } } private { Layer[] _layers; } }