jpeg pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=89acf9cf28429b78c9385fae8c9ad2e46a7f9b81

commit 89acf9cf28429b78c9385fae8c9ad2e46a7f9b81
Author: Jean-Philippe Andre <jp.an...@samsung.com>
Date:   Thu Mar 20 16:29:24 2014 +0900

    Evas image: Add read-only property filter_padding
    
    Returns l, r, t, b and true/false if the filter is used & valid.
---
 src/lib/evas/canvas/evas_image.eo       | 12 ++++++++++++
 src/lib/evas/canvas/evas_object_image.c | 21 +++++++++++++++++++++
 2 files changed, 33 insertions(+)

diff --git a/src/lib/evas/canvas/evas_image.eo 
b/src/lib/evas/canvas/evas_image.eo
index 988fbba..fede264 100644
--- a/src/lib/evas/canvas/evas_image.eo
+++ b/src/lib/evas/canvas/evas_image.eo
@@ -1063,6 +1063,18 @@ class Evas_Image (Evas_Object)
             Eo* eobj; /*@ Eo object to use through proxy rendering */
          }
       }
+      filter_padding {
+         get {
+            /*@ Get the value of the extra padding set when a filter is used. 
*/
+            return Eina_Bool; /*@ Returns false if the filter is invalid and 
padding is 0 */
+         }
+         values {
+            int l; /*@ Left padding in pixels */
+            int r; /*@ Right padding in pixels */
+            int t; /*@ Top padding in pixels */
+            int b; /*@ Bottom padding in pixels */
+         }
+      }
    }
    methods {
       preload_begin {
diff --git a/src/lib/evas/canvas/evas_object_image.c 
b/src/lib/evas/canvas/evas_object_image.c
index 34d5d7f..2ba1ec3 100644
--- a/src/lib/evas/canvas/evas_object_image.c
+++ b/src/lib/evas/canvas/evas_object_image.c
@@ -4849,6 +4849,27 @@ update:
    evas_object_inform_call_resize(eo_obj);
 }
 
+EOLIAN Eina_Bool
+_evas_image_filter_padding_get(Eo *obj EINA_UNUSED, Evas_Image_Data *o,
+                               int *l, int *r, int *t, int *b)
+{
+   Evas_Filter_Program *pgm = o->cur->filter.chain;
+   int pl = 0, pr = 0, pt = 0, pb = 0;
+   Eina_Bool used = EINA_FALSE;
+
+   if (pgm)
+     {
+        used = !o->cur->filter.invalid;
+        evas_filter_program_padding_get(pgm, &pl, &pr, &pt, &pb);
+     }
+
+   if (l) *l = pl;
+   if (r) *r = pr;
+   if (t) *t = pt;
+   if (b) *b = pb;
+   return used;
+}
+
 /* vim:set ts=8 sw=3 sts=3 expandtab cino=>5n-2f0^-2{2(0W1st0 :*/
 
 #include "canvas/evas_image.eo.c"

-- 


Reply via email to