dinput: Move SetEventNotification and associated event into base class.
This commit is contained in:
parent
7d838d9e6f
commit
af34ef12ba
|
@ -475,11 +475,17 @@ HRESULT WINAPI IDirectInputDevice2AImpl_SetCooperativeLevel(
|
|||
return DI_OK;
|
||||
}
|
||||
|
||||
/******************************************************************************
|
||||
* SetEventNotification : specifies event to be sent on state change
|
||||
*/
|
||||
HRESULT WINAPI IDirectInputDevice2AImpl_SetEventNotification(
|
||||
LPDIRECTINPUTDEVICE8A iface,HANDLE hnd
|
||||
) {
|
||||
LPDIRECTINPUTDEVICE8A iface, HANDLE event)
|
||||
{
|
||||
IDirectInputDevice2AImpl *This = (IDirectInputDevice2AImpl *)iface;
|
||||
FIXME("(this=%p,%p): stub\n",This,hnd);
|
||||
|
||||
TRACE("(%p) %p\n", This, event);
|
||||
|
||||
This->hEvent = event;
|
||||
return DI_OK;
|
||||
}
|
||||
|
||||
|
|
|
@ -33,6 +33,7 @@ struct IDirectInputDevice2AImpl
|
|||
const void *lpVtbl;
|
||||
LONG ref;
|
||||
GUID guid;
|
||||
HANDLE hEvent;
|
||||
};
|
||||
|
||||
/* Routines to do DataFormat / WineFormat conversions */
|
||||
|
|
|
@ -103,7 +103,6 @@ struct JoystickImpl
|
|||
DataFormat *transform; /* wine to user format converter */
|
||||
int *offsets; /* object offsets */
|
||||
ObjProps *props;
|
||||
HANDLE hEvent;
|
||||
LPDIDEVICEOBJECTDATA data_queue;
|
||||
int queue_head, queue_tail, queue_len;
|
||||
BOOL acquired;
|
||||
|
@ -1213,19 +1212,6 @@ static HRESULT WINAPI JoystickAImpl_SetProperty(
|
|||
return DI_OK;
|
||||
}
|
||||
|
||||
/******************************************************************************
|
||||
* SetEventNotification : specifies event to be sent on state change
|
||||
*/
|
||||
static HRESULT WINAPI JoystickAImpl_SetEventNotification(
|
||||
LPDIRECTINPUTDEVICE8A iface, HANDLE hnd
|
||||
) {
|
||||
JoystickImpl *This = (JoystickImpl *)iface;
|
||||
|
||||
TRACE("(this=%p,%p)\n",This,hnd);
|
||||
This->hEvent = hnd;
|
||||
return DI_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI JoystickAImpl_GetCapabilities(
|
||||
LPDIRECTINPUTDEVICE8A iface,
|
||||
LPDIDEVCAPS lpDIDevCaps)
|
||||
|
@ -1662,7 +1648,7 @@ static const IDirectInputDevice8AVtbl JoystickAvt =
|
|||
JoystickAImpl_GetDeviceState,
|
||||
JoystickAImpl_GetDeviceData,
|
||||
JoystickAImpl_SetDataFormat,
|
||||
JoystickAImpl_SetEventNotification,
|
||||
IDirectInputDevice2AImpl_SetEventNotification,
|
||||
IDirectInputDevice2AImpl_SetCooperativeLevel,
|
||||
JoystickAImpl_GetObjectInfo,
|
||||
JoystickAImpl_GetDeviceInfo,
|
||||
|
@ -1704,7 +1690,7 @@ static const IDirectInputDevice8WVtbl SysJoystickWvt =
|
|||
XCAST(GetDeviceState)JoystickAImpl_GetDeviceState,
|
||||
XCAST(GetDeviceData)JoystickAImpl_GetDeviceData,
|
||||
XCAST(SetDataFormat)JoystickAImpl_SetDataFormat,
|
||||
XCAST(SetEventNotification)JoystickAImpl_SetEventNotification,
|
||||
XCAST(SetEventNotification)IDirectInputDevice2AImpl_SetEventNotification,
|
||||
XCAST(SetCooperativeLevel)IDirectInputDevice2AImpl_SetCooperativeLevel,
|
||||
IDirectInputDevice2WImpl_GetObjectInfo,
|
||||
JoystickWImpl_GetDeviceInfo,
|
||||
|
|
|
@ -137,7 +137,6 @@ struct JoystickImpl
|
|||
LPDIDATAFORMAT df;
|
||||
DataFormat *transform; /* wine to user format converter */
|
||||
int *offsets; /* object offsets */
|
||||
HANDLE hEvent;
|
||||
LPDIDEVICEOBJECTDATA data_queue;
|
||||
int queue_head, queue_tail, queue_len;
|
||||
BOOL overflow;
|
||||
|
@ -1167,19 +1166,6 @@ static HRESULT WINAPI JoystickAImpl_SetProperty(LPDIRECTINPUTDEVICE8A iface,
|
|||
return 0;
|
||||
}
|
||||
|
||||
/******************************************************************************
|
||||
* SetEventNotification : specifies event to be sent on state change
|
||||
*/
|
||||
static HRESULT WINAPI JoystickAImpl_SetEventNotification(
|
||||
LPDIRECTINPUTDEVICE8A iface, HANDLE hnd
|
||||
) {
|
||||
JoystickImpl *This = (JoystickImpl *)iface;
|
||||
|
||||
TRACE("(this=%p,%p)\n",This,hnd);
|
||||
This->hEvent = hnd;
|
||||
return DI_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI JoystickAImpl_GetCapabilities(
|
||||
LPDIRECTINPUTDEVICE8A iface,
|
||||
LPDIDEVCAPS lpDIDevCaps)
|
||||
|
@ -1808,7 +1794,7 @@ static const IDirectInputDevice8AVtbl JoystickAvt =
|
|||
JoystickAImpl_GetDeviceState,
|
||||
JoystickAImpl_GetDeviceData,
|
||||
JoystickAImpl_SetDataFormat,
|
||||
JoystickAImpl_SetEventNotification,
|
||||
IDirectInputDevice2AImpl_SetEventNotification,
|
||||
IDirectInputDevice2AImpl_SetCooperativeLevel,
|
||||
IDirectInputDevice2AImpl_GetObjectInfo,
|
||||
IDirectInputDevice2AImpl_GetDeviceInfo,
|
||||
|
@ -1850,7 +1836,7 @@ static const IDirectInputDevice8WVtbl JoystickWvt =
|
|||
XCAST(GetDeviceState)JoystickAImpl_GetDeviceState,
|
||||
XCAST(GetDeviceData)JoystickAImpl_GetDeviceData,
|
||||
XCAST(SetDataFormat)JoystickAImpl_SetDataFormat,
|
||||
XCAST(SetEventNotification)JoystickAImpl_SetEventNotification,
|
||||
XCAST(SetEventNotification)IDirectInputDevice2AImpl_SetEventNotification,
|
||||
XCAST(SetCooperativeLevel)IDirectInputDevice2AImpl_SetCooperativeLevel,
|
||||
IDirectInputDevice2WImpl_GetObjectInfo,
|
||||
IDirectInputDevice2WImpl_GetDeviceInfo,
|
||||
|
|
|
@ -50,7 +50,6 @@ struct SysKeyboardImpl
|
|||
|
||||
IDirectInputImpl* dinput;
|
||||
|
||||
HANDLE hEvent;
|
||||
/* SysKeyboardAImpl */
|
||||
int acquired;
|
||||
|
||||
|
@ -101,7 +100,7 @@ LRESULT CALLBACK KeyboardCallback( int code, WPARAM wparam, LPARAM lparam )
|
|||
GEN_EVENT(dik_code, new_diks, hook->time, This->dinput->evsequence++);
|
||||
LeaveCriticalSection(&This->crit);
|
||||
|
||||
if (This->hEvent) SetEvent(This->hEvent);
|
||||
if (This->base.hEvent) SetEvent(This->base.hEvent);
|
||||
|
||||
return CallNextHookEx(0, code, wparam, lparam);
|
||||
}
|
||||
|
@ -531,16 +530,6 @@ static HRESULT WINAPI SysKeyboardAImpl_Unacquire(LPDIRECTINPUTDEVICE8A iface)
|
|||
return DI_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI SysKeyboardAImpl_SetEventNotification(LPDIRECTINPUTDEVICE8A iface,
|
||||
HANDLE hnd) {
|
||||
SysKeyboardImpl *This = (SysKeyboardImpl *)iface;
|
||||
|
||||
TRACE("(this=%p,%p)\n",This,hnd);
|
||||
|
||||
This->hEvent = hnd;
|
||||
return DI_OK;
|
||||
}
|
||||
|
||||
/******************************************************************************
|
||||
* GetCapabilities : get the device capablitites
|
||||
*/
|
||||
|
@ -699,7 +688,7 @@ static const IDirectInputDevice8AVtbl SysKeyboardAvt =
|
|||
SysKeyboardAImpl_GetDeviceState,
|
||||
SysKeyboardAImpl_GetDeviceData,
|
||||
IDirectInputDevice2AImpl_SetDataFormat,
|
||||
SysKeyboardAImpl_SetEventNotification,
|
||||
IDirectInputDevice2AImpl_SetEventNotification,
|
||||
IDirectInputDevice2AImpl_SetCooperativeLevel,
|
||||
SysKeyboardAImpl_GetObjectInfo,
|
||||
SysKeyboardAImpl_GetDeviceInfo,
|
||||
|
@ -741,7 +730,7 @@ static const IDirectInputDevice8WVtbl SysKeyboardWvt =
|
|||
XCAST(GetDeviceState)SysKeyboardAImpl_GetDeviceState,
|
||||
XCAST(GetDeviceData)SysKeyboardAImpl_GetDeviceData,
|
||||
XCAST(SetDataFormat)IDirectInputDevice2AImpl_SetDataFormat,
|
||||
XCAST(SetEventNotification)SysKeyboardAImpl_SetEventNotification,
|
||||
XCAST(SetEventNotification)IDirectInputDevice2AImpl_SetEventNotification,
|
||||
XCAST(SetCooperativeLevel)IDirectInputDevice2AImpl_SetCooperativeLevel,
|
||||
SysKeyboardWImpl_GetObjectInfo,
|
||||
SysKeyboardWImpl_GetDeviceInfo,
|
||||
|
|
|
@ -136,7 +136,6 @@ struct SysMouseImpl
|
|||
WARP_STATUS need_warp;
|
||||
DWORD last_warped;
|
||||
int acquired;
|
||||
HANDLE hEvent;
|
||||
CRITICAL_SECTION crit;
|
||||
|
||||
/* This is for mouse reporting. */
|
||||
|
@ -538,7 +537,7 @@ static LRESULT CALLBACK dinput_mouse_hook( int code, WPARAM wparam, LPARAM lpara
|
|||
|
||||
end:
|
||||
/* Mouse moved -> send event if asked */
|
||||
if (This->hEvent) SetEvent(This->hEvent);
|
||||
if (This->base.hEvent) SetEvent(This->base.hEvent);
|
||||
|
||||
LeaveCriticalSection(&(This->crit));
|
||||
|
||||
|
@ -911,22 +910,6 @@ static HRESULT WINAPI SysMouseAImpl_GetProperty(LPDIRECTINPUTDEVICE8A iface,
|
|||
return DI_OK;
|
||||
}
|
||||
|
||||
|
||||
|
||||
/******************************************************************************
|
||||
* SetEventNotification : specifies event to be sent on state change
|
||||
*/
|
||||
static HRESULT WINAPI SysMouseAImpl_SetEventNotification(LPDIRECTINPUTDEVICE8A iface,
|
||||
HANDLE hnd) {
|
||||
SysMouseImpl *This = (SysMouseImpl *)iface;
|
||||
|
||||
TRACE("(this=%p,%p)\n",This,hnd);
|
||||
|
||||
This->hEvent = hnd;
|
||||
|
||||
return DI_OK;
|
||||
}
|
||||
|
||||
/******************************************************************************
|
||||
* GetCapabilities : get the device capablitites
|
||||
*/
|
||||
|
@ -1107,7 +1090,7 @@ static const IDirectInputDevice8AVtbl SysMouseAvt =
|
|||
SysMouseAImpl_GetDeviceState,
|
||||
SysMouseAImpl_GetDeviceData,
|
||||
SysMouseAImpl_SetDataFormat,
|
||||
SysMouseAImpl_SetEventNotification,
|
||||
IDirectInputDevice2AImpl_SetEventNotification,
|
||||
SysMouseAImpl_SetCooperativeLevel,
|
||||
IDirectInputDevice2AImpl_GetObjectInfo,
|
||||
SysMouseAImpl_GetDeviceInfo,
|
||||
|
@ -1149,7 +1132,7 @@ static const IDirectInputDevice8WVtbl SysMouseWvt =
|
|||
XCAST(GetDeviceState)SysMouseAImpl_GetDeviceState,
|
||||
XCAST(GetDeviceData)SysMouseAImpl_GetDeviceData,
|
||||
XCAST(SetDataFormat)SysMouseAImpl_SetDataFormat,
|
||||
XCAST(SetEventNotification)SysMouseAImpl_SetEventNotification,
|
||||
XCAST(SetEventNotification)IDirectInputDevice2AImpl_SetEventNotification,
|
||||
XCAST(SetCooperativeLevel)SysMouseAImpl_SetCooperativeLevel,
|
||||
IDirectInputDevice2WImpl_GetObjectInfo,
|
||||
SysMouseWImpl_GetDeviceInfo,
|
||||
|
|
Loading…
Reference in New Issue