From ffb0c940806549e5a247cc0b24caac64f0219e48 Mon Sep 17 00:00:00 2001 From: Ellen Emilia Anna Zscheile Date: Sun, 2 Feb 2025 01:11:29 +0100 Subject: [PATCH] refactor(egui::overlay): get rid of constant 'active_layer' --- crates/topola-egui/src/overlay.rs | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/crates/topola-egui/src/overlay.rs b/crates/topola-egui/src/overlay.rs index cfe432b..3376906 100644 --- a/crates/topola-egui/src/overlay.rs +++ b/crates/topola-egui/src/overlay.rs @@ -38,7 +38,6 @@ pub struct Overlay { ratsnest: Ratsnest, selection: Selection, reselect_bbox: Option<(SelectionMode, Point)>, - active_layer: usize, } const INF: f64 = f64::INFINITY; @@ -49,7 +48,6 @@ impl Overlay { ratsnest: Ratsnest::new(board.layout())?, selection: Selection::new(), reselect_bbox: None, - active_layer: 0, }) } @@ -147,10 +145,14 @@ impl Overlay { if let Some(geom) = geoms.iter().find(|&&geom| { board.layout().node_shape(geom.data).contains_point(at) + // TODO: fix which layers to query && board .layout() .drawing() - .is_node_in_layer(geom.data, self.active_layer) + // This should use: + // `.is_node_in_any_layer_of(geom.data, &appearance_panel.visible[..])` + // instead, but that doesn't work reliably + .is_node_in_layer(geom.data, 0) }) { self.selection.toggle_at_node(board, geom.data); }