diff options
author | 2019-10-03 00:01:45 +0200 | |
---|---|---|
committer | 2019-10-03 00:01:45 +0200 | |
commit | e1b9d42bf1443ae4958aa9303255ef19c635debb (patch) | |
tree | a7b7615dabc328a90300488ab8623740417277c8 /wgpu | |
parent | 67d3fe67f312c4dfe9fe4af0f0cbc7cb23c30072 (diff) | |
download | iced-e1b9d42bf1443ae4958aa9303255ef19c635debb.tar.gz iced-e1b9d42bf1443ae4958aa9303255ef19c635debb.tar.bz2 iced-e1b9d42bf1443ae4958aa9303255ef19c635debb.zip |
Start `iced_winit` and `iced_wgpu`
Diffstat (limited to 'wgpu')
-rw-r--r-- | wgpu/Cargo.toml | 12 | ||||
-rw-r--r-- | wgpu/src/lib.rs | 87 |
2 files changed, 99 insertions, 0 deletions
diff --git a/wgpu/Cargo.toml b/wgpu/Cargo.toml new file mode 100644 index 00000000..0ab7a955 --- /dev/null +++ b/wgpu/Cargo.toml @@ -0,0 +1,12 @@ +[package] +name = "iced_wgpu" +version = "0.1.0-alpha" +authors = ["Héctor Ramón Jiménez <hector0193@gmail.com>"] +edition = "2018" +description = "A wgpu renderer for Iced" +license = "MIT" +repository = "https://github.com/hecrj/iced" + +[dependencies] +iced_native = { version = "0.1.0-alpha", path = "../native" } +wgpu = "0.3" diff --git a/wgpu/src/lib.rs b/wgpu/src/lib.rs new file mode 100644 index 00000000..7aa053bc --- /dev/null +++ b/wgpu/src/lib.rs @@ -0,0 +1,87 @@ +use iced_native::{ + button, checkbox, image, radio, renderer::Debugger, slider, text, Button, + Checkbox, Color, Image, Layout, MouseCursor, Node, Point, Radio, Slider, + Style, Text, +}; + +pub struct Renderer; + +impl text::Renderer for Renderer { + fn node(&self, _text: &Text) -> Node { + Node::new(Style::default()) + } + + fn draw(&mut self, _text: &Text, _layout: Layout<'_>) {} +} + +impl checkbox::Renderer for Renderer { + fn node<Message>(&mut self, _checkbox: &Checkbox<Message>) -> Node { + Node::new(Style::default()) + } + + fn draw<Message>( + &mut self, + _checkbox: &Checkbox<Message>, + _layout: Layout<'_>, + _cursor_position: Point, + ) -> MouseCursor { + MouseCursor::OutOfBounds + } +} + +impl radio::Renderer for Renderer { + fn node<Message>(&mut self, _checkbox: &Radio<Message>) -> Node { + Node::new(Style::default()) + } + + fn draw<Message>( + &mut self, + _radio: &Radio<Message>, + _layout: Layout<'_>, + _cursor_position: Point, + ) -> MouseCursor { + MouseCursor::OutOfBounds + } +} + +impl slider::Renderer for Renderer { + fn node<Message>(&self, _slider: &Slider<Message>) -> Node { + Node::new(Style::default()) + } + + fn draw<Message>( + &mut self, + _slider: &Slider<Message>, + _layout: Layout<'_>, + _cursor_position: Point, + ) -> MouseCursor { + MouseCursor::OutOfBounds + } +} + +impl image::Renderer<&str> for Renderer { + fn node(&mut self, _image: &Image<&str>) -> Node { + Node::new(Style::default()) + } + + fn draw(&mut self, _checkbox: &Image<&str>, _layout: Layout<'_>) {} +} + +impl button::Renderer for Renderer { + fn node<Message>(&self, _button: &Button<Message>) -> Node { + Node::new(Style::default()) + } + + fn draw<Message>( + &mut self, + _button: &Button<Message>, + _layout: Layout<'_>, + _cursor_position: Point, + ) -> MouseCursor { + MouseCursor::OutOfBounds + } +} + +impl Debugger for Renderer { + fn explain(&mut self, _layout: &Layout<'_>, _color: Color) {} +} |