[pitivi] elements: In the keyframe curve tooltip show the line value



commit 60f112eca5246aca122ceda230a15fee49cb0a11
Author: Alexandru Băluț <alexandru balut gmail com>
Date:   Thu Oct 22 00:33:51 2015 +0200

    elements: In the keyframe curve tooltip show the line value
    
    Currently in the tooltip is displayed the y of the mouse cursor.
    
    Reviewed-by: Thibault Saunier <tsaunier gnome org>
    Differential Revision: https://phabricator.freedesktop.org/D521

 pitivi/timeline/elements.py |   12 +++++++-----
 1 files changed, 7 insertions(+), 5 deletions(-)
---
diff --git a/pitivi/timeline/elements.py b/pitivi/timeline/elements.py
index dec45af..95ce0f5 100644
--- a/pitivi/timeline/elements.py
+++ b/pitivi/timeline/elements.py
@@ -108,8 +108,6 @@ class KeyframeCurve(FigureCanvas, Loggable):
         self.__line = None
 
         # The PathCollection as returned by scatter
-        self.__keyframes = None
-
         sizes = [50]
         self.__keyframes = self.__ax.scatter([], [], marker='D', s=sizes,
                                              c=KEYFRAME_NODE_COLOR, zorder=2)
@@ -159,7 +157,9 @@ class KeyframeCurve(FigureCanvas, Loggable):
         line_contains = self.__line.contains(event)[0]
         keyframe_existed = self.__keyframes.contains(event)[0]
         if line_contains and not keyframe_existed:
-            self.__source.set(event.xdata, event.ydata)
+            res, value = self.__source.control_source_get_value(event.xdata)
+            assert res
+            self.__source.set(event.xdata, value)
             self.__updatePlots()
 
     # Callbacks
@@ -198,13 +198,15 @@ class KeyframeCurve(FigureCanvas, Loggable):
 
     def __setTooltip(self, event):
         if event.xdata:
+            res, value = self.__source.control_source_get_value(event.xdata)
+            assert res
             self.set_tooltip_markup(_("Property: %s\nTimestamp: %s\nValue: %s")
                                     % (self.__propertyName,
                                        Gst.TIME_ARGS(event.xdata),
-                                       "{:.3f}".format(event.ydata)))
+                                       "{:.3f}".format(value)))
 
     def __resetTooltip(self):
-        self.set_tooltip_markup(_("Setting property: %s") % str(self.__propertyName))
+        self.set_tooltip_markup(_("Setting property: %s") % self.__propertyName)
 
     def __computeKeyframeNewTimestamp(self, event):
         # The user can not change the timestamp of the first


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