- DInput WideChar classes support. This time all dinput versions have
widechar classes.
- fix a stupid bug in callback handling caught by Lionel.
- add some forgotten IID on class factory (better if we want to active
the code)
- many cleanups on COM Macros (don't need A and W variants as they are
the same)
diff --git a/dlls/dinput/dinput_private.h b/dlls/dinput/dinput_private.h
index 918714b..55201c7 100644
--- a/dlls/dinput/dinput_private.h
+++ b/dlls/dinput/dinput_private.h
@@ -23,8 +23,8 @@
#include "dinput.h"
/* Implementation specification */
-typedef struct IDirectInputAImpl IDirectInputAImpl;
-struct IDirectInputAImpl
+typedef struct IDirectInputImpl IDirectInputImpl;
+struct IDirectInputImpl
{
LPVOID lpVtbl;
DWORD ref;
@@ -38,11 +38,13 @@
/* Function called by all devices that Wine supports */
typedef struct dinput_device {
INT pref;
- BOOL (*enum_device)(DWORD dwDevType, DWORD dwFlags, LPDIDEVICEINSTANCEA lpddi, int version);
- HRESULT (*create_device)(IDirectInputAImpl *dinput, REFGUID rguid, REFIID riid, LPDIRECTINPUTDEVICEA* pdev);
+ BOOL (*enum_deviceA)(DWORD dwDevType, DWORD dwFlags, LPDIDEVICEINSTANCEA lpddi, int version);
+ BOOL (*enum_deviceW)(DWORD dwDevType, DWORD dwFlags, LPDIDEVICEINSTANCEW lpddi, int version);
+ HRESULT (*create_deviceA)(IDirectInputImpl *dinput, REFGUID rguid, REFIID riid, LPDIRECTINPUTDEVICEA* pdev);
+ HRESULT (*create_deviceW)(IDirectInputImpl *dinput, REFGUID rguid, REFIID riid, LPDIRECTINPUTDEVICEW* pdev);
} dinput_device;
-extern void dinput_register_device(dinput_device *device) ;
+extern void dinput_register_device(dinput_device *device);
extern HINSTANCE DINPUT_instance;