diff --git a/gst-plugin/src/base_src.rs b/gst-plugin/src/base_src.rs index d0b1e9f2..ac876a4a 100644 --- a/gst-plugin/src/base_src.rs +++ b/gst-plugin/src/base_src.rs @@ -209,7 +209,18 @@ impl ElementImpl for Box { } } -impl ObjectImpl for Box {} +// FIXME: Boilerplate +impl ObjectImpl for Box { + fn set_property(&self, obj: &glib::Object, id: u32, value: &glib::Value) { + let imp: &BaseSrcImpl = self.as_ref(); + imp.set_property(obj, id, value); + } + + fn get_property(&self, obj: &glib::Object, id: u32, value: &mut glib::Value) { + let imp: &BaseSrcImpl = self.as_ref(); + imp.get_property(obj, id, value); + } +} impl ObjectType for RsBaseSrc { const NAME: &'static str = "RsBaseSrc"; diff --git a/gst-plugin/src/element.rs b/gst-plugin/src/element.rs index 042f9fce..5eb6a7e0 100644 --- a/gst-plugin/src/element.rs +++ b/gst-plugin/src/element.rs @@ -121,7 +121,17 @@ unsafe impl ElementClass for gst_ffi::GstElementClass {} unsafe impl ObjectClassStruct for gst_ffi::GstElementClass {} // FIXME: Boilerplate -impl ObjectImpl for Box {} +impl ObjectImpl for Box { + fn set_property(&self, obj: &glib::Object, id: u32, value: &glib::Value) { + let imp: &ElementImpl = self.as_ref(); + imp.set_property(obj, id, value); + } + + fn get_property(&self, obj: &glib::Object, id: u32, value: &mut glib::Value) { + let imp: &ElementImpl = self.as_ref(); + imp.get_property(obj, id, value); + } +} impl ElementImpl for Box { fn change_state(