Commit Graph

35 Commits

Author SHA1 Message Date
Emmanuele Bassi
df15f04fc0 build: Use libtool macros to find libm
Instead of using `-lm` everywhere, use LT_LIB_M inside configure.ac, and
$(LIBM) inside Makefile.am.
2015-03-03 17:23:37 +00:00
Emmanuele Bassi
2a660fa298 Fully rework the conformance test suite
The current conformance test suite is suboptimal in many ways.

All tests are built into the same binary, which makes adding new tests,
builting tests, and running groups of tests much more awkward than it
needs to be. The first issue, especially, raises the bar of contribution
in a significant way, while the other two take their toll on the
maintainer. All of these changes were introduced back when we had both
Clutter and Cogl tests in tree, and because we were building the test
suite for every single change; since then, Cogl moved out of tree with
all its tests, and we build the conformance test suite only when running
the `check` make target.

This admittedly large-ish commit changes the way the conformance test
suite works, taking advantage of the changes in the GTest API and test
harness.

First of all, all tests are now built separately, using their own test
suite as defined by each separate file. All tests run under the TAP
harness provided by GTest and Automake, to gather a proper report using
the Test Anything Protocol without using the `gtester` harness and the
`gtester-report` script. We also use the Makefile rules provided by GLib
to vastly simplify the build environment for the conformance test suite.

On top of the changes for the build and harness, we also provide new API
for creating and running test suites for Clutter. The API is public,
because the test suite has to use it, but it's minimal and mostly
provides convenience wrappers around GTest that make writing test units
for Clutter easier.

This commit disables all tests in the conformance test suite, as well as
moving the data files outside of the tests/data directory; the next few
commits will re-establish the conformance test suite separately so we
can check that everything works in a reliable way.
2013-12-12 18:51:11 +00:00
Emmanuele Bassi
323ec19dcc build: Remove INCLUDES directives
They have been deprecated for a while, replaced by AM_CPPFLAGS.
2013-05-15 15:18:13 +01:00
Emanuele Aina
9ca06d2895 pan-action: add PanAction, to handle panning in scrollable actors
PanAction is a GestureAction-subclass that implements the panning
concept for scrollable actors, with the ability to emit interpolated
signals to emulate the kinetic inertia of the panning. PanAction provides:

• pan signal, notifying users of the panning gesture status;

• pan-stopped signal, emitted at the end of the interpolated phase
  of the panning gesture, if enabled;

• pan-axis property, to allow constraining the dragging to a specific
  axis;

• interpolated property, to enable or disable the inertial behaviour;

• deceleration property, to customize the rate at which the momentum
  of the panning will be slowed down;

• acceleration-factor property, applied to the inertial momentum when
  starting the interpolated sequence.

An interactive test is also provided.

https://bugzilla.gnome.org/show_bug.cgi?id=681648
2012-08-28 10:11:16 -03:00
Emmanuele Bassi
41ed9023eb build: Fix out of tree builds 2012-07-30 12:33:24 +01:00
Emmanuele Bassi
ebb61dea1f examples: Enable maintainer compiler flags
Another step in keeping the example code up to date and correct.
2012-06-06 13:39:50 +01:00
Emmanuele Bassi
75ef676b15 examples: Build with deprecation warnings turned on
We want to ensure that the examples stay valid and idiomatic; thus, we
should build them with deprecation warnings turned on.
2012-06-06 13:37:05 +01:00
Bastian Winkler
dae25d839e examples: Add a grid-layout example
A fairly complete example for ClutterGridLayout

https://bugzilla.gnome.org/show_bug.cgi?id=677372
2012-06-05 12:28:40 +02:00
Bastian Winkler
f14c71cd3c examples: Updated box-layout example
Updated test-box-layout to use modern API and move it to examples.

https://bugzilla.gnome.org/show_bug.cgi?id=677283
2012-06-04 16:16:39 +02:00
Emmanuele Bassi
c9028cee48 Move scroll actor test to the examples
Nothing specific to test, and the code is idiomatic enough to be used as
an example.
2012-05-17 10:57:15 +01:00
Emmanuele Bassi
5ad1ec7cca Put bind-constraint back into the interactive tests
The bind-constraint.c example still uses clutter_actor_animate(), and
it'd require some serious reworking to move it to
ClutterPropertyTransition or to implicit animations.
2012-05-08 16:15:33 +01:00
Emmanuele Bassi
4d087f2c0a examples: Add an example of layout manager
The MultiLayout shows how to write a layout manager with two policies,
and to use the easing state of a child to interpolate the allocation.
2012-05-04 17:54:51 +01:00
Emmanuele Bassi
b7c76a45bc Add rounded corners rectangle example using Canvas
An old request: how to create a rectangle with rounded corners with
Clutter; we use ClutterCanvas and Cairo because we want anti-aliased
edges.
2012-05-04 17:54:51 +01:00
Emmanuele Bassi
c6b226e6c7 Move the easing modes test into the examples
It's a pretty simple, self-contained example of how to use different
easing modes, as well as the implicit animations API.
2012-05-02 18:37:36 +01:00
Emmanuele Bassi
46409b4043 Move FlowLayout test into examples
There's nothing really test-worthy in the ClutterFlowLayout interactive
test; it can be lifted pretty much as is, and placed into the examples.
2012-05-02 12:14:45 +01:00
Emmanuele Bassi
07c95ebf0c Move examples from tests/interactive to a new top-level
The example code that is meant to be XIncluded into the API reference
should not be part of the interactive test suite: it's code that it is
meant to be used as a reference implementation - whereas the interactive
test suite should be allowed to be lean and test behaviour even in nasty
ways. In short: the test suite should not be the place where we show off
idiomatic code for educational purposes.
2012-05-01 19:00:35 +01:00
Matthew Allum
c2236bb72a 2007-06-12 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-alpha.c:
        Remove stray g_debug.

        * clutter/clutter-behaviour-rotate.c:
        Register private class member.

        * clutter/clutter-behaviour.c:
        * clutter/clutter-behaviour.h:
        Add applied and removed signals.

        * Makefile.am:
        * configure.ac:
        * examples/Makefile.am:
        * examples/README:
        * examples/behave.c:
        * examples/slider.c:
        * examples/super-oh.c:
        * examples/test-entry.c:
        * examples/test-text.c:
        * examples/test.c:
        * tests/Makefile.am:
        Remove examples, moving applicable code into tests.
2007-06-12 10:36:28 +00:00
Neil J. Patel
e725b0c7fa Initial import of ClutterEntry, a text-entry actor 2007-05-31 18:33:42 +00:00
Matthew Allum
d2efd34eb5 2007-05-25 Matthew Allum <mallum@openedhand.com>
* Makefile.am:
        Install a default flavour .pc file.

        * clutter/clutter-actor.c:
        Translate units correctly for translate()

        * clutter/clutter-feature.h:
        Add new texture features.

        * clutter/clutter-fixed.h:
        Add clutter angle conversion defines.

        * clutter/clutter-group.c:
        Use cogl not GL. Dont recurse on show all.

        * clutter/clutter-private.h:
        Remove sync_viewport.

        * clutter/clutter-rectangle.c:
        Fix cogl typo.

        * clutter/clutter-stage.c:
        * clutter/clutter-stage.h:
        Add perspective settings. Remove viewport_sync.
        Add audience stubs. Fix up actor_at_pos a little (still broken)

        * clutter/clutter-texture.h:
        * clutter/clutter-texture.c:
        Redo pixel uploading. Add initial (disabled) YUV support.

        * clutter/clutter-timeline.c:
        Fire 'completed' signal when looping.

        * clutter/cogl/gl/cogl.c:
        Move some backend checks here.

        * clutter/glx/clutter-backend-glx.c:
        Actually check target display has GLX ext.

        * clutter/glx/clutter-stage-glx.c:
        Handle offscreen failing more gracefully.

        * examples/Makefile.am:
        Use AM_LDFLAGS.

        * clutter/clutter-main.c:
        * clutter/clutter-feature.c:
        * clutter/clutter-backend.c:
        * clutter/clutter-alpha.c:
        Fix a compile warnings.

        * tests/Makefile.am:
        * tests/test-offscreen.c:
        * tests/test-scale.c:
        More tests.
2007-05-25 10:56:09 +00:00
Tomas Frydrych
a338a95796 removed ClutterReal; added clutter-units 2007-05-22 09:31:40 +00:00
Tomas Frydrych
47b3d6db56 ClutterReal type 2007-05-18 07:30:06 +00:00
Matthew Allum
23ac88ac70 2007-05-14 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-behaviour-path.c:
        Fix bug where last knot position wouldn't get reached.

        * clutter/clutter-group.c:
        Add some docs

        * clutter/clutter-timeline.h:
        * clutter/clutter-timeline.c:
        Add clutter_timeline_copy (needed for ClutterEffect)

        * clutter/clutter-version.h.in:
        Export windowing system / GL backend etc defines.

        * clutter/Makefile.am:
        * clutter/clutter-effect.c:
        * clutter/clutter-effect.h:
        * clutter/clutter.h:

        * clutter/glx/clutter-backend-glx.c:
        Minor clean ups.

        * clutter/clutter-alpha.h:
        Add a fixme.

        * configure.ac:
        Add FPU define.

        * examples/Makefile.am:
        * examples/slider.c:
        Add Robs slider game.
2007-05-14 09:11:23 +00:00
Tomas Frydrych
dd9061ae18 added --path command line argument to examples/behave; removed bspline example 2007-04-30 08:39:31 +00:00
Tomas Frydrych
43593ab81f bezier spline behaviours 2007-04-12 12:42:07 +00:00
Matthew Allum
244cacd14b 2007-01-23 Matthew Allum <mallum@openedhand.com>
* Makefile.am:
        * clutter.pc.in:
        * clutter/Makefile.am:
        * clutter/clutter-backend-glx.c:
        * clutter/clutter-backend-glx.h:
        * clutter/clutter-event.c:
        * clutter/clutter-feature.c:
        * clutter/clutter-group.c:
        * clutter/clutter-main.c:
        * clutter/clutter-main.h:
        * clutter/clutter-private.h:
        * clutter/clutter-stage-glx.c:
        * clutter/clutter-stage-glx.h:
        * clutter/clutter-stage.c:
        * clutter/clutter-stage.h:
        * clutter/clutter-util.c:
        * clutter/clutter-util.h:
        * clutter/pango/pangoclutter-render.c:
        * configure.ac:
        * examples/Makefile.am:
        Initial work in supporting different GL backends (ie. GLX/EGL/DirectFB etc).
        Currently just GLX supported and now mostly self contained.

        * TODO:
        Add a note about caching glenables
2007-01-23 20:29:11 +00:00
Matthew Allum
c0aa013758 2007-01-16 Matthew Allum <mallum@openedhand.com>
* NEWS:
        Minor tweaks

        * TODO:
        Sync up, mainly with 0.3 todo items

        * clutter/clutter-behaviour.c:
        * clutter/clutter-behaviour.h:
        clutter_behaviour_get_n_actors() / clutter_behaviour_get_nth_actor()
        Additions.

        * clutter/clutter-stage.c: (clutter_stage_realize):
        Experimental (disabled) visual setting code.

        * clutter/clutter-feature.c:
        Check for GL_EXT_texture_rectangle (#198  - Frederick Riss)

        * clutter/clutter-group.c: (clutter_group_allocate_coords):
        Fix for group size allocation (#199 -  Frederick Riss)

        * clutter/clutter-texture.c: (texture_upload_data):
        Fix texture unpacking row length (#197 Frederick Riss)

        * examples/Makefile.am:
        Fix LDADD in build (#196 - Frederick Riss)
2007-01-16 14:19:39 +00:00
Jorn Baayen
458b4b47a7 2006-08-30 Jorn Baayen <jorn@openedhand.com>
* README:
	* clutter/Makefile.am:
	* clutter/clutter-audio.c:
	* clutter/clutter-audio.h:
	* clutter/clutter-main.c: (clutter_init):
	* clutter/clutter-media.c:
	* clutter/clutter-media.h:
	* clutter/clutter-video-texture.c:
	* clutter/clutter-video-texture.h:
	* clutter/clutter.h:
	* configure.ac:
	* examples/Makefile.am:
	* examples/README:
	* examples/video-cube.c:
	* examples/video-player.c:
	* gst/Makefile.am:
	* gst/clutterimagesink.:
	* gst/clutterimagesink.c:
	* gst/clutterimagesink.h:
	* gtk/Makefile.am:

	Remove gstreamer bits. There live in clutter-gst now.
2006-08-30 13:48:48 +00:00
Matthew Allum
2c41d38fed 2006-08-15 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-behaviour.c:
        * clutter/clutter-behaviour.h:
        * clutter/clutter-behaviours.c:
        * clutter/clutter-timeline.c:
        * clutter/clutter-timeline.h:
        * clutter/clutter.h:
        Make basic behaviour infrastructure actually work.

        * examples/Makefile.am:
        * examples/behave.c:
        Add a simple behaviour demo/test

        * clutter/clutter-media.c: (clutter_media_set_volume):
        Actuall set volume rather than position..   (Fixes #141)
2006-08-15 20:28:41 +00:00
Matthew Allum
d61ee2240b 2006-06-21 Matthew Allum <mallum@openedhand.com>
* clutter/Makefile.am:
        Make sure clutter.h included.
        * clutter/clutter-stage.c: (clutter_stage_realize),
        (clutter_stage_get_actor_at_pos):
        Select for motion events on X window.
        Return highest rather than lowest found actor for actor_at_pos.
        * examples/Makefile.am:
        Remove test-text, remane test video.
        * examples/README:
        Add info about the included examples.
        * examples/test-video.c:
        * examples/video-player.c:
        Redo test-video a little nicer and rename.
        * examples/video-cube.c:
        Fix so it at least 'works' again.
        * examples/test.c:
        Clean up a little.
2006-06-21 16:29:28 +00:00
Ross Burton
f6413c66e9 2006-06-21 Ross Burton <ross@openedhand.com>
* clutter/Makefile.am:
	* examples/Makefile.am:
	Fix dist.
2006-06-21 14:40:36 +00:00
Matthew Allum
342ea125f1 Merge gobject-branch into trunk 2006-05-29 08:59:36 +00:00
Matthew Allum
3838ffe065 Much, see ChangeLog 2005-05-14 10:19:39 +00:00
Matthew Allum
26decbdb97 Add broken gst video widget 2005-04-26 08:56:53 +00:00
Matthew Allum
298f878086 Lots, see ChangeLog 2005-04-22 18:03:55 +00:00
Matthew Allum
3b342b81b7 autotool rejig 2005-04-13 19:49:56 +00:00