summaryrefslogtreecommitdiffstats
path: root/tiny_skia/src/backend.rs
diff options
context:
space:
mode:
authorLibravatar Héctor Ramón Jiménez <hector0193@gmail.com>2023-02-25 16:05:42 +0100
committerLibravatar Héctor Ramón Jiménez <hector0193@gmail.com>2023-02-25 16:05:42 +0100
commit535d7a4d57e131e661587b36e41820dd6ccccc3e (patch)
tree0127873baeff222a32bd840e0735f82249f912d3 /tiny_skia/src/backend.rs
parent8c373cd497e370d356b480380482779397bdb510 (diff)
downloadiced-535d7a4d57e131e661587b36e41820dd6ccccc3e.tar.gz
iced-535d7a4d57e131e661587b36e41820dd6ccccc3e.tar.bz2
iced-535d7a4d57e131e661587b36e41820dd6ccccc3e.zip
Implement basic presentation with `softbuffer` for `iced_tiny_skia`
Diffstat (limited to 'tiny_skia/src/backend.rs')
-rw-r--r--tiny_skia/src/backend.rs19
1 files changed, 18 insertions, 1 deletions
diff --git a/tiny_skia/src/backend.rs b/tiny_skia/src/backend.rs
index 4282a745..62373ec7 100644
--- a/tiny_skia/src/backend.rs
+++ b/tiny_skia/src/backend.rs
@@ -1,7 +1,8 @@
-use crate::{Font, Settings, Size};
+use crate::{Color, Font, Settings, Size, Viewport};
use iced_graphics::backend;
use iced_graphics::text;
+use iced_graphics::Primitive;
use std::borrow::Cow;
@@ -17,6 +18,22 @@ impl Backend {
default_text_size: settings.default_text_size,
}
}
+
+ pub fn draw<T: AsRef<str>>(
+ &mut self,
+ pixels: &mut tiny_skia::Pixmap,
+ _primitives: &[Primitive],
+ _viewport: &Viewport,
+ background_color: Color,
+ _overlay: &[T],
+ ) {
+ pixels.fill(into_color(background_color));
+ }
+}
+
+fn into_color(color: Color) -> tiny_skia::Color {
+ tiny_skia::Color::from_rgba(color.r, color.g, color.b, color.a)
+ .expect("Convert color from iced to tiny_skia")
}
impl iced_graphics::Backend for Backend {