use crate::utils::BoxedSearchResult; use gtk4::glib; use gtk4::prelude::*; use gtk4::subclass::prelude::*; mod imp; glib::wrapper! { pub struct SearchResultObject(ObjectSubclass); } impl SearchResultObject { pub fn new(search_result: &BoxedSearchResult) -> Self { glib::Object::new(&[("data", search_result)]).expect("Failed to create Application Object") } pub fn data(&self) -> Option { if let Ok(data) = self.property("data") { if let Ok(search_result) = data.get::() { return search_result.0; } } None } }