Commit graph

23 commits

Author SHA1 Message Date
Paul Kratt
794d45fdeb Make GLControl work on OS X
This isn’t the greatest solution, but at least it doesn’t require us to
reference WinForms in OpenTK and it works perfectly for what I’m using.
2014-02-25 18:46:06 -06:00
thefiddler
b9426006ef [GLControl] Warn when accessing GL properties on non-current context 2014-01-26 11:08:08 +01:00
thefiddler
c9a86a63ab [GLControl] Use IGraphicsContext.SwapInterval to get/set vsync
This patch fixes warnings related to the deprecated
IGraphicsContext.VSync property.
2014-01-26 10:39:39 +01:00
thefiddler
24be068742 [GLControl] Clarified docs regarding multiple contexts 2014-01-26 10:36:52 +01:00
Stefanos A.
ca36c6f26a Workaround for #5
WS_CLIPCHILDREN and WS_CLIPSIBLINGS appear to cause flickering on
specific video cards. OpenGL appears to work correctly without these, so
we'll disable them to return to OpenTK 1.0 behavior.
2013-12-02 23:39:36 +01:00
Stefanos A.
d9afed2d10 Setup correct class style for OpenGL
On Windows, we need to have a CS_OWNDC class style on windows with
OpenGL contexts attached. In Windows.Forms, we can set this via the
Control.CreateParams property. See
https://www.opengl.org/wiki/Creating_an_OpenGL_Context_(WGL)
2013-11-16 22:38:17 +01:00
Stefanos A.
ab58d41353 GLControl requires native backend
SDL does not currently support embedding into Windows Forms (this is an
upstream limitation.) To ensure that existing WinForms applications
continue to function even if SDL is installed, GLControl will now try to
initialize OpenTK with a native backend. The user can still override
this behavior using OpenTK.Toolkit.Init(ToolkitOptions), as normal.
2013-11-12 20:37:23 +01:00
the_fiddler
a0021909d1 Minor documentation updates. 2012-05-22 23:42:47 +00:00
the_fiddler
b3f846dbc6 Implemented IGraphicsContext.SwapInterval property that supersedes IGraphicsContext.VSync. Fixes issue [#2671]: "Expose SwapInterval to GameWindow". 2011-09-06 12:06:30 +00:00
the_fiddler
967eb64ed6 Added fix for issue [#2506]: "GLControl inside a user control crashes during design time". 2011-05-30 09:20:12 +00:00
the_fiddler
ac0930d109 Updated deprecation message with specific instructions on how to solve the issue. 2009-11-04 20:47:06 +00:00
the_fiddler
be4e56a7a2 Do not force control to create its handle in Resize event (the designer places code that raises this event before the rest of the events are hooked). Instead, suppress the event and raise it once the handle is actually created. 2009-10-22 17:56:55 +00:00
the_fiddler
ac404e35fb * GLControlFactory.cs: More defensive checks for null GraphicsModes.
* GLControl.cs: More defensive checks for null GraphicsModes.
Set flags, context version and GraphicsMode before calling
  InitializeComponents(), as the latter might cause the context to be
  created (and we need this information before creating the context).
  Fixes ArgumentNullException on Linux.
2009-10-19 17:38:16 +00:00
the_fiddler
c54d4d180b Added workaround for the "Resize event called before GraphicsContext is ready" issue. 2009-10-15 14:52:57 +00:00
the_fiddler
6a0b75d67c Clarified GrabScreenshot() ObsoleteAttribute message. 2009-10-15 14:15:26 +00:00
the_fiddler
0798c8d45c Setting VSync mode should not force control creation. Fixes issue [#1071]: "Not firing Load event for GLControl." 2009-09-18 15:46:00 +00:00
the_fiddler
ba53b6851d * GLControl.cs: Added a public getter for the IWindowInfo of the GLControl. 2009-09-10 14:05:59 +00:00
the_fiddler
d6c4c801e1 Fixed line endings and set svn:eol-style to native and svn:mime-type to text/plain for .cs files. 2009-09-03 19:01:11 +00:00
the_fiddler
3c26795d7a * Source/GLControl/GLControl.cs: Validate internal state when public
members are accessed (issue [#1141]: "Unhandled exception in
  GlControl possible bug in rev 2207"). Throw ObjectDisposedException
  if public members are accessed after the GLControl has been
  disposed. Force the create/recreation of the control if a public
  member is called and the control handle or context does not exist.
2009-09-03 12:26:42 +00:00
the_fiddler
babb202015 Do not call IGraphicsContextInternal.LoadAll() in design-mode. The DummyGLContext would need extensive modifications to support the runtime checks performed by this call and the extra work is not worth it. 2009-09-02 22:56:46 +00:00
the_fiddler
de2cb816f6 * GLControl.cs: Removed call to CreateControl from the GLControl constructor. The GLControl is now constructed lazily, as regular UserControls do. Fixes issue [#1071]: "Not firing Load event for GLControl." 2009-09-02 12:06:41 +00:00
the_fiddler
cd77ad6f29 * GLControl.cs: Delayed creation of IGLControl implementation until
the OnHandleCreated event.

* X11GLControl.cs: Removed unused Control field.
Added checks for null parameters.
2009-09-02 12:00:44 +00:00
the_fiddler
d72a75f2fc Moved OpenTK.GLControl to its own project. 2009-08-19 14:17:47 +00:00
Renamed from Source/OpenTK/GLControl.cs (Browse further)