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