diff --git a/src/components/plates/destination_plate.rs b/src/components/plates/destination_plate.rs index e124b94..39acf1f 100644 --- a/src/components/plates/destination_plate.rs +++ b/src/components/plates/destination_plate.rs @@ -41,6 +41,14 @@ pub fn DestinationPlate(props: &DestinationPlateProps) -> Html { } let destination_wells = ct_state.transfer.transfer_region.get_destination_wells(); + let ordered_ids: Vec = { + let mut ids: Vec = main_state.transfers.clone().iter() + .map(|x| x.id) + .collect(); + ids.sort_unstable(); + ids + }; + let mouse_callback = { let m_start_handle = m_start_handle.clone(); let m_end_handle = m_end_handle.clone(); @@ -118,7 +126,7 @@ pub fn DestinationPlate(props: &DestinationPlateProps) -> Html { in_transfer={destination_wells.contains(&(i,j))} color={transfer_map.get(&(i,j)) .and_then(|t| t.last()) - .map(|t| PALETTE.get_uuid(t.get_uuid())) + .map(|t| PALETTE.get_ordered(t.get_uuid(), &ordered_ids)) } cell_height={props.cell_height} title={transfer_map.get(&(i,j)).map(|transfers| format!("Used by: {}", transfers.iter().map(|t| t.name.clone()) diff --git a/src/components/plates/source_plate.rs b/src/components/plates/source_plate.rs index 2c475a6..f533547 100644 --- a/src/components/plates/source_plate.rs +++ b/src/components/plates/source_plate.rs @@ -61,6 +61,14 @@ pub fn SourcePlate(props: &SourcePlateProps) -> Html { let source_wells = ct_state.transfer.transfer_region.get_source_wells(); + let ordered_ids: Vec = { + let mut ids: Vec = main_state.transfers.clone().iter() + .map(|x| x.id) + .collect(); + ids.sort_unstable(); + ids + }; + let mouse_callback = { let m_start_handle = m_start_handle.clone(); let m_end_handle = m_end_handle.clone(); @@ -122,7 +130,7 @@ pub fn SourcePlate(props: &SourcePlateProps) -> Html { in_transfer={source_wells.contains(&(i,j))} color={transfer_map.get(&(i,j)) .and_then(|t| t.last()) - .map(|t| PALETTE.get_uuid(t.get_uuid())) + .map(|t| PALETTE.get_ordered(t.get_uuid(), &ordered_ids)) } cell_height={props.cell_height} title={transfer_map.get(&(i,j)).map(|transfers| format!("Used by: {}", transfers.iter().map(|t| t.name.clone())