Mercurial > projects > doodle
diff doodle/dia/grid_layer.d @ 91:42766e14534e
Update screenViewBounds when the window is resized
author | daveb |
---|---|
date | Thu, 19 Aug 2010 18:28:18 +0930 |
parents | 885914257e0e |
children | a98116479793 |
line wrap: on
line diff
--- a/doodle/dia/grid_layer.d Thu Aug 19 00:28:57 2010 +0930 +++ b/doodle/dia/grid_layer.d Thu Aug 19 18:28:18 2010 +0930 @@ -37,16 +37,14 @@ assert(_zoomValid); auto z = screenModel.zoom; - // Is _zoom like screenModel.zoom ? modelRenderer.pushState; { modelRenderer.setColor(Color(0.0, 0.0, 0.0, 0.3)); - modelRenderer.setLineWidth(0.5); + modelRenderer.setLineWidth(1 / z); auto x = start(modelDamage.corner0.x, _spacing); for (;;) { - writefln("Doing something %s", x); modelRenderer.drawVLine(x, modelDamage.corner0.y, modelDamage.corner1.y); x += _spacing; if (x > modelDamage.corner1.x) break; @@ -55,62 +53,11 @@ auto y = start(modelDamage.corner0.y, _spacing); for (;;) { - writefln("Doing something %s", y); modelRenderer.drawHLine(y, modelDamage.corner0.x, modelDamage.corner1.x); y += _spacing; if (y > modelDamage.corner1.y) break; } } modelRenderer.popState; - -/+ - modelCr.save(); { - modelCr.setSourceRgba(0.0, 0.0, 0.0, 0.3); - modelCr.setLineWidth(0.5); - - { - // vertical grid lines - double x = start(modelDamage.corner0.x, _spacing); - - for (;;) { - vline(modelCr, x, modelDamage.corner0.y, modelDamage.corner1.y); - - // Ensure 1 pixel wide FIXME is this naughty? We are sneaking - // through cairo to mix model and pixel coordinates... - modelCr.save(); { - modelCr.scale(1.0 / z, 1.0 / z); - modelCr.stroke(); - } modelCr.restore(); - - if (x > modelDamage.corner1.x) { - break; - } - - x += _spacing; - } - } - - { - // horizontal grid lines - double y = start(modelDamage.corner0.y, _spacing); - - for (;;) { - hline(modelCr, y, modelDamage.corner0.x, modelDamage.corner1.x); - - // FIXME? - modelCr.save(); { - modelCr.scale(1.0 / xx, 1.0 / yy); - modelCr.stroke(); - } modelCr.restore(); - - if (y > modelDamage.corner1.y) { - break; - } - - y += _spacing; - } - } - } modelCr.restore(); - +/ } // IGrid overrides: