summaryrefslogtreecommitdiffstats
path: root/native/src/renderer
diff options
context:
space:
mode:
authorLibravatar Héctor Ramón Jiménez <hector0193@gmail.com>2019-11-22 19:36:57 +0100
committerLibravatar Héctor Ramón Jiménez <hector0193@gmail.com>2019-11-22 19:36:57 +0100
commita7dba612f03e58d7bd9527499d893987986b347c (patch)
treeb8c3d8f997b714aa368bd6eaecf14065f7645c77 /native/src/renderer
parentba56a561b254c9a5f3d23cb54d23dc311759ab4c (diff)
downloadiced-a7dba612f03e58d7bd9527499d893987986b347c.tar.gz
iced-a7dba612f03e58d7bd9527499d893987986b347c.tar.bz2
iced-a7dba612f03e58d7bd9527499d893987986b347c.zip
Write docs for `iced` and `iced_native`
Diffstat (limited to 'native/src/renderer')
-rw-r--r--native/src/renderer/null.rs1
-rw-r--r--native/src/renderer/windowed.rs19
2 files changed, 20 insertions, 0 deletions
diff --git a/native/src/renderer/null.rs b/native/src/renderer/null.rs
index 8933b09b..3334e6b6 100644
--- a/native/src/renderer/null.rs
+++ b/native/src/renderer/null.rs
@@ -4,6 +4,7 @@ use crate::{
Rectangle, Renderer, Size, VerticalAlignment,
};
+/// A renderer that does nothing.
pub struct Null;
impl Renderer for Null {
diff --git a/native/src/renderer/windowed.rs b/native/src/renderer/windowed.rs
index 6d0419d2..813a03f2 100644
--- a/native/src/renderer/windowed.rs
+++ b/native/src/renderer/windowed.rs
@@ -2,11 +2,21 @@ use crate::MouseCursor;
use raw_window_handle::HasRawWindowHandle;
+/// A renderer that can target windows.
pub trait Windowed: super::Renderer + Sized {
+ /// The type of target.
type Target: Target<Renderer = Self>;
+ /// Creates a new [`Windowed`] renderer.
+ ///
+ /// [`Windowed`]: trait.Windowed.html
fn new() -> Self;
+ /// Performs the drawing operations described in the output on the given
+ /// target.
+ ///
+ /// The overlay can be a bunch of debug text logs. It should be rendered on
+ /// top of the GUI on most scenarios.
fn draw<T: AsRef<str>>(
&mut self,
output: &Self::Output,
@@ -15,9 +25,15 @@ pub trait Windowed: super::Renderer + Sized {
) -> MouseCursor;
}
+/// A rendering target.
pub trait Target {
+ /// The renderer of this target.
type Renderer;
+ /// Creates a new rendering [`Target`] from the given window handle, width,
+ /// height and dpi factor.
+ ///
+ /// [`Target`]: trait.Target.html
fn new<W: HasRawWindowHandle>(
window: &W,
width: u16,
@@ -26,6 +42,9 @@ pub trait Target {
renderer: &Self::Renderer,
) -> Self;
+ /// Resizes the current [`Target`].
+ ///
+ /// [`Target`]: trait.Target.html
fn resize(
&mut self,
width: u16,