diff options
| author | Max Audron <audron@cocaine.farm> | 2021-09-28 17:57:08 +0200 |
|---|---|---|
| committer | Max Audron <audron@cocaine.farm> | 2021-09-28 18:15:50 +0200 |
| commit | e72c83710442ec57410c4a523e003fdd37d3ffd8 (patch) | |
| tree | 5760714679d446c60d326564aa6df5566fb1fdf6 /examples/statetracker/src/aliasmanager.rs | |
| parent | statetracker: first iteration of working rpc object (diff) | |
statetracker: cleanup code
Diffstat (limited to 'examples/statetracker/src/aliasmanager.rs')
| -rw-r--r-- | examples/statetracker/src/aliasmanager.rs | 20 |
1 files changed, 13 insertions, 7 deletions
diff --git a/examples/statetracker/src/aliasmanager.rs b/examples/statetracker/src/aliasmanager.rs index 9247c22..afa8c91 100644 --- a/examples/statetracker/src/aliasmanager.rs +++ b/examples/statetracker/src/aliasmanager.rs @@ -1,6 +1,6 @@ use std::sync::Arc; -use druid::widget::Label; +use druid::widget::{Align, Label}; use druid::{lens, Lens, Point, WidgetPod}; use druid::{widget::Flex, Widget}; @@ -48,18 +48,24 @@ impl Widget<Arc<AliasManager>> for AliasManagerWidget { ) { let aliases = lens!(AliasManager, aliases); - let mut widget: Flex<Arc<AliasManager>> = Flex::column(); + let mut names: Flex<Arc<AliasManager>> = Flex::column(); + let mut sign: Flex<Arc<AliasManager>> = Flex::column(); + let mut expansions: Flex<Arc<AliasManager>> = Flex::column(); + // TODO optimise this whole thing aliases.with(data, |aliases| { for alias in aliases { - widget.add_child( - Flex::row() - .with_child(Label::new(alias.name.clone())) - .with_child(Label::new(alias.expansion.clone())), - ) + names.add_child(Align::right(Label::new(alias.name.clone()))); + sign.add_child(Label::new("=>")); + expansions.add_child(Align::left(Label::new(alias.expansion.clone()))); } }); + let widget: Flex<Arc<AliasManager>> = Flex::row() + .with_flex_child(names, 1.0) + .with_flex_child(sign, 1.0) + .with_flex_child(expansions, 1.0); + self.inner = WidgetPod::new(widget).boxed(); ctx.children_changed(); |
