[librsvg: 4/45] LinearGradient: resolved version of LinearGradientData
- From: Federico Mena Quintero <federico src gnome org>
 
- To: commits-list gnome org
 
- Cc: 
 
- Subject: [librsvg: 4/45] LinearGradient: resolved version of LinearGradientData
 
- Date: Tue,  1 Oct 2019 15:07:16 +0000 (UTC)
 
commit 4167d2576f0a3abeba9cb2e4b60f3c3631b49060
Author: Federico Mena Quintero <federico gnome org>
Date:   Thu Sep 26 17:26:07 2019 -0500
    LinearGradient: resolved version of LinearGradientData
 rsvg_internals/src/gradient.rs | 20 ++++++++++++++++++++
 1 file changed, 20 insertions(+)
---
diff --git a/rsvg_internals/src/gradient.rs b/rsvg_internals/src/gradient.rs
index 6d065799..fdab0532 100644
--- a/rsvg_internals/src/gradient.rs
+++ b/rsvg_internals/src/gradient.rs
@@ -285,6 +285,13 @@ pub struct LinearGradientData {
     y2: Option<LengthVertical>,
 }
 
+pub struct LinearGradient {
+    x1: LengthHorizontal,
+    y1: LengthVertical,
+    x2: LengthHorizontal,
+    y2: LengthVertical,
+}
+
 impl Resolve for LinearGradientData {
     fn is_resolved(&self) -> bool {
         self.x1.is_some() && self.y1.is_some() && self.x2.is_some() && self.y2.is_some()
@@ -321,6 +328,19 @@ impl LinearGradientData {
         Ok(())
     }
 
+    fn to_resolved(self) -> LinearGradient {
+        assert!(self.is_resolved());
+
+        let LinearGradientData { x1, y1, x2, y2 } = self;
+
+        LinearGradient {
+            x1: x1.unwrap(),
+            y1: y1.unwrap(),
+            x2: x2.unwrap(),
+            y2: y2.unwrap(),
+        }
+    }
+
     fn to_cairo_gradient(
         &self,
         values: &ComputedValues,
[
Date Prev][
Date Next]   [
Thread Prev][
Thread Next]   
[
Thread Index]
[
Date Index]
[
Author Index]