Commit graph

5373 commits

Author SHA1 Message Date
Stefanos A 954b1e98b6 Minor code cleanup
No need to wrap Wgl.DescribePixelFormat, just call it directly.
2013-12-22 14:15:44 +01:00
Stefanos A 1c8e7bc993 Use opengl32 instead of gdi32 throughout
Since we are dynamically loading opengl32.dll, we are supposed to use
the wgl version of functions that exist in both opengl32 and gdi32 dlls.
2013-12-22 14:15:44 +01:00
Stefanos A 234c15e9c9 Corrected the entrypoint for wglChoosePixelFormat 2013-12-22 14:15:43 +01:00
thefiddler c8989f3e0d Implemented new GamePad interface (WIP) 2013-12-19 16:28:20 +01:00
thefiddler 9374b6b41b Implemented GamePadButtons 2013-12-19 16:27:57 +01:00
thefiddler a4d7d79b95 Updated internal IGamePadDriver interface 2013-12-19 16:27:26 +01:00
thefiddler 9b98228240 Implemented GameController API bindings 2013-12-19 10:42:12 +01:00
thefiddler 9dd97cb3e1 Use SDL2 event API for joystick devices 2013-12-18 17:16:29 +01:00
thefiddler 427b3641a0 Implemented SDL2 Joystick and GameController events 2013-12-18 15:50:59 +01:00
Stefanos A. 809799aa90 Clean up shader error detection 2013-12-17 12:09:00 +01:00
Stefanos A. 3ee6d1dbbd Updated author information (2/2) 2013-12-16 12:43:11 +01:00
Stefanos A. f54bee95e1 Updated author information 2013-12-16 11:07:05 +01:00
Stefanos A. f4360beb74 Use 16bit depth in GraphicsMode.Default
16bits appear to be better supported than 24bits on virtual machines.
2013-12-16 10:44:37 +01:00
Stefanos A. 3c6682e080 GraphicsContext cannot be released by finalizer
On many/most platforms, GraphicsContexts can only be released by the
thread where they are current. This means that the user must call
GraphicsContext.Dispose() or risk a resource leak.

Since we cannot release contexts on the finalizer thread, we should keep
strong references, instead of weak references, until the user explicitly
calls Dispose().

This patch fixes issues with SDL2 crashing when running the MonoGame
WindowsGL test suite.
2013-12-16 10:43:56 +01:00
Stefanos A. 498f16c2bd Improved diagnostics
This helps when tracking down GraphicsContext-related issues in SDL2.
2013-12-16 10:39:54 +01:00
Stefanos A. 6ad91dcc5b Added hack for MonoGame compatibility
MonoGame uses reflection to access internal APIs. We need to keep these
available until this is fixed downstream.
2013-12-16 10:39:11 +01:00
Stefanos A. 1392d48ec0 Protect against recursion in Closing event
Misbehaving clients that shall not be named here may call
GameWindow.Close() inside the GameWindow.Closing event. This causes
recursion in SDL2, crashing the application.

This patch adds a guard to protect against recursion when calling
GameWindow.Close().
2013-12-16 10:37:59 +01:00
Stefanos A 39a216f1ac Added overloads for compatibility with svn r3127
Several projects are still using the last svn revision from the
sourceforge repository (r3127). These overloads provide an upgrade path
from r3127 to OpenTK 1.1.
2013-12-16 01:55:05 +01:00
Stefanos A 6e110cb820 Normalized xml doc file paths 2013-12-15 23:24:17 +01:00
Stefanos A 1490c8460f Removed lib/ and *.nupkg from zip archive 2013-12-15 23:08:53 +01:00
Stefanos A 1102ccb943 Fixed build order in Nsis configuration 2013-12-15 23:08:19 +01:00
Stefanos A f17541156e Added Dependencies folder to Nsis installer 2013-12-15 23:07:56 +01:00
Stefanos A a46f895cda Fixed build in Nsis configuration 2013-12-15 22:33:28 +01:00
Stefanos A 78acd27c4c Updated OpenGL documentation to Khronos r24522 2013-12-15 22:32:32 +01:00
Stefanos A 14d815dc8b Fixed deprecation warning 2013-12-15 22:02:32 +01:00
Stefanos A 0db58e36bc Eliminated cls-compliance warnings in BlittableValueType 2013-12-15 22:02:21 +01:00
Stefanos A f579d0fd81 Eliminated cls-compliance warnings in the math library 2013-12-15 22:02:08 +01:00
Stefanos A aeb7a72d79 Eliminated CLS-compliance warnings in the bindings 2013-12-15 22:01:45 +01:00
Stefanos A e9f54dc61e Fixed memory corruption on string return type marshaling 2013-12-15 20:57:25 +01:00
Stefanos A 4b3aac38b6 Merge branch 'no-reflect' of https://github.com/opentk/opentk
Conflicts:
	OpenTK.sln
2013-12-15 18:30:47 +01:00
parallels b31e0e8474 Compatibility fixes for Mono 2.10
The Mono 2.10 compiler fails when compiling extern methods that are not
marked as DllImport. We fix that by adding a method body that throws a
NotImplementedException instead.

Additionally, MonoDevelop 2.8 cannot open sln files with ToolsVersion 12.
The fix is to change ToolsVersion to 11.
2013-12-15 18:27:24 +01:00
Stefanos A 87030c0e68 Merge branch 'no-reflect'
Conflicts:
	OpenTK.sln
	Source/Bind/FuncProcessor.cs
	Source/OpenTK/Graphics/ES11/ES11.cs
	Source/OpenTK/Graphics/ES11/ES11Core.cs
	Source/OpenTK/Graphics/ES11/ES11Delegates.cs
	Source/OpenTK/Graphics/ES20/ES20.cs
	Source/OpenTK/Graphics/OpenGL/GL.cs
	Source/OpenTK/Graphics/OpenGL/GLCore.cs
	Source/OpenTK/Graphics/OpenGL/GLDelegates.cs
	Source/OpenTK/Graphics/OpenGL/GLObsolete.cs
2013-12-15 17:37:25 +01:00
Stefanos A d0e52f6de7 Maintain backwards compatibility with 1.1 2013-12-15 16:58:33 +01:00
Stefanos A dfd683ef49 Merge master into no-reflect 2013-12-15 16:36:37 +01:00
Stefanos A. 146208ad81 Build UpdateVersion before OpenTK 2013-12-15 15:36:24 +01:00
Stefanos A. 9a49008cc1 Generate debug symbols in release builds 2013-12-15 15:36:12 +01:00
Stefanos A. d022e4c020 Improved WindowState changes on SDL2 backend
SDL2 fails to report several different WindowState changes. OpenTK uses
a number of hacks to make it work to some extent, however real fixes
will have to be implemented upstream.
2013-12-15 15:35:57 +01:00
Stefanos A bc95084804 Merge branch 'sdlres' 2013-12-15 13:51:29 +01:00
Stefanos A. 9407b61116 Updated solution to VS2013 format. 2013-12-15 13:47:29 +01:00
Stefanos A. 72e919c0b5 Added nuget.exe to project items 2013-12-15 13:47:19 +01:00
Stefanos A. 1701f923ca Committed nuget cmdline tool to source control
This appears to be the simplest (only?) way to use nuget in a
cross-platform manner.
2013-12-15 13:36:00 +01:00
Stefanos A 38821d0a0e Merge branch 'nuget' 2013-12-15 13:23:16 +01:00
Stefanos A 1af4f60c45 Add OpenTK.dll.config as content 2013-12-15 13:21:22 +01:00
Stefanos A bf1a43be4f MonoDevelop insists on making these changes 2013-12-15 13:05:06 +01:00
Stefanos A 0fdaed5639 Updated description 2013-12-15 13:04:29 +01:00
Stefanos A 2b93e453cd Generate nuget package for OpenTK.GLControl 2013-12-15 13:03:56 +01:00
Stefanos A 4e77a508a1 Generate xml documentation for OpenTK.GLControl 2013-12-15 13:01:39 +01:00
Stefanos A b424673ef0 Improved nuget version information 2013-12-15 12:02:43 +01:00
Stefanos A e1ef842e02 Do not commit build timestamp to repository 2013-12-15 12:02:01 +01:00
Stefanos A 881015646f Generate both build timestamp and version information 2013-12-15 12:01:26 +01:00