summaryrefslogtreecommitdiff
path: root/clutter/clutter-paint-node.h
Commit message (Collapse)AuthorAgeFilesLines
* Move header inclusion guard at the topEmmanuele Bassi2015-07-071-3/+3
| | | | | | | | GCC has some optimization for the inclusion guard, but they only work if the check is the outermost one. We're fairly inconsistent because of historical reasons, so we should ensure that we follow the same pattern in every public header.
* WARNING: Massive revert commitEmmanuele Bassi2015-01-031-13/+14
| | | | | | | | | | | | | | | | | | | | | Revert all the work that happened on the master branch. Sadly, this is the only way to merge the current development branch back into master. It is now abundantly clear that I merged the 1.99 branch far too soon, and that Clutter 2.0 won't happen any time soon, if at all. Since having the development happen on a separate branch throws a lot of people into confusion, let's undo the clutter-1.99 → master merge, and move back the development of Clutter to the master branch. In order to do so, we need to do some surgery to the Git repository. First, we do a massive revert in a single commit of all that happened since the switch to 1.99 and the API version bump done with the 89a2862b057423c3c1fc666e6fa776ccacf377dd commit. The history is too long to be reverted commit by commit without being extremely messy.
* 2.0: Remove CLUTTER_AVAILABLE_IN_1_*Emmanuele Bassi2013-04-051-13/+12
| | | | We are starting from scratch.
* 2.0: Remove all Since: annotationsEmmanuele Bassi2013-04-051-1/+1
| | | | We're starting from scratch.
* Don't do anything special with COGL_ENABLE_EXPERIMENTAL_2_0_APIJasper St. Pierre2013-02-201-2/+2
| | | | | | | This flag solely disables deprecated Cogl 1.0 API, so it shouldn't be used for feature checks. https://bugzilla.gnome.org/show_bug.cgi?id=694229
* Fixes for the API referenceEmmanuele Bassi2012-04-271-0/+9
| | | | Typos, missing symbols, and missing documentation.
* Annotate functionality added in 1.10Emmanuele Bassi2012-03-161-0/+13
|
* paint-nodes: Make part of the API internalEmmanuele Bassi2012-03-161-15/+0
| | | | | | | | At least for the time being, we only expose the parts of the API that we want to use internally and for new, out-of-tree Content implementations. The full PaintNode tree API will be made public in 1.12 once we branch master.
* Add PaintNode, an element on the render object treeEmmanuele Bassi2012-03-161-0/+95
Now that we have a proper scene graph API, we should split out the rendering part from the logical and event handling part. ClutterPaintNode is a lightweight fundamental type that encodes only the paint operations: pipeline state and geometry. At its most simple, is a way to structure setting up the programmable pipeline using a CoglPipeline, and submitting Cogl primitives. The important take away from this API is that you are not allowed to call Cogl API like cogl_set_source() or cogl_primitive_draw() directly. The interesting approach to this is that, in the future, we should be able to move to a purely retained mode: we will decide which actors need to be painted, they will update their own branch of the render graph, and we'll take the render graph and build all the rendering commands from that. For the 1.x API, we will have to maintain invariants and the existing behaviour, but as soon as we can break API, the old paint signal will just go away, and Actors will only be allowed to manipulate the render tree.