/**************************************************************\ * * * IUnknown * * * **************************************************************/ HRESULT STDMETHODCALLTYPE QWindowsMsaaAccessible::QueryInterface(REFIID id, LPVOID *iface) { *iface = 0; QByteArray strIID = IIDToString(id); if (!strIID.isEmpty()) { QString ss; QDebug dbg(&ss); dbg << accessibleInterface(); accessibleDebug("QWindowsIA2Accessible::QI() - IID:%s, iface:%s ", strIID.constData(), qPrintable(ss)); } if (id == IID_IUnknown) { *iface = (IUnknown*)(IDispatch*)this; } else if (id == IID_IDispatch) { *iface = (IDispatch*)this; } else if (id == IID_IAccessible) { *iface = (IAccessible*)this; } else if (id == IID_IOleWindow) { *iface = (IOleWindow*)this; } if (*iface) { AddRef(); return S_OK; } return E_NOINTERFACE; }
/**************************************************************\ * * * IUnknown * * * **************************************************************/ HRESULT STDMETHODCALLTYPE QWindowsMsaaAccessible::QueryInterface(REFIID id, LPVOID *iface) { *iface = 0; QByteArray strIID = IIDToString(id); if (!strIID.isEmpty()) { qCDebug(lcQpaAccessibility) << "QWindowsIA2Accessible::QI() - IID:" << strIID << ", iface:" << accessibleInterface(); } if (id == IID_IUnknown) { *iface = (IUnknown*)(IDispatch*)this; } else if (id == IID_IDispatch) { *iface = (IDispatch*)this; } else if (id == IID_IAccessible) { *iface = (IAccessible*)this; } else if (id == IID_IOleWindow) { *iface = (IOleWindow*)this; } if (*iface) { AddRef(); return S_OK; } return E_NOINTERFACE; }