HRESULT _IFUNC BOleFont::QueryInterfaceMain (REFIID iid, LPVOID FAR *ppv) { HRESULT hr = ResultFromScode(E_NOINTERFACE); *ppv = NULL; // Self // if (iid == IID_BOleFont) { (BOleFont *)*ppv = this; AddRef(); return NOERROR; } // interfaces if (SUCCEEDED(hr = IFont_QueryInterface (this, iid, ppv))) { } else if (SUCCEEDED(hr = IFontDisp_QueryInterface (this, iid, ppv))) { } else if (SUCCEEDED(hr = IConnectionPointContainer_QueryInterface(this, iid, ppv))) { } else if (SUCCEEDED(hr = IDispatch_QueryInterface(this, iid, ppv))) { } else if (SUCCEEDED(hr = BOleComponent::QueryInterfaceMain(iid, ppv))) { } return hr; }
static HRESULT WINAPI rowpos_cp_QueryInterface(IConnectionPoint *iface, REFIID riid, void **obj) { rowpos_cp *This = impl_from_IConnectionPoint(iface); return IConnectionPointContainer_QueryInterface(&This->container->IConnectionPointContainer_iface, riid, obj); }