Reduce our internal dependence on the Cogl 1.x api

Since Cogl has started restricting what cogl 1.x api is exposed when
COGL_ENABLE_EXPERIMENTAL_2_0_API is defined and since we build all
Clutter internals with COGL_ENABLE_EXPERIMENTAL_2_0_API defined this
patch makes a first pass at reducing our internal use of the Cogl 1.x
api.

The most notable api that's no longer exposed to us internally is
the cogl_material_ api so this switches all Clutter internals to use the
cogl_pipeline_ api instead. This patch also makes quite a bit of
progress removing internal uses of CoglHandle although there is still
more to go.
This commit is contained in:
Robert Bragg
2012-02-21 15:55:51 +00:00
parent eff95eba4a
commit a8e631543e
12 changed files with 270 additions and 157 deletions

View File

@ -5,6 +5,18 @@
#include <cogl/cogl.h>
#include <cairo.h>
/* XXX: Some of the private parts in this header expect the
* CoglFramebuffer typedef from Cogl, but its possible for this header
* to be included without the experimental Cogl api having been
* selected by defining COGL_ENABLE_EXPERIMENTAL_API or
* COGL_ENABLE_EXPERIMENTAL_2_0_API.
*
* We declare a place holder type ourselves in this case...
*/
#ifndef COGL_ENABLE_EXPERIMENTAL_API
typedef struct _CoglFramebuffer CoglFramebuffer;
#endif
G_BEGIN_DECLS
#define CLUTTER_TYPE_STAGE_WINDOW (clutter_stage_window_get_type ())