the_fiddler
569c4c86c7
Refactored and simplified DisplayDevice detection (devices are now stored in the platform-specific drivers instead of the frontend).
...
Made XRR resolution changes more robust.
Resolution changes now refresh the DisplayDevices on Windows.
2010-11-21 20:16:18 +00:00
the_fiddler
e601852547
Added new KeyDown and KeyUp events.
2010-11-08 21:45:15 +00:00
the_fiddler
0a9912469a
Removed dependency on System.Windows.Forms.
2010-11-08 21:44:56 +00:00
the_fiddler
64210383de
* EventInfo.cs:
...
* AglContext.cs:
* MacOSKeyMap.cs:
* CarbonInput.cs:
* Application.cs:
* MacOSFactory.cs:
* CarbonGLNative.cs:
* CarbonWindowInfo.cs:
* MacOSGraphicsMode.cs:
* QuartzDisplayDeviceDriver.cs: Normalized code formatting.
2010-11-02 19:49:24 +00:00
the_fiddler
93130dfbd8
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
0a9d0685a1
Removed events that are not part of the INativeWindow interface.
2010-10-28 09:34:13 +00:00
the_fiddler
c227c36553
Added code to raise all available events. Removed unused events from old OpenTK versions. Fixed potential race condition when raising events (an event might become null between the null check and the actual raising).
2010-10-28 09:31:00 +00:00
the_fiddler
85c37f0600
* 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
7e3182b1fc
* 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
9c524e0d52
* Source/OpenTK/Platform/MacOS/CarbonGLNative.cs: Removed unused
...
code.
2010-10-18 16:14:50 +00:00
the_fiddler
1fc5e96a25
* Source/OpenTK/NativeWindow.cs:
...
* Source/OpenTK/INativeWindow.cs:
* Source/OpenTK/Platform/X11/API.cs:
* Source/OpenTK/Platform/X11/X11GLNative.cs:
* Source/OpenTK/Platform/Windows/WinGLNative.cs:
* Source/OpenTK/Platform/MacOS/CarbonGLNative.cs:
* Source/Examples/OpenTK/Test/GameWindowStates.cs: Initial
implementation of CursorVisible API. See issue [#1560 ].
2010-10-18 15:25:25 +00:00
the_fiddler
88e6aceae0
Synced trunk with 1.0 branch.
2010-10-02 18:52:34 +00:00
the_fiddler
bca3751e8b
Synced with 1.0 branch.
2010-03-11 22:53:11 +00:00
the_fiddler
53b84d18d4
Backported bugfixes from 1.0 branch.
2010-02-03 19:04:42 +00:00
kanato
411f4bcc98
* Platform/MacOS/CarbonGLNative.cs: Fix width/height properties on Mac OS X.
2010-01-11 22:08:00 +00:00
kanato
1bc11bb807
MacOS: Fix crash in CheckEnterLeaveEvents if using WinForms too.
2009-11-15 22:00:14 +00:00
kanato
69c05cdb20
MacOS: Correct resizing behavior and correctly implement Bounds, ClientRectangle, and ClientSize getters and setters.
2009-11-15 19:31:23 +00:00
kanato
d695bb599c
MacOS: Add proper icon support for the dock.
2009-11-15 18:08:49 +00:00
kanato
63b314c4a8
MacOS: Implement Focused property and FocusChanged event.
2009-11-15 04:12:37 +00:00
kanato
103190ebf4
MacOS: Implement mouse enter / leave events.
2009-11-15 03:55:29 +00:00
kanato
52e89c13b1
MacOS: Clean up AglContext destruction code.
...
Implement INativeWindow.Close method.
2009-11-14 21:33:07 +00:00
kanato
ed05d8e12c
MacOS: Several minor fixes:
...
* Implement MouseWheel event
* Implement KeyPress event
* Fix generation of MouseMove events
* Fix right mouse button up event
2009-11-14 18:40:56 +00:00
kanato
6979e24254
MacOS: Fix bug where application started from the command line would not be in the foreground and not respond to keyboard events.
2009-11-14 00:30:57 +00:00
kanato
d7506f0a73
MacOS: Hack for AGL to have access to the display device specified when a NativeWindow is created.
2009-11-09 07:50:21 +00:00
kanato
049d339643
MacOS: Detect display boundaries so created windows are placed in the right spot.
2009-11-09 07:39:38 +00:00
kanato
dad798d41d
MacOS: Fix event from user clicking close box to properly report that window doesn't exist anymore.
2009-11-09 07:18:54 +00:00
the_fiddler
c494250c3c
Disabled OpenTK.Point, Size and Rectangle structures that were meant to replace their System.Drawing implementations until the correct course of action can be determined. This change is too disruptive to existing applications, especially if they are also using Windows.Forms (see discussion here: http://www.opentk.com/node/1348 ).
2009-11-08 23:02:53 +00:00
the_fiddler
29dd5dfe68
Update the context when the native window is resized.
2009-11-06 21:56:35 +00:00
the_fiddler
139b6af9fa
* Platform/Windows/WinDisplayDevice.cs:
...
* Platform/MacOS/QuartzDisplayDeviceDriver.cs: Updated to use the new
DisplayDevice constructors.
* Platform/X11/X11XrandrDisplayDevice.cs: Query Xinerama for the exact
bounds of each display device, if available.
Use global X lock to protect from multithreaded access.
2009-11-06 09:50:50 +00:00
the_fiddler
2d4b962d2c
Renamed internal BindingsBase.LoadAll/Load methods to LoadEntryPoints/LoadEntryPoint, in order to avoid name clashes with the static GL.LoadAll() method.
...
Added GraphicsContext() constructor that takes an existing, valid OpenGL context. This can be used for interop with third-party toolkits which create the OpenGL context themselves.
2009-11-04 16:49:56 +00:00
the_fiddler
ea1765ec75
Added experimental Icon and IconConverter implementations from Mono.
...
Modified INativeWindow implementations to not qualify Icon class fully, so we can change the implementation between System.Drawing and OpenTK at will (using the EXPERIMENTAL #define).
2009-11-02 09:33:53 +00:00
the_fiddler
2340e87eda
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
a7eb81a68c
Implemented INativeWindow.MouseEnter/MouseLeave events on Win32 and X11.
2009-10-27 23:57:44 +00:00
the_fiddler
b92198bccc
Avoid accessing OpenTK.Graphics.OpenGL from platform-specific code. Reduces coupling and code-duplication.
2009-10-21 10:16:32 +00:00
the_fiddler
951ad35596
Implemented icon support.
2009-10-18 16:52:07 +00:00
the_fiddler
8b60cc2018
Made GraphicsMode.Index public, as it is necessary when extending OpenTK.
...
Removed OpenTK.Platform.Utilities.CreateWindowInfo and made the platform-specific CreateWindowInfo methods public (e.g. CreateX11WindowInfo).
Moved Mono Windows.Forms-specific code into X11GLControl.
Removed OpenTK.Platform.Utilities.IsIdle.
Removed obsolete methods from OpenTK.Platform.Utilities.
Marked OpenTK.Platform.Utilities.CreateGraphicsContext as obsolete (use GraphicsContext constructor instead).
Made IWindowInfo implementations private.
2009-09-04 21:11:25 +00:00
the_fiddler
95c88baf3d
* Source/OpenTK/Platform/Egl/EglContext.cs:
...
* Source/OpenTK/Graphics/GraphicsContext.cs:
* Source/OpenTK/Graphics/IGraphicsContext.cs:
* Source/OpenTK/Platform/MacOS/AglContext.cs:
* Source/OpenTK/Platform/X11/X11GLContext.cs:
* Source/OpenTK/Graphics/GraphicsContextBase.cs:
* Source/OpenTK/Platform/Windows/WinGLContext.cs:
* Source/OpenTK/Platform/Dummy/DummyGLContext.cs: Added IsDisposed
property to IGraphicsContext and implemented in all context classes.
Removed 'bool disposed' fields from these classes in favor of the
new property.
2009-09-03 12:23:11 +00:00
the_fiddler
d72a75f2fc
Moved OpenTK.GLControl to its own project.
2009-08-19 14:17:47 +00:00
the_fiddler
b1915d8ef3
Removed Destroy event and RegisterForDisposal method from IGraphicsContext.
...
Added GraphicsContextBase, which acts as the foundation of all IGraphicsContext implementations.
Added DesktopGraphicsContext, which acts as the foundation of all desktop (i.e. not ES) IGraphicsContext implementations.
Modified all IGraphicsContext implementations to inherit from GraphicsContextBase and/or DesktopGraphicsContext.
2009-08-17 10:23:16 +00:00
the_fiddler
5e80a061b8
Implemented INativeWindow.WindowBorderChanged and INativeWindow.WindowStateChanged events.
2009-08-17 09:34:15 +00:00
the_fiddler
0204082308
Modified GraphicsMode.Index to be a nullable property. Modified consuming classes to check Index.HasValue prior to first use.
2009-08-15 16:44:43 +00:00
the_fiddler
0e02f67749
Moved OpenTK.Graphics.GL class to the OpenTK.Graphics.OpenGL namespace (reason: necessary for OpenGL|ES support; necessary for support of different OpenGL profiles). OpenTK.Graphics.GL has been moved to the OpenTK.Compatibility library.
...
Removed OpenTK.Graphics.Glu class (reason: deprecated upstream; most functionality provided by OpenTK math; not compatible with OpenGL 3.0+.) OpenTK.Graphics.Glu can be accessed through OpenTK.Compatibility.
Added OpenGL|ES-specific ErrorHelper classes.
Moved OpenTK.Graphics.DisplayDevice and OpenTK.Graphics.DisplayResolution to the root OpenTK namespace (reason: their functionality is not specific and does not depend on OpenTK.Graphics).
Split Graphics*Exception classes into different files.
Made GraphicsErrorException public (reason: necessary for OpenTK.Compatibility).
2009-08-14 13:13:28 +00:00
the_fiddler
dd612a2001
Added missing license information. Made public. Added documentation.
2009-08-11 21:11:46 +00:00
the_fiddler
a3f61f6d65
Marked all IPlatformFactory interface implementations as virtual.
2009-07-24 21:52:01 +00:00
the_fiddler
2e345ed6c8
Replaced tabs with spaces.
2009-07-19 17:50:41 +00:00
the_fiddler
4847646cc8
Added INativeWindow.CreateKeyboardDriver()
...
Added INativeWindow.KeyPress event (KeyPressEventArgs).
Removed INativeWindow.Icon property.
2009-07-19 17:49:51 +00:00
the_fiddler
a405f07d55
Implemented multisampling on MacOS (untested).
2009-06-26 20:06:31 +00:00
the_fiddler
8c800d619d
Removed obsolete code.
...
Implemented X11GLNative.IconChanged event.
2009-06-24 14:42:40 +00:00
the_fiddler
623015650b
Removed obsolete code.
2009-06-24 14:38:48 +00:00
the_fiddler
d5efed9045
Removed obsolete IResizable, DisplayMode and ColorMode APIs.
...
Marked carbon API class as internal.
Added a large number of missing XML comments.
2009-06-04 11:31:02 +00:00