Trait qmetaobject::QObject
source · pub trait QObject {
// Required methods
fn meta_object(&self) -> *const QMetaObject;
fn static_meta_object() -> *const QMetaObject
where Self: Sized;
fn get_cpp_object(&self) -> *mut c_void;
unsafe fn cpp_construct(pined: &RefCell<Self>) -> *mut c_void
where Self: Sized;
unsafe fn qml_construct(
pined: &RefCell<Self>,
mem: *mut c_void,
extra_destruct: extern "C" fn(_: *mut c_void)
)
where Self: Sized;
fn cpp_size() -> usize
where Self: Sized;
unsafe fn get_from_cpp<'a>(p: *mut c_void) -> QObjectPinned<'a, Self>
where Self: Sized;
// Provided method
fn get_object_description() -> &'static QObjectDescriptor
where Self: Sized { ... }
}
Expand description
Trait that is implemented by the QObject custom derive macro
Do not implement this trait yourself, use #[derive(QObject)]
.
The method of this trait fits into two categories: the ones that are re-implemented by the custom derive, and the ones that are used by this macro and need to be implemented by other QObject-like trait which you use in the qt_base_class! macro.
Required Methods§
sourcefn meta_object(&self) -> *const QMetaObject
fn meta_object(&self) -> *const QMetaObject
Returns a pointer to a meta object
sourcefn static_meta_object() -> *const QMetaObjectwhere
Self: Sized,
fn static_meta_object() -> *const QMetaObjectwhere
Self: Sized,
Returns a pointer to a meta object
sourcefn get_cpp_object(&self) -> *mut c_void
fn get_cpp_object(&self) -> *mut c_void
return a C++ pointer to the QObject* (can be null if not yet initialized)
sourceunsafe fn cpp_construct(pined: &RefCell<Self>) -> *mut c_voidwhere
Self: Sized,
unsafe fn cpp_construct(pined: &RefCell<Self>) -> *mut c_voidwhere
Self: Sized,
Construct the C++ Object.
Note, once this function is called, the object must not be moved in memory.
sourceunsafe fn qml_construct(
pined: &RefCell<Self>,
mem: *mut c_void,
extra_destruct: extern "C" fn(_: *mut c_void)
)where
Self: Sized,
unsafe fn qml_construct(
pined: &RefCell<Self>,
mem: *mut c_void,
extra_destruct: extern "C" fn(_: *mut c_void)
)where
Self: Sized,
Construct the C++ Object, suitable for callbacks to construct QML objects.
sourceunsafe fn get_from_cpp<'a>(p: *mut c_void) -> QObjectPinned<'a, Self>where
Self: Sized,
unsafe fn get_from_cpp<'a>(p: *mut c_void) -> QObjectPinned<'a, Self>where
Self: Sized,
Return a rust object belonging to a C++ object
Provided Methods§
sourcefn get_object_description() -> &'static QObjectDescriptorwhere
Self: Sized,
fn get_object_description() -> &'static QObjectDescriptorwhere
Self: Sized,
Returns a QObjectDescriptor for this type
Implementations§
source§impl dyn QObject
impl dyn QObject
sourcepub unsafe fn as_qvariant(&self) -> QVariant
pub unsafe fn as_qvariant(&self) -> QVariant
Creates a C++ object and construct a QVariant containing a pointer to it.
The cpp_construct function must already have been called.
FIXME: should probably not be used. Prefer using a QmlEngine::new_qobject. QVariant is unsafe as it does not manage life time
sourcepub fn destroyed_signal() -> Signal<fn()>
pub fn destroyed_signal() -> Signal<fn()>
See Qt documentation for QObject::destroyed
sourcepub fn set_object_name(&self, name: QString)
pub fn set_object_name(&self, name: QString)
See Qt documentation for QObject::setObjectName
sourcepub fn object_name_changed_signal() -> Signal<fn(_: QString)>
pub fn object_name_changed_signal() -> Signal<fn(_: QString)>
See Qt documentation for QObject::objectNameChanged