Commit graph

53 commits

Author SHA1 Message Date
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 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 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 089b72c9c8 Protect all Xlib calls with XLockDisplay/XUnlockDisplay. Fixes issue [#1354]: "Application always run in windowed mode when using shared contexts". 2009-11-09 19:05:41 +00:00
the_fiddler 74bae3e196 Use more aggressive xlib locking following the advice of the multithreaded X manpages (needs work). 2009-11-02 22:37:13 +00:00
the_fiddler ff572e83b7 Added experimental OpenTK.Point/Size/Rectangle alternatives to System.Drawing, to make OpenTK usable without referencing System.Drawing (disabled by default, #define EXPERIMENTAL to test). Modified a number of using directives and namespace qualifiers to accommodate this change. 2009-11-01 12:44:38 +00:00
the_fiddler 0498b3e92a Replaced XAutoRepeatOff by XkbSetDetectableAutoRepeat, because the former must be reset before the program exits (and this is not always possible). 2009-05-30 21:41:45 +00:00
the_fiddler 76641d46d6 Added GraphicsContext.GetCurrentContextDelegate to IPlatformFactory.
Improved CreateDummyContext logic to detect and use the context handle of the current thread or a specified handle.
Removed GetCurrentContext() methods from platform-specific context implementations (everything now goes through the relevant IPlatformFactories).
2009-05-30 19:27:52 +00:00
the_fiddler 9c98321c76 Added call to XAutoRepeatOff() to disable keyboard autorepeat on X11Input. 2009-05-30 18:15:13 +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 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 58cd07ec2a Fixed mouse motion events on Linux. 2008-05-04 18:23:42 +00:00
the_fiddler f65fd4b221 Fixed mouse delta handling. 2008-05-04 17:42:19 +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 e477631ad7 Major update: fixed context construction on X11.
Fixed vsync on X11.
Updated GraphicsContext interface, for better extensibility. Some public functions were moved to IGraphicsContextInternal.
Renamed DisplayDevice.PrimaryDisplay to DisplayDevice.Default.
Updated and documented new GameWindow constructors.
Improved GameWindow.Exit, added GameWindow.ExitAsync() and improved error handling.
Improved GraphicsContext and NativeGLWindow APIs (construction in constructor).
Made ContextHandle public.
2008-03-01 13:15:31 +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 af638d4795 Fixed a few warnings.
Added [assembly: CLSCompliant(true)] attribute to GameWindow.cs
2008-02-02 13:39:23 +00:00
the_fiddler effc907171 Moved keyboard and mouse code inside X11Input.cs 2008-02-01 23:28:23 +00:00
the_fiddler 7eb6715087 Small cosmetic fix. 2008-01-15 23:23:32 +00:00
the_fiddler 1600391a91 Trying async mouse input. 2008-01-15 13:04:35 +00:00
the_fiddler c375a71603 Reverted to 0.3.12 way of handling input events. 2007-11-10 18:24:56 +00:00
the_fiddler bf939a4e10 Removed some warnings. 2007-11-06 13:37:04 +00:00
the_fiddler 99d516b153 Took care of a couple of warnings. 2007-10-26 15:51:07 +00:00
the_fiddler b8ce1d4818 Fixed a warning. 2007-09-30 12:42:43 +00:00
the_fiddler aea2f77892 Polled mouse input through XQueryPointer. 2007-09-26 15:41:14 +00:00
the_fiddler ff871cff50 Updated Keyboard and Mouse handling. Mouse now uses XQueryPointer. Keyboard relies on X11 events. Still missing mouse delta support. 2007-09-26 11:58:55 +00:00
the_fiddler 42c1affe34 Added X11 Mouse support. X11 Keyboard support is faster now.
Made GameWindow.Dispose() virtual.
2007-09-25 16:45:12 +00:00
the_fiddler a25784c84e Enabled X11Input mouse driver. 2007-09-24 21:23:27 +00:00
the_fiddler 0346c7ba35 InputDriver now correctly interfaces with its mouseDriver. 2007-09-24 21:10:52 +00:00
the_fiddler 97f7f4c7f5 Added X11Mouse driver. 2007-09-24 20:56:50 +00:00
the_fiddler e277e3b272 Windows raw input now works. 2007-09-22 13:13:17 +00:00
the_fiddler 980e7138d2 Work on MouseDriver. Windows raw driver works. 2007-09-21 20:34:07 +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 c67859d7ca Keyboard handling now plays well with normal event handling on X11.
One more issue to go: GLControl on X11 throws when calling MakeCurrent.
2007-08-06 12:13:50 +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 87e85a13c2 Resolved all crash bugs on X11Input.X11Keyboard
Working on X11 key mapping.
2007-08-05 23:38:59 +00:00
the_fiddler 1c8b39d20a Added X11 structs and functions from Mono's x11 bindings. Updated several items to use these bindings. Debugging crash on XCheckIfEvent callback. 2007-08-05 23:09:05 +00:00
the_fiddler 2ddcaa15d4 Improved WindowInfo.ToString. Added window mapping for X11Input. Changed the notification mask for X11GLNative 2007-08-05 19:04:06 +00:00
the_fiddler 3c5797b15c Added visual for InputOnly window X11Input 2007-08-05 18:51:07 +00:00
the_fiddler 499e36ae94 Trying to debug why Key events do not reach the X11Input window. 2007-08-05 18:38:16 +00:00
the_fiddler 4c0b710fa6 Slightly changed debug output on Create event (X11GLNative)
Corrected event hooking in X11Input.
2007-08-05 18:33:38 +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 4c38950247 Changed the WindowInfo(WindowInfo parent) constructor to make the newly created window a child of the specified parent. This should be the last bug causing the NRE in X11Input.cs 2007-08-05 17:45:59 +00:00
the_fiddler 19e7aff6ee Updated X11/X11Input.cs and X11/X11Keyboard.cs. The input window is now a child of the main window, and X11Keyboard now gets the keysym/keycode info. 2007-08-05 17:21:46 +00:00
the_fiddler 005a7e924b Implemented X11.X11.Keyboard get property. 2007-08-05 16:30:44 +00:00