Commit Graph

133 Commits

Author SHA1 Message Date
Vitaliy Margolen 85e2aa1d8a dinput: Add more traces. Prevent some traces from dereferencing NULL pointer. 2008-07-07 12:11:24 +02:00
Vitaliy Margolen 382ed33b7a dinput: Default value for unassigned POVs should be -1. 2008-05-08 18:14:18 +02:00
Francois Gouget 42a61d7ed7 Assorted spelling fixes. 2008-05-06 16:10:20 +02:00
Marcus Meissner 494dd5f1fa dinput: Some debug output for BuildActionMap. 2008-02-18 12:41:37 +01:00
Marcus Meissner 9ce27fc7c1 dinput: Add a dumper for LPDIACTIONFORMAT.
Also make the DINPUT_instance static.
2008-02-16 15:10:47 +01:00
Francois Gouget 96d6a25fa1 dinput: Make _dump_cooperativelevel_DI() and _dump_EnumDevices_dwFlags() more self-contained. 2007-12-18 12:32:56 +01:00
Andrew Riedi e0740a7a60 dinput: DPRINTF -> TRACE. 2007-12-12 13:48:57 +01:00
Andrew Talbot 39b99d47ad dinput: Remove unneeded casts. 2007-12-07 17:36:01 +01:00
Vitaliy Margolen 355b39cd71 dinput: Fix typo. 2007-10-01 12:34:12 +02:00
Vitaliy Margolen 8ff85c08b6 dinput: Add a helper function to open configuration registry keys. 2007-09-25 11:55:23 +02:00
Vitaliy Margolen 319097f563 dinput: Move get_config_key to a common place. 2007-09-25 11:55:19 +02:00
Vitaliy Margolen 9e36848303 dinput: Fix mapping of axes ids to property ids. 2007-08-06 14:01:54 +02:00
Vitaliy Margolen 8f28d4369e dinput: Rename set_dinput_hook and call it from the base class.
Since keyboard's acquire and unacquire don't do anything special just call
the base class.
2007-07-09 14:31:38 +02:00
Vitaliy Margolen 448dde9be8 dinput: Keep the list of all the dinput devices created for each IDIrectInput object. 2007-07-09 14:25:33 +02:00
Vitaliy Margolen fb1082ae73 dinput: Combine all Release functionality into base class. 2007-06-28 12:16:11 +02:00
Vitaliy Margolen f83b53c160 dinput: Acquire device only if specified window has focus in foreground coop level. 2007-06-04 13:10:10 +02:00
Andrew Talbot 5e1ca16052 dinput: Constify some variables. 2007-04-24 11:53:46 +02:00
Vitaliy Margolen cb0e61c356 dinput: Set the event regardless of the queue state. 2007-04-09 12:19:01 +02:00
Marcus Meissner 1fc5160ce8 dinput: Fix dereference pointer after NULL check (Coverity). 2007-02-05 14:02:23 +01:00
Vitaliy Margolen a1dd4cb76a dinput: Don't copy no longer used user data format object array. 2007-01-11 11:49:01 +01:00
Vitaliy Margolen da78a7af5e dinput: Use internal data format for object lookups. 2007-01-11 11:48:55 +01:00
Vitaliy Margolen cd306046bb dinput: Pass complete DataFormat structure to find_property. 2007-01-10 12:23:28 +01:00
Vitaliy Margolen 4b33fd691a dinput: Set event from queue_event, simplifying code a bit. 2007-01-08 21:13:40 +01:00
Vitaliy Margolen 005bb87342 dinput: Fix possible NULL deference. 2007-01-06 11:40:46 +01:00
Vitaliy Margolen 30e2fbcb6e dinput: Fix mouse to use proper offset when queuing new events. Add handling of X-buttons.
We should use instance IDs instead of sequential numbers to get correct offset.
2007-01-06 11:40:46 +01:00
Vitaliy Margolen 504798ce9f dinput: Change EnumObjects to use GetObjectInfo.
Also small debug trace correction to make it more readable.
2007-01-05 18:23:46 +01:00
Vitaliy Margolen 0edc6e26a7 dinput: Implement GetObjectInfo[A|W] in base device class. 2007-01-04 09:57:05 +01:00
Vitaliy Margolen 263d5ce171 dinput: Move keyboard to using new EnumObjects from base class. 2006-12-29 20:54:38 +01:00
Vitaliy Margolen 42feef0c7b dinput: Implement EnumOjects[A|W] in the base device class. 2006-12-28 12:23:02 +01:00
Christoph Frick e4a6562937 dinput: Drop magic int. 2006-12-20 17:41:09 +01:00
Vitaliy Margolen 7b07e4b563 dinput: Add handling of AXISMODE property to base device object. 2006-12-18 12:00:50 +01:00
Vitaliy Margolen 6246fa62f9 dinput: Remove redundant parameter. 2006-12-12 20:24:10 +01:00
Vitaliy Margolen 3446caab56 dinput: Add user data format into base class. Implement SetDataFormat. 2006-12-12 20:22:53 +01:00
Vitaliy Margolen cd050bf25c dinput: Move transform and offsets structures into base device class. 2006-12-12 20:22:44 +01:00
Vitaliy Margolen 68176eeda1 dinput: Move few helper functions and standardize them. 2006-12-11 16:17:46 +01:00
Vitaliy Margolen 267cbf8289 dinput: Move internal function calculate_ids to where it's really used. 2006-12-11 16:17:40 +01:00
Vitaliy Margolen 5b520ff6df dinput: Remove incorrect assumption about format. 2006-12-11 13:50:32 +01:00
Vitaliy Margolen 1056c881e1 dinput: Fix processing of custom format. 2006-12-11 12:17:26 +01:00
Vitaliy Margolen ce0c3cdae7 dinput: Implement [Get|Set]Property and GetDeviceData in base Device object.
Also add queue_event to replace big macro GEN_EVENT.
2006-12-05 11:32:34 +01:00
Vitaliy Margolen 0da0486cc3 dinput: Move critical section to the base device class. 2006-12-04 12:33:47 +01:00
Vitaliy Margolen f7eacd64d1 dinput: Move acquired flag to the base device class. Add tests. 2006-12-04 12:33:35 +01:00
Vitaliy Margolen 1dae4c6832 dinput: Move SetCooperativeLevel into base class. 2006-10-17 12:36:13 +02:00
Vitaliy Margolen af34ef12ba dinput: Move SetEventNotification and associated event into base class. 2006-10-17 12:36:00 +02:00
Vitaliy Margolen 7123f3e80e dinput: Win64 printf format warning fixes. 2006-10-09 12:53:41 +02:00
Vitaliy Margolen 722a686d66 dinput: Move hook_thread from device to DirectInput. 2006-09-11 17:45:42 +02:00
Andrew Talbot 78cdd5460c dinput: Cast-qual warnings fix. 2006-09-10 10:16:47 +02:00
Vitaliy Margolen eb3028acc0 dinput: Add DISCL_NOWINKEY define. 2006-07-29 11:50:19 +02:00
Michael Stefaniuc 932a2a0d54 Fix swapped 2nd and 3rd argument passed to memset. 2006-07-14 12:38:36 +02:00
Alexandre Julliard 7ad5f9eca0 dinput: Don't use sizeof in traces to avoid printf format warnings. 2006-06-13 14:09:55 +02:00
Jonathan Ernst 360a3f9142 Update the address of the Free Software Foundation. 2006-05-23 14:11:13 +02:00
Vitaliy Margolen e66e34ef7b dinput: Create single thread for mouse and keyboard hook.
Put keyboard & mouse hook callbacks into separate thread.
Move few global variables into object. Delete no longer used crit section.
For hooks to work properly hook callback have to be in a thread
with message loop. Some games create separate threads just to handle
mouse and/or keyboard events that do not have message loop.
2006-03-21 11:27:49 +01:00
Lionel Ulmer 809dd5b044 Handle DInput8 interfaces in device QueryInterface. 2005-11-28 10:38:59 +01:00
Francois Gouget 0edbaf7e80 Remove spaces before '\n' in traces. 2005-11-10 12:14:56 +00:00
Alexandre Julliard f8ee161a1b Fixed some traces to use the right printf format and avoid typecasts. 2005-09-12 10:30:05 +00:00
Robert Reif 2d9e2a3300 Effect objects are not supported yet so don't crash when trying to
enumerate them.
2005-05-16 14:07:36 +00:00
Robert Reif 2095f66d44 Fix joystick crash when a button guid is specified in the data
format.
Add some parameter checking.
2005-05-10 13:17:03 +00:00
Lionel Ulmer fa8d7a0fe6 - more pretty print for the types flag
- more Windows-aligned check for object instances
2005-05-05 09:49:54 +00:00
Marcus Meissner accf3ee2e6 Fixed 3 memset()s which used the wrong size (too large). 2005-04-25 10:48:38 +00:00
Jakob Eriksson 9ed61de9a2 Get rid of HeapAlloc casts. 2005-03-24 21:01:35 +00:00
Carlos Lozano 1b73419ffc Fix regression in Fallout game. 2005-02-08 12:11:12 +00:00
Robert Reif 873e5bfe29 Use InterlockedIncrement/InterlockedDecrement for reference counting.
Fix bug in effect enumeration that crashed dxcapsviewer.
2004-09-17 18:10:41 +00:00
Alexandre Julliard 314b99c48f Removed some more uses of the non-standard ICOM_THIS macro. 2004-09-09 20:17:07 +00:00
Hans Leidekker fe442b21f7 Fix signed/unsigned comparison warnings. 2004-09-08 01:23:57 +00:00
Robert Reif 3c3a511e8d When actual offset doesn't match the specified offset, use the actual
offset.
2004-09-06 21:26:03 +00:00
Robert Reif 0b12efaa9e Added support for alternate data formats. 2004-09-02 20:09:54 +00:00
Robert Reif e2b882aced Added default data formats for c_dfDIJoystick and c_dfDIJoystick2.
Added object properties for more than one object.
Added error checks for acquired.
Default to using c_dfDIJoystick2 data format.
Try to use user supplied data formats (only works if same as one of
the defaults).
Code cleanup, error checking and tracing added.
Added support for up to 8 axis.
2004-08-31 18:51:23 +00:00
Lionel Ulmer 04d77f4dcc - some TRACEing improvements
- fix mouse Acquire which switched right and middle buttons
- reset the mouse cursor at its original location on Unacquiring the
  device
2004-06-02 00:36:54 +00:00
Daniel Marmier ee1eb63b31 Fixed warnings with gcc option "-Wwrite-strings". 2003-10-07 03:30:47 +00:00
Alexandre Julliard e37c6e18d0 Fixed header dependencies to be fully compatible with the Windows
headers (with help from Dimitrie O. Paun).
2003-09-05 23:08:26 +00:00
Raphael Junqueira c405019ee5 - 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)
2003-06-16 20:22:13 +00:00
Christian Costa 77c00c9555 Make dinput8 behaviour more correct for mouse and keyboard.
Fix small bug when keyboard buffer overflows.
Use DI_OK instead of 0 for returned values.
2003-06-13 18:55:41 +00:00
Paul Bain 6936db1103 Put IID_IDirectInputDevice2A back in
IDirectInputDevice2AImpl_QueryInterface.
2003-06-13 16:32:16 +00:00
Christian Costa 9d74dca27c Small fix in IDirectInputDevice2Impl_QueryInterface. 2003-04-29 22:47:04 +00:00
Lionel Ulmer d14ad4ff8a Implemented EnumObjects for the keyboard device. 2003-02-12 21:27:00 +00:00
Lionel Ulmer 7c552a4a3a Report an error if GetDeviceData is called on an Unacquired device. 2003-02-12 01:13:31 +00:00
Alexandre Julliard b34fb35b31 Fixed warnings caused by conversion to -DSTRICT. 2002-10-18 23:48:57 +00:00
Ove Kaaven d2d08f0c28 - support DirectInput 8 interfaces.
- implemented mouse wheel support.
2002-06-14 00:39:44 +00:00
Vincent Béron 9a62491660 Removed trailing whitespace. 2002-05-31 23:06:46 +00:00
Andreas Mohr 01c8ec3a9c Spelling/error messages fixes. 2002-04-02 19:47:30 +00:00
Alexandre Julliard 0799c1a780 Added LGPL standard comment, and copyright notices where necessary.
Global replacement of debugtools.h by wine/debug.h.
2002-03-09 23:29:33 +00:00
8ada79d158 Devices never need to be polled, so return DI_NOEFFECT in Poll. 2001-11-06 22:26:26 +00:00
James Juran f4d5fefb0a Add <string.h> to files that needed it. 2001-01-26 20:43:40 +00:00
Lionel Ulmer 6301e94e53 - reorganized DInput DLL
- added stubbing for DInput 7a
- 'fixed' the mouse problem in Fallout
2000-11-05 20:25:02 +00:00