Mercurial > projects > doodle
diff doodle/dia/tool_layer.d @ 56:b190a9d9352e
Checkpoint
author | "David Bryant <bagnose@gmail.com>" |
---|---|
date | Sun, 08 Aug 2010 21:56:54 +0930 |
parents | 1b4c9ba58673 |
children | 9960c4fbd0dd |
line wrap: on
line diff
--- a/doodle/dia/tool_layer.d Sun Aug 08 21:37:38 2010 +0930 +++ b/doodle/dia/tool_layer.d Sun Aug 08 21:56:54 2010 +0930 @@ -9,7 +9,10 @@ import doodle.cairo.routines; } -class ToolLayer : Layer, EventHandler { +interface ToolStack { +} + +class ToolLayer : Layer, EventHandler, ToolStack { this(in Tool[] tools, in string name) { super(name); _tools = tools.dup; @@ -24,9 +27,8 @@ override void draw(const Viewport viewport, in Rectangle pixelDamage, scope Context pixelCr, in Rectangle modelDamage, scope Context modelCr) const { - // FIXME this isn't how we will really draw the tools... - foreach (const Tool tool; _tools) { - tool.draw(viewport, pixelDamage, pixelCr, modelDamage, modelCr); + if (_grabbedTool) { + _grabbedTool.draw(viewport, pixelDamage, pixelCr); } }