Mercurial > projects > doodle
diff gtk/canvas.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/gtk/canvas.d Wed Jul 15 23:49:02 2009 +0930 +++ b/gtk/canvas.d Thu Jul 16 00:12:02 2009 +0930 @@ -122,7 +122,7 @@ 0, 0); } - override void zoom_relative(Point pixel_datum, double factor) { + override void zoom_relative(in Point pixel_datum, in double factor) { // Work out pixel distance from current centre to datum, // Do the zoom, then work out the new centre that keeps the // pixel distance the same @@ -137,7 +137,7 @@ queueDraw; } - override void pan_relative(Vector pixel_displacement) { + override void pan_relative(in Vector pixel_displacement) { mViewCentre = mViewCentre + pixel_to_model(pixel_displacement); update_adjustments; @@ -145,11 +145,11 @@ queueDraw; } - override void damage_model(Rectangle area) { + override void damage_model(in Rectangle area) { mDamage = mDamage | model_to_pixel(area); } - override void damage_pixel(Rectangle area) { + override void damage_pixel(in Rectangle area) { mDamage = mDamage | area; } @@ -157,35 +157,35 @@ return mZoom; } - override Point model_to_pixel(Point model) const { + override Point model_to_pixel(in Point model) const { return Point.DEFAULT + mViewSize / 2.0 + mZoom * (model - mViewCentre); } - override Point pixel_to_model(Point pixel) const { + override Point pixel_to_model(in Point pixel) const { return mViewCentre + (pixel - mViewSize / 2.0 - Point.DEFAULT) / mZoom; } - override Vector model_to_pixel(Vector model) const { + override Vector model_to_pixel(in Vector model) const { return mZoom * model; } - override Vector pixel_to_model(Vector pixel) const { + override Vector pixel_to_model(in Vector pixel) const { return pixel / mZoom; } - override double model_to_pixel(double model) const { + override double model_to_pixel(in double model) const { return mZoom * model; } - override double pixel_to_model(double pixel) const { + override double pixel_to_model(in double pixel) const { return pixel / mZoom; } - override Rectangle model_to_pixel(Rectangle model) const { + override Rectangle model_to_pixel(in Rectangle model) const { return Rectangle(model_to_pixel(model.position), model_to_pixel(model.size)); } - override Rectangle pixel_to_model(Rectangle model) const { + override Rectangle pixel_to_model(in Rectangle model) const { return Rectangle(pixel_to_model(model.position), pixel_to_model(model.size)); } @@ -443,16 +443,15 @@ } void update_rulers() { - Vector model_size = pixel_to_model(mViewSize); + invariant Vector model_size = pixel_to_model(mViewSize); - Point view_left_bottom = mViewCentre - model_size / 2.0; - Point view_right_top = mViewCentre + model_size / 2.0; + invariant Point view_left_bottom = mViewCentre - model_size / 2.0; + invariant Point view_right_top = mViewCentre + model_size / 2.0; // Define these just to obtain the position // below and we can preserve it double lower, upper, position, max_size; - mHRuler.getRange(lower, upper, position, max_size); mHRuler.setRange(view_left_bottom.x, view_right_top.x, @@ -467,10 +466,10 @@ } void update_adjustments() { - Vector model_size = pixel_to_model(mViewSize); + invariant Vector model_size = pixel_to_model(mViewSize); - Point view_left_bottom = mViewCentre - model_size / 2.0; - Point view_right_top = mViewCentre + model_size / 2.0; + invariant Point view_left_bottom = mViewCentre - model_size / 2.0; + invariant Point view_right_top = mViewCentre + model_size / 2.0; // Adjust the canvas size if necessary mCanvasBounds = Rectangle(min_extents(mCanvasBounds.min_corner, view_left_bottom), @@ -507,7 +506,7 @@ int x, y, w, h; mDamage.get_quantised(x, y, w, h); //writefln("Quantised damage: %d %d %d %d", x, y, w, h); - y = cast(int)mViewSize.y - (y + h); + y = cast(int)mViewSize.y - (y + h); // Flip vertical axis //writefln("Flipped Quantised damage: %d %d %d %d", x, y, w, h); mDrawingArea.queueDrawArea(x, y, w, h); //mDrawingArea.queueDraw(); @@ -518,7 +517,7 @@ } } - double clamp_zoom(double zoom) { return clamp(zoom, 0.2, 10.0); } + double clamp_zoom(in double zoom) { return clamp(zoom, 0.2, 10.0); } bool mHadConfigure; Rectangle mDamage; // pixels