From 0c2bbbdb2798b684e4badc0f0ed3120b737ca35c Mon Sep 17 00:00:00 2001 From: Emilia Date: Thu, 11 May 2023 17:51:09 -0400 Subject: [PATCH] Format and a comment --- src/components/plate.css | 2 +- src/components/source_plate.rs | 45 +++++++++++++++++++--------------- src/lib.rs | 2 +- 3 files changed, 27 insertions(+), 22 deletions(-) diff --git a/src/components/plate.css b/src/components/plate.css index 55b1a09..080d789 100644 --- a/src/components/plate.css +++ b/src/components/plate.css @@ -1,6 +1,6 @@ table, tr, td { box-sizing: border-box; - user-select: none; + user-select: none; /* Prevents dragging issue */ } td.plate_cell { width: 30px; diff --git a/src/components/source_plate.rs b/src/components/source_plate.rs index d4dba32..b67f9d5 100644 --- a/src/components/source_plate.rs +++ b/src/components/source_plate.rs @@ -9,19 +9,19 @@ pub struct SourcePlateProps { height: u8, } struct SelectionState { - m_start: Option<(u8,u8)>, - m_end: Option<(u8,u8)>, - m_stat: bool + m_start: Option<(u8, u8)>, + m_end: Option<(u8, u8)>, + m_stat: bool, } pub fn SourcePlate(cx: Scope) -> Element { use_shared_state_provider(cx, || SelectionState { m_start: None, m_end: None, - m_stat: false + m_stat: false, }); - cx.render(rsx!{ + cx.render(rsx! { style { vec![STYLE].into_iter().map(|s| rsx!{s}) // This is stupid } @@ -41,16 +41,19 @@ pub fn SourcePlate(cx: Scope) -> Element { } #[inline_props] -fn SourcePlateCell(cx: Scope, i: u8, j: u8,) -> Element { +fn SourcePlateCell(cx: Scope, i: u8, j: u8) -> Element { let selection_state = use_shared_state::(cx).unwrap(); - let selected = in_square(selection_state.read().m_start, - selection_state.read().m_end, (*i,*j)); + let selected = in_square( + selection_state.read().m_start, + selection_state.read().m_end, + (*i, *j), + ); let selected_class = match selected { true => "current_select", - false => "" + false => "", }; - cx.render(rsx!{ + cx.render(rsx! { td { class: "plate_cell {selected_class}", draggable: "false", @@ -71,27 +74,29 @@ fn SourcePlateCell(cx: Scope, i: u8, j: u8,) -> Element { }) } -fn in_square(corner1: Option<(u8,u8)>, corner2: Option<(u8,u8)>, pt: (u8,u8)) -> bool { +fn in_square(corner1: Option<(u8, u8)>, corner2: Option<(u8, u8)>, pt: (u8, u8)) -> bool { if let (Some(c1), Some(c2)) = (corner1, corner2) { - return pt.0 <= u8::max(c1.0,c2.0) && - pt.0 >= u8::min(c1.0,c2.0) && - pt.1 <= u8::max(c1.1,c2.1) && - pt.1 >= u8::min(c1.1,c2.1) - } else { return false } + return pt.0 <= u8::max(c1.0, c2.0) + && pt.0 >= u8::min(c1.0, c2.0) + && pt.1 <= u8::max(c1.1, c2.1) + && pt.1 >= u8::min(c1.1, c2.1); + } else { + return false; + } } fn PlateSelectionIndicator(cx: Scope) -> Element { let selection_state = use_shared_state::(cx).unwrap(); let start_str = match selection_state.read().m_start { Some(start) => format!("{},{}", start.0, start.1), - None => "None".to_string() + None => "None".to_string(), }; - let end_str = match selection_state.read().m_end{ + let end_str = match selection_state.read().m_end { Some(end) => format!("{},{}", end.0, end.1), - None => "None".to_string() + None => "None".to_string(), }; - cx.render(rsx!{ + cx.render(rsx! { p { start_str ", and " end_str } }) } diff --git a/src/lib.rs b/src/lib.rs index 91fa37b..fbc3a99 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -1,8 +1,8 @@ #![allow(non_snake_case)] mod components; -use dioxus::prelude::*; use components::source_plate::SourcePlate; +use dioxus::prelude::*; pub fn App(cx: Scope) -> Element { cx.render(rsx! {