Draft first-class Theme support

RFC: https://github.com/iced-rs/rfcs/pull/6
This commit is contained in:
Héctor Ramón Jiménez 2022-05-14 01:47:55 +02:00
parent 5de337f214
commit 664251f3f5
No known key found for this signature in database
GPG key ID: 140CC052C94F138E
113 changed files with 767 additions and 878 deletions

View file

@ -9,24 +9,24 @@ use iced_native::{Length, Point, Rectangle};
use iced_pure::widget::tree::Tree;
use iced_pure::{Element, Widget};
impl<'a, Message, B> Widget<Message, Renderer<B>> for QRCode<'a>
impl<'a, Message, B, T> Widget<Message, Renderer<B, T>> for QRCode<'a>
where
B: Backend,
{
fn width(&self) -> Length {
<Self as iced_native::Widget<Message, Renderer<B>>>::width(self)
<Self as iced_native::Widget<Message, Renderer<B, T>>>::width(self)
}
fn height(&self) -> Length {
<Self as iced_native::Widget<Message, Renderer<B>>>::height(self)
<Self as iced_native::Widget<Message, Renderer<B, T>>>::height(self)
}
fn layout(
&self,
renderer: &Renderer<B>,
renderer: &Renderer<B, T>,
limits: &layout::Limits,
) -> layout::Node {
<Self as iced_native::Widget<Message, Renderer<B>>>::layout(
<Self as iced_native::Widget<Message, Renderer<B, T>>>::layout(
self, renderer, limits,
)
}
@ -34,15 +34,17 @@ where
fn draw(
&self,
_tree: &Tree,
renderer: &mut Renderer<B>,
renderer: &mut Renderer<B, T>,
theme: &T,
style: &renderer::Style,
layout: Layout<'_>,
cursor_position: Point,
viewport: &Rectangle,
) {
<Self as iced_native::Widget<Message, Renderer<B>>>::draw(
<Self as iced_native::Widget<Message, Renderer<B, T>>>::draw(
self,
renderer,
theme,
style,
layout,
cursor_position,
@ -51,11 +53,12 @@ where
}
}
impl<'a, Message, B> Into<Element<'a, Message, Renderer<B>>> for QRCode<'a>
impl<'a, Message, B, T> Into<Element<'a, Message, Renderer<B, T>>>
for QRCode<'a>
where
B: Backend,
{
fn into(self) -> Element<'a, Message, Renderer<B>> {
fn into(self) -> Element<'a, Message, Renderer<B, T>> {
Element::new(self)
}
}