Commit graph

97 commits

Author SHA1 Message Date
the_fiddler 7bcbfc7072 Added conditional compilation and the necessary classes to compile OpenTK without referencing System.Drawing.dll. To build without System.Drawing, add "MINIMAL" to the conditional compilation symbols. Note that this is an experimental feature that will result in a source- and binary-incompatible dll. 2011-12-08 00:03:14 +00:00
the_fiddler 2412757397 Added documentation for IsConnected and added (disabled) IsLedOn/IsLedOff methods. 2010-12-03 12:40:10 +00:00
the_fiddler 6470f1da3a Disabled GetDeviceName until the correct cross-platform API can be determined. 2010-12-03 12:39:42 +00:00
the_fiddler 76e1d4064b * Input/Mouse.cs:
* Input/IMouseDriver2.cs:
* Platform/X11/X11Mouse.cs:
* Platform/X11/XI2Mouse.cs:
* Platform/X11/Functions.cs:
* Platform/Windows/WMInput.cs:
* Platform/X11/X11GLNative.cs:
* Platform/Windows/WinRawMouse.cs: Added ability to set the position
  of the mouse cursor.
[X11] Avoid grabbing the pointer, as this causes unexpected
  side-effects (XInput2 stops working, debugging becomes difficult).
  We now use XWarpPointer and try to discard the spurious MouseMove
  events it generates.
[X11] Make cursor visible when window loses focus, to make debugging
  easier. Restore previous state when it regains focus.
2010-11-23 17:17:13 +00:00
the_fiddler 6a35048a04 Trivial cosmetic fix. 2010-11-08 21:46:55 +00:00
the_fiddler 4a8cb59028 Implemented KeyboardState.IsConnected property.
Implemented WinRawKeyboard.RefreshDevices().
General code clean-up and beautification.
2010-10-29 11:46:57 +00:00
the_fiddler 72a714126b Added missing files to SVN. 2010-10-29 11:46:09 +00:00
the_fiddler 93130dfbd8 Decoupled new driver API from old public interface.
WinRawMouse can now detect mouse disconnection/connection events.
2010-10-29 11:27:40 +00:00
the_fiddler 415755a257 Modified GetState() to return the combined state for all mouse/keyboard devices. 2010-10-28 11:10:57 +00:00
the_fiddler 5fd0340bb9 Added argument validation for GetState(index) and serializes access to GetState() implementation. Clarified GetState() documentation to explain that it returns combined device state. 2010-10-28 11:10:19 +00:00
the_fiddler 58ba39acce Fixed malformed documentation comments. 2010-10-28 09:00:53 +00:00
the_fiddler 20ecd2232d Implemented equality operators. 2010-10-28 08:41:48 +00:00
the_fiddler 821a8e1117 Always validate parameters to ReadBit/EnableBit/DisableBit before using them. 2010-10-28 08:14:28 +00:00
the_fiddler 3c2c07361a Implemented raw keyboard input for Windows. Improved the interface for receiving input. Moved raw input window to its own thread. 2010-10-22 14:57:06 +00:00
the_fiddler b63db9329d Removed fixed expression that caused compilation error on VS2010 (but not Mono 2.6.7). 2010-10-22 08:16:37 +00:00
the_fiddler eeefbd1a9c * Input/Mouse.cs:
* Platform/X11/X11Mouse.cs:
* Platform/X11/XI2Mouse.cs: Added internal list of mouse devices in
  preparation for multi-mouse support.
2010-10-21 14:53:10 +00:00
the_fiddler 80ee257777 * OpenTK.csproj:
* Input/MouseState.cs:
* Platform/X11/Structs.cs:
* Platform/X11/XI2Mouse.cs:
* Platform/X11/Functions.cs:
* Platform/X11/X11Factory.cs: Added XInput2 driver for mice.
  Multi-mouse support pending.

* Platform/X11/X11Mouse.cs: Log the driver type for debugging
  purposes.
2010-10-21 12:32:00 +00:00
the_fiddler 1a8f589f5c * OpenTK.csproj:
* Input/MouseState.cs:
* Input/ButtonState.cs:
* Platform/X11/X11Mouse.cs:
* Platform/X11/X11Factory.cs: Added initial implementation of
  OpenTK.Input.Mouse for X11.
2010-10-21 07:56:37 +00:00
the_fiddler 362a853664 * Input/MouseState.cs: Implemented MouseState structure. 2010-10-20 15:14:38 +00:00
the_fiddler ca30b85bad * Input/KeyboardState.cs: Fixed the amount of storage for keyboard
keys (the code would allocate one less int than necessary when
  "number of keys % 32" falls between 1 and 15).
Fixed the implementation of the Equals method to compare the two
  instances (instead of comparing this instance against itself).
2010-10-20 15:14:26 +00:00
the_fiddler 85c37f0600 * Source/OpenTK/Input/Mouse.cs:
* Source/OpenTK/Platform/Factory.cs:
* Source/OpenTK/Input/InputDriver.cs:
* Source/OpenTK/Input/IMouseDriver.cs:
* Source/OpenTK/Platform/X11/X11Input.cs:
* Source/OpenTK/Platform/X11/X11Factory.cs:
* Source/OpenTK/Platform/Windows/WMInput.cs:
* Source/OpenTK/Platform/IPlatformFactory.cs:
* Source/OpenTK/Platform/MacOS/CarbonInput.cs:
* Source/OpenTK/Platform/Windows/WinFactory.cs:
* Source/OpenTK/Platform/MacOS/MacOSFactory.cs:
* Source/OpenTK/Platform/Windows/WinGLNative.cs:
* Source/OpenTK/Platform/Windows/WinRawMouse.cs:
* Source/OpenTK/Platform/Windows/WinRawInput.cs: Added new MouseDriver
  interface and added stub internal implementations.
2010-10-20 14:58:38 +00:00
the_fiddler 7e3182b1fc * Source/OpenTK/OpenTK.csproj:
* Source/OpenTK/Input/Keyboard.cs:
* Source/OpenTK/Input/InputDriver.cs:
* Source/OpenTK/Input/KeyboardState.cs:
* Source/OpenTK/Input/IKeyboardDriver.cs:
* Source/OpenTK/Platform/X11/X11Input.cs:
* Source/OpenTK/Platform/X11/Functions.cs:
* Source/OpenTK/Platform/X11/X11Factory.cs:
* Source/OpenTK/Platform/Windows/WMInput.cs:
* Source/OpenTK/Platform/X11/X11Keyboard.cs:
* Source/OpenTK/Platform/MacOS/CarbonInput.cs:
* Source/OpenTK/Platform/Windows/WinGLNative.cs:
* Source/OpenTK/Platform/Windows/WinRawInput.cs:
* Source/OpenTK/Platform/Windows/WinRawKeyboard.cs: Added initial
  OpenTK.Input.Keyboard implementation for X11.
2010-10-20 14:33:23 +00:00
the_fiddler 53b84d18d4 Backported bugfixes from 1.0 branch. 2010-02-03 19:04:42 +00:00
the_fiddler 6471772777 Added support for fractional mouse wheel values. Fixes issue [#1279]: "Mouse wheel does not seem to work". 2009-11-16 12:15:35 +00:00
the_fiddler 019f54a851 Document that these APIs are incomplete. 2009-11-01 12:40:25 +00:00
the_fiddler 9de6041fa2 Modified MouseDevice events to follow the class library design guidelines.
Changed Mouse[Move|Button|Wheel]EventArgs into classes that inherit from EventsArgs, in order to follow the event design guidelines.
2009-09-04 23:13:24 +00:00
the_fiddler a2606049df Suppressed 'unused code' warnings. 2009-09-04 22:16:02 +00:00
the_fiddler d2f28a6e97 Added KeyboardKeyEventArgs.
Modified KeyboardDevice.KeyDown/KeyUp to follow the class library design guidelines.
Modified samples to use the new KeyDown/KeyUp event signatures.
2009-09-04 22:10:50 +00:00
the_fiddler 685b646efa Fixed a large number of documentation warnings. 2009-09-04 21:44:39 +00:00
the_fiddler 6b03992812 Added missing XML documentation and fixed invalid XML doc references.
Removed deprecated methods from IGraphicsContext.
2009-09-04 21:25:29 +00:00
the_fiddler 29cf2bf7cf * Keyboard.cs: Disabled fixed buffer due to gmcs 2.0.1 compiler bug
(bogus CS0214) warning.
Added license information.

* Mouse.cs:
* MouseState.cs:
* MouseDevice.cs:
* MouseButton.cs:
* KeyboardState.cs:
* KeyboardDevice.cs: Added license information.

* Key.cs: Added missing LastKey enum.
2009-09-03 21:15:12 +00:00
the_fiddler 1ba91af399 * GamePad.cs:
* GamePadState.cs: Added initial implementations.
* Keyboard.cs:
* KeyboardState.cs: Added a number of public members, experimentally.
2009-09-03 20:53:48 +00:00
the_fiddler d6c4c801e1 Fixed line endings and set svn:eol-style to native and svn:mime-type to text/plain for .cs files. 2009-09-03 19:01:11 +00:00
the_fiddler 0445ba2e00 Added GetState() method for primary keyboard. 2009-08-04 08:47:53 +00:00
the_fiddler 305a6a2749 Marked KeyDownEvent and KeyUpEvent as obsolete. 2009-06-28 10:33:03 +00:00
the_fiddler 514d0c2a05 Removed Key.None and Key.MaxKeys.
Added XML documentation to all OpenTK.Input.Key tokens.
Added typical Key names found in Windows.Forms and XNA: LControl, RControl, ...
2009-06-28 10:27:17 +00:00
the_fiddler ea387cd9b0 Added missing XML documentation. 2009-06-28 10:02:25 +00:00
the_fiddler e2ddfe8289 Added Mouse and Keyboard stubs for the new input API. 2009-06-28 10:01:54 +00:00
the_fiddler cb661c2dca Merged gw-next2 branch to trunk. 2009-06-02 15:49:39 +00:00
the_fiddler c189bf7e75 Fixed bug #776 (Incorrect XDelta and YDelta values...) 2009-04-04 23:05:53 +00:00
the_fiddler 9265747541 Fixed all known build warnings, apart from missing xml comments. 2009-03-25 21:53:12 +00:00
the_fiddler fc0ca5631f Relaxed checks to allow input devices that do not contain any axes and/or buttons (e.g. tablets or keyboard extensions). 2009-03-08 20:03:33 +00:00
the_fiddler ed754a4384 Removed unused (duplicate) details field. 2009-03-07 10:46:49 +00:00
the_fiddler 3360df3af9 Added support for POV hats with WinMM.
Reversed vertical axes, so that down is -1 and up is +1.
2009-03-01 08:44:39 +00:00
the_fiddler f6f196c90b Added JoystickAxis and JoystickButton enumerations, as well as their respective collections.
Implemented necessary Poll() functions.
2009-03-01 01:17:24 +00:00
the_fiddler 0dca74a232 Implemented JoystickDevice events.
Added GameWindow interface to JoystickDevices.
Added HID support to Tests/InputLogger.
2009-03-01 00:28:31 +00:00
the_fiddler 9b43e11ff5 Initial joystick support (not public yet). 2009-02-28 23:11:27 +00:00
the_fiddler a22019d890 Normalize line endings and set the mime-type=text/plain and eol-style=native properties on all files. 2009-02-22 10:43:35 +00:00
the_fiddler e44c93bae5 Applied ALyman's patch for MouseDevice.Move (http://www.opentk.com/node/652) with modifications. 2009-02-20 18:02:34 +00:00
the_fiddler c885f61590 Commented out to remove warnings until actual implementation. 2008-11-03 22:15:56 +00:00