Commit graph

397 commits

Author SHA1 Message Date
the_fiddler
b12a88c244 Unique handles for different contexts (makes multiple contexts work under Visual Studio designer). 2008-03-24 13:25:38 +00:00
the_fiddler
ef16998dca Use one display connection for all X11 communication. Seems to fix (not 100%) the crash problems encountered. 2008-03-24 13:12:02 +00:00
the_fiddler
1c69f7e07f Moved GraphicsContext creation to the HandleCreated event. 2008-03-10 13:25:33 +00:00
the_fiddler
28ed42406a Fixed multiple GLControls under Mono/X11. 2008-03-10 13:23:09 +00:00
the_fiddler
357703d456 Open a different X11 display connection - reusing the one from Windows.Forms results in messages getting routed to the wrong windows. 2008-03-10 11:37:41 +00:00
the_fiddler
8386c20b6a Can now distinguish between left and right control, shift, alt and enter keys. 2008-03-10 08:50:19 +00:00
the_fiddler
bc1801d5d5 Added detection of left and right shift/control/alt buttons. 2008-03-08 17:35:58 +00:00
the_fiddler
49dbf3c40a Initial commit. 2008-03-03 12:48:13 +00:00
the_fiddler
6323bce84e Initial commit. 2008-03-03 12:48:00 +00:00
the_fiddler
46e0d1d719 Initial commit. 2008-03-03 12:47:35 +00:00
the_fiddler
37c40f16eb Renamed ColorDepth to ColorFormat, to avoid class with System.Drawing.ColorDepth.
Update X11 stack to use System.Windows.Forms.XPlatUI for its Display, Screen and RootWindow.
Fixed mode setting for X11GLControl.
Fixed X11 shutdown (was generating X11 errors).
Added DeviceContext getter to WinWindowInfo.
Made IWindowInfo disposable.
Added documentation to many public methods.
Worked around a Mono 1.2.4 bug with Handle creation on Windows.Forms.Control.
Updated GL.BuildExtensionList to correctly parse GL_VERSION when in indirect rendering mode.
Fixed crash errors in X11GLContext.CreateContext and X11GraphicsMode.
Added a ref overload to Glx.ChooseVisual()
IGraphicsContext.MakeCurrent now takes an IWindowInfo parameter. This allows the user to change to window is context is bound to (untested).
Renamed XyzWindowInfo.Handle to XyzWindowInfo.WindowHandle.
2008-03-03 12:44:56 +00:00
the_fiddler
e10d37418f 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
da42cf4352 Fixed a struct != null comparison. 2008-02-28 16:09:02 +00:00
the_fiddler
1d3c358512 Renamed GraphicsFormat to GraphicsMode. 2008-02-28 15:28:40 +00:00
the_fiddler
ee1431279f Renamed GraphicsFormat to GraphicsMode. 2008-02-28 15:26:13 +00:00
the_fiddler
bb88b25239 Initial commit. 2008-02-28 14:02:17 +00:00
the_fiddler
6178343b4d Removed obsolete WindowInfo.cs 2008-02-28 14:00:45 +00:00
the_fiddler
83afd98314 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
e9b2fe6106 New IWindowInfo interface. 2008-02-28 13:54:07 +00:00
the_fiddler
e5bf555644 Obsoleted. 2008-02-28 13:53:28 +00:00
the_fiddler
e3e9487f1c Initial commit. Can detect idle mode and can create a WinWindowInfo out of a Windows.Forms.Control. 2008-02-28 13:46:44 +00:00
the_fiddler
792de6a50c Fixed PixelFormatDescriptorFlags.
Fixed SetWindowLongPtr on 32bit platforms.
Added DescribePixelFormat.
Added SetLastError to SetPixelFormat.
2008-02-28 13:45:38 +00:00
the_fiddler
1b3ba98e83 Initial commit. Takes the place of Windows.WindowInfo. 2008-02-28 13:43:19 +00:00
the_fiddler
ee1bb45a0e Added SetLastError to a couple of Wgl functions. These are temporary, until the generator is updated. 2008-02-28 13:42:43 +00:00
the_fiddler
b373674564 API.cs: Disabled cleanup code on AppDomain.ProcessExit, as it would cause X errors.
Renamed libXrandr to libXrandr.so.2 for DllImports.
2008-02-23 21:48:32 +00:00
the_fiddler
3ee626a08f Fixed a few warnings.
Added [assembly: CLSCompliant(true)] attribute to GameWindow.cs
2008-02-02 13:39:23 +00:00
the_fiddler
a9e2ce4a00 Completed move of OpenTK.OpenGL to OpenTK.Graphics.OpenGL. 2008-02-02 00:58:26 +00:00
the_fiddler
17bb298a33 2008-02-01 23:29:27 +00:00
the_fiddler
3718b6625d Moved keyboard and mouse code inside X11Input.cs 2008-02-01 23:28:23 +00:00
the_fiddler
af571879ad Renamed KeyMap to WinKeyMap. 2008-02-01 23:13:50 +00:00
the_fiddler
c7e3f9f5e3 Added ChangeDisplaySettingsEnum.Fullscreen to resolution changes. At last, windows stopped resizing themselves! 2008-01-31 22:07:48 +00:00
the_fiddler
27a708a25d Moved and renamed OpenTK.IGLContext to OpenTK.Graphics.IGraphicsContext. 2008-01-31 14:42:21 +00:00
the_fiddler
d87e79268f Moved and renamed OpenTK.GLContext to OpenTK.Graphics.GraphicsContext. 2008-01-31 14:39:54 +00:00
the_fiddler
c7045ab92f Moved and renamed OpenTK.GLContext to OpenTK.Graphics.GraphicsContext. 2008-01-31 14:22:37 +00:00
the_fiddler
019cf966e3 Renamed IGLContext to IGraphicsContext. 2008-01-31 13:17:42 +00:00
the_fiddler
56cbbb8cbb Added setter to GLContext.CurrentContext and all implementations, so that the user can clear the context of any thread.
Updated GameWindow and its implementations to use GraphicsFormat instead of the obsolete DisplayMode.
Updated license.
Updated some docs.
Fixed CLSCopmliant warnings in XRamExtension.cs
2008-01-31 13:15:17 +00:00
the_fiddler
2c96123ff4 Even more work on hiding gnome panels. 2008-01-27 18:13:26 +00:00
the_fiddler
d5e3a3d8ed Added XChangeWindowAttributes / trying to get gnome panels to hide. 2008-01-27 16:34:45 +00:00
the_fiddler
109166d928 Try to debug why gnome panels do not get hidden. 2008-01-27 16:01:38 +00:00
the_fiddler
9275ab63fc Try to debug why gnome panels do not get hidden. 2008-01-27 15:59:57 +00:00
the_fiddler
9623d405c3 Fixed fullscreen mode size. 2008-01-27 15:59:43 +00:00
the_fiddler
a785d45b9c Fixed error in X11 display. 2008-01-27 15:53:04 +00:00
the_fiddler
7763c403ff Trying to hide gnome panels on fullscreen modes. 2008-01-27 15:50:44 +00:00
the_fiddler
7e61214d78 Restore resolution available on OpenTK startup, not on X11 startup. 2008-01-27 14:23:13 +00:00
the_fiddler
a7bb91c023 Trying to get fullscreen on X11 to hide gnome panels. 2008-01-27 14:10:18 +00:00
the_fiddler
0dc60c6a44 Try to cover gnome panels. 2008-01-27 11:30:57 +00:00
the_fiddler
a60ffb6c61 Remove/activate decorations through gnome. 2008-01-27 11:28:37 +00:00
the_fiddler
1443dec66b Added call to XSetTransientForHint after disabling/activating window decorations. 2008-01-27 11:12:21 +00:00
the_fiddler
ab1bac702a Re-enable decorations on windowed mode. 2008-01-27 10:29:28 +00:00
the_fiddler
50bc64d55e Added fullscreen->window change, and window resizing on fullscren change. 2008-01-27 10:23:46 +00:00
the_fiddler
c6dbce69e8 Renamed OpenTK.Platform.Windows.DisplayDevice to OpenTK.Platform.Windows.WindowsDisplayDevice. 2008-01-27 10:23:02 +00:00
the_fiddler
d2cde0ddf0 Working on fullscreen support. 2008-01-26 16:24:57 +00:00
the_fiddler
3b9dbd1209 Added debug information. 2008-01-26 15:47:00 +00:00
the_fiddler
b48e3bec8c Added initial support for fullscreen mode change. 2008-01-26 15:44:08 +00:00
the_fiddler
c6d9dd5df3 Added fadeout and fadein effect. 2008-01-26 14:02:58 +00:00
the_fiddler
7f1309a796 Changed IDisplayDeviceDriver.RestoreResolution method to IDisplayDeviceDriver.TryRestoreResolution.
DisplayDevice now correctly reports original resolution.
2008-01-26 11:01:20 +00:00
the_fiddler
989f22dc75 Fixed another NRE in TryChangeResolution. 2008-01-26 10:45:13 +00:00
the_fiddler
285e2c694d Small hack to test for resolution restoration. 2008-01-26 10:43:00 +00:00
the_fiddler
0bbad4e8b9 Fixed a bug where wrong resolutions were saved in the DisplayResolution<->resolution_index mapping. 2008-01-26 10:33:42 +00:00
the_fiddler
8e3ccb8082 Now saves DisplayDevice<->X11 screen, DisplayResolution<->resolution_index mappings. Added support for resolution changes. 2008-01-26 10:29:13 +00:00
the_fiddler
36e4909a11 XRRTimes parameter should be out, not ref. 2008-01-26 10:28:19 +00:00
the_fiddler
6fdf20e30a Added discovery of default color depth. 2008-01-25 16:11:46 +00:00
the_fiddler
e4186aac66 Added discovery of depths. 2008-01-25 15:31:38 +00:00
the_fiddler
7273a3f28b Added XListDepths and made "libX11" string a constant. 2008-01-25 15:31:26 +00:00
the_fiddler
00e0b6ce52 Implemented default refresh rate discovery. 2008-01-25 15:04:10 +00:00
the_fiddler
6977937b3b Added code to obtain refresh rates. 2008-01-25 14:32:51 +00:00
the_fiddler
14376644f9 Improved XRRScreenSize. Added XRRRates wrapper. 2008-01-25 14:32:42 +00:00
the_fiddler
ed45d3590d Now adds all available resolutions, not just the default one. 2008-01-25 14:01:07 +00:00
the_fiddler
f77e45a829 Add temporary bits per pixel value (24) for testing purposes. 2008-01-25 13:58:16 +00:00
the_fiddler
afb44ac3fe Screen and resolution enumeration should now work. 2008-01-25 13:56:52 +00:00
the_fiddler
daba18ac5d Do not free XRRScreenSize pointer in XRRSizes. 2008-01-25 13:50:50 +00:00
the_fiddler
0a61071ab5 Trying to debug deadlock on screen resolution enumeration. 2008-01-25 13:45:32 +00:00
the_fiddler
72569e734f Added debug information to XOpenDisplay etc calls. 2008-01-25 13:42:51 +00:00
the_fiddler
f56450476d Can't use Marshal.PtrToStructure(IntPtr, object) with boxed value types. Reverting to object Marshal.PtrToStructure(IntPtr, Type). 2008-01-25 13:38:39 +00:00
the_fiddler
49d3b00bf1 *Really* fixed libxrandr.so name. 2008-01-25 13:21:20 +00:00
the_fiddler
c8a80916d2 Fixed libxrandr.so name. 2008-01-25 13:17:04 +00:00
the_fiddler
1578d18666 Added debug code to dump the number of screens. 2008-01-25 13:13:05 +00:00
the_fiddler
ddd812cff4 Use new properties from the API class. 2008-01-25 13:12:53 +00:00
the_fiddler
a3ba77f35d Added several properties to get the default screen, default display, screen count and default root window. Updated XRRSizes to abstract away the memory marshaling. 2008-01-25 13:12:33 +00:00
the_fiddler
605f04bf3d Added a bogus default device for testing. 2008-01-25 10:21:00 +00:00
the_fiddler
8630edaaf6 Clarified what the DisplayDevice constructor does. 2008-01-25 10:20:44 +00:00
the_fiddler
a1656c6830 Added return value to X11XrandrDisplayDevice.TryChangeResolution 2008-01-25 10:03:13 +00:00
the_fiddler
f35e6e1e07 Added X11XrandrDisplayDevice.cs implementation. 2008-01-25 10:02:05 +00:00
the_fiddler
442a873a5f Add docs to static constructor. 2008-01-25 10:01:23 +00:00
the_fiddler
d24cc61a23 Completed Xrandr functions and structs. 2008-01-24 22:39:06 +00:00
the_fiddler
ca36fcedb1 Disabled Status struct. 2008-01-24 22:38:50 +00:00
the_fiddler
112732353d Started adding Xrandr functions. 2008-01-24 21:21:17 +00:00
the_fiddler
5462307a97 Public X11 classes made internal. 2008-01-24 21:18:23 +00:00
the_fiddler
3a026d5d5e Fullscreen mode changes now work! 2008-01-24 12:36:40 +00:00
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
53e9ad11d7 Added LoadDelegate method. 2008-01-23 00:26:58 +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
8b3f5afa4c Added loading of Glx extensions. Added vsync support. 2008-01-23 00:18:52 +00:00
the_fiddler
e5d9fa8e53 Added Glx.SupportsExtension function. 2008-01-23 00:18:18 +00:00
the_fiddler
ca37cfc643 Renamed Glx.Sgi.SwapIntervalSGI to Glx.Sgi.SwapInterval 2008-01-23 00:18:05 +00:00
the_fiddler
9551a569c2 Added glXSwapIntervalSGI method. 2008-01-23 00:01:03 +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
4fa393a03f Updated a comment. 2008-01-20 22:04:30 +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
fd04dbf95f Small cosmetic fix. 2008-01-15 23:23:32 +00:00
the_fiddler
21322323ba Re-added mouse input events. 2008-01-15 13:12:31 +00:00
the_fiddler
262de30201 Trying async mouse input. 2008-01-15 13:04:35 +00:00
the_fiddler
8c3011f405 Fixed a possible cast problem. 2008-01-15 12:48:03 +00:00
the_fiddler
9c214032b9 Added some IGLContextInternal explicit implementations 2008-01-15 12:47:51 +00:00
the_fiddler
9bfa325620 Added GetCurrentContext() 2008-01-15 12:46:47 +00:00
the_fiddler
5c16b522a3 Possible InvalidCastException fix. 2008-01-15 12:32:38 +00:00
the_fiddler
22d6e1a7a4 X11/GameWindow context creation should be fixed. 2008-01-15 11:14:16 +00:00
the_fiddler
c0ea86437c Possible fix for cast exception in CreateWindow. 2008-01-15 11:10:40 +00:00
the_fiddler
68370f6d23 Debugging an issue with X11GLNative and it's visual creation. 2008-01-15 11:08:03 +00:00
the_fiddler
8b14881538 Fixed a NRE. 2008-01-15 11:02:23 +00:00
the_fiddler
15956016b4 Possible fix for X11GLContext crash. 2008-01-15 10:59:36 +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
dc151f3929 Added some debugging information to context creation. 2008-01-15 10:36:47 +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
2cc221998c Hacks to get the visual before creating a context. 2008-01-11 20:23:41 +00:00
the_fiddler
408bdc3f3c CreateWindow now takes a GLContext. 2008-01-11 20:23:17 +00:00
the_fiddler
dcafbcf8a1 Split items that should be internal in different interfaces, for explicit implementations. 2008-01-11 20:22:46 +00:00
the_fiddler
1606cbf0e4 Updated INativeGLWindow.CreateWindow to accept a GLContext as argument. 2008-01-11 20:22:08 +00:00
the_fiddler
47aa1f27a9 Documentation update. 2008-01-11 20:21:32 +00:00
the_fiddler
523b712cec Fixed NRE on mode.ToString(). 2008-01-06 11:02:38 +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
6ef09165b2 Added PointToClient and PointToScreen placeholders. 2008-01-06 02:29:14 +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
37c4576fcc Added PointToClient and PointToScreen functions. 2008-01-06 02:25:33 +00:00