aboutsummaryrefslogtreecommitdiff
path: root/examples/statetracker/src/widgets
diff options
context:
space:
mode:
Diffstat (limited to 'examples/statetracker/src/widgets')
-rw-r--r--examples/statetracker/src/widgets/aliasmanager.rs91
-rw-r--r--examples/statetracker/src/widgets/bufferview.rs105
-rw-r--r--examples/statetracker/src/widgets/mod.rs5
3 files changed, 0 insertions, 201 deletions
diff --git a/examples/statetracker/src/widgets/aliasmanager.rs b/examples/statetracker/src/widgets/aliasmanager.rs
deleted file mode 100644
index afa8c91..0000000
--- a/examples/statetracker/src/widgets/aliasmanager.rs
+++ /dev/null
@@ -1,91 +0,0 @@
-use std::sync::Arc;
-
-use druid::widget::{Align, Label};
-use druid::{lens, Lens, Point, WidgetPod};
-use druid::{widget::Flex, Widget};
-
-use libquassel::message::objects::AliasManager;
-
-pub struct AliasManagerWidget {
- inner: WidgetPod<Arc<AliasManager>, Box<dyn Widget<Arc<AliasManager>>>>,
-}
-
-impl AliasManagerWidget {
- pub fn new() -> Self {
- let widget = WidgetPod::new(Flex::column()).boxed();
-
- AliasManagerWidget { inner: widget }
- }
-}
-
-impl Widget<Arc<AliasManager>> for AliasManagerWidget {
- fn event(
- &mut self,
- ctx: &mut druid::EventCtx,
- event: &druid::Event,
- data: &mut Arc<AliasManager>,
- env: &druid::Env,
- ) {
- self.inner.event(ctx, event, data, env)
- }
-
- fn lifecycle(
- &mut self,
- ctx: &mut druid::LifeCycleCtx,
- event: &druid::LifeCycle,
- data: &Arc<AliasManager>,
- env: &druid::Env,
- ) {
- self.inner.lifecycle(ctx, event, data, env)
- }
-
- fn update(
- &mut self,
- ctx: &mut druid::UpdateCtx,
- _old_data: &Arc<AliasManager>,
- data: &Arc<AliasManager>,
- _env: &druid::Env,
- ) {
- let aliases = lens!(AliasManager, aliases);
-
- 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 {
- 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();
- ctx.request_layout();
- ctx.request_paint();
- }
-
- fn layout(
- &mut self,
- ctx: &mut druid::LayoutCtx,
- bc: &druid::BoxConstraints,
- data: &Arc<AliasManager>,
- env: &druid::Env,
- ) -> druid::Size {
- let size = self.inner.layout(ctx, bc, data, env);
- self.inner.set_origin(ctx, data, env, Point::ZERO);
- return size;
- }
-
- fn paint(&mut self, ctx: &mut druid::PaintCtx, data: &Arc<AliasManager>, env: &druid::Env) {
- self.inner.paint(ctx, data, env)
- }
-}
diff --git a/examples/statetracker/src/widgets/bufferview.rs b/examples/statetracker/src/widgets/bufferview.rs
deleted file mode 100644
index e5384e2..0000000
--- a/examples/statetracker/src/widgets/bufferview.rs
+++ /dev/null
@@ -1,105 +0,0 @@
-use std::sync::Arc;
-
-use druid::widget::{Label};
-use druid::{lens, Lens, Point, WidgetPod};
-use druid::{widget::Flex, Widget};
-
-use libquassel::message::objects::BufferViewManager;
-
-pub struct BufferViewWidget {
- inner: WidgetPod<Arc<BufferViewManager>, Box<dyn Widget<Arc<BufferViewManager>>>>,
-}
-
-impl BufferViewWidget {
- pub fn new() -> Self {
- let widget = WidgetPod::new(Flex::column()).boxed();
-
- BufferViewWidget { inner: widget }
- }
-}
-
-impl Widget<Arc<BufferViewManager>> for BufferViewWidget {
- fn event(
- &mut self,
- ctx: &mut druid::EventCtx,
- event: &druid::Event,
- data: &mut Arc<BufferViewManager>,
- env: &druid::Env,
- ) {
- self.inner.event(ctx, event, data, env)
- }
-
- fn lifecycle(
- &mut self,
- ctx: &mut druid::LifeCycleCtx,
- event: &druid::LifeCycle,
- data: &Arc<BufferViewManager>,
- env: &druid::Env,
- ) {
- self.inner.lifecycle(ctx, event, data, env)
- }
-
- fn update(
- &mut self,
- ctx: &mut druid::UpdateCtx,
- _old_data: &Arc<BufferViewManager>,
- data: &Arc<BufferViewManager>,
- _env: &druid::Env,
- ) {
- let buffer_view_configs = lens!(BufferViewManager, buffer_view_configs);
-
- let mut names: Flex<Arc<BufferViewManager>> = Flex::row();
- let mut buffers: Flex<Arc<BufferViewManager>> = Flex::row();
- let mut removed_buffers: Flex<Arc<BufferViewManager>> = Flex::row();
- let mut temporarily_removed_buffers: Flex<Arc<BufferViewManager>> = Flex::row();
- // let mut expansions: Flex<Arc<BufferViewManager>> = Flex::column();
-
- // TODO optimise this whole thing
- buffer_view_configs.with(data, |configs| {
- for (_id, config) in configs {
- names.add_child(Label::new(config.buffer_view_name.clone()));
- buffers.add_child(Label::new(format!("{:?}", config.buffers)));
- removed_buffers.add_child(Label::new(format!("{:?}", config.removed_buffers)));
- temporarily_removed_buffers.add_child(Label::new(format!(
- "{:?}",
- config.temporarily_removed_buffers
- )));
- // expansions.add_child(Align::left(Label::new(alias.expansion.clone())));
- }
- });
-
- let widget: Flex<Arc<BufferViewManager>> = Flex::column()
- .with_flex_child(names, 1.0)
- .with_flex_child(buffers, 1.0)
- .with_flex_child(removed_buffers, 1.0)
- .with_flex_child(temporarily_removed_buffers, 1.0);
- // .with_flex_child(expansions, 1.0);
-
- self.inner = WidgetPod::new(widget).boxed();
-
- ctx.children_changed();
- ctx.request_layout();
- ctx.request_paint();
- }
-
- fn layout(
- &mut self,
- ctx: &mut druid::LayoutCtx,
- bc: &druid::BoxConstraints,
- data: &Arc<BufferViewManager>,
- env: &druid::Env,
- ) -> druid::Size {
- let size = self.inner.layout(ctx, bc, data, env);
- self.inner.set_origin(ctx, data, env, Point::ZERO);
- return size;
- }
-
- fn paint(
- &mut self,
- ctx: &mut druid::PaintCtx,
- data: &Arc<BufferViewManager>,
- env: &druid::Env,
- ) {
- self.inner.paint(ctx, data, env)
- }
-}
diff --git a/examples/statetracker/src/widgets/mod.rs b/examples/statetracker/src/widgets/mod.rs
deleted file mode 100644
index c837e5d..0000000
--- a/examples/statetracker/src/widgets/mod.rs
+++ /dev/null
@@ -1,5 +0,0 @@
-mod aliasmanager;
-mod bufferview;
-
-pub use aliasmanager::*;
-pub use bufferview::*;