Mercurial > projects > doodle
diff dia/standard_tools.d @ 26:06c30d250c0a
Cleanup
author | "David Bryant <bagnose@gmail.com>" |
---|---|
date | Thu, 16 Jul 2009 00:12:02 +0930 |
parents | a24c13bb9c98 |
children | f3d91579bb28 |
line wrap: on
line diff
--- a/dia/standard_tools.d Wed Jul 15 23:49:02 2009 +0930 +++ b/dia/standard_tools.d Thu Jul 16 00:12:02 2009 +0930 @@ -11,7 +11,7 @@ } final class PanTool : Tool { - override bool handle_button_press(Viewport viewport, in ButtonEvent event) { + override bool handle_button_press(scope Viewport viewport, in ButtonEvent event) { if (event.button_name == ButtonName.MIDDLE) { mLastPosition = event.pixel_point; return true; @@ -21,7 +21,7 @@ } } - override bool handle_motion(Viewport viewport, in MotionEvent event) { + override bool handle_motion(scope Viewport viewport, in MotionEvent event) { if (event.mask.is_set(Modifier.MIDDLE_BUTTON)) { viewport.pan_relative(mLastPosition - event.pixel_point); mLastPosition = event.pixel_point; @@ -33,7 +33,7 @@ } } - override bool handle_scroll(Viewport viewport, in ScrollEvent event) { + override bool handle_scroll(scope Viewport viewport, in ScrollEvent event) { if (event.mask.is_unset(Modifier.MIDDLE_BUTTON)) { Vector delta; @@ -65,7 +65,7 @@ } final class ZoomTool : Tool { - override bool handle_scroll(Viewport viewport, in ScrollEvent event) { + override bool handle_scroll(scope Viewport viewport, in ScrollEvent event) { if (event.mask.is_set(Modifier.CONTROL)) { if (event.scroll_direction == ScrollDirection.DOWN) { viewport.zoom_relative(event.pixel_point, 1.0 / ZOOM); @@ -90,7 +90,7 @@ } final class LassoTool : Tool { - override bool handle_button_press(Viewport viewport, in ButtonEvent event) { + override bool handle_button_press(scope Viewport viewport, in ButtonEvent event) { if (event.button_name == ButtonName.LEFT) { mActive = true; mAnchorPoint = mCurrentPoint = event.pixel_point; @@ -101,7 +101,7 @@ } } - override bool handle_button_release(Viewport viewport, in ButtonEvent event) { + override bool handle_button_release(scope Viewport viewport, in ButtonEvent event) { if (event.button_name == ButtonName.LEFT && mActive) { mActive = false; viewport.damage_pixel(Rectangle(mAnchorPoint, mCurrentPoint).feathered(LINE_WIDTH / 2.0)); @@ -112,7 +112,7 @@ } } - override bool handle_motion(Viewport viewport, in MotionEvent event) { + override bool handle_motion(scope Viewport viewport, in MotionEvent event) { if (mActive) { viewport.damage_pixel(Rectangle(mAnchorPoint, mCurrentPoint).feathered(LINE_WIDTH / 2.0)); mCurrentPoint = event.pixel_point; @@ -122,13 +122,19 @@ return false; } - override void draw(const Viewport viewport, + override void draw(in Viewport viewport, in Rectangle pixel_damage, scope Context pixel_cr, in Rectangle model_damage, scope Context model_cr) const { if (mActive) { pixel_cr.save; { - double[] dashes = [ 4.0, 4.0 ]; - pixel_cr.setDash(dashes, 0.0); + pixel_cr.setSourceRgba(0.0, 0.0, 0.8, 0.3); + rectangle(pixel_cr, Rectangle(mCurrentPoint, mAnchorPoint)); + pixel_cr.fill(); + } pixel_cr.restore(); + + pixel_cr.save(); { + //double[] dashes = [ 4.0, 4.0 ]; + //pixel_cr.setDash(dashes, 0.0); pixel_cr.setSourceRgba(0.0, 0.0, 0.5, 1.0); pixel_cr.setLineWidth(LINE_WIDTH); //writefln("Drawing rectangle: %s", Rectangle(mCurrentPoint, mAnchorPoint));