diff options
| author | 2020-01-10 19:10:57 +0100 | |
|---|---|---|
| committer | 2020-01-10 19:10:57 +0100 | |
| commit | 9b8f86f843819e1823633c5b7f4a9f020b462476 (patch) | |
| tree | d63eb36d7d81aa9b403385fe1865633863832266 /native | |
| parent | 84f1a936db93c16255a07f079c47e351635586f4 (diff) | |
| parent | e45497dfd6d401d8da74a8167b876a20690ddcac (diff) | |
| download | iced-9b8f86f843819e1823633c5b7f4a9f020b462476.tar.gz iced-9b8f86f843819e1823633c5b7f4a9f020b462476.tar.bz2 iced-9b8f86f843819e1823633c5b7f4a9f020b462476.zip | |
Merge pull request #150 from hecrj/refactor/move-renderer-traits
Move `Debugger` and `Windowed` traits
Diffstat (limited to '')
| -rw-r--r-- | native/src/element.rs | 7 | ||||
| -rw-r--r-- | native/src/layout.rs | 2 | ||||
| -rw-r--r-- | native/src/layout/debugger.rs (renamed from native/src/renderer/debugger.rs) | 10 | ||||
| -rw-r--r-- | native/src/lib.rs | 4 | ||||
| -rw-r--r-- | native/src/renderer.rs | 6 | ||||
| -rw-r--r-- | native/src/window.rs | 2 | ||||
| -rw-r--r-- | native/src/window/renderer.rs (renamed from native/src/renderer/windowed.rs) | 6 | 
7 files changed, 17 insertions, 20 deletions
| diff --git a/native/src/element.rs b/native/src/element.rs index 9b5adb9c..fab73f77 100644 --- a/native/src/element.rs +++ b/native/src/element.rs @@ -1,6 +1,5 @@  use crate::{ -    layout, renderer, Clipboard, Color, Event, Hasher, Layout, Length, Point, -    Widget, +    layout, Clipboard, Color, Event, Hasher, Layout, Length, Point, Widget,  };  /// A generic [`Widget`]. @@ -195,7 +194,7 @@ where      ) -> Element<'a, Message, Renderer>      where          Message: 'static, -        Renderer: 'a + renderer::Debugger, +        Renderer: 'a + layout::Debugger,      {          Element {              widget: Box::new(Explain::new(self, color.into())), @@ -348,7 +347,7 @@ where  impl<'a, Message, Renderer> Widget<Message, Renderer>      for Explain<'a, Message, Renderer>  where -    Renderer: crate::Renderer + renderer::Debugger, +    Renderer: crate::Renderer + layout::Debugger,  {      fn width(&self) -> Length {          self.element.widget.width() diff --git a/native/src/layout.rs b/native/src/layout.rs index e945706b..4a3ab94a 100644 --- a/native/src/layout.rs +++ b/native/src/layout.rs @@ -1,9 +1,11 @@  //! Position your widgets properly. +mod debugger;  mod limits;  mod node;  pub mod flex; +pub use debugger::Debugger;  pub use limits::Limits;  pub use node::Node; diff --git a/native/src/renderer/debugger.rs b/native/src/layout/debugger.rs index 30f3d9a0..e4b21609 100644 --- a/native/src/renderer/debugger.rs +++ b/native/src/layout/debugger.rs @@ -1,9 +1,9 @@ -use crate::{Color, Layout, Point, Widget}; +use crate::{Color, Layout, Point, Renderer, Widget};  /// A renderer able to graphically explain a [`Layout`].  /// -/// [`Layout`]: ../struct.Layout.html -pub trait Debugger: super::Renderer { +/// [`Layout`]: struct.Layout.html +pub trait Debugger: Renderer {      /// Explains the [`Layout`] of an [`Element`] for debugging purposes.      ///      /// This will be called when [`Element::explain`] has been used. It should @@ -13,8 +13,8 @@ pub trait Debugger: super::Renderer {      /// [`Layout`] and its children.      ///      /// [`Layout`]: struct.Layout.html -    /// [`Element`]: struct.Element.html -    /// [`Element::explain`]: struct.Element.html#method.explain +    /// [`Element`]: ../struct.Element.html +    /// [`Element::explain`]: ../struct.Element.html#method.explain      fn explain<Message>(          &mut self,          defaults: &Self::Defaults, diff --git a/native/src/lib.rs b/native/src/lib.rs index e65c6596..340b9ea7 100644 --- a/native/src/lib.rs +++ b/native/src/lib.rs @@ -14,7 +14,7 @@  //! - A [`Widget`] trait, which is used to implement new widgets: from layout  //!   requirements to event and drawing logic.  //! - A bunch of `Renderer` traits, meant to keep the crate renderer-agnostic. -//! - A [`Windowed`] trait, leveraging [`raw-window-handle`], which can be +//! - A [`window::Renderer`] trait, leveraging [`raw-window-handle`], which can be  //!   implemented by graphical renderers that target _windows_. Window-based  //!   shells (like [`iced_winit`]) can use this trait to stay renderer-agnostic.  //! @@ -31,7 +31,7 @@  //! [`druid`]: https://github.com/xi-editor/druid  //! [`raw-window-handle`]: https://github.com/rust-windowing/raw-window-handle  //! [`Widget`]: widget/trait.Widget.html -//! [`Windowed`]: renderer/trait.Windowed.html +//! [`window::Renderer`]: window/trait.Renderer.html  //! [`UserInterface`]: struct.UserInterface.html  //! [renderer]: renderer/index.html  #![deny(missing_docs)] diff --git a/native/src/renderer.rs b/native/src/renderer.rs index 284c95f6..ff90fdd9 100644 --- a/native/src/renderer.rs +++ b/native/src/renderer.rs @@ -20,12 +20,6 @@  //! [`Checkbox`]: ../widget/checkbox/struct.Checkbox.html  //! [`checkbox::Renderer`]: ../widget/checkbox/trait.Renderer.html -mod debugger; -mod windowed; - -pub use debugger::Debugger; -pub use windowed::{Target, Windowed}; -  #[cfg(debug_assertions)]  mod null;  #[cfg(debug_assertions)] diff --git a/native/src/window.rs b/native/src/window.rs index 220bb3be..db9226dc 100644 --- a/native/src/window.rs +++ b/native/src/window.rs @@ -1,4 +1,6 @@  //! Build window-based GUI applications.  mod event; +mod renderer;  pub use event::Event; +pub use renderer::{Renderer, Target}; diff --git a/native/src/renderer/windowed.rs b/native/src/window/renderer.rs index ee020ab1..be9765fa 100644 --- a/native/src/renderer/windowed.rs +++ b/native/src/window/renderer.rs @@ -3,16 +3,16 @@ use crate::MouseCursor;  use raw_window_handle::HasRawWindowHandle;  /// A renderer that can target windows. -pub trait Windowed: super::Renderer + Sized { +pub trait Renderer: crate::Renderer + Sized {      /// The settings of the renderer.      type Settings: Default;      /// The type of target.      type Target: Target<Renderer = Self>; -    /// Creates a new [`Windowed`] renderer. +    /// Creates a new window [`Renderer`].      /// -    /// [`Windowed`]: trait.Windowed.html +    /// [`Renderer`]: trait.Renderer.html      fn new(settings: Self::Settings) -> Self;      /// Performs the drawing operations described in the output on the given | 
