Commit graph

113 commits

Author SHA1 Message Date
Stefanos A
97b0275aa4 [Win] Removed WinMM joystick driver 2014-09-11 12:51:47 +02:00
Stefanos A
178305e1c1 [Common] Added HID usage page definitions 2014-09-11 12:51:46 +02:00
Stefanos A
18c02db7b0 [Win] Initial implementation of WinRawJoystick 2014-09-11 12:51:46 +02:00
Stefanos A
5cfde8ff0f [Win] Added combined XInput+WinMM joystick driver
Joystick devices will be queried through XInput first, with a fallback
to WinMM in case they are not recognized by the newer API.
2014-09-11 12:51:45 +02:00
thefiddler
6ab1a9db87 Use "Preserve Newest" option on OpenTK.dll.config
OpenTK.dll.config was previously set to be always copied to the
output directory. This caused constant rebuilds in Visual Studio.

Setting this to "Preserve Newest" improves build times
significantly.
2014-07-21 14:32:08 +02:00
thefiddler
153522c0a4 [Linux] Implemented MouseCursor 2014-07-17 09:25:16 +02:00
thefiddler
67727d2e9b [Linux] Completed libinput keyboard driver implementation 2014-07-16 14:28:27 +02:00
thefiddler
c5abbe8030 [Linux] Implemented libinput keyboard input 2014-07-16 14:28:27 +02:00
thefiddler
9e73358dd7 [Linux] Implemented TTY and libinput keyboard drivers 2014-07-16 14:28:27 +02:00
thefiddler
97a539258b [Linux] Added stub TTY and libinput IKeyboardDriver2 2014-07-16 14:28:27 +02:00
thefiddler
753032b844 [KMS] Added DRM/GBM framebuffer implementation 2014-07-16 14:28:27 +02:00
thefiddler
6f6798de62 [KMS] Added new Linux KMS driver 2014-07-16 14:28:27 +02:00
thefiddler
c3451530a6 [KMS] Initial implementation 2014-07-16 14:28:27 +02:00
thefiddler
0fcd47132c Merge pull request #125 from thefiddler/r112
Prepare for 1.1.2 release
2014-05-20 01:11:41 +02:00
thefiddler
c65e2a4d9e [Mac] Added NSFloat implementation 2014-05-20 00:14:57 +02:00
thefiddler
ea0ab3243e Merge pull request #123 from thefiddler/eglfix
[EGL] Fix initialization and extension loading
2014-05-19 23:14:41 +02:00
thefiddler
97b211a101 [EGL] Egl.GetProcAddress only returns extensions
We have to load statically exported entry points using the regular OS
symbol loading facilities, and only use eglGetProcAddress for
extensions.

Fixes crash in https://github.com/mono/MonoGame/pull/2377
2014-05-18 22:04:52 +02:00
thefiddler
4ede3ad2d0 [X11] Renamed XI2Mouse
This file now implements both mouse and keyboard input, so its name
has been updated to reflect that.
2014-05-15 10:24:03 +02:00
thefiddler
b4f4be7ece [X11] Split X11 and XI2 input drivers 2014-05-15 10:22:01 +02:00
thefiddler
692c4c64ff [X11] Rebased on develop branch 2014-05-15 01:16:28 +02:00
thefiddler
e8176ef7cf [X11] Added XKB bindings 2014-05-15 01:12:06 +02:00
thefiddler
3febb4dda0 [Input] Renamed MouseScrollWheel to MouseScroll
This better describes the functionality of this structure.
2014-05-13 23:25:56 +02:00
thefiddler
96aaef9b37 [Mac] Implemented Mouse.GetCursorState() 2014-05-12 02:20:53 +02:00
thefiddler
f4a3cab0e0 [Input] Added Mouse.GetCursorPos() (WIP) 2014-05-12 02:20:52 +02:00
thefiddler
ff46455e56 [X11] Removed legacy X11Input driver
Its functionality has been moved directly into X11GLNative and
X11KeyMap.
2014-05-04 08:32:08 +02:00
thefiddler
94fdf1881c [Platform] Improved mouse interface
- The complete mouse state is now available in mouse events
- Horizontal wheels are now supported
- MouseState now takes up less memory and has a simpler internal
implementation.
2014-05-04 01:29:55 +02:00
thefiddler
5ba1bf89f1 [OpenTK] Added NativeWindowBase
This acts as a common base class to INativeWindow implementations and
can be used to reduce code duplication.
2014-05-02 09:34:14 +02:00
thefiddler
e63970e2be [Mac] Fixed cursor byte order 2014-04-30 09:06:18 +02:00
thefiddler
1d8ef7165f [OpenTK] Disable custom MouseCursors
They require further development, due to byte-order differences between
platforms.

MouseCursor is now derived from WindowIcon, which we will use for
INativeWindow.Icon support in the future, in order to remove the
dependency to System.Drawing.
2014-04-27 19:44:45 +02:00
thefiddler
a6f610dd0c [Core] Added MouseCursor class
This branch marks the beginning of hardware cursor support (affects
issue #9)
2014-04-27 10:52:53 +02:00
thefiddler
95f73310d8 [X11] Implemented new-style bindings for GLX
Replaced delegates with call instructions and completely removed the
old extension loading code.
2014-04-26 18:24:13 +02:00
thefiddler
824f238973 [Mac] Removed most legacy Carbon code 2014-04-24 13:48:26 +02:00
thefiddler
5f44f3d491 [Mac] Removed unused Carbon APIs 2014-04-24 13:48:26 +02:00
thefiddler
cdd88e6f7e [Mac] Migrated AglContext to OpenTK.GLControl 2014-04-24 13:48:26 +02:00
thefiddler
287c2b3415 [Mac] Add CocoaContext.GetGraphicsMode via CGL
Once the context is constructed, we use GetGraphicsMode to retrieve the
exact GraphicsMode that was selected by CocoaContext.
2014-04-24 13:45:06 +02:00
Olle Håkansson
59d7889ce0 Restored most window functionality. 2014-04-24 13:45:05 +02:00
Olle Håkansson
5457651676 Fixed swap interval. 2014-04-24 13:45:04 +02:00
Olle Håkansson
5e1b7c82ab Cocoa bindings through libobjc.dylib 2014-04-24 13:45:04 +02:00
thefiddler
cf728a631e [Bind] Added overloads for backwards compatibility 2014-03-13 18:42:37 +01:00
thefiddler
4066ba8355 [Input] Added KeyModifiers enumeration
KeyModifiers are represented as a bitwise combination of the Alt,
Control and Shift keys.
2014-02-25 01:13:45 +01:00
Fraser
10ca14ac6d Add ErrorHelper to bindings.
Wrap new generated binding calls with using ErrorHelper. Sets up a try
to call the method in and a finally block to call Dispose on the
ErrorHelper. Currently hardcoded to only work for the graphics modules.
2014-02-25 01:08:53 +01:00
Stefanos A.
1c1607da56 [OpenTK] Make VB.Net overload resolution happy
GLHelper.cs contains a number of overloads that cannot be resolved by
VB.Net. We cannot remove them, as that will break
backward-compatibility, but we can hide them by moving them after the
autogenerated overloads in GL.cs.

Terrible hack, but it appears to work.

Issue originally reported at http://www.opentk.com/node/3554 as "OpenTK
1.1, VB.net and ambiguous functions."
2014-02-12 16:14:00 +01:00
thefiddler
a4ce2182d2 [Input] Added JoystickHatState structure 2014-01-31 15:01:35 +01:00
thefiddler
5fe2d60857 [Input] Added structures for joystick hat input 2014-01-30 17:40:26 +01:00
Stefanos A.
88ae446781 [Win] Removed WGL delegates in favor of calli 2014-01-21 09:00:57 +01:00
Stefanos A.
b004dc7a0a [X11] Added INotify.cs to project files 2014-01-14 18:36:36 +01:00
thefiddler
d84be0d594 [OpenTK] Added base IPlatformFactory implementation
PlatformFactoryBase provides a common base interface for platform
backends. Platform backends should inherit from PlatformFactoryBase in
order to reduce code duplication.
2014-01-06 14:47:58 +01:00
thefiddler
a94a293732 [Platform] Implemented legacy IJoystickDriver
LegacyJoystickDriver implements the legacy IJoystickDriver interface
(GameWindow.Joysticks) in terms of the new IJoystickDriver2 interface
(OpenTK.Input.Joystick).

This removes a large chunk of code from each platform backend, as they
no longer need to implement IJoystickDriver themselves. Additionally,
it adds support for device hot plugging which was previously missing.
2014-01-06 14:25:05 +01:00
thefiddler
3a63496b6d Merge branch 'gamepad' into develop
Conflicts:
	Source/OpenTK/OpenTK.csproj
2014-01-03 02:23:02 +01:00
thefiddler
0593ea62e6 [Input] Added Source and Target to GamePadConfigurationItem 2014-01-02 18:36:09 +01:00