pub trait ChildProxyExt: 'static {
    fn child_added(&self, child: &impl IsA<Object>, name: &str);
    fn child_removed(&self, child: &impl IsA<Object>, name: &str);
    fn child_by_index(&self, index: u32) -> Option<Object>;
    fn child_by_name(&self, name: &str) -> Option<Object>;
    fn child_by_name_recurse(&self, name: &str) -> Option<Object>;
    fn children_count(&self) -> u32;
    fn connect_child_added<F: Fn(&Self, &Object, &str) + Send + Sync + 'static>(
        &self,
        f: F
    ) -> SignalHandlerId; fn connect_child_removed<F: Fn(&Self, &Object, &str) + Send + Sync + 'static>(
        &self,
        f: F
    ) -> SignalHandlerId; }
Expand description

Trait containing all ChildProxy methods.

Implementors

Bin, ChildProxy, Pipeline

Required Methods§

Emits the child-added signal.

child

the newly added child

name

the name of the new child

Emits the child-removed signal.

child

the removed child

name

the name of the old child

Fetches a child by its number.

index

the child’s position in the child list

Returns

the child object or None if not found (index too high).

Looks up a child element by the given name.

This virtual method has a default implementation that uses Object together with GstObjectExt::name(). If the interface is to be used with GObjects, this methods needs to be overridden.

name

the child’s name

Returns

the child object or None if not found.

Available on crate feature v1_22 only.

Looks up a child element by the given full-path name.

Similar to child_by_name(), this method searches and returns a child given a name. The difference is that this method allows a hierarchical path in the form of child1::child2::child3. In the later example this method would return a reference to child3, if found. The name should be made of element names only and should not contain any property names.

name

the full-path child’s name

Returns

the child object or None if not found.

Gets the number of child objects this parent contains.

Returns

the number of child objects

Will be emitted after the object was added to the child_proxy.

object

the glib::Object that was added

name

the name of the new child

Will be emitted after the object was removed from the child_proxy.

object

the glib::Object that was removed

name

the name of the old child

Implementors§