track-element: Add an API to list all set ControlBinding

API:
    ges_track_element_get_all_control_bindings
This commit is contained in:
Thibault Saunier 2014-10-01 09:53:44 +02:00
parent a022b4b394
commit 24e2c88180
5 changed files with 13 additions and 5 deletions

View file

@ -146,6 +146,7 @@ ges_track_element_get_child_property_by_pspec
ges_track_element_edit
ges_track_element_set_control_source
ges_track_element_get_control_binding
ges_track_element_get_all_control_bindings
<SUBSECTION Standard>
GESTrackElementPrivate
ges_track_element_set_track

View file

@ -120,9 +120,6 @@ ges_asset_cache_put (GESAsset * asset, GSimpleAsyncResult *res);
G_GNUC_INTERNAL gboolean
ges_asset_cache_set_loaded(GType extractable_type, const gchar * id, GError *error);
G_GNUC_INTERNAL GHashTable *
ges_track_element_get_bindings_hashtable(GESTrackElement *element);
GESAsset*
ges_asset_cache_lookup(GType extractable_type, const gchar * id);

View file

@ -912,8 +912,15 @@ ges_track_element_set_track (GESTrackElement * object, GESTrack * track)
return ret;
}
/**
* ges_track_element_get_all_control_bindings
* @trackelement: The #TrackElement from which to get all set bindings
*
* Returns: (element-type gchar* GstControlBinding)(transfer none): A
* #GHashTable containing all property_name: GstControlBinding
*/
GHashTable *
ges_track_element_get_bindings_hashtable (GESTrackElement * trackelement)
ges_track_element_get_all_control_bindings (GESTrackElement * trackelement)
{
GESTrackElementPrivate *priv = GES_TRACK_ELEMENT (trackelement)->priv;

View file

@ -191,5 +191,7 @@ ges_track_element_add_children_props (GESTrackElement *self,
const gchar ** wanted_categories,
const gchar **blacklist,
const gchar **whitelist);
GHashTable *
ges_track_element_get_all_control_bindings (GESTrackElement * trackelement);
G_END_DECLS
#endif /* _GES_TRACK_ELEMENT */

View file

@ -927,7 +927,8 @@ _save_keyframes (GString * str, GESTrackElement * trackelement, gint index)
GHashTableIter iter;
gpointer key, value;
bindings_hashtable = ges_track_element_get_bindings_hashtable (trackelement);
bindings_hashtable =
ges_track_element_get_all_control_bindings (trackelement);
g_hash_table_iter_init (&iter, bindings_hashtable);