forked from StudioInfinity/dyna3
Drop unused context
Using pointers to refer to elements reduces the need to drag context around.
This commit is contained in:
parent
5191534886
commit
fbd6177a07
3 changed files with 25 additions and 34 deletions
|
@ -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()
|
||||
)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue