' ########################################################################################
' Microsoft Windows
' File: ctxcall.inc
' Copyright (c) 2011 Jos? Roca
' Portions Copyright (c) Microsoft Corporation.
' All Rights Reserved.
' THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER
' EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
' MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE.
' ########################################################################################
#IF NOT %DEF(PBX_ctxcall_PBI)
#DEFINE PBX_ctxcall_PBI
%EQUATE `CTXCALL_INC = 1
'/* header files for imported files */
#INCLUDE ONCE "Legacy/System/WTypes.inc"
#INCLUDE ONCE "Legacy/COM/ObjIdl.inc"
' // Size = 12 bytes
TYPE ComCallData DWORD
 dwDispid AS DWORD ' DWORD dwDispid
 dwReserved AS DWORD ' DWORD dwReserved
 pUserDefined AS DWORD ' void *pUserDefined
END TYPE
' ########################################################################################
' IContextCallback interface
' IID = 000001DA-0000-0000-C000-000000000046
' Inherited interface = IUnknown
' ########################################################################################
#IF NOT %DEF(%IContextCallback_INTERFACE_DEFINED)
 %IContextCallback_INTERFACE_DEFINED = 1
$IID_IContextCallback = GUID$("{000001DA-0000-0000-C000-000000000046}")
INTERFACE IContextCallback $IID_IContextCallback
 INHERIT IUnknown
 ' =====================================================================================
 METHOD ContextCallback ( ' VTable offset = 12
 BYVAL pfnCallback AS DWORD
 , BYREF pParam AS ComCallData
 , BYREF riid AS GUID
 , BYVAL iMethod AS LONG
 , BYVAL pUnk AS IUnknown
 ) AS LONG
 ' =====================================================================================
END INTERFACE
#ENDIF ' /* __IContextCallback_INTERFACE_DEFINED__ */
#ENDIF
