Commit graph

1126 commits

Author SHA1 Message Date
the_fiddler 4482a79e84 * GameWindow.cs: Improved implementation of GameWindow.Exit(). It should now be possible to cancel the exit through the IsClosing event. 2009-10-07 16:13:46 +00:00
the_fiddler e441e9d067 Generate Update/ResizeFrame events whenever the window is moved or resized. Partially fix for issue [#1218]: "[NativeWindow] Avoid modal loop during window resize/movement". 2009-10-07 15:18:53 +00:00
the_fiddler c0528707c3 Refactored and simplified the Run() loop. 2009-10-07 13:08:13 +00:00
the_fiddler a6984a7a48 Added timer callback to WM_ENTERSIZEMOVE messages to avoid stalling the rendering during the modal size/move loop (which occurs when the user clicks the window bar or borders). Still need to find a way to notify the frontend (GameWindow) to process queued up UpdateFrame/RenderFrame events. 2009-10-07 13:07:36 +00:00
the_fiddler eaac78008b Added SetTimer, KillTimer and TimerProc bindings. 2009-10-07 13:03:32 +00:00
the_fiddler c47eacee05 * OpenGL/GLHelper.cs: Removed static GetAddress method in favor of
implementation inherited from GraphicsBindingsBase.
Disabled unused code.
2009-10-07 11:23:40 +00:00
the_fiddler 5f93a2fb0d * GraphicsContext.cs: Removed unused code. 2009-10-07 11:22:48 +00:00
the_fiddler c0e0872c19 * AudioCapture.cs: Fixed documentation warning. 2009-10-07 11:21:18 +00:00
the_fiddler 7b5cde901e * AL/AL.cs:
* Alc/AlcEnums.cs: Fixed documentation warnings.
2009-10-07 11:20:44 +00:00
the_fiddler b2c9fdab58 * BindingsBase.cs:
* Graphics/BindingsBase.cs:
* Graphics/GraphicsBindingsBase.cs: Moved GraphicsBindingsBase to its
  own file.
Moved BindingsBase to root OpenTK folder (reason: BindingsBase is not
  specific to OpenTK.Graphics anymore).
Documented GetAddress methods.
2009-10-07 10:52:48 +00:00
the_fiddler d3a56a15ef * Graphics/ES10/Helper.cs:
* Graphics/ES11/Helper.cs:
* Graphics/ES20/Helper.cs:
* Graphics/BindingsBase.cs:
* Platform/X11/GlxHelper.cs:
* Graphics/OpenGL/GLHelper.cs:
* Platform/X11/X11GLContext.cs: Modified BindingsBase to define
  abstract GetAddress method (reason: removes OpenTK.Graphics-specific
  code from BindingsBase and allows it to be used in different
  bindings).
Implemented GraphicsBindingsBase and modified the OpenGL and OpenGL|ES
  bindings to use this.
Modified the GLX bindings to inherit from BindingsBase (reason:
  reduces code duplication for extension loading).
2009-10-07 10:44:45 +00:00
the_fiddler 8992f90571 Replaced calls to obsolete methods.
Fixed parameters in double versions of BaryCentric() (should be double instead of float).
2009-10-06 09:51:13 +00:00
the_fiddler f926595b64 Obsoleted Scale() instance method (reason: redundant. Mult()/Multiply() instance/static methods can be used to achieve the same effect). 2009-10-06 09:45:09 +00:00
the_fiddler 65c6b29918 Added vector overloads to Multiply and Divide methods.
Renamed Sub to Subtract, Mult to Multiply and Div to Divide (reason: conform with the class library design guidelines).
Obsoleted instance Add, Sub, Mult and Div methods in favor of static ones (reason: reduce API bloat, they are completely redudant).
Improved documentation for new methods.
2009-10-06 09:42:21 +00:00
the_fiddler 6b79a2d251 Fixed formatting. 2009-10-06 08:57:48 +00:00
the_fiddler 3fb4df13fb Bumped version number. 2009-10-06 08:53:11 +00:00
the_fiddler c6afa30b4b Added GetActiveAttrib, GetActiveUniform, GetActiveUniformName and GetActiveUniformBlockName overloads that return strings. Fixes issue [#1213]: "[GL] let GetUniformName() return String". 2009-10-06 08:29:12 +00:00
the_fiddler 9933bf4739 Added ClearColor(Color4) overload. Fixes issue [#1207]: "[GL] add Color4 argument overload for ClearColor". 2009-10-06 08:03:53 +00:00
the_fiddler 69cfe6b56a Raise KeyPress events (handle WindowsMessage.CHAR message). 2009-09-26 21:56:42 +00:00
the_fiddler 5ce65c92ad Made KeyChar property setter internal instead of private. Useful for reusing KeyPressEventArgs structures (instead of allocating a new one on each and every character event). 2009-09-26 21:55:23 +00:00
the_fiddler c201b71cf7 Marked IGameWindow as public. 2009-09-26 21:34:19 +00:00
the_fiddler 0abd2823d2 * X11GraphicsMode.cs: Protect the mode queries with XLockDisplay()/XUnlockDisplay(). 2009-09-25 08:28:51 +00:00
the_fiddler 255cad1f21 Ensure the GameWindow is visible when the Run() method is called. 2009-09-19 21:56:13 +00:00
the_fiddler 87683d533e Renamed IsWindowVisisble to the correct IsWindowVisible. 2009-09-19 20:30:12 +00:00
the_fiddler 3170c7aa0a * X11KeyMap.cs: Removed dependency on System.Windows.Forms. 2009-09-13 16:34:03 +00:00
the_fiddler 76e338ce5e Removed obsolete comment. 2009-09-08 16:55:41 +00:00
the_fiddler 4e86dd1381 Remove System.Windows.Forms.Control dependency in favor of OpenTK.NativeWindow. 2009-09-08 13:09:50 +00:00
the_fiddler 542144ac7c Construct windows invisible by default. Use 'Visible = true' or 'GameWindow.Run' to display them. 2009-09-08 13:04:22 +00:00
the_fiddler b41877e771 Added IsWindowVisible method. 2009-09-08 13:03:21 +00:00
the_fiddler 837604a1a6 Updated tokens for ARB_depth_clamp, ARB_vertex_array_bgra, ARB_seamless_cube_map, ARB_provoking_vertex, ARB_draw_elements_base_vertex which where promoted in version 3.2. Fixes issue [#1146]: "[GL3.2] Multiple (minor) corrections". 2009-09-07 18:33:32 +00:00
the_fiddler 5643259379 Updated tokens for ARB_geometry_shader4 (promoted in Version 3.2). Fixes issue [#588]: "ARB_geometry_shader4". 2009-09-07 18:21:39 +00:00
the_fiddler 7c3b758509 Updated tokens for ARB_texture_multisample (promoted in Version 3.2). Fixes issue [#1151]: "ARB_texture_multisample". 2009-09-07 17:56:25 +00:00
the_fiddler ccda66e0a8 Added AllowPartialTrustedCallers attribute. 2009-09-06 14:19:52 +00:00
the_fiddler 66e17487b0 Updated in preparation of 0.9.9-2 release. 2009-09-05 18:35:20 +00:00
the_fiddler ce77b57566 Implemented Quaternion scaling by scalars. Fixes issue [#1131]: "[Math] add Quaternion scaling (easy)". 2009-09-05 16:17:47 +00:00
the_fiddler 88d6d57121 Regenerated bindings using the fixed MinmaxTarget and SeparableTarget enums names. 2009-09-05 15:32:00 +00:00
the_fiddler 316b5f265d Regenerated bindings with using the cleaned up EXT_histogram, EXT_convolution and SGI_color_table tokens that were promoted in version 1.2. 2009-09-05 15:28:12 +00:00
the_fiddler 594f877021 Removed obsolete OnCreate and OnDestroy methods/events. 2009-09-04 23:23:46 +00:00
the_fiddler 72eb674817 Silenced a few compiler warnings. 2009-09-04 23:23:13 +00:00
the_fiddler 1f0c7fe466 Removed unnecessary CLSCompliant attributes. 2009-09-04 23:22:44 +00:00
the_fiddler 26db415bd8 Changed IsDisposed into a property and modified code to use this instead of the backing field. 2009-09-04 23:18:47 +00:00
the_fiddler f020cfce33 Fixed XML documentation warnings. 2009-09-04 23:16:43 +00:00
the_fiddler 997f57c1f7 Modified MouseDevice events to follow the class library design guidelines.
Changed Mouse[Move|Button|Wheel]EventArgs into classes that inherit from EventsArgs, in order to follow the event design guidelines.
2009-09-04 23:13:24 +00:00
the_fiddler d3bccf0b4b Fixed XML documentation warnings.
Removed unnecessary [CLSCompliant(true)] attributes.
2009-09-04 23:12:10 +00:00
the_fiddler 00930380b5 Fixed XML documentation warnings. 2009-09-04 23:11:20 +00:00
the_fiddler d7f83f3cb2 Fixed XML documentation warnings. 2009-09-04 22:16:12 +00:00
the_fiddler cd9ea45427 Suppressed 'unused code' warnings. 2009-09-04 22:16:02 +00:00
the_fiddler 6fdf37f99f Added KeyboardKeyEventArgs.
Modified KeyboardDevice.KeyDown/KeyUp to follow the class library design guidelines.
Modified samples to use the new KeyDown/KeyUp event signatures.
2009-09-04 22:10:50 +00:00
the_fiddler 4155342b2e Fixed XML documentation warnings. 2009-09-04 22:09:07 +00:00
the_fiddler 98ae93d424 Removed [Obsolete] attribute from Joysticks, Keyboard and Mouse properties until the new input API is ready. 2009-09-04 22:08:51 +00:00
the_fiddler 4cfd0ab270 Added missing XML documentation. 2009-09-04 22:08:10 +00:00
the_fiddler 2606d0d6e8 Set disposed to true when calling Dispose() method. 2009-09-04 21:46:39 +00:00
the_fiddler 33db1f6b74 Fixed a large number of documentation warnings. 2009-09-04 21:44:39 +00:00
the_fiddler 7601c2b57d Removed this property to maintain parity with the Matrix4 structure. 2009-09-04 21:37:53 +00:00
the_fiddler 9701b97bb8 Added missing XML documentation. 2009-09-04 21:31:31 +00:00
the_fiddler b89b377119 Applied kvark's latest NativeWindow/GameWindow patch, which improves event handling, the shutdown sequence and documentation, while removing stale code. 2009-09-04 21:27:05 +00:00
the_fiddler abf3787e8e Added missing XML documentation and fixed invalid XML doc references.
Removed deprecated methods from IGraphicsContext.
2009-09-04 21:25:29 +00:00
the_fiddler c573869322 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 6c9eb1dbf2 OpenAL DllImport library should be internal, not public. 2009-09-04 13:02:44 +00:00
the_fiddler 72f0fb86da Added missing Matrix4./Matrix4d.CreateRotation[XYZ] methods.
Added missing Matrix4d.CreateFromAxisAngle method.
Fixed Matrix4d constructor to take double parameters instead of float.
2009-09-04 13:02:23 +00:00
the_fiddler 2c4e0feb1a * Source/Build/Properties/AssemblyInfo.cs:
* Source/OpenTK/Properties/AssemblyInfo.cs:
* Source/Examples/Properties/AssemblyInfo.cs:
* Source/GLControl/Properties/AssemblyInfo.cs:
* Source/Compatibility/Properties/AssemblyInfo.cs: Added
  AssemblyKeyFile and AllowPartialTrustCallers attributes.

* Source/OpenTK/Configuration.cs: Added [assemly: AssemblyKeyFile]
  attribute.
Added missing license information.
Moved [assembly: CLSCompliant] to Properies/AssemblyInfo.cs.
2009-09-04 10:34:18 +00:00
the_fiddler f8467ab767 * Keyboard.cs: Disabled fixed buffer due to gmcs 2.0.1 compiler bug
(bogus CS0214) warning.
Added license information.

* Mouse.cs:
* MouseState.cs:
* MouseDevice.cs:
* MouseButton.cs:
* KeyboardState.cs:
* KeyboardDevice.cs: Added license information.

* Key.cs: Added missing LastKey enum.
2009-09-03 21:15:12 +00:00
the_fiddler 0fdcb94ca9 * GamePad.cs:
* GamePadState.cs: Added initial implementations.
* Keyboard.cs:
* KeyboardState.cs: Added a number of public members, experimentally.
2009-09-03 20:53:48 +00:00
the_fiddler b5cd97c693 Added ColorAttachmenti tokens to ReadBufferMode enum. Fixes issue [#1140]: "ColorAttachment values on ReadBufferMode". 2009-09-03 20:14:54 +00:00
the_fiddler f6da09177e 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 2f5a0bfe3b * 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 0edbcae3b4 Removed unused code. 2009-09-02 23:02:14 +00:00
the_fiddler 9d3561dc4e Merged nativewindow branch to trunk. 2009-09-02 13:36:34 +00:00
the_fiddler 37f5c99d58 * DesktopGraphicsContext.cs: Removed unecessary using directives. 2009-08-25 10:36:46 +00:00
the_fiddler b5244f22c2 Added EmbeddedGraphicsContext as the foundation of all ES context implementations and modified EglContext to inherit from this. 2009-08-25 10:36:14 +00:00
the_fiddler 63314b0f82 * X11GLContext.cs: Remove context field in favor of GraphicsContextBase.Handle. Fixes issue 1121: "GraphicsContext fails with KeyNotFoundException on SVN trunk". 2009-08-25 09:03:19 +00:00
the_fiddler ecb70f9fd3 Fixed issue 1119: "[Compute] 'CL.GetPlatformIDs' missing 's'". 2009-08-20 21:36:57 +00:00
the_fiddler c6516c2255 Moved OpenTK.GLControl to its own project. 2009-08-19 14:17:47 +00:00
the_fiddler 073109c8c7 Fixed documentation warnings.
Removed duplicate code (due to BindingsBase class).
2009-08-19 13:22:12 +00:00
the_fiddler c1f41d1eb9 Moved Alut to OpenTK.Compatibility.
Moved SoundData and SoundFormat to OpenTK.Compatibility.
Moved AL and Alc classes to OpenTK.Audio.OpenAL and added the previous namespace to OpenTK.Compatibility.
Removed SoundData wrappers from AL class.
Updated samples to use the new API.
2009-08-17 10:32:20 +00:00
the_fiddler 7f970763a7 Moved GdiPlus wrappers to OpenTK.Compatibility.
Moved TextPrinter to OpenTK.Compatibility.
2009-08-17 10:29:51 +00:00
the_fiddler 775f158269 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 2747869a92 Added BindingsBase class that provides a common base for all generated bindings.
Made the OpenGL and OpenGL|ES bindings non static.
Made the OpenGL and OpenGL|ES bindings inherit from BindingsBase.
2009-08-17 10:20:42 +00:00
the_fiddler ebaf16bf8a Now use "Core" as default Settings.ImportsClass. 2009-08-17 10:15:29 +00:00
the_fiddler 1bcc012f35 Implemented INativeWindow.WindowBorderChanged and INativeWindow.WindowStateChanged events. 2009-08-17 09:34:15 +00:00
the_fiddler 0b36b2a779 Updated documentation to remove references to the 3.1 specification (this class always supports the full profile of the latest specification.) 2009-08-15 18:02:16 +00:00
the_fiddler 1f53422cf1 Normalized line endings. 2009-08-15 18:01:15 +00:00
the_fiddler e24402487c Regenerated bindings to fix CLSCompliance issues. 2009-08-15 17:51:03 +00:00
the_fiddler 68c985c6f4 Regenerated bindings using the latest generator updates. 2009-08-15 17:37:56 +00:00
the_fiddler e2bfabd659 Fixed compilation errors.
Moved bindings to the GL class.
2009-08-15 17:37:18 +00:00
the_fiddler 521c1211d3 Removed the various GetProcAddress methods (now handled by IGraphicsContextInternal).
Removed Imports nested class.
2009-08-15 16:56:36 +00:00
the_fiddler e4f1c956c9 Regenerated bindings using the latest generator updates.
ES bindings now exist in ES10.GL, ES11.GL and ES20.GL classes instead of ES10.ES etc (reason: easier porting to/from regular OpenGL).
2009-08-15 16:55:53 +00:00
the_fiddler 7a8bfc60ee Modified CreateX11WindowInfo to check GraphicsMode.Index.HasValue prior to using it. 2009-08-15 16:46:33 +00:00
the_fiddler 5d5f598707 Implemented EglContext construction according to AMD's OpenGL|ES samples. 2009-08-15 16:45:59 +00:00
the_fiddler 5515c59173 Added OutAttribute to array parameters that return values.
Added Egl.GetProcAddress method.
2009-08-15 16:45:21 +00:00
the_fiddler 9a6a539d26 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 b503c41bf1 Made GraphicsMode query non-eager. The GraphicsMode will only be queried on first access of its Index property, for example when creating an X11 window or a new GraphicsContext. 2009-08-15 16:03:54 +00:00
the_fiddler 0feae9b6e3 Added documentation. 2009-08-15 16:02:52 +00:00
the_fiddler 584fe3f301 Replaced libGLES.dll by libGLESv2.dll, which is provided by AMD's OpenGL|ES emulator. 2009-08-14 15:33:39 +00:00
the_fiddler 5464be873f Removed duplicate GetConfigAttrib calls. 2009-08-14 15:32:38 +00:00
the_fiddler d436bf5e14 Use Egl.GetDisplay to get a display connection from an EGLNativeDisplayType. 2009-08-14 15:19:37 +00:00
the_fiddler b5928c6dd4 Replaced libGLES_CM.dll by libEGL.dll, which is provided by the AMD OpenGL|ES emulator. 2009-08-14 15:17:42 +00:00
the_fiddler 5743d2bf3b Renamed GL folder to OpenGL, in order to match namespace. 2009-08-14 14:24:18 +00:00
the_fiddler 2e6a80624b Fixed GraphicsContextFlags.Embedded matching. 2009-08-14 14:18:30 +00:00
the_fiddler b240db8cd9 Added mathematical constants used by XNA (Pi, E, logarithms).
Removed unused code.
2009-08-14 14:15:30 +00:00