Drop unused context

Using pointers to refer to elements reduces the need to drag context
around.
This commit is contained in:
Aaron Fenyes 2025-05-04 01:19:00 -07:00
parent 5191534886
commit fbd6177a07
3 changed files with 25 additions and 34 deletions

View file

@ -11,7 +11,6 @@ use crate::{
AppState,
assembly::{
Element,
ElementKey,
HalfCurvatureRegulator,
InversiveDistanceRegulator,
Regulator,
@ -96,7 +95,6 @@ pub trait OutlineItem {
impl OutlineItem for InversiveDistanceRegulator {
fn outline_item(self: Rc<Self>, element: Rc<dyn Element>) -> View {
let state = use_context::<AppState>();
let other_subject_label = if self.subjects[0] == element {
self.subjects[1].label()
} else {
@ -138,7 +136,7 @@ fn RegulatorOutlineItem(regulator_key: RegulatorKey, element: Rc<dyn Element>) -
// a list item that shows an element in an outline view of an assembly
#[component(inline_props)]
fn ElementOutlineItem(key: ElementKey, element: Rc<dyn Element>) -> View {
fn ElementOutlineItem(element: Rc<dyn Element>) -> View {
let state = use_context::<AppState>();
let class = {
let element_for_class = element.clone();
@ -271,8 +269,8 @@ pub fn Outline() -> View {
) {
Keyed(
list=element_list,
view=|(key, elt)| view! {
ElementOutlineItem(key=key, element=elt)
view=|(_, elt)| view! {
ElementOutlineItem(element=elt)
},
key=|(_, elt)| elt.serial()
)