aboutsummaryrefslogtreecommitdiff
path: root/src/main.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/main.rs')
-rw-r--r--src/main.rs13
1 files changed, 8 insertions, 5 deletions
diff --git a/src/main.rs b/src/main.rs
index f116561..f3838a5 100644
--- a/src/main.rs
+++ b/src/main.rs
@@ -26,11 +26,14 @@ fn main() {
transform.move_by_px((rl.get_mouse_position() - last_mouse_pos).into());
}
- // Handle scrolling of the canvas
- if rl.get_mouse_wheel_move() > 0 {
- transform.try_zoom_in(rl.get_mouse_position().into());
- } else if rl.get_mouse_wheel_move() < 0 {
- transform.try_zoom_out(rl.get_mouse_position().into());
+ let mouse_wheel_move = rl.get_mouse_wheel_move();
+ if mouse_wheel_move != 0 {
+ // Zoom in for positive and zoom out for negative mouse wheel rotations.
+ let factor = if mouse_wheel_move > 0 { 1.2 } else { 1. / 1.2 };
+ transform.try_zoom(
+ rl.get_mouse_position().into(),
+ mouse_wheel_move.abs() as f32 * factor,
+ );
}
editor.update(&rl, &transform);