From c2d82833a0d56660b66bb06a9fb6360f425416af Mon Sep 17 00:00:00 2001 From: Clark Moody Date: Thu, 1 Feb 2024 16:23:41 -0600 Subject: Styling for QR Code using theme framework --- style/src/qr_code.rs | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 style/src/qr_code.rs (limited to 'style/src/qr_code.rs') diff --git a/style/src/qr_code.rs b/style/src/qr_code.rs new file mode 100644 index 00000000..a024506c --- /dev/null +++ b/style/src/qr_code.rs @@ -0,0 +1,20 @@ +//! Change the appearance of a QR code. +use crate::core::Color; + +/// The appearance of a QR code. +#[derive(Debug, Clone, Copy)] +pub struct Appearance { + /// The color of the QR code data cells + pub cell: Color, + /// The color of the QR code background + pub background: Color, +} + +/// A set of rules that dictate the style of a QR code. +pub trait StyleSheet { + /// The supported style of the [`StyleSheet`]. + type Style: Default; + + /// Produces the style of a QR code. + fn appearance(&self, style: &Self::Style) -> Appearance; +} -- cgit From b535f7ae385658829f57f742eb1cc6f2f40cddf5 Mon Sep 17 00:00:00 2001 From: Héctor Ramón Jiménez Date: Fri, 9 Feb 2024 23:57:11 +0100 Subject: Invalidate `QRCode` cache on `Appearance` change --- style/src/qr_code.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'style/src/qr_code.rs') diff --git a/style/src/qr_code.rs b/style/src/qr_code.rs index a024506c..02c4709a 100644 --- a/style/src/qr_code.rs +++ b/style/src/qr_code.rs @@ -2,7 +2,7 @@ use crate::core::Color; /// The appearance of a QR code. -#[derive(Debug, Clone, Copy)] +#[derive(Debug, Clone, Copy, PartialEq)] pub struct Appearance { /// The color of the QR code data cells pub cell: Color, -- cgit