Commit graph

261 commits

Author SHA1 Message Date
the_fiddler a4fe343d73 WinDisplayDevice is now multiple-monitor aware.
Added SelectResolution function to DisplayDevice.
Updated test to change settings on all available monitors.
2008-01-24 10:50:39 +00:00
the_fiddler e9b811de17 Fixed DisplayDevice enumeration. 2008-01-24 09:30:49 +00:00
the_fiddler dde5892197 Removed implementation of GetDisplayModes() 2008-01-24 09:14:24 +00:00
the_fiddler c64c449a8f Added DisplayDevice driver for Windows. 2008-01-24 09:14:08 +00:00
the_fiddler 4e05a1082b Fixed capitalization of Texture2D (was Texture2d) 2008-01-24 09:13:08 +00:00
the_fiddler 7e8595f7a5 Added DisplayDevice struct, ChangeDisplaySettingsEnum and ChangeDisplaySettingsEx. 2008-01-24 09:12:47 +00:00
the_fiddler 1a100aaff3 Updated everything to use plain (int width, int height parameters) instead of DisplayMode.Width/.Height. 2008-01-23 14:17:09 +00:00
the_fiddler 5b44be105c Don't use obsolete DisplayMode.Width/Height anymore. 2008-01-23 13:26:14 +00:00
the_fiddler 827fda8e58 Added a couple of #region directives. 2008-01-23 12:42:27 +00:00
the_fiddler 6f8d2970c6 Removed unused summary. 2008-01-23 00:26:47 +00:00
the_fiddler 731034414c Updated SupportsExtension functions. 2008-01-23 00:19:42 +00:00
the_fiddler 568d3fecb7 Internal Device getter. 2008-01-23 00:19:22 +00:00
the_fiddler 448e3a476f Refactored extension loading to remove duplicate code. The logic is now contained in OpenTK/Platform/Utilities.cs 2008-01-22 23:58:50 +00:00
the_fiddler 40f32f4867 Documentation updates. Getting rid of all remaining warnings in debug build. 2008-01-20 19:29:42 +00:00
the_fiddler 3d2bc15a84 Documentation updates. Getting rid of warnings. 2008-01-20 19:00:03 +00:00
the_fiddler 50f6bd2807 Changed the INativeGLWindow.CreateWindow interface to return an IGLContext instead of a GLContext. 2008-01-15 10:48:48 +00:00
the_fiddler 33d0193e7f Refactored context creation to be done inside the *GLNative classes, instead of the GameWindow class. Should refactor in the next version. 2008-01-15 10:31:03 +00:00
the_fiddler 159bc4b427 Internal to public. 2008-01-15 00:43:51 +00:00
the_fiddler 8c5ac32840 Disabled CLSCompliant attribute not checked warnings. 2008-01-15 00:43:23 +00:00
the_fiddler 3a44869fd2 Updated with the latest generator. Disabled missing XML doc warnings. 2008-01-15 00:42:29 +00:00
the_fiddler 828fa2ebc2 Fixed window destruction. 2008-01-15 00:10:56 +00:00
the_fiddler 762ea8f1bb Set window on top during creation. 2008-01-15 00:02:58 +00:00
the_fiddler 5498022742 Fixed an issue where WMInput did not detach on the Destroy message, causing the application to stay open. 2008-01-14 23:44:22 +00:00
the_fiddler 42c205db00 Fixed a GameWindow exit bug, where the GameWindow didn't send the destroy message on GameWindow.Exit(). 2008-01-14 23:43:56 +00:00
the_fiddler c11735a22f Got rid of some warnings. 2008-01-11 20:54:06 +00:00
the_fiddler 1c6c2c4776 Major update. Explicitly implemented internal interfaces. 2008-01-11 20:24:48 +00:00
the_fiddler 589e6ad813 Now uses GLContext directly, instead of WinGLContext. 2008-01-11 20:24:20 +00:00
the_fiddler e439322f18 Minor cosmetic change. 2008-01-06 10:40:50 +00:00
the_fiddler 8609b7dc39 Fixed GetRawInputData call. 2008-01-06 02:35:57 +00:00
the_fiddler 3f705cba4b Implemented mouse and keyboard driver. 2008-01-06 02:28:51 +00:00
the_fiddler fabd24a6ea Fixed starting coordinates (should now report position in absolute coordinates.) Updated data packet handling. 2008-01-06 02:28:27 +00:00
the_fiddler 8505d5801e Moved KeyMap from WinRawKeyboard to its own class. 2008-01-06 02:27:03 +00:00
the_fiddler 335664ff74 Changed all public items to internal. 2008-01-06 02:26:11 +00:00
the_fiddler 2f4afe34f5 Added PointToClient and PointToScreen functions. Changed default input driver implementation from RawInput to WMInput due to invalid RawInput data. 2008-01-06 02:25:56 +00:00
the_fiddler 3740766589 Changed all public items to internal. 2008-01-06 02:24:49 +00:00
the_fiddler 4ddc6222f5 Changed all public classes to internal. Added missing WM_* mouse events. Added functions to get mouse position. Updated the RawInput structures. 2008-01-06 02:24:33 +00:00
the_fiddler 107951c4d1 Hooks for garbage-collectable OpenGL resources.
the [...]GLNative classes now use GLContext instead of the platform-specific [...]GLContext implementations.
Updated the IGLContext interface with functions to query the current context.
2007-12-09 18:15:51 +00:00
the_fiddler a1fb128a70 Fixed shutdown sequence in Windows, so that GameWindow.Exit() and pressing the 'close' button behave the same. 2007-11-11 20:23:25 +00:00
the_fiddler c13f33d6bd Reverted to 0.3.12 way of handling input events. 2007-11-10 18:25:33 +00:00
the_fiddler 092eb36a07 Commented out some unused code. 2007-11-06 13:36:47 +00:00
the_fiddler d5df9715b7 Corrected a few warnings. 2007-11-06 13:35:40 +00:00
the_fiddler 31672f0303 Added check to disable swap control, if the relevant extension is not supported. 2007-11-04 15:35:31 +00:00
the_fiddler b41ad63491 Removed Wgl.Ext.SupportsExtension. Updated code to use the new naming conventions. 2007-11-04 15:34:54 +00:00
the_fiddler ae1349b44d Bindings (with new naming conventions) re-generated with Bind 0.9.9 2007-11-04 15:28:20 +00:00
the_fiddler 339ae77c29 Regenerated using the latest Bind version. 2007-10-31 17:44:45 +00:00
the_fiddler 55f8be2bd6 Added GdiCharset enum. Not used for now. 2007-10-20 13:40:55 +00:00
the_fiddler 056d2d654c Added WMInput driver. 2007-10-19 20:02:34 +00:00
the_fiddler 32d40b8033 Removed the InputDriver from the INativeGLWindow interface. It now resides lower, in the GameWindow class. 2007-10-19 20:00:45 +00:00
the_fiddler 9504ea7ad2 Now loads GL and Glu functions. 2007-10-15 11:14:41 +00:00
the_fiddler 2e09aa16b6 Removed loading of GL and Glu functions. This now happens lower in the hierarchy, inside GameWindow. 2007-10-15 11:06:58 +00:00
the_fiddler 8cce2ac278 Disabled support for multiple devices to minimize memory and CPU usage. 2007-10-15 11:02:14 +00:00
the_fiddler 5f9a8921b2 Fixed issue with multiple GLControls becoming invisible. Simplified GLControl, the platform dependent code now resides in GLContext and WindowInfo - GLControl itself is platform independent, just like GameWindow. This allowed to remove IGLControl.cs, WinGLControl.cs, X11GLControl.cs and DummyGLControl.cs 2007-10-05 06:52:40 +00:00
the_fiddler 2323e0cb79 Added Wgl.EXT.SupportsExtension and optimized Wgl.ARB.SupportsExtension function. Fixed a bug in Wgl.Load() function, where wglGetProcAddress was never called. 2007-09-29 15:26:39 +00:00
the_fiddler 4e421d30fb Added VSync property to IGLContext. 2007-09-29 15:24:55 +00:00
the_fiddler 3aea7f5087 Added TODO caption to Visible property. 2007-09-26 15:44:32 +00:00
the_fiddler d4376a75e0 Improved mouse delta handling. WheelDelta is broken. 2007-09-26 15:42:01 +00:00
the_fiddler d16f2ce71b Updated to reflect renames (Windows.API -> Windows.Functions, Keyboard/Mouse -> Keyboard-/MouseDevice) 2007-09-26 11:57:32 +00:00
the_fiddler 20f6610c60 Implemented Visible and Title properties. 2007-09-26 11:55:55 +00:00
the_fiddler 5c3315f974 Renamed Windows.API to Windows.Functions 2007-09-26 11:55:24 +00:00
the_fiddler 9a4d7f1976 Renamed Windows.API to Windows.Functions, in accordance to X11.Functions 2007-09-26 11:54:43 +00:00
the_fiddler ec34bed972 Added X11 Mouse support. X11 Keyboard support is faster now.
Made GameWindow.Dispose() virtual.
2007-09-25 16:45:12 +00:00
the_fiddler 7bf2e84373 Fixed build. 2007-09-22 15:07:28 +00:00
the_fiddler b2ac1d4c61 Updated BindStreamWriter to better handle endlines. Reverted WinRawInput to standard reads. 2007-09-22 14:59:33 +00:00
the_fiddler 1c8b77cd1b Windows raw input now works. 2007-09-22 13:13:17 +00:00
the_fiddler 11261553ea 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 626c6324ca Corrected Windows.API.RawMouse class. Mouse input now works! 2007-09-21 22:39:16 +00:00
the_fiddler 2e987c7d2d Updated Input Logger example. Better handling of mice. 2007-09-21 21:30:18 +00:00
the_fiddler 39fa68a29f Work on MouseDriver. Windows raw driver works. 2007-09-21 20:34:07 +00:00
the_fiddler 8bbaede72e Corrected some struct definitions in Windows.API 2007-09-21 20:31:47 +00:00
the_fiddler f2b92be34f Enhanced WindowInfo API. A WindowInfo struct can now be initialized from any Control, Form, NativeWindow or GameWindow. 2007-09-21 20:07:30 +00:00
the_fiddler 98bf228a3d 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 95318a8366 Added OpenTK.Platform.WindowInfo and OpenTK.Platform.IMutableWindowInfo. Split IWindowInfo implementation to IWindowInfo and IMutableWindowInfo. Added several methods.
X11 and Windows GLControl and GLNative implementation now use IGLContext interfaces instead of direct X11GLContext and WinGLContext. Decouples the two (good!).
Updated all Native, Control, Context classes to use the new interfaces.
2007-09-09 15:10:21 +00:00
the_fiddler 2de33d9d8d Decoupled GLContext from GLControl/GameWindow even more, by using IWindowInfo to pass data between them.
Implemented the IWindowInfo.GetInfoFrom methods.
Removed said methods from OpenTK/Platform/Utilities.
2007-09-09 11:52:09 +00:00
the_fiddler 41c225a15a Improved GL loading speed.
Added background worker thread to W03_Extensions.
Added debug output to failed WinGLContext.MakeCurrent() calls.
Removed object field from Windows.MSG struct.
2007-09-03 21:47:34 +00:00
the_fiddler 7f5bdc2fdc Removed redudant GL.LoadAll call in WinGLNative
Added Glu.LoadAll call to GLControl.cs
2007-09-02 23:04:11 +00:00
the_fiddler cc23dac7a8 Merged with Bind. Added GLU bindings. Corrected OpenGL overload trimming. 2007-09-02 22:52:00 +00:00
the_fiddler 5144535b8e Changed API.* to * in order to reflect changes in OpenTK.Platform.Windows.API.
Improved Disposable pattern implementation in most Windows classes.
2007-09-02 00:16:22 +00:00
the_fiddler 4356601d21 Corrected a couple of compiler warnings. 2007-08-31 16:10:38 +00:00
the_fiddler b2459933b2 Corrected bug affecting the GL.Load and Wgl.Load functions, where the delegates where not retrieved by the GetFields call. 2007-08-22 16:13:41 +00:00
the_fiddler 0dbf3c04b2 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 951f14f459 Corrected a bug where GL.LoadAll wasn't called on time in X11GLNative.
Moved MakeCurrent call to X11GLNative and WinGLNative, instead of GameWindow.
2007-08-21 12:21:01 +00:00
the_fiddler fcc621c9e5 Added AdjustWindowRect to Windows.API. The client are in WinGLNative is now correctly specified. 2007-08-21 12:04:01 +00:00
the_fiddler ffe8ce7795 Merged with bind branch. 2007-08-20 12:25:48 +00:00
the_fiddler 9295a44c60 2007-08-20 10:46:37 +00:00
the_fiddler 164876a723 Added wgl binding generator. 2007-08-12 16:14:23 +00:00
the_fiddler 3833030a9a Improved shutdown sequence in WinGLNative and GameWindow 2007-08-10 16:55:24 +00:00
the_fiddler e220f3a71a 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 917c10d54b Fixed build error in WinGLNative. 2007-08-09 12:08:03 +00:00
the_fiddler e6950a6128 Added Create and Destroy events to NativeGLWindow. 2007-08-06 11:22:18 +00:00
the_fiddler a707ef91a5 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 6353793cd0 Enahnaced X11 keymap. Renamed some OpenTK keys. 2007-08-06 00:08:51 +00:00
the_fiddler 83d4a08c3c Added visual for InputOnly window X11Input 2007-08-05 18:51:07 +00:00
the_fiddler 13c04f4bbd 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 69730a274e Added preliminary key handling to X11Keyboard.
Removed stupid hack in WinRawKeyboard.
2007-08-05 18:10:08 +00:00
the_fiddler 3e47153aa4 Corrected NRE in X11Keyboard 2007-08-05 16:54:14 +00:00
the_fiddler 3974dbde8e Corrected NRE in WindowInfo.ToString functions, when referring to non-existent parent. 2007-08-05 16:47:07 +00:00
the_fiddler a2f5fa396f Overrode ToString in WindowInfo implementations.
Debugging NRE in X11Keyboard constructor.
2007-08-05 16:44:31 +00:00
the_fiddler 22d4f1b3ce 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 95d5db5347 Removed exceptions from Fullscreen properties. 2007-08-05 13:51:07 +00:00
the_fiddler 23403362e9 Added IWindowInfo.cs, X11/WindowInfo.cs and Windows/WindowInfo.cs, which hold information regarding a platform specific window object.
Updated everything to not use raw window handles, but rather WindowInfo objects.
Added code that (hopefully) creates an invisible input window for X11.
2007-08-05 13:42:31 +00:00
the_fiddler 519b432cd7 Updated documentation on the *GLNative classes. X11/X11GLNative.cs now doesn't create a render window during the constructor call, but rather when CreateWindow is called explicitly. 2007-08-05 10:33:23 +00:00
the_fiddler e34ee87e4e 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 6b80938086 Updated Windows.Api to be CLS-Compliant. 2007-08-05 00:09:42 +00:00
the_fiddler d423f6e94c Renamed InputDevices.cs to InputDriver.cs.
Added IMouseDriver.cs and WinRawMouse.
2007-08-04 13:28:16 +00:00
the_fiddler 4ceea208ac 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 672a82983a 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 c51a0b7a6a 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 8c43b52517 Fixed Raw Input keyboard registration under windows.
Fixed marshalling in GetRawInputData.
2007-07-27 01:37:12 +00:00
the_fiddler 20630278fb 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 28b4630f04 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 3d23105b0d 'Merged' windowing branch. Ugly, but it seems to have worked. 2007-07-23 00:15:18 +00:00