GetIconInfo
(https://msdn.microsoft.com/en-us/library/windows/desktop/ms648070(v=vs.85).aspx)
creates bitmaps that must be deleted after the call to
CreateIconIndirect, which copies the bitmaps to the icon it creates.
bmpIcon created by Bitmap.GetHicon is now destroyed after being used.
The return value of SetCursor was used to retrieve the last cursor, as
it could have been set by another library (Some UI libraries change the
cursor using the .net Cursor) this could of leaked the cursor we created
and now lost track of. We now delete the handle we had set, not the one
returned by SetCursor.
The mask part of an XIEventMask struct is actually not a pointer to an
integer containing the mask, but rather to an array of bytes each
holding 8 bits of the mask, with the first byte holding bit 0-7.
Therefore the old code would only work on little endian arches.
Allows multiple calls to Write to build up one line of text. Splits on
new line characters even in Write. Only places tabs if line is not
otherwise empty.
Cleaning up old C header code from convert, we'll just deal with Khronos
XML files now. If there's a need for parsing C headers we should do that
as a separate tool that either parses and generates the OpenTK XML specs
directly generates Khronos XML specs that can then be parsed by Convert.
Adds eglQuerySurfacePointerANGLE and a number of ANGLE related
constants.
Add eglGetPlatformDisplayEXT, eglCreatePlatformWindowSurfaceEXT and
eglCreatePlatformPixmapSurfaceEXT from EGL_EXT_platform_base.
Khronos stopped supporting .spec files in 2013. They're now over a year
old without support. As such it's not worth us continuing to support
them either.
If the legacy keyboard device receives a key down event with IsRepeat set it
will only raise it's own key down event if it's KeyRepeat field is set to true.
This is as documented, regression casused by refactoring. Fixes issue #201.
Also change the GameWindowState example to show setting of KeyRepeat to true
and false and how that changes the event counts for the legacy and new keyboard
devices.
When running under NUnit GetEntryAssembly returns null. In this case we instead
search through the AppDomain for an assembly that matches the AppDomain name.
Fixes warnings [#61] by disabling unused field warnings for two structures in
HidProtocol. These fields aren't currently used by OpenTK but the stuctures are
used in native marshalling so must match the documented structures perfectly.