[pyclutter/wip/introspection] Add override for Clutter.Interval



commit 90da03ed80876da5e79bd976a26cb1b0643c244f
Author: Bastian Winkler <buz netbuz org>
Date:   Wed May 9 12:28:03 2012 +0200

    Add override for Clutter.Interval
    
    Since https://bugzilla.gnome.org/show_bug.cgi?id=674351 is fixed, we're
    able to use ClutterInterval from Python as well.

 introspection/Clutter.py |   36 ++++++++++++++++++++++++++++++++++++
 1 files changed, 36 insertions(+), 0 deletions(-)
---
diff --git a/introspection/Clutter.py b/introspection/Clutter.py
index 82c0000..f7b4e2a 100644
--- a/introspection/Clutter.py
+++ b/introspection/Clutter.py
@@ -1173,6 +1173,42 @@ State = override(State)
 __all__.append('State')
 
 
+class Interval(Clutter.Interval):
+    def __init__(self, value_type, initial=None, final=None):
+        Clutter.Interval.__init__(self, value_type=value_type)
+        if initial is not None:
+            self.set_initial(initial)
+        if final is not None:
+            self.set_final(final)
+
+    def set_initial(self, value):
+        Clutter.Interval.set_initial(self,
+                _gvalue_from_python(self.props.value_type, value))
+
+    def get_initial(self):
+        try:
+            return self.peek_initial_value()
+        except TypeError:
+            return None
+
+    initial = property(get_initial, set_initial)
+
+    def set_final(self, value):
+        Clutter.Interval.set_final(self,
+                _gvalue_from_python(self.props.value_type, value))
+
+    def get_final(self):
+        try:
+            return self.peek_final_value()
+        except TypeError:
+            return None
+
+    final = property(get_final, set_final)
+
+Interval = override(Interval)
+__all__.append('Interval')
+
+
 class AlignConstraint(Clutter.AlignConstraint):
     def __init__(self, source=None, align_axis=None, factor=None, **kwargs):
         if source is not None:



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