gst-editing-services: ges: Add a TimelineObject:: track-object-removed signal

Thibault Saunier tsaunier at kemper.freedesktop.org
Wed Jan 11 07:04:33 PST 2012


Module: gst-editing-services
Branch: master
Commit: b85b2103ad123a8357183f96a8ba4c2d811a1f7c
URL:    http://cgit.freedesktop.org/gstreamer/gst-editing-services/commit/?id=b85b2103ad123a8357183f96a8ba4c2d811a1f7c

Author: Thibault Saunier <thibault.saunier at collabora.com>
Date:   Tue Dec  6 14:10:14 2011 -0300

ges: Add a TimelineObject::track-object-removed signal

API: TimelineObject::track-object

---

 ges/ges-timeline-object.c |   21 +++++++++++++++++++--
 1 files changed, 19 insertions(+), 2 deletions(-)

diff --git a/ges/ges-timeline-object.c b/ges/ges-timeline-object.c
index f4c3334..8938a2f 100644
--- a/ges/ges-timeline-object.c
+++ b/ges/ges-timeline-object.c
@@ -108,6 +108,7 @@ enum
   EFFECT_ADDED,
   EFFECT_REMOVED,
   TRACK_OBJECT_ADDED,
+  TRACK_OBJECT_REMOVED,
   LAST_SIGNAL
 };
 
@@ -344,7 +345,7 @@ ges_timeline_object_class_init (GESTimelineObjectClass * klass)
   /**
    * GESTimelineObject::track-object-added
    * @object: the #GESTimelineObject
-   * @effect: the #GESTrackObject that was added.
+   * @tckobj: the #GESTrackObject that was added.
    *
    * Will be emitted after a track object was added to the object.
    *
@@ -355,6 +356,20 @@ ges_timeline_object_class_init (GESTimelineObjectClass * klass)
       G_SIGNAL_RUN_FIRST, 0, NULL, NULL, ges_marshal_VOID__OBJECT,
       G_TYPE_NONE, 1, GES_TYPE_TRACK_OBJECT);
 
+  /**
+   * GESTimelineObject::track-object-removed
+   * @object: the #GESTimelineObject
+   * @tckobj: the #GESTrackObject that was removed.
+   *
+   * Will be emitted after a track object was added to the object.
+   *
+   * Since: 0.10.2
+   */
+  ges_timeline_object_signals[TRACK_OBJECT_REMOVED] =
+      g_signal_new ("track-object-removed", G_TYPE_FROM_CLASS (klass),
+      G_SIGNAL_RUN_FIRST, 0, NULL, NULL, ges_marshal_VOID__OBJECT,
+      G_TYPE_NONE, 1, GES_TYPE_TRACK_OBJECT);
+
   klass->need_fill_track = TRUE;
 }
 
@@ -619,7 +634,9 @@ ges_timeline_object_release_track_object (GESTimelineObject * object,
     /* emit 'object-removed' */
     g_signal_emit (object, ges_timeline_object_signals[EFFECT_REMOVED], 0,
         GES_TRACK_EFFECT (trackobject));
-  }
+  } else
+    g_signal_emit (object, ges_timeline_object_signals[TRACK_OBJECT_REMOVED], 0,
+        GES_TRACK_OBJECT (trackobject));
 
   ges_track_object_set_timeline_object (trackobject, NULL);
 



More information about the gstreamer-commits mailing list