Add Renderer argument to operate
This commit is contained in:
parent
678de11879
commit
0e9c1ab192
17 changed files with 50 additions and 8 deletions
|
|
@ -325,11 +325,13 @@ mod modal {
|
||||||
&self,
|
&self,
|
||||||
state: &mut Tree,
|
state: &mut Tree,
|
||||||
layout: Layout<'_>,
|
layout: Layout<'_>,
|
||||||
|
renderer: &Renderer,
|
||||||
operation: &mut dyn widget::Operation<Message>,
|
operation: &mut dyn widget::Operation<Message>,
|
||||||
) {
|
) {
|
||||||
self.base.as_widget().operate(
|
self.base.as_widget().operate(
|
||||||
&mut state.children[0],
|
&mut state.children[0],
|
||||||
layout,
|
layout,
|
||||||
|
renderer,
|
||||||
operation,
|
operation,
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
@ -436,11 +438,13 @@ mod modal {
|
||||||
fn operate(
|
fn operate(
|
||||||
&mut self,
|
&mut self,
|
||||||
layout: Layout<'_>,
|
layout: Layout<'_>,
|
||||||
|
renderer: &Renderer,
|
||||||
operation: &mut dyn widget::Operation<Message>,
|
operation: &mut dyn widget::Operation<Message>,
|
||||||
) {
|
) {
|
||||||
self.content.as_widget().operate(
|
self.content.as_widget().operate(
|
||||||
self.tree,
|
self.tree,
|
||||||
layout.children().next().unwrap(),
|
layout.children().next().unwrap(),
|
||||||
|
renderer,
|
||||||
operation,
|
operation,
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -234,6 +234,7 @@ where
|
||||||
&self,
|
&self,
|
||||||
tree: &mut Tree,
|
tree: &mut Tree,
|
||||||
layout: Layout<'_>,
|
layout: Layout<'_>,
|
||||||
|
renderer: &Renderer,
|
||||||
operation: &mut dyn widget::Operation<Message>,
|
operation: &mut dyn widget::Operation<Message>,
|
||||||
) {
|
) {
|
||||||
struct MapOperation<'a, B> {
|
struct MapOperation<'a, B> {
|
||||||
|
|
@ -274,6 +275,7 @@ where
|
||||||
element.as_widget().operate(
|
element.as_widget().operate(
|
||||||
&mut tree.children[0],
|
&mut tree.children[0],
|
||||||
layout,
|
layout,
|
||||||
|
renderer,
|
||||||
&mut MapOperation { operation },
|
&mut MapOperation { operation },
|
||||||
);
|
);
|
||||||
});
|
});
|
||||||
|
|
|
||||||
|
|
@ -130,12 +130,14 @@ where
|
||||||
&self,
|
&self,
|
||||||
tree: &mut Tree,
|
tree: &mut Tree,
|
||||||
layout: Layout<'_>,
|
layout: Layout<'_>,
|
||||||
|
renderer: &Renderer,
|
||||||
operation: &mut dyn widget::Operation<Message>,
|
operation: &mut dyn widget::Operation<Message>,
|
||||||
) {
|
) {
|
||||||
self.with_element(|element| {
|
self.with_element(|element| {
|
||||||
element.as_widget().operate(
|
element.as_widget().operate(
|
||||||
&mut tree.children[0],
|
&mut tree.children[0],
|
||||||
layout,
|
layout,
|
||||||
|
renderer,
|
||||||
operation,
|
operation,
|
||||||
);
|
);
|
||||||
});
|
});
|
||||||
|
|
|
||||||
|
|
@ -290,6 +290,7 @@ where
|
||||||
&self,
|
&self,
|
||||||
tree: &mut Tree,
|
tree: &mut Tree,
|
||||||
layout: Layout<'_>,
|
layout: Layout<'_>,
|
||||||
|
renderer: &Renderer,
|
||||||
operation: &mut dyn widget::Operation<B>,
|
operation: &mut dyn widget::Operation<B>,
|
||||||
) {
|
) {
|
||||||
struct MapOperation<'a, B> {
|
struct MapOperation<'a, B> {
|
||||||
|
|
@ -334,8 +335,12 @@ where
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
self.widget
|
self.widget.operate(
|
||||||
.operate(tree, layout, &mut MapOperation { operation });
|
tree,
|
||||||
|
layout,
|
||||||
|
renderer,
|
||||||
|
&mut MapOperation { operation },
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
fn on_event(
|
fn on_event(
|
||||||
|
|
@ -473,9 +478,12 @@ where
|
||||||
&self,
|
&self,
|
||||||
state: &mut Tree,
|
state: &mut Tree,
|
||||||
layout: Layout<'_>,
|
layout: Layout<'_>,
|
||||||
|
renderer: &Renderer,
|
||||||
operation: &mut dyn widget::Operation<Message>,
|
operation: &mut dyn widget::Operation<Message>,
|
||||||
) {
|
) {
|
||||||
self.element.widget.operate(state, layout, operation)
|
self.element
|
||||||
|
.widget
|
||||||
|
.operate(state, layout, renderer, operation)
|
||||||
}
|
}
|
||||||
|
|
||||||
fn on_event(
|
fn on_event(
|
||||||
|
|
|
||||||
|
|
@ -46,6 +46,7 @@ where
|
||||||
fn operate(
|
fn operate(
|
||||||
&mut self,
|
&mut self,
|
||||||
_layout: Layout<'_>,
|
_layout: Layout<'_>,
|
||||||
|
_renderer: &Renderer,
|
||||||
_operation: &mut dyn widget::Operation<Message>,
|
_operation: &mut dyn widget::Operation<Message>,
|
||||||
) {
|
) {
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -108,9 +108,10 @@ where
|
||||||
pub fn operate(
|
pub fn operate(
|
||||||
&mut self,
|
&mut self,
|
||||||
layout: Layout<'_>,
|
layout: Layout<'_>,
|
||||||
|
renderer: &Renderer,
|
||||||
operation: &mut dyn widget::Operation<Message>,
|
operation: &mut dyn widget::Operation<Message>,
|
||||||
) {
|
) {
|
||||||
self.overlay.operate(layout, operation);
|
self.overlay.operate(layout, renderer, operation);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -144,6 +145,7 @@ where
|
||||||
fn operate(
|
fn operate(
|
||||||
&mut self,
|
&mut self,
|
||||||
layout: Layout<'_>,
|
layout: Layout<'_>,
|
||||||
|
renderer: &Renderer,
|
||||||
operation: &mut dyn widget::Operation<B>,
|
operation: &mut dyn widget::Operation<B>,
|
||||||
) {
|
) {
|
||||||
struct MapOperation<'a, B> {
|
struct MapOperation<'a, B> {
|
||||||
|
|
@ -189,7 +191,7 @@ where
|
||||||
}
|
}
|
||||||
|
|
||||||
self.content
|
self.content
|
||||||
.operate(layout, &mut MapOperation { operation });
|
.operate(layout, renderer, &mut MapOperation { operation });
|
||||||
}
|
}
|
||||||
|
|
||||||
fn on_event(
|
fn on_event(
|
||||||
|
|
|
||||||
|
|
@ -493,6 +493,7 @@ where
|
||||||
self.root.as_widget().operate(
|
self.root.as_widget().operate(
|
||||||
&mut self.state,
|
&mut self.state,
|
||||||
Layout::new(&self.base),
|
Layout::new(&self.base),
|
||||||
|
renderer,
|
||||||
operation,
|
operation,
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
@ -507,6 +508,7 @@ where
|
||||||
|
|
||||||
overlay.operate(
|
overlay.operate(
|
||||||
Layout::new(self.overlay.as_ref().unwrap()),
|
Layout::new(self.overlay.as_ref().unwrap()),
|
||||||
|
renderer,
|
||||||
operation,
|
operation,
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -175,6 +175,7 @@ where
|
||||||
&self,
|
&self,
|
||||||
_state: &mut Tree,
|
_state: &mut Tree,
|
||||||
_layout: Layout<'_>,
|
_layout: Layout<'_>,
|
||||||
|
_renderer: &Renderer,
|
||||||
_operation: &mut dyn Operation<Message>,
|
_operation: &mut dyn Operation<Message>,
|
||||||
) {
|
) {
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -169,12 +169,14 @@ where
|
||||||
&self,
|
&self,
|
||||||
tree: &mut Tree,
|
tree: &mut Tree,
|
||||||
layout: Layout<'_>,
|
layout: Layout<'_>,
|
||||||
|
renderer: &Renderer,
|
||||||
operation: &mut dyn Operation<Message>,
|
operation: &mut dyn Operation<Message>,
|
||||||
) {
|
) {
|
||||||
operation.container(None, &mut |operation| {
|
operation.container(None, &mut |operation| {
|
||||||
self.content.as_widget().operate(
|
self.content.as_widget().operate(
|
||||||
&mut tree.children[0],
|
&mut tree.children[0],
|
||||||
layout.children().next().unwrap(),
|
layout.children().next().unwrap(),
|
||||||
|
renderer,
|
||||||
operation,
|
operation,
|
||||||
);
|
);
|
||||||
});
|
});
|
||||||
|
|
|
||||||
|
|
@ -147,6 +147,7 @@ where
|
||||||
&self,
|
&self,
|
||||||
tree: &mut Tree,
|
tree: &mut Tree,
|
||||||
layout: Layout<'_>,
|
layout: Layout<'_>,
|
||||||
|
renderer: &Renderer,
|
||||||
operation: &mut dyn Operation<Message>,
|
operation: &mut dyn Operation<Message>,
|
||||||
) {
|
) {
|
||||||
operation.container(None, &mut |operation| {
|
operation.container(None, &mut |operation| {
|
||||||
|
|
@ -155,7 +156,9 @@ where
|
||||||
.zip(&mut tree.children)
|
.zip(&mut tree.children)
|
||||||
.zip(layout.children())
|
.zip(layout.children())
|
||||||
.for_each(|((child, state), layout)| {
|
.for_each(|((child, state), layout)| {
|
||||||
child.as_widget().operate(state, layout, operation);
|
child
|
||||||
|
.as_widget()
|
||||||
|
.operate(state, layout, renderer, operation);
|
||||||
})
|
})
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -169,12 +169,14 @@ where
|
||||||
&self,
|
&self,
|
||||||
tree: &mut Tree,
|
tree: &mut Tree,
|
||||||
layout: Layout<'_>,
|
layout: Layout<'_>,
|
||||||
|
renderer: &Renderer,
|
||||||
operation: &mut dyn Operation<Message>,
|
operation: &mut dyn Operation<Message>,
|
||||||
) {
|
) {
|
||||||
operation.container(None, &mut |operation| {
|
operation.container(None, &mut |operation| {
|
||||||
self.content.as_widget().operate(
|
self.content.as_widget().operate(
|
||||||
&mut tree.children[0],
|
&mut tree.children[0],
|
||||||
layout.children().next().unwrap(),
|
layout.children().next().unwrap(),
|
||||||
|
renderer,
|
||||||
operation,
|
operation,
|
||||||
);
|
);
|
||||||
});
|
});
|
||||||
|
|
|
||||||
|
|
@ -294,6 +294,7 @@ where
|
||||||
&self,
|
&self,
|
||||||
tree: &mut Tree,
|
tree: &mut Tree,
|
||||||
layout: Layout<'_>,
|
layout: Layout<'_>,
|
||||||
|
renderer: &Renderer,
|
||||||
operation: &mut dyn widget::Operation<Message>,
|
operation: &mut dyn widget::Operation<Message>,
|
||||||
) {
|
) {
|
||||||
operation.container(None, &mut |operation| {
|
operation.container(None, &mut |operation| {
|
||||||
|
|
@ -302,7 +303,7 @@ where
|
||||||
.zip(&mut tree.children)
|
.zip(&mut tree.children)
|
||||||
.zip(layout.children())
|
.zip(layout.children())
|
||||||
.for_each(|(((_pane, content), state), layout)| {
|
.for_each(|(((_pane, content), state), layout)| {
|
||||||
content.operate(state, layout, operation);
|
content.operate(state, layout, renderer, operation);
|
||||||
})
|
})
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -187,6 +187,7 @@ where
|
||||||
&self,
|
&self,
|
||||||
tree: &mut Tree,
|
tree: &mut Tree,
|
||||||
layout: Layout<'_>,
|
layout: Layout<'_>,
|
||||||
|
renderer: &Renderer,
|
||||||
operation: &mut dyn widget::Operation<Message>,
|
operation: &mut dyn widget::Operation<Message>,
|
||||||
) {
|
) {
|
||||||
let body_layout = if let Some(title_bar) = &self.title_bar {
|
let body_layout = if let Some(title_bar) = &self.title_bar {
|
||||||
|
|
@ -195,6 +196,7 @@ where
|
||||||
title_bar.operate(
|
title_bar.operate(
|
||||||
&mut tree.children[1],
|
&mut tree.children[1],
|
||||||
children.next().unwrap(),
|
children.next().unwrap(),
|
||||||
|
renderer,
|
||||||
operation,
|
operation,
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
@ -206,6 +208,7 @@ where
|
||||||
self.body.as_widget().operate(
|
self.body.as_widget().operate(
|
||||||
&mut tree.children[0],
|
&mut tree.children[0],
|
||||||
body_layout,
|
body_layout,
|
||||||
|
renderer,
|
||||||
operation,
|
operation,
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -261,6 +261,7 @@ where
|
||||||
&self,
|
&self,
|
||||||
tree: &mut Tree,
|
tree: &mut Tree,
|
||||||
layout: Layout<'_>,
|
layout: Layout<'_>,
|
||||||
|
renderer: &Renderer,
|
||||||
operation: &mut dyn widget::Operation<Message>,
|
operation: &mut dyn widget::Operation<Message>,
|
||||||
) {
|
) {
|
||||||
let mut children = layout.children();
|
let mut children = layout.children();
|
||||||
|
|
@ -282,6 +283,7 @@ where
|
||||||
controls.as_widget().operate(
|
controls.as_widget().operate(
|
||||||
&mut tree.children[1],
|
&mut tree.children[1],
|
||||||
controls_layout,
|
controls_layout,
|
||||||
|
renderer,
|
||||||
operation,
|
operation,
|
||||||
)
|
)
|
||||||
};
|
};
|
||||||
|
|
@ -290,6 +292,7 @@ where
|
||||||
self.content.as_widget().operate(
|
self.content.as_widget().operate(
|
||||||
&mut tree.children[0],
|
&mut tree.children[0],
|
||||||
title_layout,
|
title_layout,
|
||||||
|
renderer,
|
||||||
operation,
|
operation,
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -134,6 +134,7 @@ where
|
||||||
&self,
|
&self,
|
||||||
tree: &mut Tree,
|
tree: &mut Tree,
|
||||||
layout: Layout<'_>,
|
layout: Layout<'_>,
|
||||||
|
renderer: &Renderer,
|
||||||
operation: &mut dyn Operation<Message>,
|
operation: &mut dyn Operation<Message>,
|
||||||
) {
|
) {
|
||||||
operation.container(None, &mut |operation| {
|
operation.container(None, &mut |operation| {
|
||||||
|
|
@ -142,7 +143,9 @@ where
|
||||||
.zip(&mut tree.children)
|
.zip(&mut tree.children)
|
||||||
.zip(layout.children())
|
.zip(layout.children())
|
||||||
.for_each(|((child, state), layout)| {
|
.for_each(|((child, state), layout)| {
|
||||||
child.as_widget().operate(state, layout, operation);
|
child
|
||||||
|
.as_widget()
|
||||||
|
.operate(state, layout, renderer, operation);
|
||||||
})
|
})
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -164,6 +164,7 @@ where
|
||||||
&self,
|
&self,
|
||||||
tree: &mut Tree,
|
tree: &mut Tree,
|
||||||
layout: Layout<'_>,
|
layout: Layout<'_>,
|
||||||
|
renderer: &Renderer,
|
||||||
operation: &mut dyn Operation<Message>,
|
operation: &mut dyn Operation<Message>,
|
||||||
) {
|
) {
|
||||||
let state = tree.state.downcast_mut::<State>();
|
let state = tree.state.downcast_mut::<State>();
|
||||||
|
|
@ -174,6 +175,7 @@ where
|
||||||
self.content.as_widget().operate(
|
self.content.as_widget().operate(
|
||||||
&mut tree.children[0],
|
&mut tree.children[0],
|
||||||
layout.children().next().unwrap(),
|
layout.children().next().unwrap(),
|
||||||
|
renderer,
|
||||||
operation,
|
operation,
|
||||||
);
|
);
|
||||||
});
|
});
|
||||||
|
|
|
||||||
|
|
@ -228,6 +228,7 @@ where
|
||||||
&self,
|
&self,
|
||||||
tree: &mut Tree,
|
tree: &mut Tree,
|
||||||
_layout: Layout<'_>,
|
_layout: Layout<'_>,
|
||||||
|
_renderer: &Renderer,
|
||||||
operation: &mut dyn Operation<Message>,
|
operation: &mut dyn Operation<Message>,
|
||||||
) {
|
) {
|
||||||
let state = tree.state.downcast_mut::<State>();
|
let state = tree.state.downcast_mut::<State>();
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue