diff options
Diffstat (limited to 'src/main.rs')
| -rw-r--r-- | src/main.rs | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/src/main.rs b/src/main.rs index 9a08586..105bb44 100644 --- a/src/main.rs +++ b/src/main.rs @@ -30,6 +30,7 @@ pub mod grid; pub mod gui; pub mod map; pub mod math; +pub mod snapping; pub mod svg; pub mod tool; pub mod transform; @@ -41,6 +42,7 @@ use editor::Editor; use float_cmp::F64Margin; use gui::{DimensionIndicator, ToolSidebar}; use raylib::prelude::*; +use snapping::Snapper; use std::ffi::CString; use std::io; use transform::Transform; @@ -97,6 +99,7 @@ fn main() { let mut editor = Editor::new(&mut rl, &thread, config); let mut dimension_indicator = DimensionIndicator::new(); let tool_sidebar = ToolSidebar::new(&mut rl, &thread); + let mut snapper = Snapper::default(); let mut cli = CLI::new(); let mut transform = Transform::new(); @@ -124,9 +127,11 @@ fn main() { cli.update(&mut rl, &mut editor); dimension_indicator.update(editor.map_mut(), &mut rl); + snapper.update(&mut rl); editor.update( &mut rl, &transform, + &snapper, ToolSidebar::mouse_captured(screen_height as u16, last_mouse_pos.into()), ); @@ -138,9 +143,10 @@ fn main() { editor.map().draw(&mut d, &transform); editor.draw_tools(&mut d, &transform); - gui::position_indicator_draw(&mut d, last_mouse_pos.into(), &transform); - dimension_indicator.draw(&mut d, &transform); tool_sidebar.draw(screen_height as u16, &mut d, &mut editor); + snapper.draw(&mut d); + gui::position_indicator_draw(&mut d, last_mouse_pos.into(), &transform, &snapper); + dimension_indicator.draw(&mut d, &transform); cli.draw(&mut d); } } |
