profile/ivi/clutter.git
14 years agocally: fixing public headers
Alejandro Piñeiro [Thu, 22 Jul 2010 11:19:34 +0000 (13:19 +0200)]
cally: fixing public headers

Cally headers were including specific clutter object headers.

This caused a problem including cally.h on a external program.

http://bugzilla.clutter-project.org/show_bug.cgi?id=2234

14 years agobuild: Add tesselator to the include paths
Emmanuele Bassi [Mon, 13 Sep 2010 10:31:46 +0000 (11:31 +0100)]
build: Add tesselator to the include paths

14 years agobuild: Generate ClutterJson in the top directory
Emmanuele Bassi [Mon, 13 Sep 2010 01:15:44 +0000 (02:15 +0100)]
build: Generate ClutterJson in the top directory

Instead of doing the shlib trick, build ClutterJson (if needed) inside
the top-level clutter/ directory - similar to a non-recursive layout.

Hopefully, one day, we'll be able to do this with a real non-recursive
layout.

14 years agobuild: List the units inside a file
Emmanuele Bassi [Mon, 13 Sep 2010 01:01:50 +0000 (02:01 +0100)]
build: List the units inside a file

This avoids trying to run test-conformance -l multiple times.

14 years agobuild: Remove gir files from dist
Emmanuele Bassi [Mon, 13 Sep 2010 01:01:21 +0000 (02:01 +0100)]
build: Remove gir files from dist

The introspection data is going to be generated, so it should never be
in the dist.

14 years agobuild: Do not build a noinst library for the tesselator
Emmanuele Bassi [Sun, 12 Sep 2010 18:25:47 +0000 (19:25 +0100)]
build: Do not build a noinst library for the tesselator

Let's try to keep Cogl's build as non-recursive as possible, in the hope
that one day we'll be able to make it fully non-recursive along with the
rest of Clutter.

14 years agocookbook: Use the new CLUTTER_KEY_* symbol constants
Emmanuele Bassi [Fri, 10 Sep 2010 17:21:45 +0000 (18:21 +0100)]
cookbook: Use the new CLUTTER_KEY_* symbol constants

Instead of the deprecated CLUTTER_* ones.

14 years agobuild: Disable deprecated API when building the cookbook examples
Emmanuele Bassi [Fri, 10 Sep 2010 17:21:19 +0000 (18:21 +0100)]
build: Disable deprecated API when building the cookbook examples

Make sure we always use the latest API.

14 years agokeysyms: Update the macros to CLUTTER_KEY_*
Emmanuele Bassi [Fri, 10 Sep 2010 12:41:49 +0000 (13:41 +0100)]
keysyms: Update the macros to CLUTTER_KEY_*

The keysyms defines in clutter-keysyms.h are generated from the X11 key
symbols headers by doing the equivalent of a pass of sed from XK_* to
CLUTTER_*. This might lead to namespace collisions, down the road.
Instead, we should use the CLUTTER_KEY_* namespace.

This commit includes the script, taken from GDK, that parses the X11
key symbols and generates two headers:

  - clutter-keysyms.h: the default included header, with CLUTTER_KEY_*
  - clutter-keysyms-compat.h: the compatibility header, with CLUTTER_*

The compat.h header file is included if CLUTTER_DISABLE_DEPRECATED is
not defined - essentially deprecating all the old key symbols.

This does not change any ABI and, assuming that an application or
library is not compiling with CLUTTER_DISABLE_DEPRECATED, the source
compatibility is still guaranteed.

14 years agointrospection: Add full path for the Clutter-1.0 inclusion
Lucas Rocha [Fri, 10 Sep 2010 16:48:12 +0000 (17:48 +0100)]
introspection: Add full path for the Clutter-1.0 inclusion

Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
14 years agobuild: Disable deprecated API when building Clutter
Emmanuele Bassi [Fri, 10 Sep 2010 13:27:56 +0000 (14:27 +0100)]
build: Disable deprecated API when building Clutter

Make sure we don't use deprecated API internally by adding
CLUTTER_DISABLE_DEPRECATED to the AM_CPPFLAGS.

This requires adding -UCLUTTER_DISABLE_DEPRECATED to the introspection
scanner CFLAGS, otherwise the deprecated API will never be introspected
and the data generated will not be compatible.

14 years agoDo not use deprecated API internally
Emmanuele Bassi [Fri, 10 Sep 2010 13:27:37 +0000 (14:27 +0100)]
Do not use deprecated API internally

14 years agoUpdate the NEWS
Emmanuele Bassi [Fri, 10 Sep 2010 11:24:37 +0000 (12:24 +0100)]
Update the NEWS

14 years agoactor: Add a method for querying key focus
Emmanuele Bassi [Fri, 10 Sep 2010 10:42:11 +0000 (11:42 +0100)]
actor: Add a method for querying key focus

A simple convenience method on Clutter.Actor for checking whether
it has key focus assigned on the Stage to which it belongs.

14 years agoanimation: Allow detaching an animation from an actor
Emmanuele Bassi [Fri, 10 Sep 2010 10:18:53 +0000 (11:18 +0100)]
animation: Allow detaching an animation from an actor

When animating an actor through clutter_actor_animate() and friends we
might want forcibly detach the animation instance from the actor in
order to start a new one - for instance, in response to user
interaction.

Currently, there is no way to do that except in a very convoluted way,
by emitting the ::completed signal and adding a special case in the
signal handlers; this is due to the fact that clutter_actor_animate()
adds more logic than the one added by clutter_animation_set_object(),
so calling set_object(NULL) or unreferencing the animation instance
itself won't be enough.

The right way to approach this is to add a new method to Clutter.Actor
that detaches any eventual Animation currently referencing it.

http://bugzilla.clutter-project.org/show_bug.cgi?id=2051

14 years agointrospection: Don't look for installed Cogl-1.0.gir
Colin Walters [Thu, 9 Sep 2010 22:01:40 +0000 (23:01 +0100)]
introspection: Don't look for installed Cogl-1.0.gir

If we're depending on an uninstalled .gir, use --include-uninstalled.
We need to explicitly specify Cogl to let the scanner know it's also
uninstalled.

Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
14 years agointrospection: Don't look for installed Clutter-1.0.gir
Colin Walters [Thu, 9 Sep 2010 17:32:13 +0000 (13:32 -0400)]
introspection: Don't look for installed Clutter-1.0.gir

If we're depending on an uninstalled .gir, use --include-uninstalled.

14 years agopo: Update Polish localization
Emmanuele Bassi [Thu, 9 Sep 2010 15:45:51 +0000 (16:45 +0100)]
po: Update Polish localization

14 years agoAdded documentation for alpha parameter in Behaviour constructors.
Chris Kühl [Thu, 9 Sep 2010 14:41:37 +0000 (16:41 +0200)]
Added documentation for alpha parameter in Behaviour constructors.

http://bugzilla.clutter-project.org/show_bug.cgi?id=2304

Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
14 years agocogl-vertex-buffer: Flush the framebuffer state first
Neil Roberts [Thu, 9 Sep 2010 11:15:59 +0000 (12:15 +0100)]
cogl-vertex-buffer: Flush the framebuffer state first

Flushing the framebuffer state can cause some drawing to occur if the
framebuffer has a clip stack which needs the stencil buffer. This was
causing the array pointers set up by enable_state_for_drawing_buffer
to get mangled so it would crash when it hits glDrawArrays. This patch
moves the framebuffer state flush to before it sets up the array
pointers.

http://bugzilla.clutter-project.org/show_bug.cgi?id=2297

14 years agobuild: Allow using gettext 0.17
Emmanuele Bassi [Thu, 9 Sep 2010 10:58:03 +0000 (11:58 +0100)]
build: Allow using gettext 0.17

This requires some autotools magic when setting up the environment
through autogen.sh, because autoreconf does not do the right thing
by default.

The correct order for setting up localization is:

  ‣ autopoint
  ‣ aclocal
  ‣ ...

otherwise aclocal will copy the system's gettext.m4 instead of honouring
the version we specified with AM_GNU_GETTEXT_VERSION in configure.ac.

14 years agopo: Update German localization
Emmanuele Bassi [Thu, 9 Sep 2010 10:39:56 +0000 (11:39 +0100)]
po: Update German localization

14 years agoClutterX11TexturePixmap: Fix unbalanced error trapping
Robert Bragg [Wed, 8 Sep 2010 22:33:45 +0000 (23:33 +0100)]
ClutterX11TexturePixmap: Fix unbalanced error trapping

I think this is what commit 2cf140550635 intended to do since it
specifically mentioned cleaning up the trap in
clutter_x11_texture_pixmap_set_pixmap, but although it moved the untrap
to only be done in the case where Pixmap != None it left the position of
the trap itself unchanged. This meant the error trapping wouldn't be
balanced if pixmap == None since the untrap wouldn't be done. We now
only trap and untrap around the XGetGeometry call done when pixmap !=
None.

http://bugzilla.clutter-project.org/show_bug.cgi?id=2303

14 years agobuild: Add ClutterX11 introspection generation
Emmanuele Bassi [Wed, 8 Sep 2010 17:27:12 +0000 (18:27 +0100)]
build: Add ClutterX11 introspection generation

14 years agobuild: Add XML files to the ignore blacklist
Emmanuele Bassi [Wed, 8 Sep 2010 16:50:38 +0000 (17:50 +0100)]
build: Add XML files to the ignore blacklist

14 years agox11-texture-pixmap: Do not go through g_object_get()
Emmanuele Bassi [Wed, 8 Sep 2010 16:39:04 +0000 (17:39 +0100)]
x11-texture-pixmap: Do not go through g_object_get()

The pixmap width and height are stored in our own private data
structure; going through g_object_get() is pointless overhead.

14 years agoClean up CoglTexturePixmapX11 first
Owen W. Taylor [Wed, 8 Sep 2010 15:34:58 +0000 (11:34 -0400)]
Clean up CoglTexturePixmapX11 first

With currently distributed versions of Mesa, calling XFreePixmap()
before glxDestroyPixmap() will cause an X error from DRI. So, we
need to make sure that we get rid of the CoglTexturePixmapX11 before
we XFreePixmap().

clutter_x11_texture_pixmap_dispose(): Call
 clutter_x11_texture_pixmap_set_pixmap() instead of using XFreePixmap
 directly so that we leverage the text-clearing hack and destroy
 things in the right order.

clutter_x11_texture_pixmap_set_pixmap(): Don't do a pointless roundtrip
 and trap a pointless error when setting pixmap to None.

clutter_x11_texture_pixmap_set_pixmap(): Free damage resources when
 we are setting Pixmap to None.

clutter_x11_texture_pixmap_set_window(): When setting a new window
 or setting the window to None, immedediately  call
 cluter_x11_texture_pixmap_set_pixmap(). This means that set_window(None)
 immediately will free any referenced resources related to the window.

http://bugzilla.clutter-project.org/show_bug.cgi?id=2303

14 years agoAdd caller-allocates annotations
Emmanuele Bassi [Wed, 8 Sep 2010 16:04:21 +0000 (17:04 +0100)]
Add caller-allocates annotations

For ClutterColor, ClutterUnits, ClutterInterval and the Perspective
accessor in ClutterStage.

14 years agoFurther annotation fixes
Emmanuele Bassi [Wed, 8 Sep 2010 15:41:47 +0000 (16:41 +0100)]
Further annotation fixes

14 years agointrospection: Add missing (out) annotations
Owen W. Taylor [Wed, 8 Sep 2010 14:37:58 +0000 (10:37 -0400)]
introspection: Add missing (out) annotations

Comprehensively add (out) annotations to functions parameters
returning int/float/double.

Not handled here: structure out returns like ClutterColor or
ClutterPerspective or GValue that should get (out caller-allocates).

Not handled here: Cogl

http://bugzilla.clutter-project.org/show_bug.cgi?id=2302

14 years agoConstify Event accessors and copy method
Emmanuele Bassi [Wed, 8 Sep 2010 14:15:57 +0000 (15:15 +0100)]
Constify Event accessors and copy method

This is still C, but at least we can get some sort of safety net when
using the API correctly.

14 years agopo: Rename the POT file
Emmanuele Bassi [Wed, 8 Sep 2010 13:48:40 +0000 (14:48 +0100)]
po: Rename the POT file

14 years agopo: Add clutter.pot to the repository
Emmanuele Bassi [Wed, 8 Sep 2010 13:40:52 +0000 (14:40 +0100)]
po: Add clutter.pot to the repository

Since we're not using intltool, and since we need to let people on
Transifex generate their translations, we need to add the POT file
to the repository.

14 years agopo: Add italian translation
ElleUca [Wed, 8 Sep 2010 11:44:43 +0000 (12:44 +0100)]
po: Add italian translation

14 years agopo: Update the translation files
Emmanuele Bassi [Wed, 8 Sep 2010 11:25:25 +0000 (12:25 +0100)]
po: Update the translation files

We are finally able to add the properties nicks and blurbs to the list
of translatable strings, for UI builders to use. This means bumping the
list of strings from 20-ish to a whopping 400. Whoopsie.

14 years agoAdd more /po files to the ignore list
Emmanuele Bassi [Wed, 8 Sep 2010 11:25:02 +0000 (12:25 +0100)]
Add more /po files to the ignore list

14 years agobuild: Update autogen.sh
Emmanuele Bassi [Wed, 8 Sep 2010 11:23:50 +0000 (12:23 +0100)]
build: Update autogen.sh

Remove the fix-ups for shave and gtk-doc with libtool 1.5: we don't use
shave any more, and we require libtool 2.2.

Also remove the unnecessary autopoint: we use autoreconf, which calls it
automatically.

14 years agobuild: Bump gettext version
Emmanuele Bassi [Wed, 8 Sep 2010 11:22:58 +0000 (12:22 +0100)]
build: Bump gettext version

Apparently, gettext can only work with the same exact version it's
autogenerated from.

14 years agoIgnore more files under /po
Emmanuele Bassi [Wed, 8 Sep 2010 10:56:06 +0000 (11:56 +0100)]
Ignore more files under /po

14 years agoUpdate ignore files for m4 macros
Emmanuele Bassi [Wed, 8 Sep 2010 10:53:07 +0000 (11:53 +0100)]
Update ignore files for m4 macros

14 years agoAdd Makevars
Emmanuele Bassi [Wed, 8 Sep 2010 10:50:09 +0000 (11:50 +0100)]
Add Makevars

14 years agobuild: Use upstream gettext instead the glib one
Javier Jardón [Tue, 7 Sep 2010 22:35:06 +0000 (00:35 +0200)]
build: Use upstream gettext instead the glib one

Fixes http://bugzilla.clutter-project.org/show_bug.cgi?id=2300

14 years agointrospection: Fix annotation for clutter_container_get_children()
Owen W. Taylor [Tue, 7 Sep 2010 23:56:42 +0000 (19:56 -0400)]
introspection: Fix annotation for clutter_container_get_children()

(element-type) should have a full name like Clutter.Actor rather than
a non-namespaced name like Actor. gobject-introspection has become
more strict about this with the recent scanner rewrite.

http://bugzilla.clutter-project.org/show_bug.cgi?id=2301

14 years agobuild: Update introspection.m4
Emmanuele Bassi [Tue, 7 Sep 2010 20:10:40 +0000 (21:10 +0100)]
build: Update introspection.m4

14 years agobuild: Add escaping in AS_IF()
Emmanuele Bassi [Tue, 7 Sep 2010 15:17:51 +0000 (16:17 +0100)]
build: Add escaping in AS_IF()

Based on a patch by: Owen W. Taylor <otaylor@fishsoup.net>

14 years agoMakefile.am.enums: Forgot an AM_V_GEN
Emmanuele Bassi [Tue, 7 Sep 2010 14:23:35 +0000 (15:23 +0100)]
Makefile.am.enums: Forgot an AM_V_GEN

14 years agobuild: Fix up rules for enums and marshallers
Emmanuele Bassi [Tue, 7 Sep 2010 13:47:59 +0000 (14:47 +0100)]
build: Fix up rules for enums and marshallers

• Use addprefix instead of manually concatenating $(srcdir)
• Use AM_V_GEN instead of QUIET_GEN, to avoid inter-dependencies
• Do basic checks on GLIB_MKENUMS and GLIB_GENMARSHAL being defined
• Do checks on the required variables being defined

14 years agobuild: Make the generated glib-mkenums c file depend on the headers
Damien Lespiau [Tue, 7 Sep 2010 13:17:18 +0000 (14:17 +0100)]
build: Make the generated glib-mkenums c file depend on the headers

What happens now if you rename an enum inside a header:

  • glib-mkenums generates the header file
  • a comparison is made with the previous version of the heade is made
    and no difference is found as you don't remove or create enums
  • the compilation of the generated mkenums c file fails because it has
    not been regenerated with the new, renamed, enum.

That's why the generated clutter-enum-types.c needs to depend on the
headers too.

Of course such scenario should not happen in stable releases as enums
are part of the API, but renaming enums happens in the development cycle
and create compilation errors (very annoying when doing git bissects for
instance).

14 years agodrag-action: Added x-drag-threshold and y-drag-threshold properties
Henrik Hedberg [Fri, 3 Sep 2010 17:00:40 +0000 (20:00 +0300)]
drag-action: Added x-drag-threshold and y-drag-threshold properties

                *** This is an API change ***

Replaced the original drag-threshold property with two separate
horizontal (x-drag-threshold) and vertical (y-drag-threshold)
thresholds.

It is some times necessary to have different drag thresholds for the
horizontal and vertical axes. For example, when a draggable actor is
inside a horizontal scrolling area, only vertical movement must begin
dragging. That can be achieved by setting the x-drag-threshold to
G_MAXUINT while y-drag-threshold is something usual, say, 20 pixels.

This is different than drag axis, because after the threshold
has been cleared by the pointer, the draggable actor can be dragged
along both axes (if allowed by the drag-axis property).

http://bugzilla.clutter-project.org/show_bug.cgi?id=2291

Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
14 years agotexture: Move the material unref() in ::dispose
Emmanuele Bassi [Mon, 6 Sep 2010 17:08:44 +0000 (18:08 +0100)]
texture: Move the material unref() in ::dispose

14 years agotexture: Do some more validation in get_cogl_texture()
Emmanuele Bassi [Mon, 6 Sep 2010 16:50:57 +0000 (17:50 +0100)]
texture: Do some more validation in get_cogl_texture()

Check the layer type, even though right now we only have one type
available.

14 years agotexture: Use a base material for all instances
Emmanuele Bassi [Thu, 2 Sep 2010 13:48:30 +0000 (14:48 +0100)]
texture: Use a base material for all instances

Creating new materials for every Texture instance results in a lot of
ARBfp programs being generated/compiled. Since most textures will just
be similar we should create a template material for all of them, and
then copy it in every instance. Cogl will try to optimize the generation
of the program and, hopefully, will reuse the same program most of the
time.

With this change, a simple test shows that loading 48 textures will
result in just two programs being compiled - with and without batching
enabled.

http://bugzilla.clutter-project.org/show_bug.cgi?id=2295

14 years agomaterial: Check before unreferencing a texture
Emmanuele Bassi [Mon, 6 Sep 2010 17:07:07 +0000 (18:07 +0100)]
material: Check before unreferencing a texture

When disposing a material layer of type 'texture' we should check that
the texture handle is still valid before calling cogl_handle_unref().
This avoids an assertion failure when disposing a ClutterTexture.

14 years agoAdd some more introspection annotations
Emmanuele Bassi [Mon, 6 Sep 2010 15:11:46 +0000 (16:11 +0100)]
Add some more introspection annotations

14 years agodocs: Fix up the Cogl API reference build
Emmanuele Bassi [Fri, 3 Sep 2010 16:15:22 +0000 (17:15 +0100)]
docs: Fix up the Cogl API reference build

14 years agocogl-shader: Add deprecation guards for cogl_program_uniform_*
Emmanuele Bassi [Fri, 3 Sep 2010 15:56:12 +0000 (16:56 +0100)]
cogl-shader: Add deprecation guards for cogl_program_uniform_*

14 years agoReplace cogl_color_set_from_* with cogl_color_init_from_*
Emmanuele Bassi [Fri, 3 Sep 2010 15:55:12 +0000 (16:55 +0100)]
Replace cogl_color_set_from_* with cogl_color_init_from_*

The former is not yet "officially" deprecated by the latter, but it's
confusing to have them both in the code base.

14 years agodocs: Add annotation glossary to the Cogl API reference
Emmanuele Bassi [Fri, 3 Sep 2010 15:52:06 +0000 (16:52 +0100)]
docs: Add annotation glossary to the Cogl API reference

It's the only way to let gtk-doc know that we're using annotations in
the comments.

14 years agodocs: Fixes for gtk-doc
Emmanuele Bassi [Fri, 3 Sep 2010 15:10:44 +0000 (16:10 +0100)]
docs: Fixes for gtk-doc

14 years agodocs: Update NEWS
Emmanuele Bassi [Fri, 3 Sep 2010 14:53:52 +0000 (15:53 +0100)]
docs: Update NEWS

14 years agocookbook: Add a short introduction for the Text chapter
Emmanuele Bassi [Fri, 3 Sep 2010 14:44:03 +0000 (15:44 +0100)]
cookbook: Add a short introduction for the Text chapter

14 years agocookbook: Added recipe for complex animation
Elliot Smith [Fri, 3 Sep 2010 13:31:44 +0000 (14:31 +0100)]
cookbook: Added recipe for complex animation

Uses ClutterAnimator to implement a reasonably complex
animation of a single actor (movement along a path with
simultaneous scaling).

Provides a metaphor for thinking about ClutterAnimator
animations (stage directions) and explains keys and key
frames in some depth. Also compares ClutterAnimator
with other possible approaches to this type of animation
(implicit animations, ClutterState).

14 years agocookbook: Added a second example to show "overlapping" transitions
Elliot Smith [Fri, 3 Sep 2010 10:56:33 +0000 (11:56 +0100)]
cookbook: Added a second example to show "overlapping" transitions

Added another JSON example to show how transitions can
be easily overlapped when using ClutterAnimator (two
sequences of 5 transitions, simultaneous with two
sequences of 1 transition).

Modified the C JSON loader program so it can be used with
this example as well.

14 years agocookbook: Added complex animations example
Elliot Smith [Wed, 1 Sep 2010 17:02:07 +0000 (18:02 +0100)]
cookbook: Added complex animations example

To support recipe about using ClutterAnimator to create
complex animations.

14 years agodocs: Update NEWS
Emmanuele Bassi [Fri, 3 Sep 2010 13:05:20 +0000 (14:05 +0100)]
docs: Update NEWS

14 years agobuild: Allow disabling linking with -Bsymbolic
Emmanuele Bassi [Fri, 3 Sep 2010 12:55:07 +0000 (13:55 +0100)]
build: Allow disabling linking with -Bsymbolic

Some debugging tools might require full visibility for the Clutter
symbols; for this reason, and to match what the Clutter dependencies
already allow, we should provide a configure switch to disable linking
with the -Bsymbolic flag.

14 years agointrospection: Add annotations
Emmanuele Bassi [Fri, 3 Sep 2010 11:14:50 +0000 (12:14 +0100)]
introspection: Add annotations

Reduce the amount of warnings coming from g-ir-scanner.

14 years agodocs: Update the dependencies
Emmanuele Bassi [Fri, 3 Sep 2010 10:33:20 +0000 (11:33 +0100)]
docs: Update the dependencies

We depend on G-I 0.9.5 after the latest slew of changes.

We also depend on UProf 0.3.

14 years agobuild: Use Makefile.introspection
Emmanuele Bassi [Fri, 3 Sep 2010 10:09:57 +0000 (11:09 +0100)]
build: Use Makefile.introspection

Whenever possible, instead of writing our own rules for generating GIR
files and typelibs.

14 years agointrospection: Build fixes
Colin Walters [Thu, 2 Sep 2010 15:45:42 +0000 (11:45 -0400)]
introspection: Build fixes

This patch merges in substantial work from
Emmanuele Bassi <ebassi@linux.intel.com>

* Use new introspection --include-uninstalled API since we don't want
  to try to find the clutter-1.0.pc file before it's installed.
* Use --pkg-export for Clutter-1.0.gir, since we want the .gir file to
  contain the associated pkg-config file.
* Drop the use of --pkg for dependencies; those come from the associated
  .gir files.  (Actually, --pkg is almost never needed)
* Add --quiet

http://bugzilla.clutter-project.org/show_bug.cgi?id=2292

14 years agocex100: Remove C99-ism
Damien Lespiau [Thu, 2 Sep 2010 15:22:45 +0000 (16:22 +0100)]
cex100: Remove C99-ism

We were declaring a variable in the middle of the code. Blasphemy, for
non-c99 compilers.

14 years agocex100: Use % not # to document constants
Damien Lespiau [Thu, 2 Sep 2010 15:20:10 +0000 (16:20 +0100)]
cex100: Use % not # to document constants

gtk-doc contants should be prefixed by %, not # (types).

14 years agocex100: Add an API to configure the buffering mode of the GDL plane
Damien Lespiau [Sat, 28 Aug 2010 11:06:11 +0000 (12:06 +0100)]
cex100: Add an API to configure the buffering mode of the GDL plane

GDL planes can be double or triple buffered. Let the user choose between
the two modes befored initalizing Clutter.

14 years agocex100: Add an API to configure the GDL plane to use
Damien Lespiau [Sat, 28 Aug 2010 09:43:39 +0000 (10:43 +0100)]
cex100: Add an API to configure the GDL plane to use

Intel CE3100 and CE4100 have several planes (framebuffers) and a
hardware blender to blend the planes togeteher to produce the final
image.

clutter_cex100_set_plane() lets you configure which framebuffer clutter
will use for its rendering.

14 years agoegl: Fix the installed headers
Damien Lespiau [Fri, 27 Aug 2010 15:19:00 +0000 (16:19 +0100)]
egl: Fix the installed headers

 • Use the public COGL_HAS_GLES[12] define instead of the HAVE_COGL_*
   ones which are private and defined in config.h,
 • Install clutter-egl-headers.h which is needed by clutter-egl.h,
 • Remove clutter-stage.h as it's uneeded and does not work since the
   single clutter.h include policy,
 • Install the egl headers into their own egl directory as the x11 and
   glx backends do. The include should then be <clutter/egl/clutter-egl.h>,
   so document it. It does not really break anything as nobody could
   have used those broken headers.

14 years agocex100: Add a Clutter EGL backend for CE3100/CE4100 SoCs
Damien Lespiau [Thu, 12 Aug 2010 13:25:17 +0000 (09:25 -0400)]
cex100: Add a Clutter EGL backend for CE3100/CE4100 SoCs

Intel CE3100 and CE4100 SoCs are designed for TVs. They have separate
framebuffers that are blended together by a piece of hardware to make
the final output. The library that allows you to initialize and
configure those planes is called GDL. A EGL GDL winsys can then be
use with those planes as NativeWindowType to select which plane to use.

This patch adds a new ClutterBackendCex100 backend that can be
selected at compile time with the new --with-flavour=cex100 option.

14 years agoegl: Fix compilation for EGL native
Damien Lespiau [Thu, 12 Aug 2010 13:05:01 +0000 (09:05 -0400)]
egl: Fix compilation for EGL native

Some minor fixes here and there: missing include, wrongly placed #endif,
unused variable warning fixes, missing #ifdef.

Make ClutterStageEGL a subclass of either ClutterStageX11 or GObject
depending if you compile with X11 support (EGLX) or not (native).

14 years agooffscreen-effect: Rename create_target to create_buffer
Emmanuele Bassi [Wed, 1 Sep 2010 16:56:15 +0000 (17:56 +0100)]
offscreen-effect: Rename create_target to create_buffer

                *** This is an API change ***

The create_target() virtual function should return a CoglHandle to a
texture; clutter_offscreen_effect_get_target(), instead, returns a
CoglMaterial to be painted in the implementation of the paint_target()
virtual function.

Instead of equating textures with materials, and confusing the user of
the API, we should mark the difference more prominently.

First of all, we should return a CoglMaterial* (now that we have that
as a public type) in get_target(); having handles all over the place
does not make it easier to distinguish the semantics of the virtual
functions.

Then we should rename create_target() to create_texture(), to make it
clear that what should be returned is a texture that is used as the
backing for the offscreen framebuffer.

14 years agocookbook: Added recipe for signal handling in ClutterScript
Elliot Smith [Tue, 31 Aug 2010 13:39:03 +0000 (14:39 +0100)]
cookbook: Added recipe for signal handling in ClutterScript

Added a recipe explaining how to connect signals to handlers
in the JSON definition used by ClutterScript; also shows
how to connect the signals in code once the JSON has been
loaded.

Includes guidelines on writing handlers (i.e. need to use
-export-dynamic and non-static functions) and example
which connects a handler for motion events on a rectangle.

14 years agocookbook: Added example of connecting signals in ClutterScript
Elliot Smith [Fri, 27 Aug 2010 15:31:00 +0000 (16:31 +0100)]
cookbook: Added example of connecting signals in ClutterScript

To support recipe about connecting signals in script.

14 years agodocs: Pass -DCOGL_ENABLE_EXPERIMENTAL_API when scanning
Emmanuele Bassi [Sat, 28 Aug 2010 20:21:08 +0000 (21:21 +0100)]
docs: Pass -DCOGL_ENABLE_EXPERIMENTAL_API when scanning

14 years agodocs: Split x11-texture-pixmap in its own section
Emmanuele Bassi [Sat, 28 Aug 2010 20:18:12 +0000 (21:18 +0100)]
docs: Split x11-texture-pixmap in its own section

14 years agodocs: Fix up the main index of the Clutter API reference
Emmanuele Bassi [Sat, 28 Aug 2010 20:17:52 +0000 (21:17 +0100)]
docs: Fix up the main index of the Clutter API reference

14 years agodocs: Add @Title to the X11TexturePixmap gtk-doc section
Emmanuele Bassi [Sat, 28 Aug 2010 20:17:23 +0000 (21:17 +0100)]
docs: Add @Title to the X11TexturePixmap gtk-doc section

14 years agocookbook: Use nicknames for enumeration values
Elliot Smith [Fri, 27 Aug 2010 14:29:09 +0000 (15:29 +0100)]
cookbook: Use nicknames for enumeration values

GEnum nicknames can be used to set properties in JSON
definitions, so added a callout to the JSON example explaining
this, and showing how to derive the nickname for an enumeration
value.

Modified the example code to use nicknames as well.

14 years agocookbook: Don't use the default stage
Elliot Smith [Fri, 27 Aug 2010 14:13:28 +0000 (15:13 +0100)]
cookbook: Don't use the default stage

It's not necessary to use the default stage, so
don't encourage this in the JSON example.

14 years agocookbook: Mention nick names as possible values for enums
Elliot Smith [Fri, 27 Aug 2010 14:10:17 +0000 (15:10 +0100)]
cookbook: Mention nick names as possible values for enums

As JSON can make use of nicknames for GEnum properties,
mentioned this in the table mapping C property values
to their JSON equivalents (as the nick name is a much
shorter and cleaner way of setting a property in JSON).

14 years agocookbook: Added introduction to and recipe on ClutterScript
Elliot Smith [Fri, 27 Aug 2010 10:20:29 +0000 (11:20 +0100)]
cookbook: Added introduction to and recipe on ClutterScript

Wrote an introduction to using ClutterScript with JSON. Focus
is on explaining why you might want to use it, basic principles
of operation (with annotated JSON sample), and how to map
data types from C to JSON.

Written simultaneously with a short recipe (uses the same sample
code) showing how to load a JSON file and retrieve objects
from it in code.

14 years agocookbook: Added comments to script example
Elliot Smith [Thu, 26 Aug 2010 16:07:21 +0000 (17:07 +0100)]
cookbook: Added comments to script example

Commented the ClutterScript example so it can be used
inline as part of the recipe, rather than as an
example in the appendix (it's too simple to warrant
a separate appendix).

14 years agocookbook: Added first draft of script introduction
Elliot Smith [Thu, 26 Aug 2010 11:51:33 +0000 (12:51 +0100)]
cookbook: Added first draft of script introduction

New script chapter needs an introduction.

While writing the introduction, also slightly changed the
emphasis of the recipe (towards refactoring an existing
application to use ClutterScript) and incorporated example
code into documentation.

14 years agocookbook: Use text for callouts in documentation
Elliot Smith [Thu, 26 Aug 2010 11:49:59 +0000 (12:49 +0100)]
cookbook: Use text for callouts in documentation

Set a parameter on the XSLT transform so that callout elements
are rendered as text rather than graphics (removes the need
to add callout graphics to the build).

14 years agocookbook: Added skeleton for script chapter of cookbook
Elliot Smith [Thu, 26 Aug 2010 10:07:54 +0000 (11:07 +0100)]
cookbook: Added skeleton for script chapter of cookbook

14 years agocookbook: Simplified ClutterScript example
Elliot Smith [Thu, 26 Aug 2010 09:52:12 +0000 (10:52 +0100)]
cookbook: Simplified ClutterScript example

There was too much in the example code to cover in a single
recipe, so I trimmed it down to demonstrate simple
UI building (no constraints, effects, animations, or signals).

14 years agocookbook: Added ClutterScript example
Elliot Smith [Wed, 25 Aug 2010 16:53:46 +0000 (17:53 +0100)]
cookbook: Added ClutterScript example

Added a simple script and program to load it, to support
recipe on ClutterScript for UI definitions.

Also amended the Makefile (following the pattern of
the tests/interactive Makefile) to enable signal
connection from ClutterScript by passing -export-dynamic
to linker.

14 years agotest-actors: Name all the actors
Emmanuele Bassi [Thu, 26 Aug 2010 16:31:32 +0000 (17:31 +0100)]
test-actors: Name all the actors

Makes it easier to debug events.

14 years agoclick-action: Add get_button()
Emmanuele Bassi [Thu, 26 Aug 2010 15:36:59 +0000 (16:36 +0100)]
click-action: Add get_button()

Allow retrieving the pointer button that caused the ::clicked signal to
be emitted.

http://bugzilla.clutter-project.org/show_bug.cgi?id=2287

14 years agoclick-action: Fix the release() method name
Emmanuele Bassi [Thu, 26 Aug 2010 15:36:06 +0000 (16:36 +0100)]
click-action: Fix the release() method name

Documented and declared as release(), it's implemented as
force_release().

http://bugzilla.clutter-project.org/show_bug.cgi?id=2286

14 years agotest-script-parser: Add a second child to the container
Bastian Winkler [Tue, 24 Aug 2010 10:13:30 +0000 (12:13 +0200)]
test-script-parser: Add a second child to the container

The script parser won't apply child and layout properties correctly with
more than one children.

http://bugzilla.clutter-project.org/show_bug.cgi?id=2285

Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
14 years agoscript-parser: Apply child and layout properties to the right actor
Bastian Winkler [Tue, 24 Aug 2010 10:16:50 +0000 (12:16 +0200)]
script-parser: Apply child and layout properties to the right actor

http://bugzilla.clutter-project.org/show_bug.cgi?id=2285

Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
14 years agowin32: Fix the check for the 'IN_DESTRUCTION' flag
Neil Roberts [Tue, 24 Aug 2010 19:00:04 +0000 (20:00 +0100)]
win32: Fix the check for the 'IN_DESTRUCTION' flag

Commit eae45619299 tried to clean how it checks for the private actor
flags. However the check for the 'IN_DESTRUCTION' flag in the Win32
backend got inverted so it would always clear the current
context. This was causing _cogl_check_driver_valid to fail later and
then the realize would get stuck in a infinite loop.