Stefanos A
4a13415fc6
Fixed x/y axis mixup.
2013-12-24 17:18:01 +01:00
Stefanos A
1ba5fd4380
Cleaned up using directives
2013-12-24 17:18:01 +01:00
Stefanos A
76a35c0b91
Added missing newline
2013-12-24 17:18:01 +01:00
Stefanos A
91d248ad29
Implemented GamePadThumbSticks
2013-12-24 17:18:01 +01:00
Stefanos A
0c10f29bd8
More compact string representation
2013-12-24 17:18:00 +01:00
Stefanos A
1acf8a807b
Implemented IEquatable<> interface
2013-12-24 17:18:00 +01:00
thefiddler
2bf024a912
Implemented new GamePad interface (WIP)
2013-12-24 17:18:00 +01:00
thefiddler
ecd04a3cad
Implemented GamePadButtons
2013-12-24 17:18:00 +01:00
thefiddler
484af18673
Updated internal IGamePadDriver interface
2013-12-24 17:18:00 +01:00
Stefanos A
5a2fc1e411
Added missing doc comment
2013-11-08 15:33:41 +01:00
thefiddler
8dcb8601a2
Normalized line endings
...
Hopefully this is the first and last time we have to do this.
2013-10-11 01:58:54 +02:00
Stefanos A.
4dceea9e21
Added common key aliases
2013-10-03 20:52:02 +02:00
Stefanos A
a85cecdc59
Improved resource disposal
...
Added IDisposable interface to all classes holding native data that must be freed. OpenTK.Toolkit.Init() now returns an IDisposable instance that can be used to cleanup all native data held by OpenTK. This is useful when re-initializing OpenTK (possibly in a new AppDomain), as is the case in the Example browser.
2013-10-01 22:01:27 +02:00
Stefanos A.
fc8b3810e9
Fixed documentation comment
2013-09-30 13:48:12 +02:00
Andy Korth
f38e717601
Fix for github issue 13, terrible crash on Keyboard GetState
2013-06-04 16:02:37 -05:00
Andy Korth
0f64af130a
Committing artfunkel patch for scan codes
2013-01-24 15:48:01 -06:00
Robert Rouhani
bf1401e115
Fixed the issues caused by merging in our changes as patches from the old repo.
2013-01-16 18:08:03 -08:00
Robert Rouhani
819c02c445
More hacking for gamepads
2013-01-16 17:59:52 -08:00
Robert Rouhani
b5591e1eee
Started implementing GamePad
2013-01-16 17:56:31 -08:00
the_fiddler
4fde3c4dab
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
96cef32bfc
Added documentation for IsConnected and added (disabled) IsLedOn/IsLedOff methods.
2010-12-03 12:40:10 +00:00
the_fiddler
14d96ccfc9
Disabled GetDeviceName until the correct cross-platform API can be determined.
2010-12-03 12:39:42 +00:00
the_fiddler
07cbb9dd8b
* 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
9cd32011bf
Trivial cosmetic fix.
2010-11-08 21:46:55 +00:00
the_fiddler
2c5e7220c3
Implemented KeyboardState.IsConnected property.
...
Implemented WinRawKeyboard.RefreshDevices().
General code clean-up and beautification.
2010-10-29 11:46:57 +00:00
the_fiddler
eba9fef913
Added missing files to SVN.
2010-10-29 11:46:09 +00:00
the_fiddler
2934c9d004
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
0044e4442d
Modified GetState() to return the combined state for all mouse/keyboard devices.
2010-10-28 11:10:57 +00:00
the_fiddler
a7427707ef
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
330053de1e
Fixed malformed documentation comments.
2010-10-28 09:00:53 +00:00
the_fiddler
cd074040e3
Implemented equality operators.
2010-10-28 08:41:48 +00:00
the_fiddler
1657bcad91
Always validate parameters to ReadBit/EnableBit/DisableBit before using them.
2010-10-28 08:14:28 +00:00
the_fiddler
2430f82ff7
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
c7d8fb882a
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
d49b315ced
* 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
671457b60a
* 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
7947cad6f8
* 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
07671251c5
* Input/MouseState.cs: Implemented MouseState structure.
2010-10-20 15:14:38 +00:00
the_fiddler
239ba3ff2b
* 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
86588ea60c
* 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
e801660ff7
* 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
da7e4c7252
Backported bugfixes from 1.0 branch.
2010-02-03 19:04:42 +00:00
the_fiddler
f12cbf1cd5
Synced trunk with 1.0 branch.
2009-11-16 18:45:41 +00:00
the_fiddler
4914574bd4
Document that these APIs are incomplete.
2009-11-01 12:40:25 +00:00
the_fiddler
997f57c1f7
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
cd9ea45427
Suppressed 'unused code' warnings.
2009-09-04 22:16:02 +00:00
the_fiddler
6fdf37f99f
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
33db1f6b74
Fixed a large number of documentation warnings.
2009-09-04 21:44:39 +00:00
the_fiddler
abf3787e8e
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
f8467ab767
* 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
0fdcb94ca9
* 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
f6da09177e
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
ec24c5022f
Added GetState() method for primary keyboard.
2009-08-04 08:47:53 +00:00
the_fiddler
2bd89e87df
Marked KeyDownEvent and KeyUpEvent as obsolete.
2009-06-28 10:33:03 +00:00
the_fiddler
09a24a17d7
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
70f68a302f
Added missing XML documentation.
2009-06-28 10:02:25 +00:00
the_fiddler
4e28071a26
Added Mouse and Keyboard stubs for the new input API.
2009-06-28 10:01:54 +00:00
the_fiddler
7df9a448d6
Merged gw-next2 branch to trunk.
2009-06-02 15:49:39 +00:00
the_fiddler
6131379091
Fixed bug #776 (Incorrect XDelta and YDelta values...)
2009-04-04 23:05:53 +00:00
the_fiddler
d4aef922bc
Fixed all known build warnings, apart from missing xml comments.
2009-03-25 21:53:12 +00:00
the_fiddler
ca1e416a53
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
9981b92e5a
Removed unused (duplicate) details field.
2009-03-07 10:46:49 +00:00
the_fiddler
51e2d93e38
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
44e4971a38
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
2eeb1a7bd9
Implemented JoystickDevice events.
...
Added GameWindow interface to JoystickDevices.
Added HID support to Tests/InputLogger.
2009-03-01 00:28:31 +00:00
the_fiddler
6118f4fdec
Initial joystick support (not public yet).
2009-02-28 23:11:27 +00:00
the_fiddler
69b17fa43f
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
085ce196f4
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
f4700cb676
Commented out to remove warnings until actual implementation.
2008-11-03 22:15:56 +00:00
the_fiddler
80bde7f7ac
Preliminary implementation of JoystickDevice.
2008-06-22 16:21:52 +00:00
the_fiddler
817ff38630
Fixed a comment typo.
2008-06-21 20:44:53 +00:00
the_fiddler
3c6fc58750
Temporarily remove MouseDevice.Move event, due to issues with deltas when the mouse stops moving.
2008-05-04 18:08:03 +00:00
the_fiddler
1510c282de
Fixed a bug where WheelDelta reported the same value as Wheel.
2008-05-04 17:47:09 +00:00
the_fiddler
f65fd4b221
Fixed mouse delta handling.
2008-05-04 17:42:19 +00:00
the_fiddler
027c6eb542
Fixed line endings.
2008-05-04 17:18:54 +00:00
the_fiddler
8f17ac3473
Fixed erroneous KeyUp events when the window loses the focus.
2008-04-20 17:45:46 +00:00
the_fiddler
26f1ac30d0
Added support for higher mouse buttons under X11.
...
Use XCheckWindowEvent instead of XNextEvent.
2008-03-24 18:18:26 +00:00
the_fiddler
e49b1beb7b
Added internal ClearKeys method. Made the constructor internal. Added docs to a few functions.
2008-03-10 08:49:48 +00:00
the_fiddler
9abcb5d92e
Updated to use new IWindowInfo interface.
...
Updated to use GraphicsFormat instead of DisplayMode.
Updated to use ColorDepth instead of ColorMode.
Improved GameWindow Exit handling, and handling of failed context creation.
Improved WinGLContext creation code, to allow for FSAA support in the future.
Fixed several shutdown bugs in WinGLContext and GraphicsContext.
Context creation no longer relies on IGLContextCreationHack.
X11GLContext is not working at the moment.
2008-02-28 13:57:07 +00:00
the_fiddler
3361692f62
Moved OpenTK.InputDriver to OpenTK.Input.InputDriver.
2008-01-31 14:45:00 +00:00
the_fiddler
878af03601
Documentation updates. Getting rid of all remaining warnings in debug build.
2008-01-20 19:29:42 +00:00
the_fiddler
4d7c6b2a31
Updated documentation.
2008-01-06 10:38:44 +00:00
the_fiddler
03feb5b512
Use System.Drawing.Point to hold mouse coords internally. Add property to get mouse position as a System.Drawing.Point.
2008-01-06 02:22:16 +00:00
the_fiddler
a70754da07
Clarified KeyboardDevice.KeyRepeat documentation.
2007-12-09 19:54:08 +00:00
the_fiddler
f769caa4f1
Updates to delta handling. Now uses x - last_x instead of storing a delta directly.
2007-09-26 15:48:11 +00:00
the_fiddler
e43b3e9fad
Line endings.
2007-09-26 15:47:13 +00:00
the_fiddler
7f721e3d3f
Renamed Keyboard/Mouse to Keyboard-/MouseDevice. Avoids name clashes.
2007-09-26 11:51:49 +00:00
the_fiddler
c5444179ba
Renamed Keyboard and Mouse to KeyboardDevice and MouseDevice respectively, to avoid name classes.
2007-09-26 11:30:18 +00:00
the_fiddler
8efe9afe2e
Delete IKeyboard.cs and IMouse.cs interfaces. Not needed, as the MouseDevice and KeyboardDevice classes are sealed.
2007-09-26 11:29:18 +00:00
the_fiddler
61102b359d
Work on X11 mouse driver.
2007-09-24 20:10:14 +00:00
the_fiddler
e277e3b272
Windows raw input now works.
2007-09-22 13:13:17 +00:00
the_fiddler
52a6690150
Removed Move event from IMouse (too inefficient). Polled input only.
...
S04 now polls for the mouse position.
Keyboard now handles events generated from code and not from physical devices.
2007-09-21 22:49:42 +00:00
the_fiddler
21d6030a6a
Corrected Windows.API.RawMouse class. Mouse input now works!
2007-09-21 22:39:16 +00:00
the_fiddler
980e7138d2
Work on MouseDriver. Windows raw driver works.
2007-09-21 20:34:07 +00:00
the_fiddler
66b046a58c
Added KeyRepeat to IKeyboard.
...
Multiple keyboards correctly reported under Windows (Raw input driver).
Corrected some key maps in X11 and Windows Raw keyboards.
2007-09-21 20:03:53 +00:00
the_fiddler
3bf2d03def
Beautified platform selection in GLControl.cs
...
Added missing ')' in Keyboard.ToString() function.
2007-09-02 00:19:01 +00:00
the_fiddler
6ae06d82bd
Added IDisposable to all input drivers.
...
Updated Cube.cs to use System.Drawing.Colors.
Improved DefRawInputProc in windows API.cs
2007-08-22 00:30:16 +00:00
the_fiddler
33527aa2c9
Added KeyDown and KeyUp events to IKeyboard and Keyboard.
...
Improved input logger test to hook on the aforementioned events.
Removed Debug printing of keys in OpenTK.Input.Keyboard.
Beautified X11Keyboard.cs
Added experimental code to handle X11 keyboard events (not used yet).
2007-08-20 13:45:04 +00:00
the_fiddler
7a2da17f5c
Updated Build.exe to correctly generate sharpdev and sharpdev2 projects.
...
Removed some unused variables.
Added licensing information.
2007-08-10 09:27:13 +00:00
the_fiddler
f30e7f6df8
Major updates to shutdown sequence (should correct bug where GameWindow hangs on exit). Enhanced the IGameWindow interface by adding the Keyboard and IsExiting properties.
...
Fully implemented keyboard on X11. Renamed some OpenTK keys.
2007-08-06 09:22:04 +00:00
the_fiddler
94e738bb9a
Enahnaced X11 keymap. Renamed some OpenTK keys.
2007-08-06 00:08:51 +00:00
the_fiddler
6ccbfb266e
Hooked up Keyboard event handling in X11Input
...
Added ProcessEvents() function to IInputDriver. Does nothing on WinRawInput, but is needed by X11Input
2007-08-05 18:26:14 +00:00
the_fiddler
b526c077d5
Added one default keyboard to X11Keyboard keyboard list.
2007-08-05 16:36:33 +00:00
the_fiddler
40add1aaef
Renamed OpenTK.Input.Keys to OpenTK.Input.Key.
...
Added keymap to X11/X11Keyboard.cs (not complete).
Added GetKeyboardMapping(), DisplayFlags() and XKey enum to OpenTK.Platform.X11.API.cs
2007-08-05 16:04:39 +00:00
the_fiddler
dce223c738
Added IMouse.cs and Mouse.cs, fixing the compilation on mono.
2007-08-05 10:17:20 +00:00
the_fiddler
4c725a098b
Started working around a subtle Mono error regarding types and properties.
2007-08-05 10:07:59 +00:00
the_fiddler
47a3a3f62c
Started implementing X11Input.cs, X11Keyboard.cs and X11Mouse.cs drivers. Removed some warnings from X11Api.cs
2007-08-05 09:03:22 +00:00
the_fiddler
c855420287
Merged with gl3 branch. Resolved conflicts. Added IMouseDriver.cs
2007-08-04 23:39:56 +00:00
the_fiddler
6812739418
Renamed InputDevices.cs to InputDriver.cs.
...
Added IMouseDriver.cs and WinRawMouse.
2007-08-04 13:28:16 +00:00
the_fiddler
59b503b3c3
Bumped version numbers.
...
WinRawInput now correctly subclasses WinGLNative or WinGLControl. WinRawKeyboard now correctly responds to events.
Removed T10_GLSL_Cube.cs which was erroneously moved outside the Examples/Tutorial directory.
Updated INativeWindow, IGameWindow and IGLControl interfaces.
Updated examples to use the new GameWindow interface.
Added documentation to GameWindow.
Improved GameWindow error handling. More defensive programming.
2007-08-04 12:09:58 +00:00
the_fiddler
2f64fb372e
Major updates to keyboard input. The infrastructure (drivers etc) is ready. Windows raw input works (now implementing multiple devices). The examples need updating for the new input methods.
...
Updated the ExampleLauncher to not process exceptions. Updated the IExample interface to contain the Launch method. Updated examples and the ExampleLauncher according to the IExample interface.
Synced with gl3 branch.
2007-08-03 00:14:31 +00:00
the_fiddler
8f90c9d50f
Added Windows.API.VirtualKeys enum.
...
Started VirtualKeus --> OpenTK.Input.Keys keymap .
Removed Keyboard.Key set property.
2007-07-31 21:50:29 +00:00
the_fiddler
43a37e3ac2
Fixed Raw Input keyboard registration under windows.
...
Fixed marshalling in GetRawInputData.
2007-07-27 01:37:12 +00:00
the_fiddler
8f159aef72
IKeyboard is now public. Updated the GameWindow to not create the Keyboard itself (it is done further up).
...
Added all Raw Input structs, functions and enums in Windows.API.
WinRawKeyboard implements IKeyboard using Raw Input on Windows.
2007-07-27 01:20:55 +00:00
the_fiddler
7f9fe25e3a
IKeyboard interface. Updated Keyboard.cs and the examples to use the new interface.
...
Major additions to Windows.API: Implemented all functions and structures for Raw Input.
2007-07-26 22:56:55 +00:00
the_fiddler
b4f122ad57
'Merged' windowing branch. Ugly, but it seems to have worked.
2007-07-23 00:15:18 +00:00