summaryrefslogtreecommitdiff
path: root/gtk/gtkglarea.h
Commit message (Collapse)AuthorAgeFilesLines
* gl area: Add a few missing docsMatthias Clasen2015-04-261-0/+2
|
* More documentation fixesMatthias Clasen2015-03-131-4/+4
|
* Remove GdkGLProfileEmmanuele Bassi2015-02-121-5/+0
| | | | | | | | | | | | | | | The existence of OpenGL implementations that do not provide the full core profile compatibility because of reasons beyond the technical, like llvmpipe not implementing floating point buffers, makes the existence of GdkGLProfile and documenting the fact that we use core profiles a bit harder. Since we do not have any existing profile except the default, we can remove the GdkGLProfile and its related API from GDK and GTK+, and sweep the whole thing under the carpet, while we wait for an extension that lets us ask for the most compatible profile possible. https://bugzilla.gnome.org/show_bug.cgi?id=744407
* glarea: Add accessors for the required GL versionEmmanuele Bassi2015-02-121-0/+8
| | | | | Specifying the version of OpenGL is enough of a common operation that it should not require overriding the creation of the GdkGLContext.
* glarea: Clean up the headerEmmanuele Bassi2015-02-121-32/+25
|
* GtkGLArea: Add create-context signalAlexander Larsson2014-11-031-0/+6
| | | | | This lets you hook into the GL context creation which is useful if you want to share one GL context between GtkGLArea widgets.
* GtkGLArea: Add resize signalAlexander Larsson2014-10-301-0/+3
| | | | | This is very useful, as almost all GL code wants to recalculate the cameras each time the window size changes.
* GtkGLArea: Add profile propertyAlexander Larsson2014-10-301-0/+5
| | | | This lets you force a core 3.2 context if you want
* GtkGLArea: Major reworkingAlexander Larsson2014-10-301-0/+19
| | | | | | | | | | | | | | | | | | | | | | | | | This restructures the way buffers are allocated and bound in a way that is more flexible. Buffer operation happens in three phases: create_buffer() - Creates the gl objects allocate_buffers() - Allocates space for the buffers at a given size attach_buffers() - Attaches the buffers to the framebuffer and makes the framebuffer the default drawing target And destroy via delete_buffers() We call all these the first draw, and after that we allocate buffers each time the widget changes size until the buffers are deleted. We delete the buffers at unrealize. However, anyone that wants to manually control buffer allocation strategies can manually call allocate/delete_buffers(). There are also some other changes: * Support for stencil buffers. * A manual render mode where ::draw doesn't render unless you manually invalidated the previous rendering.
* gl: Make gdk_gl_context_make_current() return voidAlexander Larsson2014-10-131-1/+1
| | | | | | | | | | Its not really reasonable to handle failures to make_current, it basically only happens if you pass invalid arguments to it, and thats not something we trap on similar things on the X drawing side. If GL is not supported that should be handled by the context creation failing, and anything going wrong after that is essentially a critical (or an async X error).
* Add GtkGLArea widgetAlexander Larsson2014-10-131-0/+105