[librsvg] filter: make fields private



commit a460a7c540cde20964a315ef93e19cd4f8d879a7
Author: Paolo Borelli <pborelli gnome org>
Date:   Mon Jul 1 09:54:33 2019 +0200

    filter: make fields private
    
    We only need access to the units

 rsvg_internals/src/filters/context.rs |  6 +++---
 rsvg_internals/src/filters/mod.rs     |  2 +-
 rsvg_internals/src/filters/node.rs    | 20 ++++++++++++++------
 3 files changed, 18 insertions(+), 10 deletions(-)
---
diff --git a/rsvg_internals/src/filters/context.rs b/rsvg_internals/src/filters/context.rs
index 4a5d2e77..430abd08 100644
--- a/rsvg_internals/src/filters/context.rs
+++ b/rsvg_internals/src/filters/context.rs
@@ -117,7 +117,7 @@ impl FilterContext {
         let node_data = filter_node.borrow();
         let filter = node_data.get_impl::<NodeFilter>();
 
-        let affine = match filter.filterunits {
+        let affine = match filter.get_filter_units() {
             CoordUnits::UserSpaceOnUse => cr_affine,
             CoordUnits::ObjectBoundingBox => {
                 let affine = cairo::Matrix::new(
@@ -132,7 +132,7 @@ impl FilterContext {
             }
         };
 
-        let paffine = match filter.primitiveunits {
+        let paffine = match filter.get_primitive_units() {
             CoordUnits::UserSpaceOnUse => cr_affine,
             CoordUnits::ObjectBoundingBox => {
                 let affine = cairo::Matrix::new(
@@ -310,7 +310,7 @@ impl FilterContext {
         let filter = node_data.get_impl::<NodeFilter>();
 
         // See comments in compute_effects_region() for how this works.
-        if filter.primitiveunits == CoordUnits::ObjectBoundingBox {
+        if filter.get_primitive_units() == CoordUnits::ObjectBoundingBox {
             draw_ctx.push_view_box(1.0, 1.0)
         } else {
             draw_ctx.get_view_params()
diff --git a/rsvg_internals/src/filters/mod.rs b/rsvg_internals/src/filters/mod.rs
index 5f425676..e25d59b7 100644
--- a/rsvg_internals/src/filters/mod.rs
+++ b/rsvg_internals/src/filters/mod.rs
@@ -117,7 +117,7 @@ impl NodeTrait for Primitive {
         let primitiveunits = parent
             .and_then(|parent| {
                 if parent.borrow().get_type() == NodeType::Filter {
-                    Some(parent.borrow().get_impl::<NodeFilter>().primitiveunits)
+                    Some(parent.borrow().get_impl::<NodeFilter>().get_primitive_units())
                 } else {
                     None
                 }
diff --git a/rsvg_internals/src/filters/node.rs b/rsvg_internals/src/filters/node.rs
index 1825aef0..7c036652 100644
--- a/rsvg_internals/src/filters/node.rs
+++ b/rsvg_internals/src/filters/node.rs
@@ -14,12 +14,12 @@ use crate::property_bag::PropertyBag;
 
 /// The <filter> node.
 pub struct NodeFilter {
-    pub x: LengthHorizontal,
-    pub y: LengthVertical,
-    pub width: LengthHorizontal,
-    pub height: LengthVertical,
-    pub filterunits: CoordUnits,
-    pub primitiveunits: CoordUnits,
+    x: LengthHorizontal,
+    y: LengthVertical,
+    width: LengthHorizontal,
+    height: LengthVertical,
+    filterunits: CoordUnits,
+    primitiveunits: CoordUnits,
 }
 
 impl Default for NodeFilter {
@@ -38,6 +38,14 @@ impl Default for NodeFilter {
 }
 
 impl NodeFilter {
+    pub fn get_filter_units(&self) -> CoordUnits {
+        self.filterunits
+    }
+
+    pub fn get_primitive_units(&self) -> CoordUnits {
+        self.primitiveunits
+    }
+
     /// Computes and returns the filter effects region.
     pub fn compute_effects_region(
         &self,


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]