Commit graph

309 commits

Author SHA1 Message Date
the_fiddler e17439384b Fullscreen mode changes now work! 2008-01-24 12:36:40 +00:00
the_fiddler 793744402e 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 e12d986f24 Fixed DisplayDevice enumeration. 2008-01-24 09:30:49 +00:00
the_fiddler 785f654e88 Removed implementation of GetDisplayModes() 2008-01-24 09:14:24 +00:00
the_fiddler e6f5d43404 Added DisplayDevice driver for Windows. 2008-01-24 09:14:08 +00:00
the_fiddler 88c4c5db32 Fixed capitalization of Texture2D (was Texture2d) 2008-01-24 09:13:08 +00:00
the_fiddler 4cd670f14d Added DisplayDevice struct, ChangeDisplaySettingsEnum and ChangeDisplaySettingsEx. 2008-01-24 09:12:47 +00:00
the_fiddler d1f2d7b33e 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 99b2c90b8e Don't use obsolete DisplayMode.Width/Height anymore. 2008-01-23 13:26:14 +00:00
the_fiddler 6a6c2322a5 Added a couple of #region directives. 2008-01-23 12:42:27 +00:00
the_fiddler ebb10c5424 Added LoadDelegate method. 2008-01-23 00:26:58 +00:00
the_fiddler e4d7c3f8b3 Removed unused summary. 2008-01-23 00:26:47 +00:00
the_fiddler c7837ac381 Updated SupportsExtension functions. 2008-01-23 00:19:42 +00:00
the_fiddler 8041f1fe29 Internal Device getter. 2008-01-23 00:19:22 +00:00
the_fiddler d6e2caf54f Added loading of Glx extensions. Added vsync support. 2008-01-23 00:18:52 +00:00
the_fiddler 67e8097865 Added Glx.SupportsExtension function. 2008-01-23 00:18:18 +00:00
the_fiddler 48d7acef1c Renamed Glx.Sgi.SwapIntervalSGI to Glx.Sgi.SwapInterval 2008-01-23 00:18:05 +00:00
the_fiddler 2f2b7532e2 Added glXSwapIntervalSGI method. 2008-01-23 00:01:03 +00:00
the_fiddler 5598019f01 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 b7cd66d414 Updated a comment. 2008-01-20 22:04:30 +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 5a66d44f19 Documentation updates. Getting rid of warnings. 2008-01-20 19:00:03 +00:00
the_fiddler 7eb6715087 Small cosmetic fix. 2008-01-15 23:23:32 +00:00
the_fiddler cf5640d2a9 Re-added mouse input events. 2008-01-15 13:12:31 +00:00
the_fiddler 1600391a91 Trying async mouse input. 2008-01-15 13:04:35 +00:00
the_fiddler 8e991b93e9 Fixed a possible cast problem. 2008-01-15 12:48:03 +00:00
the_fiddler 069d3c40bc Added some IGLContextInternal explicit implementations 2008-01-15 12:47:51 +00:00
the_fiddler de7f73cd04 Added GetCurrentContext() 2008-01-15 12:46:47 +00:00
the_fiddler 15b7864096 Possible InvalidCastException fix. 2008-01-15 12:32:38 +00:00
the_fiddler e404e9791e X11/GameWindow context creation should be fixed. 2008-01-15 11:14:16 +00:00
the_fiddler 64cf1ee3c8 Possible fix for cast exception in CreateWindow. 2008-01-15 11:10:40 +00:00
the_fiddler 59eb05c532 Debugging an issue with X11GLNative and it's visual creation. 2008-01-15 11:08:03 +00:00
the_fiddler 70c43a644b Fixed a NRE. 2008-01-15 11:02:23 +00:00
the_fiddler b0b5f31522 Possible fix for X11GLContext crash. 2008-01-15 10:59:36 +00:00
the_fiddler a2673bf5ff Changed the INativeGLWindow.CreateWindow interface to return an IGLContext instead of a GLContext. 2008-01-15 10:48:48 +00:00
the_fiddler c08d2785ce Added some debugging information to context creation. 2008-01-15 10:36:47 +00:00
the_fiddler 4a5b8e81d8 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 dcaf917fc2 Internal to public. 2008-01-15 00:43:51 +00:00
the_fiddler 491843adbf Disabled CLSCompliant attribute not checked warnings. 2008-01-15 00:43:23 +00:00
the_fiddler 5a61371284 Updated with the latest generator. Disabled missing XML doc warnings. 2008-01-15 00:42:29 +00:00
the_fiddler 1aa19633f9 Fixed window destruction. 2008-01-15 00:10:56 +00:00
the_fiddler cc3239d466 Set window on top during creation. 2008-01-15 00:02:58 +00:00
the_fiddler 7b0ff73c85 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 935db198ea 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 2ad50d33b6 Got rid of some warnings. 2008-01-11 20:54:06 +00:00
the_fiddler a522ce47bb Major update. Explicitly implemented internal interfaces. 2008-01-11 20:24:48 +00:00
the_fiddler f50c0b06c2 Now uses GLContext directly, instead of WinGLContext. 2008-01-11 20:24:20 +00:00
the_fiddler ba36c8ba3a Hacks to get the visual before creating a context. 2008-01-11 20:23:41 +00:00
the_fiddler 2e1837b8f0 CreateWindow now takes a GLContext. 2008-01-11 20:23:17 +00:00
the_fiddler 201f88552d Split items that should be internal in different interfaces, for explicit implementations. 2008-01-11 20:22:46 +00:00
the_fiddler 94043ee334 Updated INativeGLWindow.CreateWindow to accept a GLContext as argument. 2008-01-11 20:22:08 +00:00
the_fiddler 315daee7ce Documentation update. 2008-01-11 20:21:32 +00:00
the_fiddler b257b57494 Fixed NRE on mode.ToString(). 2008-01-06 11:02:38 +00:00
the_fiddler 2ab661a472 Minor cosmetic change. 2008-01-06 10:40:50 +00:00
the_fiddler df7d4f9508 Fixed GetRawInputData call. 2008-01-06 02:35:57 +00:00
the_fiddler ababd601cd Added PointToClient and PointToScreen placeholders. 2008-01-06 02:29:14 +00:00
the_fiddler b71519eac5 Implemented mouse and keyboard driver. 2008-01-06 02:28:51 +00:00
the_fiddler 8d6872f8b8 Fixed starting coordinates (should now report position in absolute coordinates.) Updated data packet handling. 2008-01-06 02:28:27 +00:00
the_fiddler 9a50727029 Moved KeyMap from WinRawKeyboard to its own class. 2008-01-06 02:27:03 +00:00
the_fiddler 22dfa79f08 Changed all public items to internal. 2008-01-06 02:26:11 +00:00
the_fiddler 3fbd780097 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 b9104e1879 Added PointToClient and PointToScreen functions. 2008-01-06 02:25:33 +00:00
the_fiddler ab69227070 Changed all public items to internal. 2008-01-06 02:24:49 +00:00
the_fiddler 1413de464a 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 938b2b8519 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 815eb7ef55 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 42e36a31c6 Removed a couple of unused lines of code. 2007-11-11 20:22:51 +00:00
the_fiddler 6dc133d9eb Fixed shutdown sequence on Linux. GameWindow.Exit() and clicking the 'close' button now produce the same result. 2007-11-11 20:10:08 +00:00
the_fiddler b81fdbe630 X11GLContext plays better with Windows.Forms. 2007-11-11 19:28:55 +00:00
the_fiddler 25946dc406 Reverted to 0.3.12 way of handling input events. 2007-11-10 18:25:33 +00:00
the_fiddler acc916a734 Reverted to 0.3.12 way of handling input events. Added Close button press handling (X no longer crashes). 2007-11-10 18:25:16 +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 260353f37a Re-added IInputDriver property. 2007-11-10 18:24:30 +00:00
the_fiddler bf939a4e10 Removed some warnings. 2007-11-06 13:37:04 +00:00
the_fiddler 8d8842ea62 Commented out some unused code. 2007-11-06 13:36:47 +00:00
the_fiddler eac6aaa72a Corrected a few warnings. 2007-11-06 13:35:40 +00:00
the_fiddler 3727da3a91 Removed InputDriver. 2007-11-04 15:38:39 +00:00
the_fiddler abb087314f Now initializes GL class. Slight layout improvements. Removed useless constructors. 2007-11-04 15:37:41 +00:00
the_fiddler db3b1d52c9 Added check to disable swap control, if the relevant extension is not supported. 2007-11-04 15:35:31 +00:00
the_fiddler f2fadfe890 Removed Wgl.Ext.SupportsExtension. Updated code to use the new naming conventions. 2007-11-04 15:34:54 +00:00
the_fiddler 85f3be4365 Bindings (with new naming conventions) re-generated with Bind 0.9.9 2007-11-04 15:28:20 +00:00
the_fiddler 8bf372af28 Regenerated using the latest Bind version. 2007-10-31 17:44:45 +00:00
the_fiddler 99d516b153 Took care of a couple of warnings. 2007-10-26 15:51:07 +00:00
the_fiddler 71f5efc5c9 Added GdiCharset enum. Not used for now. 2007-10-20 13:40:55 +00:00
the_fiddler 91b52b5143 Added WMInput driver. 2007-10-19 20:02:34 +00:00
the_fiddler c8f6708acc 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 2922a8c054 VSync now responds to changes. Contains a true DisplayMode. New constructor. 2007-10-15 11:16:20 +00:00
the_fiddler cfd383fd03 Now loads GL and Glu functions. 2007-10-15 11:14:41 +00:00
the_fiddler f647ae14d8 INativeGLWindow no longer inherits from IGLcontrol. Fixes build problems, too. 2007-10-15 11:11:38 +00:00
the_fiddler fa5e22da79 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 8eb779558c Disabled support for multiple devices to minimize memory and CPU usage. 2007-10-15 11:02:14 +00:00
the_fiddler 65e2c7830c Constructor now throws ArgumentNullException instead of ArgumentException. 2007-10-05 06:54:36 +00:00
the_fiddler 5467bc9567 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 b8ce1d4818 Fixed a warning. 2007-09-30 12:42:43 +00:00
the_fiddler f86e6583e3 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 34d3a715a5 Added VSync property to IGLContext. 2007-09-29 15:24:55 +00:00
the_fiddler 1c1f5a8d98 Fix build on Mono 1.2.4 2007-09-27 00:40:28 +00:00
the_fiddler 9aaa45ace2 Added Unload event. 2007-09-26 23:13:57 +00:00
the_fiddler 357c1405e9 Commented out Keymap struct in X11/API.cs, due to a bug in Mono's 1.2.5 gmcs compiler. 2007-09-26 16:57:43 +00:00
the_fiddler 35f154cb72 Problem with mouse wheel not getting updated. 2007-09-26 16:12:31 +00:00
the_fiddler 6f3e74b688 Added TODO caption to Visible property. 2007-09-26 15:44:32 +00:00
the_fiddler d3da5a219a Improved mouse delta handling. WheelDelta is broken. 2007-09-26 15:42:01 +00:00
the_fiddler aea2f77892 Polled mouse input through XQueryPointer. 2007-09-26 15:41:14 +00:00
the_fiddler d6a001f878 Added Title property. Foundation of atoms. 2007-09-26 15:40:22 +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 ae1c9d8642 Updated to reflect renames (Windows.API -> Windows.Functions, Keyboard/Mouse -> Keyboard-/MouseDevice) 2007-09-26 11:57:32 +00:00
the_fiddler 8026e15c5b Implemented Visible and Title properties. 2007-09-26 11:55:55 +00:00
the_fiddler 547e85a8cf Renamed Windows.API to Windows.Functions 2007-09-26 11:55:24 +00:00
the_fiddler 308ffef918 Renamed Windows.API to Windows.Functions, in accordance to X11.Functions 2007-09-26 11:54:43 +00:00
the_fiddler 50465e3569 Added Visible and Title properties. 2007-09-26 11:53:41 +00:00
the_fiddler 2ba903154a Removed multiple keyboard/mouse support. 2007-09-26 11:53:19 +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 61102b359d Work on X11 mouse driver. 2007-09-24 20:10:14 +00:00
the_fiddler a696bbc765 Added constant and variable time-step update logic to GameWindow. Updated examples to use the new GameWindow UpdateFrame and RenderFrame events. 2007-09-23 12:09:42 +00:00
the_fiddler e361e4c10b Added timing information to UpdateFrame.
Removed T02_Resizable_Window.cs and added T02_Vertex_Array_Cube.cs
Added Shapes/Cube.cs to Examples.
2007-09-22 22:01:43 +00:00
the_fiddler 0712635670 Fixed build. 2007-09-22 15:07:28 +00:00
the_fiddler 26f5d0dff4 Updated BindStreamWriter to better handle endlines. Reverted WinRawInput to standard reads. 2007-09-22 14:59:33 +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 b660f5af9b Updated Input Logger example. Better handling of mice. 2007-09-21 21:30:18 +00:00
the_fiddler 980e7138d2 Work on MouseDriver. Windows raw driver works. 2007-09-21 20:34:07 +00:00
the_fiddler 0424887db2 Corrected some struct definitions in Windows.API 2007-09-21 20:31:47 +00:00
the_fiddler dbb2d1a3d6 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 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 55a84c70c7 Added licensing information. Added Close() call on failed initialization of W01_First_Window. Moved GLContext to OpenTK namespace. 2007-09-09 16:07:39 +00:00
the_fiddler 2ca6e6c617 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 827b76b6e9 Improved documentation for DummyGLContext and Dummy.
Disabled S02_RawInput_Logger for updating.
Added WindowInfo.cs
2007-09-09 11:53:25 +00:00
the_fiddler c1fa34087c 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 5e28f31660 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 105902336e Glu is now initialized under X11GLNative 2007-09-02 23:18:50 +00:00
the_fiddler 45a0efd9d1 Removed redudant GL.LoadAll call in WinGLNative
Added Glu.LoadAll call to GLControl.cs
2007-09-02 23:04:11 +00:00
the_fiddler a813684176 Merged with Bind. Added GLU bindings. Corrected OpenGL overload trimming. 2007-09-02 22:52:00 +00:00
the_fiddler 437d8fe627 Updated T10_GLSL_Cube to remove NRE exception on Mono 1.2.x.
Added debug info to the GL.LoadAll function.
Added W03_Extensions.cs example.
2007-09-02 13:34:44 +00:00
the_fiddler 7403987e5c Added DummyGLContext.cs amd DummyGLControl.cs drivers. 2007-09-02 08:09:01 +00:00
the_fiddler 2f09c15672 Trunk now compiles again. 2007-09-02 00:53:24 +00:00
the_fiddler 017a345927 Merged with bind branch: updated GL.cs wrappers, Glx and Glu implementation suppoort files, faster Bind. 2007-09-02 00:40:43 +00:00
the_fiddler 9ac9af08ac Removed IDisposable from IGLControl
Added IDisposable to INativeGLWindow
2007-09-02 00:17:59 +00:00
the_fiddler b89d2231d4 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 c2c3dac7df Moved ColorDepth and DisplayMode to the /OpenTK directory (where under /OpenTK/Platform).
Renamed ColorDepth to ColorMode, to avoid clash with System.Windows.Forms.ColorDepth
Updated examples to use the new namespace for DisplayMode and ColorMode.
2007-09-02 00:04:34 +00:00
the_fiddler 794ba2fa41 Corrected a couple of compiler warnings. 2007-08-31 16:10:38 +00:00
the_fiddler 1d62f8521c 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 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 df70c0c531 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 7cf8aa3d95 Added AdjustWindowRect to Windows.API. The client are in WinGLNative is now correctly specified. 2007-08-21 12:04:01 +00:00
the_fiddler 9e536a72e0 Improved X11GLControl compatibility - now sets a safe DisplayMode.
Added utility that control's whether xplatui should throw exceptions on X11 errors.
2007-08-21 10:48:32 +00:00
the_fiddler e9b2aba8d0 Fixed a CLSCompliance issue. 2007-08-21 09:43:50 +00:00