pub trait IComponentData_Impl: Sized {
    // Required methods
    fn Initialize(&self, punknown: Option<&IUnknown>) -> Result<()>;
    fn CreateComponent(&self) -> Result<IComponent>;
    fn Notify(
        &self,
        lpdataobject: Option<&IDataObject>,
        event: MMC_NOTIFY_TYPE,
        arg: LPARAM,
        param3: LPARAM
    ) -> Result<()>;
    fn Destroy(&self) -> Result<()>;
    fn QueryDataObject(
        &self,
        cookie: isize,
        type: DATA_OBJECT_TYPES
    ) -> Result<IDataObject>;
    fn GetDisplayInfo(&self, pscopedataitem: *mut SCOPEDATAITEM) -> Result<()>;
    fn CompareObjects(
        &self,
        lpdataobjecta: Option<&IDataObject>,
        lpdataobjectb: Option<&IDataObject>
    ) -> Result<()>;
}

Required Methods§

fn Initialize(&self, punknown: Option<&IUnknown>) -> Result<()>

fn CreateComponent(&self) -> Result<IComponent>

fn Notify( &self, lpdataobject: Option<&IDataObject>, event: MMC_NOTIFY_TYPE, arg: LPARAM, param3: LPARAM ) -> Result<()>

fn Destroy(&self) -> Result<()>

fn QueryDataObject( &self, cookie: isize, type: DATA_OBJECT_TYPES ) -> Result<IDataObject>

fn GetDisplayInfo(&self, pscopedataitem: *mut SCOPEDATAITEM) -> Result<()>

fn CompareObjects( &self, lpdataobjecta: Option<&IDataObject>, lpdataobjectb: Option<&IDataObject> ) -> Result<()>

Object Safety§

This trait is not object safe.

Implementors§