#![allow(non_camel_case_types, non_snake_case)]
use crate::co;
use crate::ole::{privs::*, vts::*};
use crate::prelude::*;
com_interface! { IAdviseSink: "0000010f-0000-0000-c000-000000000046";
}
impl ole_IAdviseSink for IAdviseSink {}
pub trait ole_IAdviseSink: ole_IUnknown {
fn_com_noparm_noret! { OnClose: IAdviseSinkVT;
}
fn OnRename(&self, mk: &impl ole_IMoniker) {
unsafe {
(vt::<IAdviseSinkVT>(self).OnRename)(self.ptr(), mk.ptr());
}
}
fn_com_noparm_noret! { OnSave: IAdviseSinkVT;
}
fn OnViewChange(&self, aspect: co::DVASPECT, index: i32) {
unsafe {
(vt::<IAdviseSinkVT>(self).OnViewChange)(self.ptr(), aspect.raw(), index);
}
}
}