2019-09-15 17:43:15 +02:00
|
|
|
use crate::{Bus, Element, Widget};
|
|
|
|
|
|
|
|
|
|
use dodrio::bumpalo;
|
2019-09-14 20:54:50 +02:00
|
|
|
|
2019-09-20 19:15:31 +02:00
|
|
|
pub type Row<'a, Message> = iced_core::Row<Element<'a, Message>>;
|
2019-09-14 20:54:50 +02:00
|
|
|
|
2019-09-15 17:43:15 +02:00
|
|
|
impl<'a, Message> Widget<Message> for Row<'a, Message> {
|
|
|
|
|
fn node<'b>(
|
|
|
|
|
&self,
|
|
|
|
|
bump: &'b bumpalo::Bump,
|
|
|
|
|
publish: &Bus<Message>,
|
|
|
|
|
) -> dodrio::Node<'b> {
|
|
|
|
|
use dodrio::builder::*;
|
|
|
|
|
|
|
|
|
|
let children: Vec<_> = self
|
|
|
|
|
.children
|
|
|
|
|
.iter()
|
|
|
|
|
.map(|element| element.widget.node(bump, publish))
|
|
|
|
|
.collect();
|
|
|
|
|
|
2019-09-21 13:38:14 +02:00
|
|
|
// TODO: Complete styling
|
2019-09-15 18:53:13 +02:00
|
|
|
div(bump)
|
|
|
|
|
.attr("style", "display: flex; flex-direction: row")
|
|
|
|
|
.children(children)
|
|
|
|
|
.finish()
|
2019-09-15 17:43:15 +02:00
|
|
|
}
|
|
|
|
|
}
|
2019-09-14 20:54:50 +02:00
|
|
|
|
|
|
|
|
impl<'a, Message> From<Row<'a, Message>> for Element<'a, Message>
|
|
|
|
|
where
|
|
|
|
|
Message: 'static,
|
|
|
|
|
{
|
|
|
|
|
fn from(column: Row<'a, Message>) -> Element<'a, Message> {
|
|
|
|
|
Element::new(column)
|
|
|
|
|
}
|
|
|
|
|
}
|