diff --git a/src/main.rs b/src/main.rs index a211f64..d23821f 100644 --- a/src/main.rs +++ b/src/main.rs @@ -26,7 +26,7 @@ use druid::{ }; use stiletto::history::VersionedCanvas; -use stiletto::widget::{CanvasData, CanvasWidget}; +use stiletto::widget::{CanvasState, CanvasWidget}; use stiletto::DocumentSnapshot; pub fn main() { @@ -35,7 +35,7 @@ pub fn main() { .title( LocalizedString::new("custom-widget-demo-window-title").with_placeholder("Stiletto"), ); - let canvas_data = CanvasData { + let canvas_data = CanvasState { current_element: None, elements: VersionedCanvas::new(vector![]), }; @@ -46,15 +46,15 @@ pub fn main() { .expect("launch failed"); } -fn build_ui() -> impl Widget { +fn build_ui() -> impl Widget { let history_buttons = Flex::row() .cross_axis_alignment(CrossAxisAlignment::Center) .with_child(Button::new("Undo").on_click( - |_ctx: &mut EventCtx, data: &mut CanvasData, _env: &Env| data.perform_undo(), + |_ctx: &mut EventCtx, data: &mut CanvasState, _env: &Env| data.perform_undo(), )) .with_child(Button::new("Redo").on_click( - |_ctx: &mut EventCtx, data: &mut CanvasData, _env: &Env| data.perform_redo(), + |_ctx: &mut EventCtx, data: &mut CanvasState, _env: &Env| data.perform_redo(), )); let stlt = FileSpec::new("Stiletto notebook", &["stlt"]); @@ -100,13 +100,13 @@ fn build_ui() -> impl Widget { struct Delegate; -impl AppDelegate for Delegate { +impl AppDelegate for Delegate { fn command( &mut self, _ctx: &mut DelegateCtx, _target: Target, cmd: &Command, - data: &mut CanvasData, + data: &mut CanvasState, _env: &Env, ) -> bool { use std::fs::File; diff --git a/src/widget.rs b/src/widget.rs index 90bf939..180eca1 100644 --- a/src/widget.rs +++ b/src/widget.rs @@ -26,12 +26,12 @@ use druid::widget::prelude::*; use druid::{Color, Data, Env, Event}; #[derive(Clone, Data)] -pub struct CanvasData { +pub struct CanvasState { pub current_element: Option, pub elements: VersionedCanvas, } -impl CanvasData { +impl CanvasState { pub fn is_drawing(&self) -> bool { self.current_element.is_some() } @@ -62,8 +62,8 @@ impl CanvasData { pub struct CanvasWidget; -impl Widget for CanvasWidget { - fn event(&mut self, _ctx: &mut EventCtx, event: &Event, data: &mut CanvasData, _env: &Env) { +impl Widget for CanvasWidget { + fn event(&mut self, _ctx: &mut EventCtx, event: &Event, data: &mut CanvasState, _env: &Env) { match event { Event::MouseDown(mouse_event) => { let mut kurbo_path = BezPath::new(); @@ -101,7 +101,7 @@ impl Widget for CanvasWidget { &mut self, _ctx: &mut LifeCycleCtx, _event: &LifeCycle, - _data: &CanvasData, + _data: &CanvasState, _env: &Env, ) { } @@ -109,8 +109,8 @@ impl Widget for CanvasWidget { fn update( &mut self, ctx: &mut UpdateCtx, - old_data: &CanvasData, - data: &CanvasData, + old_data: &CanvasState, + data: &CanvasState, _env: &Env, ) { // the current_element is moved to the elements array, no need to repaint @@ -130,7 +130,7 @@ impl Widget for CanvasWidget { &mut self, _layout_ctx: &mut LayoutCtx, bc: &BoxConstraints, - _data: &CanvasData, + _data: &CanvasState, _env: &Env, ) -> Size { // BoxConstraints are passed by the parent widget. @@ -145,7 +145,7 @@ impl Widget for CanvasWidget { // The paint method gets called last, after an event flow. // It goes event -> update -> layout -> paint, and each method can influence the next. // Basically, anything that changes the appearance of a widget causes a paint. - fn paint(&mut self, ctx: &mut PaintCtx, data: &CanvasData, _env: &Env) { + fn paint(&mut self, ctx: &mut PaintCtx, data: &CanvasState, _env: &Env) { // (ctx.size() returns the size of the layout rect we're painting in) let size = ctx.size(); let rect = size.to_rect();