Edit plate was not working, and new plate by dbl click
This commit is contained in:
parent
b171f39eaa
commit
810c19d7df
|
|
@ -44,12 +44,14 @@ fn tree_label(
|
||||||
}
|
}
|
||||||
ui.painter().galley(text_pos, galley, visuals.text_color());
|
ui.painter().galley(text_pos, galley, visuals.text_color());
|
||||||
|
|
||||||
if response.clicked() {
|
// Important to process double click first, since a double click is also a normal click
|
||||||
return (Some(uuid), false);
|
|
||||||
}
|
|
||||||
if response.double_clicked() {
|
if response.double_clicked() {
|
||||||
return (None, true);
|
return (None, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if response.clicked() {
|
||||||
|
return (Some(uuid), false);
|
||||||
|
}
|
||||||
(None, false)
|
(None, false)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -61,7 +63,19 @@ pub fn tree(
|
||||||
) {
|
) {
|
||||||
// Add all source plates
|
// Add all source plates
|
||||||
ui.vertical(|ui| {
|
ui.vertical(|ui| {
|
||||||
ui.heading("Source Plates");
|
let src_heading_res = ui.add(
|
||||||
|
egui::Label::new(egui::RichText::new("Source Plates").heading())
|
||||||
|
.selectable(false)
|
||||||
|
.sense(egui::Sense::click()),
|
||||||
|
);
|
||||||
|
// Open new plate modal if double clicked
|
||||||
|
if src_heading_res.double_clicked() {
|
||||||
|
crate::modals::open_new_plate_modal_with_default_type(
|
||||||
|
modal_state,
|
||||||
|
plate_tool_lib::plate::PlateType::Source,
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
let mut new_uuid: Option<plate_tool_lib::uuid::Uuid> = None;
|
let mut new_uuid: Option<plate_tool_lib::uuid::Uuid> = None;
|
||||||
for (name, uuid) in ms.source_plates.iter().map(|x| (&x.name, x.get_uuid())) {
|
for (name, uuid) in ms.source_plates.iter().map(|x| (&x.name, x.get_uuid())) {
|
||||||
let (potential_new_uuid, dbl_clicked) = tree_label(
|
let (potential_new_uuid, dbl_clicked) = tree_label(
|
||||||
|
|
@ -97,7 +111,19 @@ pub fn tree(
|
||||||
|
|
||||||
// Add all destination plates
|
// Add all destination plates
|
||||||
ui.vertical(|ui| {
|
ui.vertical(|ui| {
|
||||||
ui.heading("Destination Plates");
|
let dest_heading_res = ui.add(
|
||||||
|
egui::Label::new(egui::RichText::new("Destination Plates").heading())
|
||||||
|
.selectable(false)
|
||||||
|
.sense(egui::Sense::click()),
|
||||||
|
);
|
||||||
|
// Open new plate modal if double clicked
|
||||||
|
if dest_heading_res.double_clicked() {
|
||||||
|
crate::modals::open_new_plate_modal_with_default_type(
|
||||||
|
modal_state,
|
||||||
|
plate_tool_lib::plate::PlateType::Destination,
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
let mut new_uuid: Option<plate_tool_lib::uuid::Uuid> = None;
|
let mut new_uuid: Option<plate_tool_lib::uuid::Uuid> = None;
|
||||||
for (name, uuid) in ms
|
for (name, uuid) in ms
|
||||||
.destination_plates
|
.destination_plates
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue