Commit Graph

1286 Commits

Author SHA1 Message Date
Øyvind Kolås
e92b864dff Support for shaders in clutter. At the moment limited to drivers
providing GLSL support.
* clutter/cogl/cogl.h: added rather direct binding of needed for glsl
shaders.
* clutter/cogl/gl/cogl-defines.h.in:
* clutter/cogl/gl/cogl.c:
* clutter/cogl/gles/cogl-defines.h: added stubs.
* clutter/cogl/gles/cogl.c: added stubs.
* clutter/glx/clutter-stage-glx.c:
(clutter_stage_glx_realize): unrelated memory management sanity fix.
(clutter_stage_glx_unrealize): unbind all shaders on stage unrealize.
* clutter/Makefile.am: added clutter-shader.[ch]
* clutter/clutter-actor.[ch]: adding shader capability to 
actors.
* clutter/clutter-feature.h: added CLUTTER_FEATURE_SHADERS_GLSL
* clutter/clutter-private.h: added stack of shaders to context.
* clutter/clutter-shader.[ch]: new.
* tests/Makefile.am: added shader test.
* tests/test-shader.c: (frame_cb), (main): simple shader test,
cycle through the inline shader with right/left mouse buttons.
2007-12-03 16:29:18 +00:00
Øyvind Kolås
ace69e71b3 * clutter/glx/clutter-stage-glx.c: for extra sanity, set
stage_x11->xvisinfo = NULL after XFree. Makes using the root window
as foreign window possible.
2007-12-03 16:16:41 +00:00
Øyvind Kolås
3def17d9d2 * clutter/clutter-timeline.c: (clutter_timeline_get_delta): return the
number of milliseconds passed between new-frame events instead of
since new-frame events, thus making sure that the sum of _get_delta's
returned for all new-frame events is equal to total time elapsed.
2007-11-30 17:07:08 +00:00
Emmanuele Bassi
97631bffd5 2007-11-30 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-actor.c (parse_units),
	(clutter_actor_parse_custom_node): Do not allow using percentages
	of the stage on the stage itself, as it makes little to no
	sense.

	* clutter/clutter-script.c:
	(clutter_script_construct_object): Rearrange code.

	* tests/test-script.json: Do not set the size of the stage, to
	test for the stage size percentage.
2007-11-30 14:36:07 +00:00
Emmanuele Bassi
640b9aa07b 2007-11-30 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-model.h: Complete the documentation of
	the ClutterModelClass structure members.
2007-11-30 13:22:03 +00:00
Emmanuele Bassi
9628df5ca9 2007-11-30 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-timeline.h:
	* clutter/clutter-timeline.c
	(timeline_timeout_func),
	(clutter_timeline_get_delta): Add a function for retrieving
	the number of frames and the time (in milliseconds) elapsed
	since the last timeline ::new-frame signal. This can be useful
	for implementing a physics engine or just for knowing how if
	and how many frames have been skipped.
2007-11-30 13:20:15 +00:00
Emmanuele Bassi
f04a0a4645 2007-11-30 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-actor.c (parse_units),
	(clutter_actor_parse_custom_node),
	(clutter_scriptable_iface_init): Override the parsing code
	for the x, y, width and height properties of ClutterActor,
	to allow strings with modifiers when defining the position
	and/or the dimensions of an actor. Bare integers are assumed
	as pixels; floating point values in the [0, 1] interval are
	assumed as percentages; strings can have these modifiers:

	  - px - pixels
	  - mm - millimeters
	  - pt - points (at the current resolution)
	  - %  - percentage of the stage

	* clutter/clutter-units.h: Fix the conversion macros

	* tests/test-script.json: Test the new values.
2007-11-30 09:27:10 +00:00
Emmanuele Bassi
687561dfe2 2007-11-29 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-model.[ch]: Slight API change in the constructor
	functions for ClutterModel: clutter_model_new() now takes a list
	of GType/string pairs for both the column type and the column name.

	(clutter_model_set_n_columns),
	(clutter_model_set_names),
	(clutter_model_set_types): Subclasses of ClutterModel will be able
	to call clutter_model_set_types() and clutter_model_set_names() in
	any order, provided that they don't call each function more than
	once.

	* tests/test-model.c: Update the test case.
2007-11-29 15:01:21 +00:00
Tomas Frydrych
9c77b0ab13 2007-11-29 Tomas Frydrych <tf@openedhand.com>
* clutter/clutter-actor.h:
        * clutter/clutter-actor.c:
	Converted depth and rotation offsets to ClutterUnit.

	(clutter_actor_set_depthu):
	(clutter_actor_get_depthu):
	Additional ClutterUnit API.

	(_clutter_actor_apply_modelview_transform):
	Use cogl_translatex() in place of cogl_translate().
2007-11-29 13:47:37 +00:00
Emmanuele Bassi
870234213a 2007-11-29 Emmanuele Bassi <ebassi@openedhand.com>
* *: Add svn:ignore property to every directory, so that
	svn status starts being useful.
2007-11-29 10:54:13 +00:00
Matthew Allum
aebf79829a 2007-11-29 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-main.c: (generate_enter_leave_events):
        Minor formatting tweak.
        * configure.ac:
        Typo fix from Damien Lespiau (via mailing list)
2007-11-28 23:57:26 +00:00
Emmanuele Bassi
9800eb0639 2007-11-28 Emmanuele Bassi <ebassi@openedhand.com>
Add more introspection capabilities to the base model class

	* clutter/clutter-model.h:
	* clutter/clutter-model.c:
	(clutter_model_finalize): Do no leak the column types array.

	(clutter_model_get_n_columns): Function for getting the number
	of columns inside a model.

	(clutter_model_set_names): Add API for setting the names of the
	columns.

	(clutter_model_get_column_name),
	(_model_get_column_type): Add API for getting each column's name
	and the default implementation for ClutterModel.

	(clutter_model_get_column_type),
	(_model_get_iter_at_row): Add API for getting each column's type
	and the default implementation for ClutterModel.

	* clutter.symbols: Add ClutterModel and ClutterModelIter symbols,
	and keep the symbols file sorted.
2007-11-28 18:04:24 +00:00
Tomas Frydrych
132296dcc3 2007-11-28 Tomas Frydrych <tf@openedhand.com>
* clutter/clutter-actor.c:
        * clutter/clutter-actor.h:
	(clutter_actor_set_positionu):
	(clutter_actor_set_sizeu):
	(clutter_actor_get_widthu):
	(clutter_actor_get_heightu):
	(clutter_actor_set_widthu):
	(clutter_actor_set_heightu):
	(clutter_actor_get_xu):
	(clutter_actor_get_yu):
	(clutter_actor_set_xu):
	(clutter_actor_set_yu):
	Expanded ClutterActor API with new ClutterUnit-base functions.

        * clutter/clutter-stage.c:
        * clutter/clutter-stage.h:
	(clutter_stage_get_resolution):
	(clutter_stage_get_resolutionx):
	New function to query stage resolution (floating and fixed point
	versions).

        * clutter/clutter-units.h:
	(CLUTTER_UNITS_FROM_STAGE_WIDTH_PERCENTAGE):
	(CLUTTER_UNITS_FROM_STAGE_HEIGHT_PERCENTAGE):
	(CLUTTER_UNITS_FROM_PARENT_WIDTH_PERCENTAGE):
	(CLUTTER_UNITS_FROM_PARENT_HEIGHT_PERCENTAGE):
	(CLUTTER_UNITS_FROM_MM):
	(CLUTTER_UNITS_FROM_MMX):
	(CLUTTER_UNITS_FROM_POINTS):
	(CLUTTER_UNITS_FROM_POINTSX):
	New macros for conversions to ClutterUnits.

	* clutter.symbols:
	Added:
	        ClutterActor anchor_point functions,
                clutter_stage_get_resolution functions.

	Removed:
                clutter_actor_scale_with_gravity functions.
2007-11-28 15:31:41 +00:00
Emmanuele Bassi
f4817f279a 2007-11-28 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-actor.[ch]: Documentation fixes.
2007-11-28 14:16:37 +00:00
Emmanuele Bassi
4976be12ca 2007-11-28 Emmanuele Bassi <ebassi@openedhand.com>
Remove the layout containers: they will be moved to a
	high-level library.

	* clutter/clutter.h:
	* clutter/Makefile.am: Remove layout and boxes from the
	build.

	* clutter/clutter-layout.[ch]: Remove the ClutterLayout
	interface.
	
	* clutter/clutter-box.[ch]:
	* clutter/clutter-hbox.[ch]:
	* clutter/clutter-vbox.[ch]: Remove ClutterBox and its
	subclasses.
	
	* clutter/clutter-label.c: Remove ClutterLayout implementation

	* clutter/clutter-script-private.h:
	* clutter/clutter-script-parser.c:
	* clutter/clutter-script.c:
	(clutter_script_parse_node): Remove special parsing for
	ClutterMargin and ClutterPadding.

	* clutter/clutter-types.h: Remove ClutterPadding and ClutterMargin.

	* tests/Makefile.am:
	* tests/test-boxes.c: Remove the boxes test case.
2007-11-28 13:50:24 +00:00
Tomas Frydrych
20a9bf142c 2007-11-28 Tomas Frydrych <tf@openedhand.com>
* clutter/NEWS:
	Started 0.6.0 section with comment on actor anchor point.

        * clutter/clutter/clutter-actor.c:
        * clutter/clutter/clutter-actor.h:
        * clutter/clutter/clutter-behaviour-scale.c:
        * clutter/clutter/clutter-deprecated.h:
	(clutter_actor_set_anchor_point):
	(clutter_actor_set_anchor_pointu):
	(clutter_actor_get_anchor_point):
	(clutter_actor_get_anchor_pointu):
	(clutter_actor_set_anchor_point_from_gravity):
	New anchor point API deprecating old gravity scaling, added
	comments on modelview matrix construction to ClutterActor
	documentation.

	(clutter_actor_set_scale_with_gravity):
	(clutter_actor_set_scale_with_gravityx):
	Deprecated; use clutter_actor_set_anchor_point_from_gravity() instead.
2007-11-28 12:23:31 +00:00
Emmanuele Bassi
04afb1066c 2007-11-28 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-effect.[ch]: Add clutter_effect_template_construct()
	function, for language bindings that need to set the alpha function
	but cannot call the clutter_effect_template_new() ctor themselves.
2007-11-28 10:27:33 +00:00
Tomas Frydrych
55d53acc8f 2007-11-27 Tomas Frydrych <tf@openedhand.com>
* clutter/clutter-behaviour-ellipse.c:
        * clutter/clutter-behaviour-ellipse.h:
	(clutter_behaviour_ellipse_get_angle_startx):
	(clutter_behaviour_ellipse_set_angle_startx):
	(clutter_behaviour_ellipse_get_angle_endx):
	(clutter_behaviour_ellipse_set_angle_endx):
	(clutter_behaviour_ellipse_get_angle_tiltx):
	(clutter_behaviour_ellipse_set_angle_tiltx):
	Changed to take and return angles in degrees represented as
	ClutterFixed.
2007-11-27 12:34:28 +00:00
Emmanuele Bassi
ceecc23a02 2007-11-27 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-actor.c (clutter_actor_destroy): Remove the
	reference we hold on the actor, as it was preventing the finalization
	of every child on the stage.
2007-11-27 11:05:26 +00:00
Emmanuele Bassi
69bc9516f9 2007-11-26 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/x11/clutter-stage-x11.c:
	(clutter_stage_x11_set_cursor_visible): Restore the XFixes usage,
	as it now seems to be have been fixed.
2007-11-26 12:10:20 +00:00
Emmanuele Bassi
a02e20a14a 2007-11-26 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-actor.c:
	(clutter_actor_real_show),
	(clutter_actor_real_hide): Do not set the MAPPED flag on the actor
	if it is a top-level one (like ClutterStage); the backends are
	responsible for setting that flag, as it might be the result of an
	asynchronous operation (e.g. on X11).
	
	* clutter/eglnative/clutter-stage-egl.c:
	(clutter_stage_egl_show),
	(clutter_stage_egl_hide): Set/unset the CLUTTER_ACTOR_MAPPED flag
	on show and hide respectively.

	* clutter/osx/clutter-stage-osx.c:
	(clutter_stage_osx_show),
	(clutter_stage_osx_hide): Ditto as above.

	* clutter/sdl/clutter-stage-sdl.c:
	(clutter_stage_sdl_show),
	(clutter_stage_sdl_hide): Ditto as above, plus chain up to the
	parent class show/hide virtual functions.

	* clutter/x11/clutter-event-x11.c (event_translate): Use the MapNotify
	and UnmapNotify events to call the X11 stage map/unmap functions.

	* clutter/x11/clutter-stage-x11.[ch]:
	(clutter_stage_x11_set_fullscreen): Set the fullscreen_on_map flag
	with the fullscreen value.

	(clutter_stage_x11_map), (clutter_stage_x11_unmap): Set the MAPPED
	flag on the stage actor and redraw; also, if the fullscreen_on_map
	flag was set, call clutter_stage_fullscreen() as well. (#648)

	* tests/Makefile.am:
	* tests/test-fullscreen.c: Add a fullscreen test case for checking
	whether fullscreen works on every backend/platform.
2007-11-26 12:07:25 +00:00
Emmanuele Bassi
c4f89675e0 2007-11-23 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-actor.c:
	(clutter_actor_real_request_coords),
	(clutter_actor_request_coords),
	(clutter_actor_class_init): Provide a default ::request_coords()
	implementation in ClutterActor and use it to store the bounding
	box passed to clutter_actor_request_coords(). This makes the code
	more reliable and clean, and avoids a call to the subclass
	request_coords() method if the bounding box did not change. Now,
	every class overriding ClutterActor::request_coords() *must* chain
	up to the parent class method or the bounding box will not be
	saved inside the ClutterActor structure.
	
	* clutter/clutter-entry.c:
	* clutter/clutter-group.c:
	* clutter/clutter-hbox.c:
	* clutter/clutter-label.c:
	* clutter/clutter-texture.c:
	* clutter/clutter-vbox.c: Chain up to the parent class
	request_coords() method.
2007-11-23 17:12:27 +00:00
Emmanuele Bassi
b0446d66fe 2007-11-23 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-event.h: Add more documentation.
2007-11-23 17:07:46 +00:00
Emmanuele Bassi
e06cb4234d 2007-11-23 Emmanuele Bassi <ebassi@openedhand.com>
* tests/test-event.c: Back out an accidental commit.
2007-11-23 13:12:37 +00:00
Emmanuele Bassi
07079204ac 2007-11-23 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-actor.c:
	* clutter/clutter-alpha.c:
	* clutter/clutter-effect.c:
	* clutter/clutter-event.c:
	* clutter/clutter-event.h:
	* clutter/clutter-group.h:
	* clutter/clutter-model.c:,
	* clutter/clutter-script.c:
	* clutter/clutter-scriptable.h:
	* clutter/clutter-stage.c: Documentation fixes.

	* clutter/clutter-score.c: Fix implementation.
2007-11-23 13:11:10 +00:00
Emmanuele Bassi
7c7b9d0568 2007-11-23 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/x11/clutter-stage-x11.c: Chain up the hide and show
	to the parent's implementation.
2007-11-23 13:07:04 +00:00
Emmanuele Bassi
2b447c3b48 2007-11-23 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-effect.[ch]: Update the effects API to remove
	the start value for most of them.

	(clutter_effect_move): Make it a simple "move from current
	position to new coordinates" effect.

	(clutter_effect_path): Rename from clutter_effect_move().

	(clutter_effect_rotate): Sync up with the new actor rotation API.

	* tests/test-effects.c: Regression test for the effects.

	* tests/Makefile.am: Build glue for test-effects

	* tests/test-behave.c: Emulate a full ramp by using a looping
	timeline changing its direction when reaching the last frame.
2007-11-23 11:23:19 +00:00
Emmanuele Bassi
e57b42ae52 2007-11-23 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-actor.c (clutter_actor_destroy): Bail out
	if clutter_actor_destroy() was called on the stage: the stage
	is not for the user to destroy.

	* clutter/x11/clutter-backend-x11.c:
	* clutter/eglnative/clutter-backend-egl.c:
	* clutter/sdl/clutter-backend-sdl.c:
	* clutter/osx/clutter-backend-osx.c: Unset the top-level private
	flag on the stage when disposing it, so the backends can safely
	call clutter_actor_destroy().

	* clutter/clutter-private.h: Tweak the private flags accessors,
	to avoid the typecheck.
2007-11-23 11:20:14 +00:00
Emmanuele Bassi
8039922802 2007-11-22 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-label.c (clutter_label_new_full): Set the
	terminating NULL which was removed when applying patch for
	fixing #606. (#645, Gwenole Beauchesne)
2007-11-22 13:41:00 +00:00
Øyvind Kolås
7fca77fa5e * clutter/clutter-actor.c: mended a couple of typos in documentation. 2007-11-21 23:25:30 +00:00
Matthew Allum
24d43aee02 2007-11-21 Matthew Allum <mallum@openedhand.com>
* clutter/cogl/gles/cogl.c: (cogl_fog_set):
        Minor fixes for fog on GLES.
2007-11-21 12:30:50 +00:00
Emmanuele Bassi
99acb8e9c1 2007-11-21 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/cogl/cogl.h: Add cogl_fog_set() abstracting the
	glFog() functions and enabling the GL_FOG flag.

	* clutter/cogl/gl/cogl.c: Add GL implementation of cogl_fog_set().
	
	* clutter/cogl/gles/cogl.c: Add GL/ES implementation of
	cogl_fog_set().

	* clutter.symbols: Add new symbols.

	* clutter/clutter-stage.h: Add API to enable depth cueing on
	the stage using a linear GL fog, and to set the parameters
	for it (#637).

	* clutter/clutter-stage.c (clutter_stage_paint): Enable the
	GL fog if the ClutterStage:use-fog property is true.

	* tests/test-depth.c: Test the new stage API.
2007-11-21 11:55:26 +00:00
Øyvind Kolås
a770e57193 * clutter/clutter-main.c: (event_click_count_generate): generalized
click_count generation code.
* tests/test-events.c: (input_cb): extended test to report click_count
for release and scroll events as well as press events.
2007-11-20 17:14:05 +00:00
Øyvind Kolås
4320c354a3 * clutter/clutter-main.c: (clutter_do_event): avoid computing source
of events if it is already set (for synthetic events.)
* clutter/clutter-event.c: Add more information to the documentation
of clutter_event_put.
2007-11-20 17:03:53 +00:00
Emmanuele Bassi
3c653b00a4 2007-11-20 Emmanuele Bassi <ebassi@openedhand.com>
* README: Add diff example command lines for submitting patches.
2007-11-20 16:19:52 +00:00
Emmanuele Bassi
9955b06542 2007-11-20 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-actor.c::
	* clutter/clutter-behaviour-opacity.c:
	* clutter/clutter-clone-texture.c:
	* clutter/clutter-effect.c:
	* clutter/clutter-label.c: Remove the usage of G_PARAM_CONSTRUCT
	without an override for the ::construct virtual function; using
	G_PARAM_CONSTRUCT to set the default value of a property is not
	the recommended approach; default values are set inside the
	instance init function.
2007-11-20 16:05:56 +00:00
Emmanuele Bassi
6cb35639e7 2007-11-20 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-texture.c (clutter_texture_init): Set filter-quality
	value to 1, to fix the regression caused when applying the patch for
	buf #616.
2007-11-20 15:45:59 +00:00
Emmanuele Bassi
caa56dadd4 2007-11-19 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-label.[ch]: Fix ClutterLabel size allocation when
	no bounding box has been provided, and store the box set by the
	user so that it can be reused when recomputing the layout. (#600)

	(clutter_label_class_init),
	(clutter_label_init): Set the :wrap property default to FALSE.
	
	* clutter/clutter-units.h: Add ClutterUnit-to-PangoUnit conversion
	macro.

	* tests/test-rotate.c: Fix string.
2007-11-19 21:14:16 +00:00
Emmanuele Bassi
531be399b7 2007-11-19 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-behaviour-bspline.c:
	* clutter/clutter-behaviour-depth.c:
	* clutter/clutter-behaviour-ellipse.c:
	* clutter/clutter-behaviour-opacity.c:
	* clutter/clutter-behaviour-path.c:
	* clutter/clutter-behaviour-rotate.c:
	* clutter/clutter-behaviour-scale.c: Fix gtk-doc short description.
2007-11-19 16:35:46 +00:00
Emmanuele Bassi
b676210545 2007-11-19 Emmanuele Bassi <ebassi@openedhand.com>
* clutter.symbols: Update

	* clutter/clutter-actor.h: Rename the angle argument for
	set_rotationx() to avoid gtk-doc complaining

	* clutter/clutter-main.h:
	* clutter/clutter-main.c:
	(clutter_set_motion_events_enabled): Rename for consistency

	(clutter_get_motion_events_frequency),
	(clutter_set_motion_events_frequency): Add accessors for the default
	motion events deliver frequency.
	
	(clutter_do_event): Throttle down motion events delivery using the
	motion events frequency setting, to avoid excessive redraws. (#608)

	(clutter_context_get_default): Enable per-actor motion events, at
	least for now.

	* tests/test-events.c (red_button_cb):
	* tests/test-grab.c (green_press_cb): Update.
2007-11-19 16:30:56 +00:00
Emmanuele Bassi
976df38630 2007-11-19 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-timeline.c (timeline_timeout_func): Do not emit the
	::new-frame signal twice for the last frame. (#531)
2007-11-19 15:25:56 +00:00
Øyvind Kolås
990d0e90a5 * clutter/clutter-actor.[ch]: (clutter_actor_set_rotationx),
(clutter_actor_set_rotation): swapped axis and angle around,
the new argument order is: (axis, angle, x, y, z). Also removed
deprecated rotation functions from header.
Updated use of clutter_actor_set_rotation? in the following files:
* clutter/clutter-behaviour-rotate.c: 
* clutter/clutter-effect.c: 
* tests/test-actors.c: 
* tests/test-project.c:
2007-11-19 11:43:20 +00:00
Emmanuele Bassi
521162a01c 2007-11-19 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-label.[ch]: Constify the color argument
	for the ClutterLabel ctor. (#604)
2007-11-19 00:02:13 +00:00
Matthew Allum
382852f921 2007-11-18 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-actor.c:
        * clutter/clutter-actor.h:
        * clutter/clutter-group.c:
        * clutter/clutter-main.c:
        * clutter/clutter-stage.c:
        * tests/test-events.c:
        Parent Actors no longer need to be set reactive for reactive
        children to get events. Also makes groups now pickable.
        (#597, #423)

        * clutter/clutter-texture.c:
        Handle case when 1x1 tiled texture is created,
        falling 'back' to being non tiled. (#596)

        * clutter/eglx/clutter-backend-egl.c:
        Call EglTerminate on backend shutdown.
2007-11-18 23:24:55 +00:00
Emmanuele Bassi
8580a97b4b 2007-11-18 Emmanuele Bassi <ebassi@openedhand.com>
* clutter.pc.in: Bump up glib-2.0 dependency.
2007-11-18 23:14:30 +00:00
Emmanuele Bassi
fd0e52848b 2007-11-18 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-model.c: Add gtk-doc section for
	ClutterModelIter

	* clutter/clutter-script.h: Fix argument name.

	* clutter/x11/clutter-x11.h:
	* clutter/x11/clutter-event-x11.c:
	* clutter/x11/clutter-backend-x11.c: Document functions and
	types.
2007-11-18 15:41:47 +00:00
Emmanuele Bassi
7495848f14 2007-11-18 Emmanuele Bassi <ebassi@openedhand.com>
* clutter.symbols: Update exported symbols.

	* clutter/clutter-actor.[ch]: Remove clutter_actor_rotate_*
	and clutter_actor_get_rx* and provide a simpler rotation API:
	clutter_actor_set_rotation() and clutter_actor_get_rotation().

	* clutter/clutter-deprecated.h: Deprecate the old rotation API.

	* clutter/clutter-behaviour-bspline.c:
	* clutter/clutter-behaviour-rotate.c:
	* clutter/clutter-effect.c: Update internal usage of the
	rotation API.

	* tests/test-project.c: Ditto as above.
2007-11-18 15:36:04 +00:00
Emmanuele Bassi
b7a79cf198 2007-11-17 Emmanuele Bassi <ebassi@openedhand.com>
Optimise Atoms usage in the X11 and X11-based backends.

	* clutter/x11/clutter-backend-x11.c:
2007-11-17 18:11:14 +00:00
Emmanuele Bassi
7794bb561e 2007-11-17 Emmanuele Bassi <ebassi@openedhand.com>
* configure.ac: Depend on GLib >= 2.14 because of ClutterModel
	usage of GSequence.
2007-11-17 17:07:35 +00:00
Øyvind Kolås
3c0897a102 * clutter/clutter-main.c: (emit_event): renamed from deliver_event,
(emit_pointer_event): utility function to emit pointer event signals
(which takes pointer grab into account).
(emit_keyboard_event): utility function to emit keyboard event signals
(which takes keyboard grab into account).
(clutter_do_event): use the above utility functions, also reindented
the source.
2007-11-16 13:41:07 +00:00
Øyvind Kolås
8339cf3fce * tests/test-grab.c: (main): fix use of clutter_actor_set_reactive 2007-11-16 13:40:43 +00:00
Øyvind Kolås
3b4f603368 * clutter/clutter-main.[ch]: added clutter_grab_keyboard,
clutter_ungrab_keyboard and clutter_get_keyboard_grab, in
clutter_do_event deliver keyboard related events only to the
actor with the keyboard grab if a grab exists.
* clutter/clutter-private.h: added keyboard_grab_actor to context.
* tests/test-grab.c: added testing for testing the keyboard grab.
2007-11-15 18:00:24 +00:00
Emmanuele Bassi
c640b05182 2007-11-15 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-texture.c:
	(clutter_texture_request_coords), (clutter_texture_class_init),
	(clutter_texture_init): Unset :sync-size if explicitly setting
	the texture size. (#616)
2007-11-15 17:38:40 +00:00
Emmanuele Bassi
75d186c3f9 2007-11-15 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-actor.[ch]: Massive API clean-ups. Initial
	fixes for bugs #614 and #628.

	* clutter/clutter-main.c:
	* clutter/clutter-stage.c: Update internal usage of the actor
	API.

	* tests/test-events.c: Update test suite.
2007-11-15 17:35:47 +00:00
Øyvind Kolås
266315c486 * clutter/clutter-main.c: (generate_enter_leave_events),
(clutter_do_event): moved the generation of enter/leave events
to a utility function.
2007-11-15 17:30:30 +00:00
Neil J. Patel
35cecde0c8 2007-11-15 Neil J. Patel <njp@o-hand.com>
* clutter/clutter-model.c:
	Added some more examples to the documentation, plus explained how the
	iters work internally.
2007-11-15 17:10:12 +00:00
Øyvind Kolås
53ec33f34c * clutter/clutter-main.[ch]: added clutter_grab_pointer,
clutter_ungrab_pointer and clutter_get_pointer_grab, in
clutter_do_event deliver pointer related events only to the
actor with the pointer grab if a grab exists.
* clutter/clutter-private.h: added pointer_grab_actor to context.
* tests/Makefile.am:
* tests/test-grab.c: added test for testing the pointer grab.
2007-11-15 17:08:48 +00:00
Emmanuele Bassi
0d082df3a5 2007-11-15 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-timeline.[ch]: Add ClutterTimeline:direction
	property, defining the direction (forward or backward) of the
	timeline.

	* tests/test-timeline.c: Test the direction property.

	* clutter.symbols: Update exported symbols
2007-11-15 17:03:55 +00:00
Emmanuele Bassi
768d85dcea 2007-11-15 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-effect.h:
	* clutter/clutter-effect.c:
	(clutter_effect_template_new_for_duration): Add a simple constructor
	for implicitly creating a ClutterTimeline with a given duration.
2007-11-15 15:38:04 +00:00
Emmanuele Bassi
960619b9e3 2007-11-15 Emmanuele Bassi <ebassi@openedhand.com>
* clutter.symbols: Update with the new public symbols

	* clutter/clutter-script.h:
	* clutter/clutter-script-private.h:
	* clutter/clutter-script.c:
	(parse_signals), (json_object_end),
	(signal_info_free), (object_info_free): Parse the "signals"
	member for GObjects.

	(clutter_script_connect_signals),
	(clutter_script_connect_signals_full): Add new API for autoconnecting
	signal handlers using the UI definition files.

	* tests/test-script.c:
	* tests/test-script.json: Test signal autoconnection.
2007-11-15 15:24:43 +00:00
Matthew Allum
885adf33e6 fix foobar of last commit in source rather than root dir 2007-11-15 15:18:07 +00:00
Matthew Allum
3607a470aa 2007-11-15 Matthew Allum <mallum@openedhand.com>
* clutter/Makefile.am:
        * clutter/eglx/Makefile.am:
        * clutter/eglx/clutter-backend-egl.c:
        * clutter/eglx/clutter-backend-egl.h:
        * clutter/eglx/clutter-eglx.h:
        * clutter/eglx/clutter-event-egl.c:
        * clutter/eglx/clutter-stage-egl.c:
        * clutter/eglx/clutter-stage-egl.h:
        * clutter/glx/Makefile.am:
        * clutter/glx/clutter-backend-glx.c:
        * clutter/glx/clutter-backend-glx.h:
        * clutter/glx/clutter-event-glx.c:
        * clutter/glx/clutter-glx.h:
        * clutter/glx/clutter-stage-glx.c:
        * clutter/glx/clutter-stage-glx.h:
        * clutter/x11/Makefile.am:
        * clutter/x11/clutter-backend-x11-private.h:
        * clutter/x11/clutter-backend-x11.c:
        * clutter/x11/clutter-backend-x11.h:
        * clutter/x11/clutter-event-x11.c:
        * clutter/x11/clutter-stage-x11.c:
        * clutter/x11/clutter-stage-x11.h:
        * clutter/x11/clutter-x11.h:
        Create a new X11 backend class of which EGL and GLX 'real' backends
        then subclass. Effectively shares all X11 code between both backends
        avoids code duplication and brings many missing features to EGL X
        backend. Requires some cleanup and testing. (#518)

        * clutter/cogl/gles/cogl.c: (cogl_color):
        Add define to use color4ub only if configure finds it.
        If not fall back to old code.

        * configure.ac:
        Drop support for vincent checks.
        Drop sdles backend.
        Specifically check for color4ub call.
2007-11-15 14:45:27 +00:00
Neil J. Patel
70e09ab9df 2007-11-15 Neil J. Patel <njp@o-hand.com>
* clutter/Makefile.am:
	* clutter/clutter-model.c: 
	* clutter/clutter-model.h:
	* clutter/clutter.h:
	* tests/Makefile.am:
	* tests/test-model.c:
	Merged ClutterModel, which closes #443.
2007-11-15 10:02:25 +00:00
Emmanuele Bassi
baad0f5b0d 2007-11-14 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-clone-texture.c (set_parent_texture): Hide the
	clone texture only if it was visible, and show it again if we
	are adding a visible texture.

	* tests/test-script.json: Test the CloneTexture actor.
2007-11-14 13:36:31 +00:00
Emmanuele Bassi
4de1adb04a 2007-11-14 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-actor.[ch]: Rename clutter_actor_get_id() to
	clutter_actor_get_gid().

	(clutter_actor_set_parent): Use GUINT_TO_POINTER().

	* clutter/clutter-deprecated.h: Add a replacement warning for
	clutter_actor_get_id().

	* clutter/clutter-texture.c (texture_upload_data): Use
	clutter_actor_get_gid(), and don't leak the filename string.
2007-11-14 11:43:18 +00:00
Emmanuele Bassi
b0e169d73c 2007-11-14 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-scriptable.[ch]: Rename ::set_name and ::get_name
	to ::set_id and ::get_id, to avoid potential confusion with the
	ClutterActor:name property.

	* clutter/clutter-script.h:
	* clutter/clutter-script.c (clutter_script_construct_object): Use
	clutter_scriptable_set_id().

	(clutter_get_script_id): Add a public function to retrieve the ID
	used in the UI definition files from an object.

	* clutter/clutter-actor.c: Do not set the name of the actor with
	the ID set in the UI definition files.

	* tests/test-script.c: Test clutter_get_script_id().

	* clutter.symbols: Update with the new symbols.
2007-11-14 11:32:24 +00:00
Emmanuele Bassi
bbf57ee461 2007-11-14 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/cutter-deprecated.h: Don't let everyone know from where
	we have stolen^Wtaken inspiration for the deprecation warnings.
2007-11-14 11:00:01 +00:00
Øyvind Kolås
e4deda095c * clutter/clutter-behaviour-bspline.[ch]:
Replaced clutter_behaviour_bspline_append with
clutter_behaviour_bspline_append_knots. Fixes bug #582.
* clutter/clutter-deprecated.h: added deprecation macro reflecting the
API change.
2007-11-13 14:12:51 +00:00
Øyvind Kolås
99370d1e0c * clutter/Makefile.am:
* clutter/clutter.h: include clutter-deprecated.h
* clutter/clutter-deprecated.h: added file containing macros that
provides more meaningful errors when compiling clutter using code that
uses deprecated functions.
2007-11-13 14:06:19 +00:00
Øyvind Kolås
0dee5eaac3 Renamed all properties of behaviours (and related
functions/variables/parameters)
to match the pattern something-start, something-end. Fixes bug #577.
* clutter/clutter-behaviour-depth.c:
* clutter/clutter-behaviour-depth.h:
* clutter/clutter-behaviour-ellipse.c:
* clutter/clutter-behaviour-ellipse.h:
* clutter/clutter-behaviour-path.c: 
* clutter/clutter-behaviour-rotate.c:
* clutter/clutter-behaviour-rotate.h:
* clutter/clutter-behaviour-scale.c:
* clutter/clutter-behaviour-scale.h:
* clutter/clutter-effect.c: 
* clutter/clutter-effect.h:
* clutter/clutter-script.c:
* tests/test-depth.c: 
* tests/test-script.c:
2007-11-13 13:21:56 +00:00
Øyvind Kolås
95338ba67b * clutter/clutter-event.h: made ClutterEventAny have a source field,
rearanged other structs to have source in the same position.
* clutter/clutter-event.c: (clutter_event_get_source): modified to use
the any event.
(clutter_event_free): removed unused variable.
* clutter/clutter-main.c: (deliver_event), (clutter_do_event): reduced
amount of code. As well as deliver button-release events to the stage.
2007-11-12 19:12:02 +00:00
Robert Bradford
222b012014 2007-11-08 Rob Bradford <rob@openedhand.com>
* clutter/glx/clutter-glx.h:
	Include <X11/Xutil.h> needed for the definition of XVisualInfo.
2007-11-08 21:36:14 +00:00
Robert Bradford
6997c45f84 2007-11-08 Rob Bradford <rob@openedhand.com>
* clutter/cogl/gles/cogl.c: (cogl_color):
	Switch over to using glColor4ub in the GLES backend. It's available in
	the header file but missing in the reference manual.
2007-11-08 21:23:53 +00:00
Emmanuele Bassi
72ce4487f8 2007-11-07 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-actor.[ch]: Fix the declaration of the
	class handlers for the ::captured-event, ::enter-event and
	::leave-event signals; the function signatures were missing
	the return value the signals marshallers were expecting, and
	their names weren't respecting the convention for event-related
	signals.
2007-11-07 16:40:30 +00:00
Tomas Frydrych
3b07be19ba 2007-11-06 Tomas Frydrych <tf@o-hand.com>
* clutter/clutter-fixed.h:
	Added CLUTTER_SQRTI_ARG_MAX, CLUTTER_SQRTI_5_PERCENT,
	CLUTTER_SQRTI_10_PERCENT expressing clutter_sqrti limits.
	Stripped trailing whitespace.

        * clutter/clutter-fixed.c:
	(clutter_sqrti):
	Updated documentation, stripped trailing whitespace.

        * clutter/clutter-behaviour-path.c:
	(node_distance):
	Use clib sqrt if clutter_sqrti() precission would be worse than
	10%.
	Stripped trailing whitespace.
2007-11-06 15:46:23 +00:00
Emmanuele Bassi
9461dd216b 2007-11-06 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-layout.h: Add commodity macros to test for
	a specific layout flag in one line.
2007-11-06 14:45:11 +00:00
Emmanuele Bassi
7ee405a8b0 2007-11-06 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-box.c (clutter_box_dispose): Call unparent()
	on the children, instead of destroy(), to avoid a double free
	and a crash when destroying a ClutterBox.
2007-11-06 14:36:28 +00:00
Emmanuele Bassi
b5afa2e6ec 2007-11-06 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-label.c: Break the references in ::dispose,
	and free the resources in ::finalize.
2007-11-06 14:35:22 +00:00
Øyvind Kolås
9047f9d2bc * clutter/clutter-container.[ch]: removed find_child_by_id method
from interface (and all implementations of it) since this
functionality is now implemented using a global hash.
* clutter/clutter-box.c: 
* clutter/clutter-group.c:
2007-11-05 17:12:11 +00:00
Emmanuele Bassi
8fde26cd81 2007-11-01 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-script.c: Do not keep ownership of the
	pixbufs we load.
2007-11-01 17:53:10 +00:00
Øyvind Kolås
60a66695c6 * clutter/clutter-main.c: (_clutter_do_pick): disable dithering
when painting in pick mode.
2007-10-31 15:38:18 +00:00
Matthew Allum
ce0dd69b09 2007-10-31 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-score.c:
        Various minor improvements to ClutterScore.
2007-10-31 14:50:34 +00:00
Emmanuele Bassi
4b0139ce0e 2007-10-30 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-layout.c: Fix documentation, with regards to
	the containers handling of the children implementing the
	ClutterLayout interface.
2007-10-30 22:12:01 +00:00
Emmanuele Bassi
6fd7fbf460 2007-10-29 Emmanuele Bassi <ebassi@openedhand.com>
* configure.ac:
	* clutter/cogl/gl/cogl-defines.h.in: The OS X backend has a funny
	OpenGL header location, so it basically did break every application
	including clutter/cogl.h because the GL header inclusion depended
	on symbols defined into Clutter's config.h. Now, we define the
	GL header into the configure template and use it to create the
	cogl-defines.h file cogl.h includes.
2007-10-29 16:50:34 +00:00
Emmanuele Bassi
92d4481a68 2007-10-29 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/json/json-parser.c: Enable parsing of negative numbers;
	GScanner splits negative numbers into two tokens, so we need to
	special case them.
2007-10-29 16:45:25 +00:00
Emmanuele Bassi
6e5cded500 2007-10-29 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-script.c: Add the :filename and :filename-set
	properties, to retrieve the path of the currently parsed file (if
	:filename-set is TRUE) from the ClutterScriptable implementations.
2007-10-29 15:57:59 +00:00
Matthew Allum
307305187a 2007-10-28 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-effect.c:
        Small doc fix (#584)
2007-10-28 21:57:04 +00:00
Matthew Allum
01fee601b5 add missing fixed bug nums to ChangeLog 2007-10-27 22:51:35 +00:00
Emmanuele Bassi
d42153dc69 2007-10-27 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/json/json-parser.c:
	(json_scanner_msg_handler): Set the GError to be returned by
	the parsing functions into the GScanner error message handler.

	(json_parser_object): Return the symbol token in case we have
	a parse error after the member name.

	(json_parser_load_from_data): Propagate the error set in the
	message handler, if any.

	* clutter/json/json-node.c (json_node_free): Unref the objects
	only if are set, to avoid a couple of needless criticals we
	get on error.

	* tests/test-script.json: More properties.
2007-10-27 19:49:39 +00:00
Emmanuele Bassi
35132fb5de 2007-10-27 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-script.[ch]: Slight API change in the
	clutter_script_get_objects() function: now it takes
	object name/object return location pairs and returns the
	number of objects found and returned.

	* tests/test-script.c: Exercise the clutter_script_get_objects()
	function.
2007-10-27 19:08:59 +00:00
Emmanuele Bassi
ae7463cccf 2007-10-27 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-rectangle.c (clutter_rectangle_paint): Use
	CGL_ENABLE_BLEND flag instead of CGL_BLEND value. (#580,
	Gwenole Beauchesne)
2007-10-27 12:26:12 +00:00
Emmanuele Bassi
f36bee599c 2007-10-27 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-color.c (clutter_color_to_string): Update the
	documentation for the format of the returned string, and remove
	the note: now clutter_color_parse() can parse the string this
	function returns.
2007-10-27 12:14:18 +00:00
Emmanuele Bassi
cdb495d49a 2007-10-27 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/pango/pangoclutter-render.c: Last usage of guint
	replaced with COGLuint. (Tommi Komulainen)
2007-10-27 12:01:51 +00:00
Matthew Allum
737ac37f27 2007-10-26 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-texture.c:
        * clutter/cogl/cogl.h:
        * clutter/cogl/gl/cogl-defines.h:
        * clutter/cogl/gles/cogl-defines.h:
        * clutter/cogl/gl/cogl.c:
        * clutter/cogl/gles/cogl.c:
        Switch from use of guint to COGLuint. Avoids problems when
        guint != GLuint on some platforms, i.e OSX.
        (Tommi Komulainen, #526)

        * clutter/Makefile.am:
        * clutter/osx/Makefile.am:
        * clutter/osx/clutter-backend-osx.c:
        * clutter/osx/clutter-backend-osx.h:
        * clutter/osx/clutter-event-osx.c:
        * clutter/osx/clutter-osx.h:
        * clutter/osx/clutter-stage-osx.c:
        * clutter/osx/clutter-stage-osx.h:
        * configure.ac:
        Add initial Cocoa/OSX Backend (by Tommi Komulainen, see #526)
2007-10-26 22:06:45 +00:00
Emmanuele Bassi
b7b7c60e5f 2007-10-26 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-entry.c: Add a :x-align property for aligning
	the text in the entry, in case the actor is wider than the
	text it shows.
2007-10-26 15:56:17 +00:00
Emmanuele Bassi
7b6f602956 2007-10-26 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-main.c: Add a --clutter-default-fps run-time
	switch and CLUTTER_DEFAULT_FPS environment variable support for
	setting the default frame-rate at run-time.
2007-10-26 15:47:39 +00:00
Emmanuele Bassi
6ab8c4d28a 2007-10-26 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-script.h:
	* clutter/clutter-script.c: Add a ::get_type_from_name() virtual
	function for bindings to override. The current implementation
	calls g_type_from_name() and our lazy class resolver.

	* clutter.symbols: Update.

	* doc/reference/clutter-sections.txt: Update.
2007-10-26 09:05:06 +00:00
Emmanuele Bassi
736bbfb713 2007-10-25 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-behaviour-path.c: Reverse the list of
	parsed knots, to preserve the real ordering after prepending
	them (thanks to Øyvind for spotting this).

	* clutter/clutter-behaviour-bspline.c: Ditto as above.
2007-10-25 20:06:48 +00:00
Emmanuele Bassi
5a260b7ac3 2007-10-25 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-script-parser.c: Unset the GValue when
	getting a ClutterUnit from a JSON node.
2007-10-25 15:14:06 +00:00
Emmanuele Bassi
7b242370f0 2007-10-25 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-behaviour-bspline.c: Implement the
	ClutterScriptableIface to parse the custom "knots" property.
2007-10-25 15:05:19 +00:00
Emmanuele Bassi
14f1606d26 2007-10-25 Emmanuele Bassi <ebassi@openedhand.com>
* tests/test-script.c:
	* tests/test-script.json: Rejig the test case and add a
	path behaviour to test the knot parsing code.
2007-10-25 14:46:02 +00:00
Emmanuele Bassi
adb5d0275f 2007-10-25 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/cogl/cogl.h: Do not include <clutter/clutter.h>.
2007-10-25 14:43:55 +00:00
Emmanuele Bassi
6738114bc2 2007-10-25 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-behaviour-path.c: Implement the
	ClutterScriptableIface to parse the custom "knots" property.
2007-10-25 14:42:15 +00:00
Emmanuele Bassi
33ef32d7cd 2007-10-25 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-texture.c (clutter_texture_set_property): Do
	not try to set NULL pixbufs.
2007-10-25 14:37:41 +00:00
Emmanuele Bassi
f0f043cb19 2007-10-25 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-actor.c: Implement part of the ClutterScriptable
	interface, using the ClutterActor API to set and get the name
	of an actor.

	(clutter_geometry_copy), (clutter_geometry_free): Use
	the slice allocator to avoid fragmentation when setting
	properties and emitting signals (that is: when packing
	boxed types into GValues).

	(clutter_actor_box_copy), (clutter_actor_box_free),
	(clutter_vertex_copy), (clutter_vertex_free): Ditto.

	* clutter/clutter-actor.h:
	* clutter/clutter-actor.c:
	(clutter_actor_push_transform_child),
	(clutter_actor_pop_transfomr_child): Simple wrappers around
	COGL API, which avoid including clutter/cogl.h when writing
	container actors outside Clutter.
2007-10-25 14:36:37 +00:00
Emmanuele Bassi
6c01499abf 2007-10-25 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/Makefile.am:
	* clutter/clutter.h:
	* clutter/clutter-scriptable.[ch]: Add the ClutterScriptable
	interface; by implementing this interface, a class can
	override the UI definition parsing and transform complex data
	types into GObject properties, or allow custom properties.

	* clutter/clutter-script.c:
	* clutter/clutter-script-parser.c:
	* clutter/clutter-script-private.h: Rearrange the code and
	use the ClutterScriptable interface to parse and build the
	custom properties. This cleans up the code and also it makes
	it more reliable (the complex type parsing is now done using
	the target type and not just the name of the property).
2007-10-25 14:34:54 +00:00
Emmanuele Bassi
9c38eead46 2007-10-25 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-json.h: Header for including the JSON
	parsing and data types.

	* clutter/json/json-types.h: Add JSON_NODE_VALUE_TYPE() macro.

	* clutter/json/Makefile.am: Install the JSON headers into a
	private location. This might change in the future, and might
	also cause collisions if you're using JSON-GLib and Clutter
	at the same time, so be warned.
2007-10-25 14:32:29 +00:00
Emmanuele Bassi
eec01b6e73 Check width in ClutterLabel::request_coords
If we get a size requisition, and we have ellipsization active,
check if we are getting less space than what the layout needs
and recompute the width.
2007-10-22 15:47:07 +00:00
Emmanuele Bassi
509799fa0c Change the clutter_color_from_string() format
The format should be "%02x%02x%02x%02x" because we use guint8 for each
component, and not guint16. The string before was completely broken.
2007-10-22 15:46:56 +00:00
Emmanuele Bassi
e937961870 2007-10-19 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-entry.c (clutter_entry_paint): Fixed off by
	one error. (#566, Gwenole Beauchesne)
2007-10-19 10:15:57 +00:00
Øyvind Kolås
373da11329 * clutter/clutter-timeline.c: (clutter_timeline_set_duration):
rearranged arithemetic to allow specifying duration with sub second
precision (also enables durations smaller than one second).
2007-10-18 13:47:21 +00:00
Emmanuele Bassi
7d221b2ef1 Fix ChangeLog 2007-10-18 12:31:53 +00:00
Emmanuele Bassi
f1105807fb 2007-10-18 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-script-private.h:
	* clutter/clutter-script.h:
	* clutter/clutter-script.c: Allow id-less objects: as long
	as they have a "type" member, a unique id will be provided.

	(json_object_end): Add merge id to the object information
	structure.

	(apply_behaviours), (add_children): Keep the unresolved
	objects around.

	(construct_stage), (clutter_script_construct_object): If an
	object has unresolved children or behaviours try resolving
	them when we ask for it.

	(json_parse_end), (clutter_script_ensure_objects): Ensure
	that the objects are fully constructed as best as we can when
	finished parsing.

	(object_info_free), (remove_by_merge_id):
	(clutter_script_unmerge_objects): Remove objects under the
	same merge id returned by the loading functions. (Fixes
	bug #558)
2007-10-18 12:31:07 +00:00
Matthew Allum
1ccbe04505 2007-10-18 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-score.c:
        * clutter/clutter-score.h:
        * tests/test-score.c:
        Implement more ClutterScore functionality.
2007-10-17 23:03:38 +00:00
Emmanuele Bassi
03fe64e8f8 2007-10-17 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-actor.c:
	(clutter_actor_set_property), (clutter_actor_get_property),
	(clutter_actor_class_init): Add the :reactive property, to
	control reactiveness using the UI definition files.

	(clutter_actor_reparent): Do not assume the parent is a
	ClutterContainer, and call the container API only if needed.

	(clutter_actor_destroy): Remove from the parent if needed,
	just like the documentation says.
2007-10-17 16:43:46 +00:00
Øyvind Kolås
1a80c688fe * clutter/pango/pangoclutter-render.c: (tc_get): Provide for blank
rows/columns of pixels between adjecant glyphs in the texture cache to
avoid bilinear interpolation spillage at edges of glyphs.
2007-10-16 19:14:52 +00:00
Øyvind Kolås
a7fb3a78d2 * clutter/clutter-main.c: (clutter_do_event): allow motion events
only delivered to stage to be chaugt in the capture phase as well
as the bubbling phase.
2007-10-16 16:35:02 +00:00
Emmanuele Bassi
143a5937e2 2007-10-16 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/json/json-object.c: Automatically transform every
	delimiter into an underscore.

	* clutter/clutter-script.c: Implement the "parent_texture"
	property translation for ClutterCloneTextures, using the
	passed id of the parent texture.
2007-10-16 14:40:00 +00:00
Emmanuele Bassi
f6c83a224e 2007-10-16 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-timeline.[ch]: Added ClutterTimeline:duration,
	a property for setting the duration of a timeline in milliseconds.
	The property comes with accessors and a new constructor. The
	frame rate used is the default value.

	* clutter/clutter-private.h:
	* clutter/clutter-main.[ch]: Add clutter_get_default_frame_rate()
	and clutter_set_default_frame_rate(); these two functions control
	the default frame rate to be used when creating timelines. Currently
	is set to 60 frames-per-second.
2007-10-16 13:41:34 +00:00
Tomas Frydrych
05789582b4 2007-10-16 Tomas Frydrych <tf@o-hand.com>
* build/msvc_2k5:
        Added MSVC project files.
2007-10-16 10:18:36 +00:00
Emmanuele Bassi
5737a8b79a 2007-10-16 Emmanuele bassi <ebassi@openedhand.com>
* clutter/clutter-color.c: Copy the alpha when shading.
2007-10-16 09:39:15 +00:00
Tomas Frydrych
f8de77ac92 2007-10-16 Tomas Frydrych <tf@o-hand.com>
* clutter.symbols:
	Added a bunch of missing symbols.
	
	* clutter/clutter-script.c:
	* json/json-node.c:
	Use g_slice_new0 instead of g_slice_new to avoid passing garbage to functions.
	
	* tests/test-threads.c:
	Replaced non-portable sleep() with g_usleep().
2007-10-16 08:34:16 +00:00
Tomas Frydrych
922a7e4d21 2007-10-15 Tomas Frydrych <tf@o-hand.com>
* clutter/cogl/gl/cogl-defines.h:
	* clutter/cogl/gl/cogl.c:
	Fixed up GL include for windows.
2007-10-15 19:19:42 +00:00
Matthew Allum
dd99f024bf 2007-10-15 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-actor.c:
        More events documentation.

        * clutter/clutter-event.c:
        * clutter/clutter-event.h:
        Add synthetic flag and make put_event use it
        (via modded patch from pippin)

        * clutter/clutter-main.c: (clutter_do_event):
        dont use put event anymore when pushing enter/leave events.
2007-10-15 16:50:59 +00:00
Emmanuele Bassi
2a891520fa 2007-10-15 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/pango/Makefile.am: Compile with the debug flags, if
	set.
2007-10-15 09:09:04 +00:00
Emmanuele Bassi
787de73486 2007-10-12 Emmanuele Bassi <ebassi@openedhand.com>
* clutter.symbols: Remove non-public symbols.
2007-10-12 17:36:38 +00:00
Tomas Frydrych
ad80467d1c 2007-10-12 Tomas Frydrych <tf@o-hand.com>
* clutter.symbols:
	A list of public symbols, one per line; semi-autogenerated, so
	might not be complete -- PLEASE when adding new public APIs, add
	the function name to this file.
2007-10-12 15:16:22 +00:00
Emmanuele Bassi
12b9b3bbfc 2007-10-12 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-actor.c: Add a :depth property, so we can
	set the initial depth of an actor inside the UI definition
	files.
2007-10-12 12:42:54 +00:00
Tomas Frydrych
d9d10f4704 2007-10-12 Tomas Frydrych <tf@o-hand.com>
* tests/test-actors.c:
	When using MSVC, define _USE_MATH_DEFINES before including
	math.h, otherwise constants like M_PI will not be defined.
2007-10-12 10:02:28 +00:00
Emmanuele Bassi
abc529aaec 2007-10-12 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-script.c (construct_timline),
	(parse_member_to_property): Transfer ownership of the
	implicit timelines to the behaviour, so that they get
	unreferenced when the behaviour is destroyed.

	(parse_member_to_property): Reverse the list of children
	and behaviours.
2007-10-12 09:43:27 +00:00
Tomas Frydrych
174bd04b49 2007-10-12 Tomas Frydrych <tf@o-hand.com>
Portability fixes:

	* clutter/clutter-private.h:
	Bracket #include "unistd.h" with #ifdef HAVE_UNISTD_H

	* clutter/clutter-fixed.c:
	Use "", not <> for inclusion of local files.

	(clutter_sqrtx): forward declare local variables.

	* clutter/clutter-debug.h:
	Added non-gcc (c99) implementation of variadic debug macros for
	when not compiling with gcc.

	* clutter/pango/pangoclutter-render.c:
	Fixed some strange uses of CLUTTER_NOTE() + stripped trailing
	whitespace.
2007-10-12 09:39:41 +00:00
Tomas Frydrych
abd6832dd9 2007-10-12 Tomas Frydrych <tf@o-hand.com>
* clutter/clutter-actor.c:
        * clutter/clutter-backend.c:
        * clutter/clutter-behaviour-depth.c:
        * clutter/clutter-box.c:
        * clutter/clutter-clone-texture.c:
        * clutter/clutter-container.c:
        * clutter/clutter-entry.c:
        * clutter/clutter-feature.c:
        * clutter/clutter-fixed.c:
        * clutter/clutter-group.c:
        * clutter/clutter-hbox.c:
        * clutter/clutter-label.c:
        * clutter/clutter-layout.c:
        * clutter/clutter-media.c:
        * clutter/clutter-rectangle.c:
        * clutter/clutter-score.c:
        * clutter/clutter-script.c:
        * clutter/clutter-stage.c:
        * clutter/clutter-texture.c:
        * clutter/clutter-timeline.c:
        * clutter/clutter-timeout-pool.c:
        * clutter/clutter-vbox.c:
        * clutter/cogl/gl/cogl.c:
        * clutter/cogl/gles/cogl.c:
        * clutter/eglnative/clutter-backend-egl.c:
        * clutter/eglnative/clutter-event-egl.c:
        * clutter/eglnative/clutter-stage-egl.c:
        * clutter/eglx/clutter-backend-egl.c:
        * clutter/eglx/clutter-event-egl.c:
        * clutter/eglx/clutter-stage-egl.c:
        * clutter/glx/clutter-event-glx.c:
        * clutter/json/json-array.c:
        * clutter/json/json-generator.c:
        * clutter/json/json-node.c:
        * clutter/json/json-object.c:
        * clutter/json/json-parser.c:
        * clutter/sdl/clutter-backend-sdl.c:
        * clutter/sdl/clutter-event-sdl.c:
        * clutter/sdl/clutter-stage-sdl.c:

	Fixedup config.h inclusion (must always be bracketed with #ifdef
	HAVE_CONFIG_H).
2007-10-12 08:17:00 +00:00
Tomas Frydrych
422c725a47 2007-10-11 Tomas Frydrych <tf@o-hand.com>
* clutter/clutter-entry.c:
	Avoid using C++ reserverd words to name variables.
2007-10-11 15:07:36 +00:00
Øyvind Kolås
914c930cee Improve the quality of text when the scale it is shown at screen is
smaller than the original, seems to work well down to about a scale
of 50%.
* clutter/pango/pangoclutter-fontmap.c:
(pango_clutter_font_map_default_substitute): turn off hinting.
* clutter/pango/pangoclutter-render.c: request linear filtering
instead of nearest neighbour when scaling down.
* tests/test-text.c: replaced test with a a test that renders a sample
grid with various pixel sizes and scales for visual inspection of
text rendering quality.
2007-10-11 12:18:01 +00:00
Emmanuele Bassi
52065e88bc 2007-10-10 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/glx/clutter-backend-glx.c: Fix documentation of the
	filter function API.

	* clutter/clutter-score.c:
	* clutter/clutter-effect.c:
	* clutter/clutter-actor.c: Documentation fixes.

	* clutter/clutter-actor.h: Automatically typecast to ClutterActor
	when setting/checking flags.
2007-10-10 16:02:54 +00:00
Emmanuele Bassi
261bc4c4f5 2007-10-10 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-actor.c: Beautify the ClutterActor documentation.
2007-10-10 14:51:25 +00:00
Emmanuele Bassi
717a82303a 2007-10-10 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-actor.c: Remove the ::event-after signal:
	three event layers to connect to seems a bit overkill.

	(clutter_actor_event): Return FALSE, not TRUE by default,
	as g_signal_emit() will change the return value if no
	handlers are connected

	* clutter/clutter-stage.c: Emit ::notify when we change
	the fullscreen property.

	* clutter/clutter-script.c: Add more documentation for the
	definition format and keywords.

	(translate_property): Collapse the G_TYPE_ENUM and G_TYPE_FLAGS
	cases into one, to simplify the code.

	* tests/test-script.c: Test enumeration conversion by using
	a value different from the default.
2007-10-10 14:29:29 +00:00
Matthew Allum
6216ce659c 2007-10-10 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-actor.c:
        * clutter/clutter-actor.h:
        * clutter/clutter-event.c:
        * clutter/clutter-main.c:
        * tests/test-events.c:
        Add basic W3 DOM  event 'capture' like functionality.
2007-10-10 13:04:34 +00:00
Emmanuele Bassi
a4b7abd18e 2007-10-10 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-script-private.h:
	* clutter/clutter-script.c: Parse flags like we parse enums.
2007-10-10 13:01:09 +00:00
Emmanuele Bassi
8b55030c14 2007-10-10 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/json/json-types.h:
	* clutter/json/json-array.c:
	* clutter/json/json-object.c: Resync with the upstream copy
	of JSON-GLib; add json_object_remove_member() and
	json_array_remove_element() and fix the g_hash_table_get_keys()
	replacement for GLib 2.12.

	* clutter/clutter-script.c: Clean up the complex properties
	parsing code.
2007-10-10 12:51:51 +00:00
Emmanuele Bassi
704aa0c6d7 2007-10-10 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-script.c (json_object_end): Add "type_func"
	to the list of attributes we skip.
2007-10-10 10:44:45 +00:00
Emmanuele Bassi
7aa52af5dd 2007-10-10 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/json/json-parser.c: Use the commodity JsonNode API
	and accept bare values as root nodes.

	* clutter/clutter-script-private.h:
	* clutter/clutter-script.c: Unreference the created objects
	only if they are top-levels, like ClutterBehaviour and
	ClutterTimelines. Actors have floating references, so we
	just transfer ownership to their containers, and the stage
	is owned by the backend. Add the "type_func" key to the
	object definition, so the user can supply its own GType
	function if the class name doesn't follow the GObject rules.
	Document the ClutterScript public API.
2007-10-10 10:42:19 +00:00
Matthew Allum
8faf9b9964 2007-10-10 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-actor.c:
        * clutter/clutter-actor.h:
        Add missing enter/leave event signals

        * clutter/clutter-main.c: (clutter_do_event):
        Set time in crossing events.
        Protect against do_pick() failing.
2007-10-09 23:45:49 +00:00
Emmanuele Bassi
475fcc64a7 2007-10-09 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-script.c (resolve_alpha_func): Fix the
	ClutterAlphaFunc resolution function.
2007-10-09 20:04:23 +00:00
Emmanuele Bassi
b1ed23e0df 2007-10-09 Emmanuele Bassi <ebassi@openedhand.com>
* tests/Makefile.am:
	* tests/test-script.c:
	* tests/test-script.json: Move part of the UI definition into
	its own file and exercise clutter_script_load_from_file().
2007-10-09 16:44:44 +00:00
Emmanuele Bassi
b0569d0f27 2007-10-09 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-script.c (clutter_script_get_object): Construct
	the requested object if it hasn't been already. This allows
	referencing objects within the same snippet.

	* tests/test-script.c: Declare a timeline and use it inside
	multiple behaviours; apply multiple behaviours to various
	actors, then retrieve the timeline to start it when the test
	runs.
2007-10-09 16:21:04 +00:00
Emmanuele Bassi
0d7184db20 2007-10-09 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-script-private.h:
	* clutter/clutter-script.c: Allow applying behaviours directly
	inside the UI definition data.

	* tests/test-script.c: Test the "behaviours" member.
2007-10-09 15:11:01 +00:00
Robert Bradford
9e3f1e0d4c 2007-10-09 Rob Bradford <rob@openedhand.com>
* clutter/eglnative/clutter-backend-egl.c:
	(clutter_backend_egl_dispose):
	Call eglTerminate() on the display when the backend is disposed of.

	* clutter/eglnative/clutter-stage-egl.c:
	(clutter_stage_egl_realize):
	Don't use the createNativeWindow() call, it's not generic EGL.
2007-10-09 13:56:29 +00:00
Emmanuele Bassi
ac9aa06fcf 2007-10-09 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-script-private.h:
	* clutter/clutter-script.h:
	* clutter/clutter-script.c: Add licensing information to
	the newly added files.

	* clutter/clutter-script.c: Support creating behaviours with
	ClutterScript. ClutterAlpha objects are implicit, but
	timelines can be both explicit objects using their id or
	implicit objects. Make the property resolution and translation
	more robust. Support the pixbuf property.

	* tests/test-script.c: Test the newly added features.

	* docs/reference/clutter-docs.sgml:
	* docs/reference/clutter-sections.txt: Add ClutterScript.
2007-10-09 13:29:03 +00:00
Emmanuele Bassi
d0e46914c1 2007-10-09 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-fixed.h: Add deprecation guards around
	CLUTTER_FIXED_INT().
2007-10-09 13:24:52 +00:00
Emmanuele Bassi
98841e2be8 2007-10-08 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-script.c: Parse ClutterMargin and ClutterPadding
	properties from arrays or integers (assume pixels).
2007-10-08 16:48:22 +00:00
Emmanuele Bassi
76dd06bc7b 2007-10-08 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-script-private.h:
	* clutter/clutter-script.c: Allow defining childrens for every
	container actor inside the UI definition files.
2007-10-08 16:25:10 +00:00
Matthew Allum
34a40de3c5 2007-10-08 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-actor.c:
        * clutter/clutter-actor.h:
        * clutter/clutter-private.h:
        * clutter/clutter-main.c:
        Add a hash to global clutter context mapping all parented actor
        id's to actors.
        Add clutter_get_actor_by_id() call.
        Convert picking machinery to use above.
        (performance/simpler composite actor creation)

        * clutter/clutter-stage.c: (clutter_stage_fullscreen),
        (clutter_stage_unfullscreen), (clutter_stage_event):
        Only set the fullscreen property on stage state fullscreen event(#545)
        Experimental as could be painful to implement on non X backends.
2007-10-08 16:18:33 +00:00
Emmanuele Bassi
9e81870d0b 2007-10-08 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-script.c (json_parse_end):
	* clutter/json/json-object.c (json_object_get_members): Replace
	the GLib 2.14 API with the equivalent code for GLib < 2.14.

	* configure.ac: Revert the dependency bump.
2007-10-08 15:18:31 +00:00
Emmanuele Bassi
991562f536 2007-10-08 Emmanuele Bassi <ebassi@openedhand.com>
Initial implementation of the UI definition files. (#424)

	* clutter/json/Makefile.am:
	* clutter/json/*.[ch]: In-tree copy of JSON-GLib, a GLib-based
	JSON parser/generator library. We use it in-tree because we might
	need to change the API. Ideally, we'd depend on it.

	* clutter/clutter.h:
	* clutter/clutter-script-private.h:
	* clutter/clutter-script.[ch]: ClutterScript, the scenegraph
	generator class. It parses JSON streams in form of buffers and
	files and builds the scene.

	* clutter/clutter-debug.h:
	* clutter/clutter-main.c: Add a "script" debug flag

	* clutter/Makefile.am: Build glue.

	* tests/Makefile.am:
	* tests/test-script.c: Add a test case for the ClutterScript.

	* configure.ac: Depend on GLib 2.14, so we can use the
	g_hash_table_get_key() and g_hash_table_get_values() functions
	for the time being; we can probably reimplement those, but we
	are going to need 2.14 anyway if we are going to implement a
	list model using GSequence.
2007-10-08 15:03:22 +00:00
Emmanuele Bassi
7b3464226c 2007-10-03 Emmanuele Bassi <ebassi@openedhand.com>
* tests/test-behave.c: Use the right return type for the
	event callbacks.
2007-10-08 14:51:26 +00:00
Matthew Allum
bc13e907cc 2007-10-03 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-actor.c:
        * clutter/clutter-event.c:
        * clutter/clutter-event.h:
        * clutter/clutter-main.c:
        * clutter/clutter-private.h:
        * clutter/eglnative/clutter-event-egl.c:
        * clutter/eglx/clutter-event-egl.c:
        * clutter/glx/clutter-event-glx.c:
        * clutter/sdl/clutter-event-sdl.c:
        Remove seperate double/triple click events and replace with
        a click_count member.
        Move calculating click counts from backend to do_event()
        Initial implementation of ENTER/LEAVE events.

        * tests/test-events.c:
        Add code to test above.

        * tests/test-behave.c:
        Sync with newer API.

        * clutter/clutter-score.c:
        Silence a warning.
2007-10-03 09:28:16 +00:00
Emmanuele Bassi
4189c66a21 2007-10-01 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-fixed.h: Add CLUTTER_FIXED_TO_INT() and
	deprecate CLUTTER_FIXED_INT(), for symmetry with
	CLUTTER_FIXED_FROM_INT().

	* clutter/clutter-alpha.c:
	* clutter/clutter-behaviour-depth.c:
	* clutter/clutter-behaviour-ellipse.c:
	* clutter/clutter-behaviour-path.c:
	* clutter/clutter-fixed.h: Use CLUTTER_FIXED_TO_INT().
2007-10-02 14:53:32 +00:00
Emmanuele Bassi
db0ed63c93 2007-10-01 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-actor.c (clutter_actor_get_size): Implement
	get_size() as a wrapper around clutter_actor_query_coords()
	instead of calling g_object_get() twice.

	(clutter_actor_init): Initialise the box in one call.
2007-10-02 14:45:40 +00:00
Emmanuele Bassi
090c1d11b4 2007-10-01 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-actor.[ch]: Remove the ::event-after signal
	class handler, as it's not meant to be overridden by sub-classes.

	(clutter_actor_class_init):
	Make every event-related signal return a boolean: return TRUE
	in a signal handler to block the emission. The value is accumulated
	automatically by the signal API.

	(clutter_actor_event): If ::event returns TRUE, skip to emitting
	::event-after. Return the value accumulated by the signal emission
	chain.

	* clutter/clutter-private.h: Rename _clutter_boolean_accumlator().

	* clutter/clutter-main.c (clutter_do_event): If clutter_actor_event()
	returns TRUE then stop the event emission chain from child to parent.

	* clutter/clutter-stage.c (clutter_stage_event): Behave like
	clutter_actor_event().

	(clutter_stage_get_key_focus),
	(clutter_stage_set_key_focus): Avoid a nasty circular reference
	issue: if the actor passed to set_key_focus is NULL then the stage
	has the key focus.

	* tests/test-events.c: Update the events test with the API
	changes.
2007-10-02 14:03:36 +00:00
Tomas Frydrych
5b4b51ba7a 2007-10-01 Tomas Frydrych <tf@openedhand.com>
* clutter/clutter-actor.c:
	(clutter_actor_set_scale_with_gravityx):
	Use CLUTTER_QMUL for better precission (#532, patch by Gwenole
	Beauchesne).

	* clutter/clutter-color.c:
	(clutter_color_to_hlsx):
	Added missing CLUTTER_INT_TO_FIXED conversion (#544, patch by Neil
	Roberts).
2007-10-01 15:26:09 +00:00
Neil J. Patel
b5b613000c 2007-10-01 Neil J. Patel <njp@o-hand.com>
Patch by: Tommi Komulainen <tommi.komulainen@iki.fi>

	* clutter/clutter-entry.c: (clutter_entry_delete_text):
	Fix characters vs. bytes inconsistency (#520).
2007-10-01 13:44:33 +00:00
Matthew Allum
956f6b6238 2007-09-30 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-event.h:
        Removed unused POINTER_ENTER and POINTER_LEAVE states. (#546)
        * clutter/clutter-stage.c: (clutter_stage_fullscreen),
        (clutter_stage_unfullscreen):
        Only Change fullscreen prop if the backend implements fullscreen
        methods. (#545)
2007-09-30 22:27:52 +00:00
Øyvind Kolås
d93230d1bf 2007-09-28 Øyvind Kolås <pippin@openedhand.com>
* clutter/clutter-container.[ch]: added
	clutter_container_find_child_by_name.
2007-09-28 14:52:54 +00:00
Øyvind Kolås
99c97b3337 2007-09-28 Øyvind Kolås <pippin@openedhand.com>
* clutter/glx/clutter-stage-glx.c: (clutter_stage_glx_realize):
	removed unused variable perspective.
	* tests/test-events.c: (main): added CLUTTER_STAGE() cast.
	* tests/test-threads.c: include unistd.h for sleep().
2007-09-28 11:03:21 +00:00
Øyvind Kolås
f7a426587c * clutter/clutter-label.c: (clutter_label_ensure_layout): avoid
calling pango_layout_set_text|markup before we've got any text.
2007-09-28 10:54:42 +00:00
Matthew Allum
7d7d235729 2007-09-27 Matthew Allum <mallum@openedhand.com>
* tests/test-scale.c:
        Fix out of about array addressing (#522, Tommi Komulainen)
2007-09-27 22:30:58 +00:00
Matthew Allum
ff81b9fcd2 2007-09-27 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-clone-texture.c:
        * clutter/clutter-rectangle.c:
        Include config.h in all c files (#524, Tommi Komulainen)
2007-09-27 22:20:30 +00:00
Matthew Allum
cf48841f2b 2007-09-27 Matthew Allum <mallum@openedhand.com>
Merge from stable.

        * clutter/clutter-behaviour-path.c: (path_alpha_to_position)
        Fix uninitialized variable (#480, Gwenole Beauchesne)
2007-09-27 22:15:25 +00:00
Matthew Allum
5ab0ed5a00 2007-09-27 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-event.c:
        * clutter/clutter-event.h:
        * clutter/clutter-main.c:
        Further event tweaks;
        - Ref the event actor source
        - Protect against off stage events (button releases)
        - Move more into ClutterEventAny
        - Add a click count to button event (as yet unused)
        - Minor cleanups

        * clutter/clutter-actor.c:
        Make scale x/y a property.

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

        * clutter/eglx/clutter-backend-egl.c:
        Warning cleanup

        * clutter/eglx/clutter-stage-egl.c:
        * clutter/glx/clutter-stage-glx.c:
        * clutter/sdl/clutter-stage-sdl.c:
        Avoid setting viewport directly, but set sync flag.

        * clutter/pango/pangoclutter-render.c: (draw_glyph):
        Minor cleanups.

        * clutter/Makefile.am:
        * tests/Makefile.am:
        * tests/test-score.c
        * clutter/clutter.h:
        * clutter/clutter-score.h:
        * clutter/clutter-score.c:
        Add very initial (broken) ClutterScore implementation.
2007-09-27 21:38:38 +00:00
Ross Burton
bc7b1b3a16 2007-09-25 Ross Burton <ross@openedhand.com>
Merge from stable.
	
	* clutter/clutter-group.c:
	Optimise sort_z_order.
2007-09-25 13:22:24 +00:00
Emmanuele Bassi
c7ff2b7651 2007-09-17 Emmanuele Bassi <ebassi@openedhand.com>
Merge from stable

	* clutter/eglnative/clutter-event-egl.c:
	Flag every device click after the first as motion events
	instead of button presses. (#505, Shreyas Srinivasan)
2007-09-17 11:34:03 +00:00
Matthew Allum
f5483054fc 2007-09-10 Matthew Allum <mallum@openedhand.com>
Port from stable branch.

        * clutter/eglnative/clutter-event-egl.c: (clutter_event_dispatch):
        Only declare tsevent if we have tslib (#498, Robert Bragg)
2007-09-10 09:16:33 +00:00
Emmanuele Bassi
f2e1d852bb 2007-09-06 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-stage.c: Remove stray include <gdk-pixbuf-xlib.h>
	in ClutterStage: the code requesting it was moved in the backends.
2007-09-06 10:37:24 +00:00
Emmanuele Bassi
b60c049e54 Fix the ClutterRectangle border drawing
Apply a patch from Neil Roberts (bug 488) for fixing the drawing of the
rectangle border, by not overdrawing the rectangle on the border and by
doing the correct check on the border colour.
2007-08-31 11:58:20 +00:00
Matthew Allum
e812b0d875 2007-08-29 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-effect.c: (clutter_effect_template_set_property):
        Add missing break statement. Whoops.
2007-08-29 22:32:47 +00:00
Matthew Allum
818a667836 2007-08-29 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-main.c: (_clutter_do_pick):
        Call glFinish before reading pixels
        * clutter/eglx/clutter-stage-egl.c: (clutter_stage_egl_realize):
        Add missing read surface in making context current.
        Above fixes via Kate Alhola.

        * clutter/glx/clutter-glx.h:
        Add missing filter funcs so there actually exported
2007-08-29 19:11:18 +00:00
Matthew Allum
1ceaf04ac7 2007-08-24 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-actor.c:
        * clutter/clutter-event.h:
        * clutter/clutter-main.c:
        * clutter/clutter-stage.c:
        * clutter/clutter-stage.h:
        * clutter/glx/clutter-backend-glx.c:
        * clutter/glx/clutter-backend-glx.h:
        * clutter/glx/clutter-event-glx.c:
        * clutter/glx/clutter-stage-glx.c:
        * clutter/glx/clutter-stage-glx.h:
        Add initial support for stage state events.
        Fix fullscreening for an already mapped stage.

        * tests/test-events.c:
        Print out info from the above. Blue button now toggles
        fullscreen.

        * clutter/clutter-effect.c:
        * clutter/clutter-effect.h:
        Add a setting for templates to ref or clone underlying
        timelines. (As to improve sync issues like those in foofone)

        * tests/test-timeline.c:
        Also add completed signals.

        * clutter/cogl/gles/cogl.c: (cogl_texture_image_2d):
        * configure.ac:
        Forward port from stable branch. RGB Image fixes gles
        and check for lower case libgles_cm.
2007-08-24 15:12:52 +00:00
Tomas Frydrych
e0f609e8aa Fixed rotation around x axis (bug 486).
* clutter/clutter-actor.c:
(_clutter_actor_apply_modelview_transform):
2007-08-24 06:19:06 +00:00
Emmanuele Bassi
46a3a0bec6 2007-08-23 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-private.h:
	* clutter/clutter-event.c: Revert the event queue ordering
	commit.

	* clutter/eglx/clutter-event-egl.c:
	* clutter/glx/clutter-event-glx.c:
	* clutter/sdl/clutter-event-sdl.c: Update backends.
2007-08-23 12:47:25 +00:00
Tomas Frydrych
a40f50fffa Fixed CCW rotation in rotate behaviour (bug 483); fixed overall path length calculation for angles > 360 in rotate and ellipse. 2007-08-22 10:33:26 +00:00
Emmanuele Bassi
86ff4e0cac Update ChangeLog for SVN users 2007-08-22 10:12:20 +00:00
Emmanuele Bassi
0e90acfdeb Update ChangeLog for SVN users 2007-08-21 15:48:57 +00:00
Emmanuele Bassi
1a2f0c95f5 Fix previous ChangeLog message 2007-08-21 15:48:30 +00:00
Emmanuele Bassi
9a12c36be4 Update ChangeLog for SVN users 2007-08-21 15:48:24 +00:00
Emmanuele Bassi
910ca5340d Update ChangeLog for SVN users 2007-08-21 15:48:03 +00:00
Tomas Frydrych
b1c040ce19 Fixes for 64-bit platforms; use of SSE builtin when available (patches by Gwenole Beauchesne). 2007-08-21 09:25:09 +00:00
Emmanuele Bassi
155c22b93a 2007-08-20 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/Makefile.am:
	* clutter/clutter-enum-types.h.in:
	* clutter/clutter-enum-types.c.in: Use template files for
	glib-mkenums; this makes the Makefile template a bit more
	clean and the enum types generation more customisable (e.g.
	when GLib 2.14 has been released, we can use g_once_init_enter()
	and g_once_init_leave() to have thread-safe GType functions
	for the enum types as well).
2007-08-20 20:16:15 +00:00
Emmanuele Bassi
7ab6f4e338 Relax the CLUTTER_CHECK_VERSION() macro check
The macro should check for a micro version greater or equal to the specified
micro version parameter. Fixes bug 477, patch by Neil Roberts.
2007-08-20 11:54:28 +00:00
Emmanuele Bassi
abab87c51f Update ChangeLog for SVN users 2007-08-19 19:09:26 +00:00
Matthew Allum
5b3f06faac 2007-08-19 Matthew Allum <mallum@openedhand.com>
* clutter/eglx/clutter-event-egl.c: (clutter_event_dispatch):
        Fix clutter_thread typo (Kate Alhola)
2007-08-19 00:03:01 +00:00
Emmanuele Bassi
884051d890 Update ChangeLog for SVN users 2007-08-18 12:39:40 +00:00
Emmanuele Bassi
5686e8e592 Update ChangeLog for SVN users 2007-08-15 19:50:36 +00:00
Emmanuele Bassi
d5a0da0ebd Update ChangeLogs for SVN users 2007-08-15 19:50:24 +00:00
Emmanuele Bassi
635b84971d Fix for the smoothstep alpha function
When computing the increasing smoothstep alpha value use the right type
for the results, to avoid overflowing the [0, 0xffff] range of the alpha
value.

Also use the right format when printing out the opacity and alpha values
in the opacity behaviour.
2007-08-15 13:29:43 +00:00
Emmanuele Bassi
b2cf2e057a Update ChangeLog for SVN users 2007-08-14 08:01:43 +00:00
Matthew Allum
8ad4dde16b 2007-08-13 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-actor.c:
        * clutter/clutter-actor.h:
        * clutter/clutter-event.c:
        * clutter/clutter-event.h:
        * clutter/clutter-main.c:
        * clutter/clutter-main.h:
        * clutter/clutter-private.h:
        * clutter/clutter-stage.c:
        * clutter/clutter-stage.h:
        * clutter/clutter-types.h:
        Initial implementation of actors emmitting event signals (423);
        - Actors set_reactive() to receive mouse events.
          (call clutter_enable_motion_events() for per action motion events)
        - clutter_stage_set_key_focus () to direct key events.
        - Events bubble up to parents (ending at stage)
          (original source identified by clutter_event_get_source())
        TODO:
        - enter/leave notifys for actors.
        - stage specific events - fullscreen
        - grabs

        * tests/test-events.c:
        Extend a little to use new API

        * clutter/cogl/gl/cogl.c:
        * clutter/glx/clutter-backend-glx.c:
        Move get_proc_address into cogl and out of backend.
        (shaders will need it)

        * clutter/clutter-group.c: (clutter_group_real_lower):
        Fix a minor compile warning.

        * TODO:
        Sync up.
2007-08-13 20:48:01 +00:00
Emmanuele Bassi
e726ef9a2b Update ChangeLogs for SVN users 2007-08-13 17:01:35 +00:00
Emmanuele Bassi
68bbe4cd89 2007-08-12 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-timeout-pool.c: Fix removing and adding timeouts
	to the timeout pool during a dispatch of a timeout source already
	inside the pool. (#456, based on a patch by Neil Roberts)

	(clutter_timeout_dispatch), (clutter_timeout_pool_dispatch): Hold
	the main Clutter lock in the pool dispatch function, instead of
	the per-timeout dispatch; this guarantees that the ref+unref of
	the single timeouts are done under the main lock.
2007-08-12 13:19:31 +00:00
Emmanuele Bassi
2e18b53b68 Update ChangeLog 2007-08-12 12:41:05 +00:00
Emmanuele Bassi
ffbf7b64ab 2007-08-09 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-box.c: Rename a variable to fix a compiler
	warning.
2007-08-09 13:24:42 +00:00
Emmanuele Bassi
5bf83b3f0a 2007-08-08 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-behaviour-ellipse:
	(clutter_behaviour_ellipse_get_tiltx): Remove useless
	"Return" in the API documentation.
2007-08-08 23:23:18 +00:00
Emmanuele Bassi
fae203c1ea 2007-08-08 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-timeout-pool.c: Fix sorting of the pool
	when inserting and removing timeout sources. (#449, Neil
	Roberts)
2007-08-08 21:36:16 +00:00
Emmanuele Bassi
705f47783a 2007-08-08 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-main.c (clutter_get_timestamp): Remove
	the microseconds remainder, which is mostly useless. (#447)
2007-08-08 13:24:43 +00:00
Emmanuele Bassi
1639b7d0b8 2007-08-08 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-main.c (clutter_get_timestamp): Return the
	correct number of microseconds (#447, Neil Roberts)
2007-08-08 11:22:45 +00:00
Emmanuele Bassi
4befcd0a64 Merge clutter.git/threading branch 2007-08-08 10:20:14 +00:00
Emmanuele Bassi
f5b4b96394 Update ChangeLog for SVN users 2007-08-07 14:24:39 +00:00
Emmanuele Bassi
539706e075 Update ChangeLog for SVN users 2007-08-07 14:24:09 +00:00
Emmanuele Bassi
51ba12c9fd Update ChangeLogs for SVN users 2007-08-07 14:04:41 +00:00
Matthew Allum
3a8cc2226b 2007-08-07 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-behaviour-ellipse.c:
        Add a documentation note regarding ellipse setting
        the applied actors position.
2007-08-07 12:17:15 +00:00
Matthew Allum
0925bd7238 2007-08-07 Matthew Allum <mallum@openedhand.com>
* NEWS:
        * README:
        More updates ready for 0.4.0
2007-08-07 12:06:27 +00:00
Matthew Allum
363faccfd5 2007-08-07 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-fixed.c:
        * clutter/clutter-fixed.h:
        Add documentation.

        * clutter/cogl/gl/cogl.c: (cogl_perspective):
        Remove CFX_* shortened macros
2007-08-07 11:35:22 +00:00
Emmanuele Bassi
70c43c5a11 Remove unused clutter_threads_enter() and clutter_threads_leave()
The threads_enter() and threads_leave() functions are no-ops because Clutter
is not thread-aware nor thread-safe. Leaving them in is a source of confusion
so we just remove them.

Update the NEWS and the README files with the release notes.
2007-08-06 20:46:54 +00:00
Emmanuele Bassi
f13a729e70 Update ChangeLogs for SVN users 2007-08-06 19:38:02 +00:00
Matthew Allum
b3c8ff186c 2007-08-06 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-texture.c:
        Correct set pixbuf property as GDK_TYPE_PIXBUF
        (fix via Neil Roberts)
2007-08-06 12:48:13 +00:00
Matthew Allum
7949cfe30a 2007-08-06 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-behaviour-depth.c:
        Modify to work like all other behvaiours in not forcing
        increasing order in behaviour 'limits'. (#436)
        Rename limit min/max props to start/end.

        * tests/test-depth.c:
        Simplify test-case to work with above change and
        without multiple ramps

        * clutter/clutter-behaviour-rotate.c:
        Handle CW rotation when end > start and similar for CCW just
        like ellipse behaviour.
2007-08-05 23:13:27 +00:00
Emmanuele Bassi
f13707632c 2007-08-05 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-behaviour-depth.c: Fix typo in the description.
2007-08-05 09:46:01 +00:00
Emmanuele Bassi
679ce128e4 2007-08-04 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-behaviour-depth.c: Clarify the depth behaviour
	even more in the description used by the API reference.
2007-08-04 09:42:01 +00:00
Emmanuele Bassi
46506cb93e 2007-08-04 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-behaviour-depth.c: Clarify that what drives
	the movement along the Z axis is the ClutterAlpha object (we
	don't have the luxury of a rollover like the opacity does);
	so, if you want to go from 0 to -100 you have to use a
	decreasing function, just as well if you want to go from 100
	to 0. Using a min-depth of 100 and a max-depth of 0 and an
	increasing function is undefined behaviour.

	* tests/Makefile.am:
	* tests/test-depth.c: Add a test case for the depth behaviour.
2007-08-04 08:59:18 +00:00
Emmanuele Bassi
7cd4ee0517 2007-08-04 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-actor.c (clutter_actor_set_opacity): Queue
	a redraw when setting the opacity of an actor.
2007-08-04 07:55:55 +00:00
Emmanuele Bassi
f32dca44e2 2007-08-03 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-behaviour-ellipse.c:
	(clutter_behaviour_ellipse_get_angle_tilt): Avoid recursion
	by fixing a typo.

	(clutter_behaviour_ellipse_get_angle_begin),
	(clutter_behaviour_ellipse_get_angle_end): Correct the angles
	here too.

2007-08-03  Emmanuele Bassi  <ebassi@openedhand.com>
2007-08-03 15:40:11 +00:00
Emmanuele Bassi
ac5ca04fa5 2007-08-03 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-behaviour-ellipse.c:
	(clutter_behaviour_ellipse_get_property): Do not forget to
	correct the angles when returning them.
2007-08-03 15:18:43 +00:00
Tomas Frydrych
b368f1833a added direction paramenter to clutter_behaviour_ellipse_new (), made direction to be respected, unclamped angle values 2007-08-03 09:52:52 +00:00
Matthew Allum
7b85b34b6c 2007-08-02 Matthew Allum <mallum@openedhand.com>
* NEWS:
        * README:
        Initial updating ready for release.
2007-08-02 15:09:00 +00:00
Emmanuele Bassi
4ccfc2daa2 2007-08-02 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/eglnative/clutter-backend-egl.c:
	* clutter/eglx/clutter-backend-egl.c:
	* clutter/sdl/clutter-backend-sdl.c: Set the default resolution
	as 96.0 dpi for every backend (we already were under this
	assumption anyway, and this makes it easier to change this
	setting per-backend).

	* clutter/pango/pangoclutter-fontmap.c:
	* clutter/pango/pangoclutter.h: Allow setting the resolution
	for the PangoClutterFontMap object and provide the implementation
	for the PangoFcFontMap::get_resolution() virtual function. This
	allows to set the resolution of the PangoContext when retrieving
	it.

	* clutter/clutter-label.c (clutter_label_init): Set the
	resolution of the font map with the one the backend gives us.

	* clutter/clutter-entry.c (clutter_entry_init): Ditto.
2007-08-02 09:58:18 +00:00
Emmanuele Bassi
19e8b7aed4 Fix ChangeLog 2007-08-02 07:42:28 +00:00
Emmanuele Bassi
337571a805 2007-08-02 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-color.c (clutter_color_subtract): Invert the
	operands and match what the function says it does.
2007-08-02 07:40:58 +00:00
Matthew Allum
a6a998e4d8 2007-08-01 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-color.c: (clutter_color_from_pixel):
        Fix typo in alpha channel extraction (#434)
2007-08-01 22:09:33 +00:00
Emmanuele Bassi
fbadfa1a6b 2007-08-01 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-actor.[ch]: Add floating-point variant of the
	clutter_actor_get_r[xyz]angx() functions.
2007-08-01 13:11:43 +00:00
Emmanuele Bassi
4170d7cc43 2007-07-31 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-stage.[ch]: Fix clutter_stage_set_user_resizable()
	name, and add a getter for the property.

	* clutter/glx/clutter-stage-glx.c: Use the accessor, not
	g_object_get() to retrieve the value of the resizable property.
2007-07-31 17:01:52 +00:00
Emmanuele Bassi
dd93a0a13c 2007-07-31 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-backend.[ch]: Add clutter_backend_set_resolution()
	and clutter_backend_get_resolution(); backends should use the former
	to set the resolution of the display when initialising, while actors
	should use the latter when sizing themselves depending on the
	resolution or the font size.

	* clutter/glx/clutter-backend-glx.c: Set the resolution as 96 dpi
	as a default and query the X server when opening the display.

	* clutter/clutter-entry.c: Drop the hardcoded dpi value and use
	clutter_backend_get_resolution() to compute the default size.
2007-07-31 10:38:23 +00:00
Emmanuele Bassi
cae72ec419 2007-07-31 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-entry.c (clutter_entry_init): Set the default
	size of the entry based on the size of the default font. (#414).
2007-07-31 08:28:17 +00:00
Emmanuele Bassi
4c5e32ad05 2007-07-31 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/sdl/clutter-backend-sdl.c: Fix a typo in
	clutter_backend_sdl_get_features() (#426, Pan Bohui)
2007-07-31 07:58:35 +00:00
Matthew Allum
e7c2b250b1 2007-07-30 Matthew Allum <mallum@openedhand.com>
* AUTHORS:
        * HACKING:
        * README:
        Various updates and improvements.

        * configure.ac:
        Remove --disable-fast-fp-conversions
2007-07-30 16:28:53 +00:00
Tomas Frydrych
936fea0b37 Fixed invalid assumption about z cooordiance in calculation of
tilt in y axis.
2007-07-30 16:09:40 +00:00
Tomas Frydrych
2cc4a23820 Fixed incorrect order of modelview matrix stacking while calculating actor vertices. 2007-07-30 07:27:14 +00:00
Matthew Allum
459e8a0a9d 2007-07-30 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-backend.h:
        Remove #if 0's old backend_api
        (generating uneeded documentation)
2007-07-29 23:24:13 +00:00
Matthew Allum
0151f842d7 2007-07-30 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-texture.c:
        Fix re-relisation for large tiled textures.
        * tests/test-textures.c: (main):
        Add a show/hide to trigger above (see #442)
2007-07-29 22:55:04 +00:00
Emmanuele Bassi
249ada48bc 2007-07-29 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-types.h: Document ClutterGravity enumeration
	and remove the only incomplete symbol of the api reference. Now
	we are up to 79% documented symbols.
2007-07-29 09:19:37 +00:00
Emmanuele Bassi
84050c842c 2007-07-29 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-media.c: Document ClutterMedia signals;
	replace the implementation of clutter_media_set_filename() with
	something a wee bit more robust (and portable) than a sprintf().
2007-07-29 09:11:57 +00:00
Emmanuele Bassi
0d287fc4d4 2007-07-29 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-behaviour-ellipse.c: Documentation
	fixes; kill some indirections; freeze the notification
	queue when (potentially) emitting multiple notify
	signals.

	* clutter/clutter-alpha.h: Remove the unused macro
	CLUTTER_TYPE_SMOOTHSTEP.
2007-07-29 08:54:24 +00:00
Emmanuele Bassi
ad64200aa7 2007-07-28 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-actor.[ch]: Use GInitiallyUnowned
	as the parent structure in the ClutterActor structure
	definition; somehow, this has escaped everyone attention
	in one year and a half. Luckily, GInitiallyUnowned is
	as big as GObject.
	 
	 (clutter_actor_get_abs_position_units),
	 (clutter_actor_get_abs_position): Check parameters.

	 * clutter/clutter-texture.h: Unmangle the flags enum
	 type declaration, so that dumb parsers like h2defs.py
	 are not fooled.

	 * clutter/clutter-behaviour-ellipse.[ch]:
	 * clutter/clutter-effect.c: Fix some documentation
	 issues and make gtk-doc happy.
2007-07-28 17:11:39 +00:00
Tomas Frydrych
aed6a0cbe2 pruned ClutterBehaviourEllipse api 2007-07-27 13:44:42 +00:00
Tomas Frydrych
e17173edb4 ClutterBehaviourEllipse: allow tilt in all three axis 2007-07-27 08:18:41 +00:00
Matthew Allum
bc247e852e minor Changelog justification fix 2007-07-26 20:09:29 +00:00
Matthew Allum
e0e27baf35 2007-07-26 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-feature.h:
        Add new stage feature flags and document.

        * clutter/eglnative/clutter-backend-egl.c:
        * clutter/eglx/clutter-backend-egl.c:
        * clutter/sdl/clutter-backend-sdl.c:
        Set new feature flags.

        * clutter/glx/clutter-backend-glx.c:
        * clutter/glx/clutter-stage-glx.c:
        * clutter/clutter-stage.c:
        * clutter/clutter-stage.h:
        Add a 'user_resizeable' setting to the backend and implement
        for glx backend.
2007-07-26 20:08:09 +00:00
Emmanuele Bassi
32c4d786a6 Update ChangeLog for SVN users 2007-07-26 15:20:11 +00:00
Tomas Frydrych
43854a3e0a fixed ClutterBehaviourEllipse angle setters; updated ChangeLog 2007-07-26 13:48:50 +00:00
Emmanuele Bassi
1d26ea3220 Update ChangeLog for SVN users 2007-07-26 13:13:31 +00:00
Neil J. Patel
c1e84a8f3a 2007-07-26 Neil J. Patel <njp@o-hand.com>
* clutter/clutter-entry.c: (offset_to_bytes),
	(clutter_entry_ensure_cursor_position),
	(clutter_entry_new_with_text), (clutter_entry_new),
	(clutter_entry_insert_unichar), (clutter_entry_delete_chars):
	Fixed utf8 support so it actually works now, for both inserting and deleting
	chars.
	Fixed positioning of cursor for utf8 chars. Both GString and Pnago need
	bytes (not documented!) for string manipulation, so making sure all values
	were bytes and not char positions fixed the issue.
	Set a default size of 50x50 for the entry, otherwise no chars can be seen
	if the size is not set after creation (which confuses the developer).
2007-07-26 11:31:50 +00:00
Emmanuele Bassi
294dd2afb3 Update ChangeLog for SVN users 2007-07-26 11:28:34 +00:00
Emmanuele Bassi
cd100b4168 Update ChangeLog for SVN users 2007-07-26 11:04:29 +00:00
Emmanuele Bassi
71351e6fd8 Update ChangeLog for SVN users 2007-07-26 10:00:16 +00:00
Matthew Allum
73ff6900d0 2007-07-25 Matthew Allum <mallum@openedhand.com>
* Makefile.am:
        * HACKING:
        Add with initial notes on coding bits and bobs.

        * clutter/clutter-behaviour-scale.c:
        Doc fixes.

        * clutter/clutter-event.c: (clutter_event_put):
        Doc fixes.

        * clutter/glx/clutter-stage-glx.c:
        Disable wm user resizing of stage (At least for now)
        Doc fixes.
2007-07-25 22:09:53 +00:00
Tomas Frydrych
5b92cc21cb fixed endianness issue in fast fp conversions 2007-07-25 18:34:05 +00:00
Tomas Frydrych
2c97bdf456 added --disable-fast-fp-converions configure option 2007-07-25 18:17:13 +00:00
Emmanuele Bassi
a57acd0275 2007-07-25 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-label.[ch]: Ouch, clutter_label_get_alignment()
	returns a PangoAlignment, not a boolean.
2007-07-25 14:25:01 +00:00
Emmanuele Bassi
06c5bf1199 2007-07-25 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-behaviour.h:
	* clutter/clutter-behaviour.c: Rename clutter_behaviour_clear()
	to clutter_behaviour_remove_all() to avoid method clashes in
	bindings.
2007-07-25 13:12:24 +00:00
Tomas Frydrych
bf4e85d8e0 added test-rotate 2007-07-25 13:08:12 +00:00
Emmanuele Bassi
c72ab1f081 2007-07-25 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-behaviour-bspline.c: Kill off some deep pointer
	indirections; use CLUTTER_NOTE() instead of ifdeffed out g_debug();
	add checks in every public entry point; move some initialisations
	of private data structures out of the constructor and into the
	init function, where they belong.
2007-07-25 12:54:30 +00:00
Matthew Allum
c27b00d7ef 2007-07-25 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-behaviour-rotate.c:
        * clutter/clutter-behaviour-rotate.h:
        Split 'center' prop into 3 seperate props for each axis.
        Use clutter_behaviour_actors_foreach() rather than
        clutter_behaviour_get_actors() to avoid copying list.
        Call fixed point rotation funcs internally.

        * clutter/clutter-effect.c:
        * clutter/clutter-effect.h:
        Add new simple rotation based effect funcs.
2007-07-25 12:17:44 +00:00
Emmanuele Bassi
b43f0994ca 2007-07-25 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter.h: Include clutter-behaviour-depth.h
2007-07-25 10:36:19 +00:00
Emmanuele Bassi
403f0bdb2f 2007-07-24 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-behaviour-rotate.[ch]: Add a center property
	for the center or rotation; implement the set_bounds() methods.
2007-07-24 22:32:37 +00:00
Emmanuele Bassi
3db49c4f12 2007-07-24 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/eglx/clutter-backend-egl.c:
	* clutter/eglnative/clutter-backend-egl.c:
	* clutter/sdl/clutter-backend-sdl.c: Destroy the stage in every
	backend.
2007-07-24 19:03:04 +00:00
Emmanuele Bassi
107f6112cd 2007-07-24 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/glx/clutter-backend-glx.c: Destroy the stage, don't
	just unref it.
2007-07-24 18:59:25 +00:00
Emmanuele Bassi
5f9944fd84 2007-07-24 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-main.c: Add debug markers.
2007-07-24 17:39:40 +00:00
Emmanuele Bassi
a87ede2e12 2007-07-24 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-texture.[ch]: Add a ClutterTextureError
	to be returned by the loader functions; use the GObject API
	to allocate the private data structure instead of managing it
	ourselves; add documentation.
2007-07-24 17:38:35 +00:00
Emmanuele Bassi
a37f537cd0 2007-07-24 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-actor.c:
	* clutter/clutter-box.h:
	* clutter/clutter-stage.c: Documentation fixes.
2007-07-24 17:34:06 +00:00
Matthew Allum
8e749f599d 2007-07-24 Matthew Allum <mallum@openedhand.com>
* clutter/cogl/gl/cogl-defines.h:
        Add  CGL_UNSIGNED_INT_8_8_8_8_REV (for big endian machines)
2007-07-24 16:50:34 +00:00
Matthew Allum
23c50938da 2007-07-24 Matthew Allum <mallum@openedhand.com>
* clutter/cogl/gl/cogl-defines.h:
        Another GL_TEXTURE_RECTANGLE_ARB related fix (#404)
2007-07-24 16:42:50 +00:00
Matthew Allum
7ae707faf5 2007-07-24 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-backend.c:
        Minor build fixes (#413)
2007-07-24 16:22:29 +00:00
Emmanuele Bassi
8725ad7e60 2007-07-24 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-effect.h:
	* clutter/clutter-effect.c: Add a secondary constructor for
	ClutterEffectTemplate, for use of the bindings.
2007-07-24 16:18:52 +00:00
Matthew Allum
2bf94df497 2007-07-24 Matthew Allum <mallum@openedhand.com>
* clutter/cogl/gles/cogl.c: (cogl_get_bitmasks):
        Fix typo calling glGetIntegerv rather than glGetInteger
2007-07-24 12:17:42 +00:00
Matthew Allum
86b869259e 2007-07-24 Matthew Allum <mallum@openedhand.com>
* clutter/cogl/gl/cogl.c: (cogl_get_features):
        learn to use cpp properly.
2007-07-24 12:06:52 +00:00
Matthew Allum
e8c091573c 2007-07-24 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-media.c: (clutter_media_base_init):
        Remove #if 0! signal - assume causing issues with binding generation.
        (#407)

        * clutter/cogl/gl/cogl.c:
        Check GL_TEXTURE_RECTANGLE_ARB and GL_MAX_RECTANGLE_TEXTURE_SIZE_ARB
        are defined in gl.h (#404)
2007-07-24 12:04:24 +00:00
Matthew Allum
8076d5c218 2007-07-24 Matthew Allum <mallum@openedhand.com>
* clutter/glx/clutter-stage-glx.c: (clutter_stage_glx_realize):
        Create stage window with correct depth/visual. Via patch from
        Robert Bragg (#409).
2007-07-24 09:56:07 +00:00
Matthew Allum
e227bf70e2 2007-07-23 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-texture.c: (texture_render_to_gl_quad),
        (clutter_texture_paint):
        Dont be over aggressive in throwing criticals for unrealized
        textures. Doesn't make sense for sub classes. (#403)
2007-07-23 17:02:52 +00:00
Emmanuele Bassi
3648488017 2007-07-22 Emmanuele Bassi <ebassi@openedhand.com>
Two small fixes for correctly debugging the deinitialisation
	phase of the backend:

	* clutter/glx/clutter-backend-glx.c: Remove the event source
	after we unref the main stage.

	* clutter/glx/clutter-stage-glx.c: Add a mark at the end of the
	unrealize call (the perl bindings seem to crash before we reach
	this point).
2007-07-22 22:40:18 +00:00
Emmanuele Bassi
049f2feedc 2007-07-22 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-behaviour-ellipse.c: Remove pointer indirections;
	add sanity checks on the public entry points; make all the public
	properties floating point (where needed) andconvert them to fixed
	point internally. (Partial fix for #389)
2007-07-22 22:35:45 +00:00
Emmanuele Bassi
fe11263b84 2007-07-22 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-behaviour.[ch]: Rename ClutterBehaviour::apply
	and ClutterBehaviour::remove to ClutterBehaviour::applied and
	ClutterBehaviour::removed respectively, and emit them when the
	behaviour has been applied (or does no longer apply) to an actor.

	(clutter_behaviour_dispose), (clutter_behaviour_finalize),
	(clutter_behaviour_class_init): Move the actor removal to the
	::dispose virtual function, and remove the ::finalize one;
	document the missing properties and signals.

	(clutter_behaviour_clear): Add function to clear a behaviour:
	every actor will be unreffed and the ClutterBehaviour::removed
	signal will be emitted.
2007-07-22 22:30:47 +00:00
Matthew Allum
9157740741 2007-07-21 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-event.c:
        Correct  clutter_event_get_state () return type. Fixes #398

        * clutter/glx/clutter-stage-glx.c:
        Disable use XFixes cursor visibility funcs. Appears to have issues
        on feisty X Server at least. Fallback should work generally better.

        Fix non offscreen clutter_stage_snapshot to also rotate read pixel
        data to correct orientation.
2007-07-21 16:48:11 +00:00
Matthew Allum
410f40b578 2007-07-12 Matthew Allum <mallum@openedhand.com>
* clutter/eglnative/clutter-event-egl.c: (clutter_event_dispatch):
        Avoid sending too many events which are just pressure changes.
2007-07-12 11:30:56 +00:00
Matthew Allum
8fcfa9e2db 2007-07-12 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-actor.c: (clutter_actor_paint):
        * clutter/clutter-stage.c: (clutter_stage_get_actor_at_pos):
        * clutter/cogl/cogl.h:
        * clutter/cogl/gl/cogl.c: (cogl_get_viewport):
        * clutter/cogl/gles/cogl.c: (cogl_get_viewport):
        Based on patch from Pan Bohui, See;
        http://bugzilla.openedhand.com/show_bug.cgi?id=390

        * TODO:
        More misc updates.
2007-07-12 10:15:19 +00:00
Emmanuele Bassi
0b03e393f3 2007-07-11 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-behaviour-opacity.c:
	Don't check direction in opacity.
2007-07-11 11:37:32 +00:00
Tomas Frydrych
f605136c39 improvements to ClutterBehaviourEllipse 2007-07-11 07:16:21 +00:00
Matthew Allum
071719ffa4 2007-07-09 Matthew Allum <mallum@openedhand.com>
* TODO:
        Updates.
        * clutter/clutter-stage.c:
        * clutter/glx/clutter-stage-glx.c:
        Fix cursor visibility property.
        Force a repaint before mapping to attempt to avoid flicker.
2007-07-09 22:59:52 +00:00
Richard Purdie
eeef27ca66 Add tslib support to eglnative backend. 2007-07-09 22:25:26 +00:00
Richard Purdie
69cc294cea Tweaks to the eglnative backend. 2007-07-09 21:59:01 +00:00
Richard Purdie
87d163db5c Make the backend add_option function optional. 2007-07-09 21:56:06 +00:00
Emmanuele Bassi
b1aa854ec6 Add ChangeLog for SVN users 2007-07-09 21:39:09 +00:00
Matthew Allum
8ac0298dc4 2007-07-06 Matthew Allum <mallum@openedhand.com>
* NEWS:
        * configure.ac:
        Update for 0.3.1
2007-07-06 15:19:26 +00:00
Matthew Allum
817cdbe2be 2007-07-06 Matthew Allum <mallum@openedhand.com>
* clutter/eglx/Makefile.am:
        * clutter/eglx/clutter-egl.h:
        * clutter/eglx/clutter-event-egl.c:
        * clutter/eglx/clutter-stage-egl.c:
        Rename clutter-egl.h -> clutter-eglx.h

        * NEWS:
        * README:
        Add info re EGL split.
2007-07-06 14:08:03 +00:00
Matthew Allum
051a76c155 2007-07-06 Matthew Allum <mallum@openedhand.com>
* clutter/Makefile.am:
        * clutter/eglnative/Makefile.am:
        * clutter/eglnative/clutter-backend-egl.c:
        * clutter/eglnative/clutter-backend-egl.h:
        * clutter/eglnative/clutter-egl.h:
        * clutter/eglnative/clutter-event-egl.c:
        * clutter/eglnative/clutter-stage-egl.c:
        * clutter/eglnative/clutter-stage-egl.h:
        * clutter/eglx/Makefile.am:
        * clutter/eglx/clutter-backend-egl.c:
        * clutter/eglx/clutter-egl.h:
        * clutter/eglx/clutter-event-egl.c:
        * clutter/eglx/clutter-stage-egl.c:
        * configure.ac:
        Add a new 'native' EGL backend for non X based EGL's
        (i.e on framebuffer).
        Rename old backend to 'eglx' and namespace public funcs with this.

        * clutter/pango/pangoclutter-private.h:
        Add extra checks for expected defines.
2007-07-06 13:56:01 +00:00
Matthew Allum
bbdcf5542b 2007-07-06 Matthew Allum <mallum@openedhand.com>
* NEWS:
        * README:
        Updates for upcoming 0.3.1 release.
        * clutter/egl/Makefile.am:
        * clutter/egl/clutter-backend-egl.c:
        * clutter/egl/clutter-backend-egl.h:
        * clutter/egl/clutter-egl.h:
        * clutter/egl/clutter-event-egl.c:
        * clutter/egl/clutter-stage-egl.c:
        * clutter/egl/clutter-stage-egl.h:
        * configure.ac:
        Move egl -> eglx
2007-07-06 11:40:59 +00:00
Matthew Allum
7ea9e2bcbb 2007-07-06 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-box.c: (clutter_box_pick):
        Call clutter_box_paint rather than actor paint method avoiding
        infinte loop (Fixes test-boxes crasher).

        * clutter/glx/clutter-stage-glx.c: (clutter_stage_glx_unrealize):
        Trap the X calls to avoid potential X errors.
2007-07-06 09:22:43 +00:00
Ross Burton
f586f2e5cb 2007-07-06 Ross Burton <ross@openedhand.com>
* tests/Makefile.am:
	Dist redhand.png.
2007-07-06 07:35:32 +00:00
Tomas Frydrych
765e5135a5 updated changelog 2007-07-05 13:52:23 +00:00
Emmanuele Bassi
61db350ca4 2007-07-05 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-rectangle.c: Fix off-by-border-width bug
	in the border creation of a ClutterRectangle.
2007-07-05 10:06:08 +00:00
Tomas Frydrych
c756541ee3 update ChangeLog 2007-07-04 15:30:49 +00:00
Emmanuele Bassi
d7caae7f6a 2007-07-04 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/*: Loads of fixes for the API reference.
2007-07-04 14:00:41 +00:00
Emmanuele Bassi
78dea13789 Update ChangeLog for SVN users 2007-07-04 12:34:21 +00:00
Emmanuele Bassi
436df772a4 2007-07-04 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-main.c (clutter_redraw): Move the stage
	paint init call from the main redraw function...

	* clutter/clutter-stage.c (clutter_stage_paint): ... to the
	ClutterActor::paint() overridden method in ClutterStage.
2007-07-04 09:36:44 +00:00
Emmanuele Bassi
271b13cde3 2007-07-04 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter.h:
	* clutter/Makefile.am: ClutterBackend is marked as public API,
	so install the clutter-backend.h header and include it when
	including clutter.h.
2007-07-04 09:34:24 +00:00
Emmanuele Bassi
da8bad5e03 2007-07-04 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-entry.[ch]: Various fixes to ClutterEntry:
	fix code style issues; add documentation for the various
	properties; add ClutterEntry:entry-padding property, for controlling
	the text padding (until we have style properties separated from
	the object properties); notify property changes; free resources
	in the ::finalize method; rename clutter_entry_add() to
	clutter_entry_insert_unichar(), and clutter_entry_remove() to
	clutter_entry_delete_chars() - for bindings and for matching the
	insert_text() and delete_text() existing methods; add a getter
	method for the max-length property.
2007-07-04 09:33:04 +00:00
Emmanuele Bassi
11775a16f0 2007-07-04 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-actor.[ch]: Use the right get_type() function
	name for ClutterVertex, and add the CLUTTER_TYPE_VERTEX macro.
2007-07-04 09:17:10 +00:00
Ross Burton
52a3eb0263 2007-07-03 Ross Burton <ross@openedhand.com>
* configure.ac:
	Check for XFixes 4 and above.
2007-07-03 15:06:40 +00:00
Tomas Frydrych
b9e486f587 use ClutterVertex to pass parameters into clutter_actor_apply_transform_to_point() 2007-07-02 09:21:58 +00:00
Emmanuele Bassi
741382567a Update ChangeLog for SVN users. 2007-07-01 17:00:13 +00:00
Neil J. Patel
52b5bad316 2007-06-29 Neil J. Patel <njp@o-hand.com>
* clutter/clutter-entry.c: (clutter_entry_handle_key_event),
	(clutter_entry_add), (clutter_entry_remove):
	Check if unichar == 0, and if so, return, as it will cause a delete in
	the GString.
2007-06-29 17:18:13 +00:00
Matthew Allum
fda8a1d948 2007-06-29 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-texture.c: (texture_upload_data):
        Fix a SEGV for GL ES textures.

        * clutter/cogl/gles/cogl.c: (cogl_setup_viewport):
        Tweak default z_camera for 60 degrees like GL.

        * clutter/egl/clutter-backend-egl.c::
        * clutter/egl/clutter-stage-egl.c:
        Fix edpy usage (thanks to Kaj Gronholm).
2007-06-29 11:54:31 +00:00
Tomas Frydrych
9958a1e6d2 Fixed box calculation in clutter_group_query_coords() 2007-06-29 10:46:12 +00:00
Tomas Frydrych
1677e9d263 fixed crash in clutter_group_raise / _lower() 2007-06-28 15:18:20 +00:00
Matthew Allum
ca450782cb 2007-06-28 Matthew Allum <mallum@openedhand.com>
* clutter/cogl/gl/cogl.c: (cogl_setup_viewport):
        Improve fixed z_camera value for defualt perspective.
        Appears pixel perfect on ATI and Intel at least
2007-06-28 09:38:42 +00:00
Tomas Frydrych
3765475f32 Moved dots in test-perspective to 1px off each corner. 2007-06-28 08:24:45 +00:00
Matthew Allum
acf4c2e070 2007-06-28 Matthew Allum <mallum@openedhand.com>
* tests/Makefile.am:
        * tests/test-perspective.c:
        Add simple perspective test
2007-06-28 08:16:10 +00:00
Tomas Frydrych
4bb51a4787 renamed clutter_actor_project_* functions 2007-06-27 15:10:52 +00:00
Tomas Frydrych
e10a0ad025 clutter_actor_project_point(): separated input from output parameters 2007-06-27 15:10:42 +00:00
Matthew Allum
ea14a6b62d 2007-06-27 Matthew Allum <mallum@openedhand.com>
* Makefile.am:
        Dont remove README on make clean
2007-06-27 11:56:41 +00:00
Tomas Frydrych
4fda40461e Fixed incorrect order of scaling and rotation in _clutter_actor_apply_modelview_transform() 2007-06-27 11:34:43 +00:00
Tomas Frydrych
4ed86c4bc1 fixed clutter_actor_scale_with_gravityx() 2007-06-27 09:41:49 +00:00
Tomas Frydrych
761a5f4d9d tweaked z_camera constant for default 60 deg perspective angle 2007-06-26 16:07:14 +00:00
Tomas Frydrych
f4029ab77c added fixed version of clutter_actor_rotate_*() functions and accessors for rotation angles 2007-06-26 11:35:33 +00:00
Matthew Allum
62d716b1cb 2007-06-25 Matthew Allum <mallum@openedhand.com>
* README:
        Update a little more.
        * clutter/clutter-effect.c:
        Add missing func documentation
        * clutter/clutter-rectangle.c:
        Fix border drawing.
2007-06-25 13:44:32 +00:00
Tomas Frydrych
b9ab1060f9 updated change log 2007-06-25 13:43:21 +00:00
Matthew Allum
016633db7b 2007-06-22 Matthew Allum <mallum@openedhand.com>
* README:
        * README.in:
        * autogen.sh:
        * configure.ac:
        Move back to regular README naming at least for now.
2007-06-22 15:18:28 +00:00
Matthew Allum
ee6156cb01 2007-06-22 Matthew Allum <mallum@openedhand.com>
* NEWS:
        * README.in:
        * TODO:
        Update for 0.3 release.

        * clutter/clutter-actor.c:
        Minor doc fixups

        * clutter/clutter-texture.c:
        Various minor additions for handling non RGBA data.
        Fix a typo breaking clutter_texture_get_pixbuf() on tiled textures.

        * tests/test-actors.c:
        Disable scaling to avoid drifting (temporary till API is fixed)
2007-06-22 15:16:40 +00:00
Emmanuele Bassi
b4319ab75a Update ChangeLog 2007-06-21 14:20:03 +00:00
Emmanuele Bassi
90b0d654aa 2007-06-19 Emmanuele Bassi <ebassi@openedhand.com>
* README.in: Update release notes.
2007-06-19 14:52:19 +00:00
Matthew Allum
d30396cf0c 2007-06-19 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-main.c: (clutter_init_with_args), (clutter_init):
        Safer checks for setting progname if NULL is passed in init.
2007-06-19 14:47:33 +00:00
Emmanuele Bassi
6a148d571e 2007-06-19 Emmanuele Bassi <ebassi@openedhand.com>
* autogen.sh: autoreconf needs a README.
2007-06-19 14:15:42 +00:00
Matthew Allum
e7332a3778 2007-06-19 Matthew Allum <mallum@openedhand.com>
* TODO:
        Sync up a little.
        * clutter/clutter-main.c:
        Set a default window title based on g_prgname().

        * clutter/clutter-stage.c:
        * clutter/clutter-stage.h:
        * clutter/egl/clutter-stage-egl.c:
        * clutter/glx/clutter-stage-glx.c:
        * clutter/sdl/clutter-stage-sdl.c:
        Alter draw_to_pixbuf to return a pixbuf

        * configure.ac:
        Only full in gdk-pixbuf-xlib as a GLX backend dep.

        * tests/test-entry.c:
        Fix a couple of warnings.
2007-06-19 14:10:25 +00:00
Emmanuele Bassi
fd0aa08be9 2007-06-19 Emmanuele Bassi <ebassi@openedhand.com>
* Makefile.am: Add README.in to the EXTRA_DIST.
2007-06-19 13:04:50 +00:00
Emmanuele Bassi
b96883a776 2007-06-19 Emmanuele Bassi <ebassi@openedhand.com>
* configure.ac:
	* README.in: Use a template for the README file, so that
	it gets the right version number.
2007-06-19 13:03:39 +00:00
Matthew Allum
38e6cab1d8 2007-06-19 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-stage.c:
        * clutter/clutter-stage.h:
        * clutter/glx/clutter-stage-glx.c:
        * clutter/sdl/clutter-stage-sdl.c:
        Add window title setting/getting functionality.

        * clutter/clutter-event.c: (clutter_key_event_unicode):
        Remove uneeded convert case call.

        * clutter/cogl/gl/cogl.c: (cogl_rectangle)
        Use parameters correctly for underlying GL rect call.

        * tests/test-entry.c:
        Add a window title.
2007-06-19 09:10:37 +00:00
Matthew Allum
1494a017c3 2007-06-18 Matthew Allum <mallum@openedhand.com>
* clutter/sdl/clutter-event-sdl.c:
        Seemingly fix SDL Event source.
        Add some very basic SDL keysym translation.
        (Thanks to Thomas Van Machelen for initial translation code)

        * tests/test-events.c:
        Dump some info on keysyms pressed.
2007-06-18 09:15:00 +00:00
Emmanuele Bassi
339b22ded9 2007-06-16 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-actor.h:
	* clutter/clutter-stage.h: Add 32 padding slots; when we
	reach 1.0 it'll be a long road until the following ABI
	break.

	* tests/test-behave.c: Don't forget to include headers.
2007-06-16 21:15:31 +00:00
Emmanuele Bassi
80e71eaa46 2007-06-16 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-container.h:
	* clutter/clutter-layout.h: Interfaces are not checked
	at compile-time, so there's not need to add padding to
	avoid ABI breaks.
2007-06-16 21:07:13 +00:00
Emmanuele Bassi
4172ce1fb2 2007-06-16 Emmanuele Bassi <ebassi@openedhand.com>
* configure.ac: Partially revert last commit, and fail
	with AC_MSG_ERROR() instead of disabling the manual build
	if no jw and xmlto were found.
2007-06-16 20:58:00 +00:00
Emmanuele Bassi
46baa44daf 2007-06-16 Emmanuele Bassi <ebassi@openedhand.com>
* configure.ac: If the programs required to build the manual
	are not found and --enable-manual was passed, then just print
	a warning and disable the manual build instead of aborting the
	configure.

	* doc/manual/Makefile.am: Use the full path gathered by the
	configure script when invoking jw and xmlto.
2007-06-16 09:06:03 +00:00
Matthew Allum
53301e1bba 2007-06-16 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-actor.c:
        Fix typo in x rotation transform (Thanks to Johan Billen #138)

        * configure.ac:
        * doc/manual/Makefile.am:
        Fix manual build and required program check.

        * tests/Makefile.am:
        Another typo fix.
2007-06-15 23:15:34 +00:00
Tomas Frydrych
0c5546007c removal of debug stuff, addition of comments 2007-06-15 09:53:07 +00:00
Tomas Frydrych
699297ad64 fixed vbox and hbox pack functions 2007-06-14 15:56:22 +00:00
Emmanuele Bassi
a1958da910 2007-06-14 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-box.[ch]: Base class for layout containers.

	* clutter/clutter-hbox.[ch]: Horizontal box actor.
	
	* clutter/clutter-vbox.[ch]: Vertical box actor.

	* clutter/clutter.h:
	* clutter/Makefile.am: Build glue

	* tests/Makefile.am:
	* tests/test-boxes.c: Test suite for ClutterBox API and
	implementations.
2007-06-14 15:29:52 +00:00
Matthew Allum
61c6c24dfa 2007-06-14 Matthew Allum <mallum@openedhand.com>
* clutter/cogl/gl/cogl.c: (cogl_check_extension):
        Actually populate this func and remove the static alternate
        named one. Means GLX actually checks for available extensions.
        Other minor tidy ups.

        * clutter/glx/clutter-backend-glx.c:
        * clutter/glx/clutter-backend-glx.h:
        Add support for GLX_SGI_swap_control to do vblanking prefering
        over glXGetVideoSyncSGI. Should fix issues on Intel chips with
        very slow frame rates due to vblank problems.
        Thanks to  Michel Danzer for tips, see;
        http://bugs.freedesktop.org/show_bug.cgi?id=10542

        * test/test-actors.c:
        Change FPS to 60.
2007-06-14 12:54:47 +00:00
Emmanuele Bassi
ba0fa9d4be 2007-06-14 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-timeout-pool.c: Make ClutterTimeoutPool
	more thread-safe, using a static lock.

	(clutter_timeout_pool_dispatch), (clutter_timeout_pool_remove): Fix
	a race condition-turned-in-memory corruption bug, triggered by
	removing a timeout from the pool while still spinning the pool
	source.
2007-06-14 12:00:31 +00:00
Emmanuele Bassi
358269be3e 2007-06-07 Emmanuele Bassi <ebassi@openedhand.com>
* configure.ac:
	* doc/manual/Makefile.am: Find xmlto and jw in the path and
	use the symbolic names when building the manual.
2007-06-14 11:56:35 +00:00
Tomas Frydrych
1391ee7306 use clutter_actor_project_point/vertices in clutter_actor_get_abs_position/size 2007-06-14 08:17:13 +00:00
Matthew Allum
61e3252ff1 2007-06-14 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-actor.c:
        * clutter/clutter-actor.h:
        * clutter/clutter-group.c:
        * clutter/clutter-label.c:
        * clutter/egl/clutter-stage-egl.c:
        * clutter/glx/clutter-stage-glx.c:
        * clutter/sdl/clutter-stage-sdl.c:
        Rename clutter_actor_allocate_coords -> clutter_actor_query_coords

        Change repaints to G_PRIORITY_DEFAULT + 10.
        (timelines are G_PRIORITY_DEFAULT + 30, events G_PRIORITY_DEFAULT)

        * clutter/glx/clutter-event-glx.c:
        Handle shift modifier in keycode -> keysym translation.

        * tests/test-actors.c:
        Remove (broken) screen saver code.
        Add scaling behaviour, clean code a little
2007-06-13 23:24:59 +00:00
Tomas Frydrych
14e00cb904 more of projection work 2007-06-13 11:20:10 +00:00
Tomas Frydrych
5f4a7a4812 clear CLUTTER_ACTOR_SYNC_MATRICES after setting up viewport 2007-06-12 17:39:08 +00:00
Matthew Allum
7d0faf304f 2007-06-12 Matthew Allum <mallum@openedhand.com>
* doc/manual/Makefile.am:
        Fix typo in Makefile so PDF's actually get built.

        * doc/manual/clutter-manual.xml.in:
        Add an FAQ section with initial entry.
2007-06-12 14:02:51 +00:00
Tomas Frydrych
70a3c9fbe6 clutter_actor_project_point/vertices 2007-06-12 11:42:29 +00: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
Tomas Frydrych
5f8bd1d160 Fixed unsigned overflow in sine alpha functions 2007-06-11 15:47:26 +00:00
Emmanuele Bassi
32f04a6dc8 Update ChangeLog 2007-06-11 09:02:35 +00:00
Emmanuele Bassi
5997230fb2 Update ChangeLog for SVN repo 2007-06-09 13:25:59 +00:00
Matthew Allum
6c99b685dd 2007-06-08 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-texture.c: (clutter_texture_get_pixbuf):
        Remove stray printf.
2007-06-07 23:55:25 +00:00
Matthew Allum
2c40b4b53d 2007-06-08 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-actor.c:
        * clutter/clutter-debug.h:
        * clutter/clutter-main.c:
        * clutter/clutter-main.h:
        * clutter/clutter-private.h:
        * clutter/clutter-timeline.c:
        Add 'schedule' debug flag and new CLUTTER_TIMESTAMP macro.

        * clutter/clutter-texture.c:
        * clutter/clutter-texture.h:
        * clutter/cogl/cogl.h:
        * clutter/cogl/gl/cogl-defines.h:
        * clutter/cogl/gles/cogl-defines.h:
        * clutter/cogl/gl/cogl.c:
        * clutter/cogl/gles/cogl.c:
        Add initial experiemental YUV texture support.
        Move texture rect size checks into cogl.
        Better handle moving texture data from video -> system memory
        (if support available).
2007-06-07 23:51:53 +00:00
Neil J. Patel
3649b4734b Added a 'activate' signal, which is emitted when the 'Enter' key is pressed 2007-06-07 21:23:07 +00:00
Emmanuele Bassi
e30df678ae 2007-06-07 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/*: Move documentation from the templates into the
	source code.
2007-06-07 15:28:59 +00:00
Emmanuele Bassi
3c2defee9d 2007-06-07 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-container.[ch]: Add a generic actor container
	interface, for actors to implement without subclassing ClutterGroup.

	* clutter/clutter-group.[ch]: Make ClutterGroup implement the
	ClutterContainer interface, and deprecate the colliding methods.

	* clutter/clutter-layout.[ch]: Add extended layout interface.
	Actors and containers requiring or honouring complex layout
	management should implement this interface and provide at least
	one of the available layout types: width for height, height for
	width, natural size, iterative size request.

	* clutter/clutter-label.c: A ClutterLabel requires height for
	width layout management, so it implements the ClutterLayout
	interface.

	* clutter/Makefile.am: Add new files to the build.

	* tests/*.c:
	* examples/*.c: Update tests and examples code to use the
	new ClutterContainer API instead of ClutterGroup.
2007-06-07 14:41:35 +00:00
Emmanuele Bassi
b8a2db38c8 Update ChangeLogs 2007-06-07 10:26:29 +00:00
Neil J. Patel
acb0772fe0 2007-06-01 Neil J. Patel <njp@o-hand.com>
* clutter/clutter-entry.c: (clutter_entry_set_property),
        (clutter_entry_get_property), (clutter_entry_class_init),
        (clutter_entry_init), (clutter_entry_set_text),
        (clutter_entry_set_max_length):
        * clutter/clutter-entry.h:
        * examples/test-entry.c: (main):
        Added a max-length property whihc limits the length of the text in the
        entry.
2007-06-01 17:18:21 +00:00
Neil J. Patel
d5c38ef466 Clipping within the entry class to stop it over-slipping its
boundries.
        Text will move within the clip region to keep the cursor always
        visible.
        Added some padding to the left and right to make sure cursor is
        always show.
2007-06-01 16:50:35 +00:00
Tomas Frydrych
479fe01b5a removed perspective matrix caching from ClutterStage 2007-06-01 16:20:57 +00:00
Neil J. Patel
f6b675fc7d Added text-visibility, which will allow you to show all entered text
as a nominated charaecter ('*' is default).
2007-06-01 15:58:17 +00:00
Neil J. Patel
214a2ead22 Added signal to track cursor movements\nMoved the curor painting function into the class functions so it can be sub-classed 2007-06-01 15:18:05 +00:00
Tomas Frydrych
d82c068faf make clutter_actor_get_transformed_point input relative to actor; feed actor depth into transform 2007-06-01 15:15:13 +00:00
Neil J. Patel
71f2e05b9b Add a text-changed signal to the entry 2007-06-01 11:50:18 +00:00
Tomas Frydrych
d53497d92f when calculating vertices, apply perspective before all other tranforms 2007-06-01 11:43:53 +00:00
Neil J. Patel
79d618e13a Missed some info in Changelog 2007-06-01 11:35:56 +00:00
Neil J. Patel
ac530eed12 Added a function to deal with ClutterKeyEvents. Handles the majority
of entry-related keyboard keys. However modifiers still need to be
        implemented.
2007-06-01 11:34:40 +00:00
Tomas Frydrych
4d0cfed2dc Initicalize stage perspective matrix for defaults 2007-06-01 11:30:52 +00:00
Tomas Frydrych
e1a8434d64 Documentation updates 2007-06-01 10:00:35 +00:00
Tomas Frydrych
ccc1494f6d fix up ChangeLog after merge 2007-05-31 19:14:37 +00:00
Tomas Frydrych
e2cc64faa2 include perspective transfore in calculation of vertices 2007-05-31 19:14:28 +00:00
Neil J. Patel
e725b0c7fa Initial import of ClutterEntry, a text-entry actor 2007-05-31 18:33:42 +00:00
Tomas Frydrych
984ce646a5 fixed coordinance translation in clutter_actor_get_transformed_point 2007-05-31 18:22:41 +00:00
Matthew Allum
fb6d22f95d 2007-05-31 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-actor.c:
        * clutter/clutter-actor.h:
        Add clutter_actor_get_transformed_point()

        * clutter/clutter-main.c:
        Plug in perspective setup to redraw

        * clutter/clutter-stage.c:
        * clutter/clutter-stage.h:
        Remove audience code for now.
2007-05-31 17:11:09 +00:00
Matthew Allum
4d8bf8f3b8 2007-05-31 Matthew Allum <mallum@openedhand.com>
* clutter/egl/clutter-backend-egl.c:
        * clutter/egl/clutter-backend-egl.h:
        * clutter/egl/clutter-event-egl.c:
        * clutter/egl/clutter-stage-egl.c:
        * clutter/egl/clutter-stage-egl.h:
        Rename Egl -> EGL
2007-05-31 12:35:36 +00:00
Matthew Allum
a0c1a9b66d 2007-05-31 Matthew Allum <mallum@openedhand.com>
* clutter/glx/clutter-backend-glx.c:
        * clutter/glx/clutter-backend-glx.h:
        * clutter/glx/clutter-event-glx.c:
        * clutter/glx/clutter-glx.h:
        * clutter/glx/clutter-stage-glx.c:
        * clutter/glx/clutter-stage-glx.h:
        Change type nameing from Glx -> GLX.
        Add basic event filtering functionality
2007-05-31 11:13:43 +00:00
Tomas Frydrych
7ada1c0ae0 Changed behaviour so that a beginning angle of 0 would correspond to 12 o'clock 2007-05-31 10:11:06 +00:00
Tomas Frydrych
733de46f3b Fixed ellipse behaviour for negative angles; fixed double to int conversion for negative numbers; fixed CLUTTER_ANGLE_FROM_DEGX; added ClutterVertices and clutter_actor_get_transformed_vertices() 2007-05-31 09:29:12 +00:00
Matthew Allum
1cb68d2ceb 2007-05-31 Matthew Allum <mallum@openedhand.com>
* TODO:
        Sync up for whats left for 0.4 release (and 0.6 ideas)
2007-05-30 23:43:13 +00:00
Matthew Allum
8310a87bfc 2007-05-31 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-behaviour-ellipse.c:
        Remove uneeded knot signal

        * clutter/clutter-behaviour-path.c:
        Fix so knot signal is emitted only when a knot is reached.

        * clutter/clutter-effect.c:
        * clutter/clutter-effect.h:
        Add a scale effect.

        * configure.ac:
        * doc/manual/Makefile.am:
        * doc/manual/clutter-manual.xml.in:
        * doc/manual/manual.xsl:
        * doc/manual/style.css:
        Add various bits for application developers manual.
2007-05-30 23:16:58 +00:00
Tomas Frydrych
5b0e0dbcbe removed ClutterSmoothstep type; renamed clutter_smoothstep_func to clutter_smoothstep_inc_func; added clutter_smoothstep_dec_func 2007-05-30 10:52:06 +00:00
Tomas Frydrych
6e39efb9aa fixed clutter cos functions; fixed tilt calculations in elliptic path 2007-05-29 09:21:18 +00:00
Tomas Frydrych
5b845d3940 fix z_camera calcualtion in gles/cogl 2007-05-29 07:26:32 +00:00
Matthew Allum
d704e2e331 2007-05-28 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-texture.c: (clutter_texture_unrealize):
        Dont even try to move texture pixels from video -> system
        ram on unrealisation for GL/ES
2007-05-28 20:09:19 +00:00
Matthew Allum
71c2f16bef 2007-05-28 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-stage.c: (clutter_stage_get_actor_at_pos):
        Fix for GL/ES. Barring texture reads this means all clutter
        functionality now works on GL/ES! (no doubt with a few yet to
        be discovered bugs)
2007-05-28 19:14:40 +00:00
Matthew Allum
a2bd6de736 2007-05-28 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-backend.c:
        * clutter/clutter-backend.h:
        * clutter/glx/clutter-stage-glx.c:
        * clutter/glx/clutter-backend-glx.c:
        Fix up rendering pipeline removing clutter_backend_XXX_stage_paint
        and adding clutter_backend_XXX_redraw instead. Duplicates less
        code in backends, avoids clutter_actor_paint() getting called
        before stage is set up (viewport wise) and unbreaks things like
        picking.

        * clutter/clutter-actor.c:
        * clutter/clutter-actor.h:
        * clutter/clutter-main.c:
        * clutter/clutter-private.h:
        * clutter/clutter-stage.c: (clutter_stage_get_actor_at_pos):
        Redo picking functionality a different way (via color indexing)
        as to provide more flexibility, possibly speed and more likely
        work with GL/ES (doesn't currently however - not sure why).

        * clutter/clutter-group.c:
        Add groups own 'pick' method.

        * clutter/cogl/cogl.h:
        * clutter/cogl/gl/cogl.c:
        * clutter/cogl/gles/cogl.c:
        Move clipping funtionality into cogl.

        * clutter/cogl/gles/cogl-defines.h:
        Hack around missing BGR format in GL/ES.

        * clutter/egl/clutter-backend-egl.c:
        * clutter/egl/clutter-backend-egl.h:
        * clutter/egl/clutter-stage-egl.c:
        * clutter/sdl/clutter-backend-sdl.c:
        * clutter/sdl/clutter-backend-sdl.h:
        * clutter/sdl/clutter-event-sdl.c:
        * clutter/sdl/clutter-stage-sdl.c:
        Update backends to newer API.
        Add basic mouse event translation to SDL.
2007-05-28 18:49:34 +00:00
Matthew Allum
a64b6b7ee7 2007-05-25 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-color.c: (clutter_color_parse):
        Handle #rrggbbaa color setting strings (i.e with alpha).
        Set alpha to 0xff if it is not specified.

        * clutter/clutter-stage.c: (clutter_stage_get_actor_at_pos)
        Increase select buffer.

        * examples/super-oh.c:
        Fix up use of clutter_group_show_all()
2007-05-25 16:35:57 +00:00
Tomas Frydrych
bf8996215e ClutterBehaviourEllipse api changes; z_camera calculation 2007-05-25 12:07:24 +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
361cc36aaa removed clutter_actor_get_abs_position_units() and clutter_actor_get_abs_size_units() from public api 2007-05-23 10:47:35 +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
Emmanuele Bassi
55388b8f50 Update ChangeLog (and fix last commit) 2007-05-17 12:07:17 +00:00
Matthew Allum
26646d255a 2007-05-17 Matthew Allum <mallum@openedhand.com>
* configure.ac:
        Fix CLUTTER_NO_FPU typo.
2007-05-17 09:08:50 +00:00
Tomas Frydrych
733a767657 added clutter_exp_inc_func() and clutter_exp_dec_func() 2007-05-17 07:09:24 +00:00
Emmanuele Bassi
507f04a8f6 Add base initialisation function
Add a semi-private function, called clutter_base_init(), which initialises
the basic Clutter functionalities (at the moment, just the GLib type system)
without calling in the backend-specific code. This function is only useful
for gtk-doc, to introspect the library when generating documentation for
signals, properties and class hierarchy.

Also, change the documentation build system to use clutter_base_init() when
launching the scanner program.
2007-05-16 15:00:41 +00:00
Tomas Frydrych
06bf2ddaef added clutter_sine_half_func() 2007-05-16 13:53:39 +00:00
Tomas Frydrych
9a10979e0f Fixed clutter_sine_inc_func(); added clutter_sine_dec_func() 2007-05-16 13:46:54 +00:00
Tomas Frydrych
9dfe31a542 implemented smoothstep alpha function 2007-05-16 11:32:50 +00:00
Matthew Allum
ee928107cb 2007-05-16 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-backend.c:
        * clutter/clutter-backend.h:
        * clutter/clutter-feature.c:
        * clutter/clutter-feature.h:
        * clutter/clutter-main.c:
        * clutter/clutter-main.h:
        * clutter/clutter-private.h:
        * clutter/clutter-stage.c:
        * clutter/cogl/cogl.h:
        * clutter/cogl/gl/cogl.c:
        * clutter/cogl/gles/cogl.c:
        * clutter/glx/clutter-backend-glx.c:
        * clutter/glx/clutter-backend-glx.h:
        * clutter/glx/clutter-glx.h:
        * clutter/glx/clutter-stage-glx.c:
        * clutter/glx/clutter-stage-glx.h:
        Rejig the features() foo, moving mostly into backends/cogl.
2007-05-16 09:08:30 +00:00
Tomas Frydrych
aab511d319 removed unnecessary CFX_MUL from clutter_actor_get_abs_position 2007-05-15 15:41:30 +00:00
Tomas Frydrych
92754aaeee added tilt parameter to clutter_behaviour_ellipse_new() 2007-05-15 11:51:14 +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
Matthew Allum
e121eb54c8 2007-05-10 Matthew Allum <mallum@openedhand.com>
* clutter/egl/clutter-backend-egl.c:
        * clutter/egl/clutter-event-egl.c:
        * clutter/sdl/clutter-backend-sdl.c:
        * clutter/sdl/clutter-event-sdl.c:
        Fix SDL & EGL backends to work with newer backend code.
2007-05-10 12:49:34 +00:00
Tomas Frydrych
c5fee48847 added clutter_color_to/from_hlsx(); clobbered hue to 0..255 in clutter_colour_to/from_hls() 2007-05-10 11:37:45 +00:00
Matthew Allum
eb42f82f23 2007-05-10 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-backend.c:
        * clutter/clutter-backend.h:
        * clutter/clutter-event.c:
        * clutter/clutter-main.c:
        * clutter/clutter-private.h:
        * clutter/glx/clutter-backend-glx.c:
        * clutter/glx/clutter-backend-glx.h:
        * clutter/glx/clutter-event-glx.c:
        Rejig backend event code as to simplify a little.
        NOTE: This breaks non glx backends.

        * tests/Makefile.am:
        * tests/test-events.c:
        Add a very simple event test.

        * tests/test-textures.c: (main):
        Add some more sizes to the test.
2007-05-09 23:31:08 +00:00
Matthew Allum
e1bf19f869 2007-05-05 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-texture.c:
        Fix typos with new cogl using texture code. Fixes tiled textures.
        Add a check for max npots size.

        * configure.ac:
        * Makefile.am:
        * tests/Makefile.am:
        * tests/test-textures.c:
        Add a simple texture test.
2007-05-04 23:53:49 +00:00
Matthew Allum
76981c44a4 2007-05-02 Matthew Allum <mallum@openedhand.com>
* clutter/Makefile.am:
        * clutter/clutter-stage.c:
        * clutter/sdl/Makefile.am:
        * clutter/sdl/clutter-backend-sdl.c:
        * clutter/sdl/clutter-backend-sdl.h:
        * clutter/sdl/clutter-event-sdl.c:
        * clutter/sdl/clutter-sdl.h:
        * clutter/sdl/clutter-stage-sdl.c:
        * clutter/sdl/clutter-stage-sdl.h:
        * configure.ac:
        Add a basic SDL based backend. Lacks real input event handling
        (translation) as yet.
        Also allows for clutter to be built against dgles.
2007-05-02 20:05:29 +00:00
Matthew Allum
2845bb5b74 2007-05-02 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-actor.c:
        * clutter/cogl/gles/cogl.c:
        Fix rotation + other fixed point cleanups.

        * clutter/clutter-texture.h:
        Sketch out an updated API.
2007-05-02 09:01:11 +00:00
Matthew Allum
45c8796631 2007-05-01 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-rectangle.c:
        Comment out color match check for now as appears to be causing
        borders to always get pained.

        * clutter/clutter-texture.h:
        Add some format defines (unused as yet)

        * clutter/cogl/gles/cogl.c:
        * clutter/egl/clutter-stage-egl.c:
        * configure.ac:
        Various OpenGL ES backend related fixes and tweaks.
2007-05-01 15:26:12 +00:00
Tomas Frydrych
e89cf12d18 Updated changelog 2007-04-30 08:39:38 +00:00
Matthew Allum
866e4ed0dd 2007-04-28 Matthew Allum <mallum@openedhand.com>
* clutter/Makefile.am:
        * clutter/clutter-debug.h:
        * clutter/clutter-fixed.h:
        * clutter/clutter-main.c:
        * clutter/cogl/gles/Makefile.am:
        * clutter/cogl/gles/cogl-defines.h:
        * clutter/cogl/gles/cogl.c:
        * clutter/egl/clutter-backend-egl.c:
        * clutter/egl/clutter-backend-egl.h:
        * clutter/egl/clutter-stage-egl.c:
        * configure.ac:
        Populate most stubs for cogl GL/ES implementation.
        (against vincent - see http://svn.o-hand.com/repos/misc/ogles)
        Add various fixups to EGL backend.
        Code builds and runs (on 16bpp) but yet displays much (is close!)

        * clutter/pango/pangoclutter-render.c:
        comment out some rouge glBegin/end calls.
2007-04-28 00:37:11 +00:00
Matthew Allum
79469940bc 2007-04-27 Matthew Allum <mallum@openedhand.com>
* clutter/Makefile.am:
        * clutter/clutter-actor.c:
        * clutter/clutter-clone-texture.c:
        * clutter/clutter-rectangle.c:
        * clutter/clutter-stage.c:
        * clutter/clutter-texture.c:
        * clutter/cogl/cogl.h:
        * clutter/cogl/gl/Makefile.am:
        * clutter/cogl/gl/cogl-defines.h:
        * clutter/cogl/gl/cogl.c:
        * clutter/cogl/gles/Makefile.am:
        * clutter/cogl/gles/cogl-defines.h:
        * clutter/cogl/gles/cogl.c:
        * clutter/glx/Makefile.am:
        * clutter/glx/clutter-stage-glx.c:
        * clutter/pango/Makefile.am:
        * clutter/pango/pangoclutter-render.c:
        * configure.ac:
        Add initial 'cogl' implementation. 'cogl' is a simple abstration
        layer over GL and GL/ES used by clutter internally. It should
        eventually allow clutter applications to be run on both GL and GL/ES
        with just a recompile as well as provide more debugging and potentially
        profiling information for GL and GL/ES usage.

        This commit contains the initial GL implementation.
2007-04-27 21:13:06 +00:00
Emmanuele Bassi
04ea1a98df 2007-04-26 Emmanuele Bassi <ebassi@openedhand.com>
Merge from clutter-0-2

	* clutter/clutter-label.c: Unbreak the "use-markup" property
	by actually passing the markup to pango_layout_set_markup().
2007-04-26 19:11:24 +00:00
Emmanuele Bassi
a7a511ce79 2007-04-25 Emmanuele Bassi <ebassi@openedhand.com>
Merge from clutter.git/master

	* clutter/glx/clutter-event-glx.c:
	* clutter/glx/clutter-stage-glx.c: Implement the _NET_WM_PING
	protocol handling on the main stage window.

	* clutter/clutter-stage.h:
	* clutter/clutter-stage.c:
	* clutter/clutter-main.c: Handle CLUTTER_DELETE events internally,
	by calling clutter_main_quit(), and remove the ::delete-event
	signal from ClutterStage; clean up the signal emission sequence
	for the events: emit the ::event signal before emitting any signal
	and the ::event-after signal after the signal has been emitted; move
	the signal emission calls inside ClutterStage so we can call
	g_signal_emit() instead of g_signal_emit_by_name(), thus sparing us
	a lookup for each event.

	* examples/test.c: Remove ::delete-event signal handling.
2007-04-25 14:22:24 +00:00
Emmanuele Bassi
296649e865 Updating ChangeLog for SVN users 2007-04-19 15:28:17 +00:00
Emmanuele Bassi
95eab3102e Update ChangeLog for SVN merge 2007-04-19 15:25:19 +00:00
Emmanuele Bassi
1722c6fec4 Add missing template files. 2007-04-19 15:22:49 +00:00
Emmanuele Bassi
d511902fad Update ChangeLog for SVN merge 2007-04-16 16:50:51 +00:00
Emmanuele Bassi
173d38a284 Update changelogs for SVN merge. 2007-04-16 10:26:11 +00:00
Tomas Frydrych
43593ab81f bezier spline behaviours 2007-04-12 12:42:07 +00:00
Tomas Frydrych
3944495569 fixed bug in fovy angle degree -> rad conversion, added glMultMatrixx() code 2007-03-29 11:30:30 +00:00
Tomas Frydrych
d1d746eab1 fixed typo in configure.ac; fixed point perspective() 2007-03-29 10:41:23 +00:00
Matthew Allum
120a489067 2007-03-27 Matthew Allum <mallum@openedhand.com>
* clutter/cogl/Makefile.am:
        * clutter/cogl/cogl.h:
        * clutter/cogl/gles/Makefile.am:
        * clutter/cogl/gles/cogl.c:
        Begin poplulating cogl GLES code.

        * configure.ac:
        * clutter/egl/clutter-event-egl.c:
        * clutter/egl/clutter-stage-egl.c:
        * clutter/egl/clutter-stage-egl.h:
        * clutter/egl/clutter-backend-egl.c:
        * clutter/egl/clutter-backend-egl.h:
        * clutter/egl/clutter-egl.h:
        Add initial EGL/X backend work mostly ported from backend branch.
        Builds but untested as yet.

        * clutter/glx/clutter-stage-glx.c:
        Only include XFixes Header if we have have it.

        * clutter/clutter-behaviour.c: (clutter_behaviour_apply):
        * clutter/clutter-behaviour.h:
        Add clutter_behaviour_is_applied()
2007-03-27 21:09:11 +00:00
Emmanuele Bassi
9c8af2977d Remove the unused clutter_stage_flush() declaration, now that we
don't have the ClutterStage::flush vfunc anymore.
2007-03-27 11:20:59 +00:00
Emmanuele Bassi
219e97bda3 Reimplement the clutter_glx_set_stage_foreign() function, used to
set an existing X window as the window for the main stage.
2007-03-27 09:38:50 +00:00
Emmanuele Bassi
123dfb7886 Declare clutter_perspective_get_type() in the stage header. 2007-03-27 09:38:43 +00:00
Emmanuele Bassi
1833d77594 Add header and compiler guards. 2007-03-27 09:38:35 +00:00
Emmanuele Bassi
898f84c9c7 Do not check if the ClutterStageGlx parent paint vfunc is set: we
set it ourselves.
2007-03-27 09:38:27 +00:00
Matthew Allum
464f24fdc0 2007-03-27 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-feature.c:
        Rejig ifdef's a little. Make drm vblanking Linux only.

        * clutter/clutter-stage.c:
        * clutter/clutter-stage.h:
        Add a perspective boxed type.

        * clutter/glx/clutter-stage-glx.c:
        Add some FIXMEs

        * clutter/Makefile.am:
        * clutter/cogl/Makefile.am:
        * clutter/cogl/cogl.h:
        * clutter/cogl/gl/Makefile.am:
        * clutter/cogl/gl/cogl.c:
        * configure.ac:
        Very initial work on 'cogl' GL/GLES abstraction/utility code.
2007-03-26 23:18:39 +00:00
Emmanuele Bassi
f595460932 Add API for getting the scale bounds from a scale behaviour instance. 2007-03-25 22:37:28 +00:00
Emmanuele Bassi
f741107fcb Fix a dumb typo in last commit. 2007-03-25 22:37:21 +00:00
Emmanuele Bassi
6c7b0830b5 Lower the priority of the ClutterTimeline timeout function; this should
give the events queue processing a better slice of the main event loop.
2007-03-25 22:37:14 +00:00
Emmanuele Bassi
a88dfe3e7d Update ChangeLog for the last commit 2007-03-25 11:50:29 +00:00
Emmanuele Bassi
831c5fd69e Update ChangeLog for SVN users 2007-03-25 11:47:48 +00:00
Emmanuele Bassi
65d1a65b49 2007-03-23 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-backend.c: Clear the event queue when
	disposing the backend object; remove the initialisation
	of the backend structure members...

	* clutter/glx/clutter-backend-glx.c: ... and keep it here
	in the backends where it belongs.
2007-03-23 23:57:24 +00:00
Emmanuele Bassi
d0f1186e1d 2007-03-23 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-private.h:
	* clutter/clutter-backend.h: Move the backend functions
	into the private header.

	* clutter/glx/clutter-stage-glx.c:
	* clutter/glx/clutter-event-glx.c:
	* clutter/clutter-main.c:
	* clutter/clutter-stage.c: Update the calls to the private
	backend functions.

	* clutter/clutter-backend.[ch]: Add an ::init_features
	vfunc to ClutterBackend.
2007-03-23 17:55:13 +00:00
Emmanuele Bassi
0a112d5912 fix changelog for the last commit 2007-03-23 16:39:00 +00:00
Emmanuele Bassi
064d45266a 2007-03-23 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/glx/clutter-stage-glx.c:
	(clutter_stage_glx_allocate_coords): Make sure the top-left
	corner of the box is our origin.
2007-03-23 16:37:56 +00:00
Matthew Allum
810661f612 2007-03-23 Matthew Allum <mallum@openedhand.com>
* clutter/glx/clutter-stage-glx.c:
        (clutter_stage_glx_allocate_coords):
        Make new stage return correct width & height.
2007-03-23 16:35:18 +00:00
Emmanuele Bassi
83dafa5f9e 2007-03-23 Emmanuele Bassi <ebassi@openedhand.com>
Assorted build fixes to pass distcheck.

	* clutter/glx/Makefile.am: Install the clutter-glx.h header.

	* clutter/Makefile.am: Actually apply linker flags.

	* configure.ac: Use a more readable CLUTTER_API_VERSION instead
	of CLUTTER_MAJORMINOR; require gobject-2.0 with glib-2.0 >= 2.10,
	as we are using GObject and the slice allocator from glib 2.10.

	* clutter.pc.in: Add the apiversion variable.
2007-03-23 15:20:35 +00:00
Emmanuele Bassi
fa88ede439 2007-03-23 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-event.c: Pop and peek the event queue
	from the tail - it's a queue, not a stack.

	* clutter/clutter-private.h:
	* clutter/clutter-main.c: Add a boolean signal accumulator.

	* clutter/clutter-stage.[ch]: Add an event argument to
	the 'delete-event' signal; rename the 'input-event' signal
	to 'event'; add the static scope flag to all the stage
	events.
2007-03-23 09:59:02 +00:00
Emmanuele Bassi
93d7454b37 2007-03-23 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-event.c: Pop and peek the event queue
	from the tail - it's a queue, not a stack.
2007-03-23 09:44:21 +00:00
Emmanuele Bassi
26f1955463 2007-03-22 Emmanuele Bassi <ebassi@openedhand.com>
* clutter.pc.in: Require gobject-2.0 too.

	* ChangeLog: Fix the previous commit log.
2007-03-22 20:04:28 +00:00
Emmanuele Bassi
4bd3fa583e 2007-03-22 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-private.h: Remove inclusion of backend-specific
	headers; update the main context object; add the declarations for
	the event queue functions.

	* clutter/clutter-backend.[ch]: Add the abstract ClutterBackend
	object, which holds backend-specific settings, the main stage,
	and the event queue. Every backend must implement a subclass of
	ClutterBackend and ClutterStage.

	* clutter/clutter-feature.c: Protect the GLX specific calls
	behing #ifdef HAVE_CLUTTER_GLX.

	* clutter/clutter-actor.c:
	* clutter/clutter-group.c:
	* clutter/clutter-clone-texture.c: Include GL/gl.h

	* clutter/clutter-event.[ch]: Update public API and implement the
	event queue private API; hold a reference on the event objects;
	move out the keysym-to-unicode table; add the new event types.

	* clutter/clutter-color.h: Include clutter-fixed.h

	* clutter/clutter-main.c: Update API; get the main stage
	from the backend object; process the event received from the
	queue; lock/unlock the main mutex if we have one; move the
	initialisation process sooner in the init sequence, in order to
	have the backend object when we check for options; call the
	backed vfuncs in the pre/post parse hooks.

	* clutter/clutter-stage.c: Make ClutterStage and abstract class,
	implemented by the backends.

	* clutter/clutter/glx/clutter-glx.h:
	* clutter/clutter/glx/clutter-backend-glx.[ch]:
	* clutter/clutter/glx/clutter-event-glx.c:
	* clutter/clutter/glx/clutter-stage-glx.[ch]:
	* clutter/clutter/glx/Makefile.am: Add the GLX backend.

	* clutter/clutter/egl/clutter-backend-egl.[ch]:
	* clutter/clutter/egl/clutter-event-egl.c:
	* clutter/clutter/egl/clutter-stage-egl.[ch]:
	* clutter/clutter/egl/Makefile.am: Add the stub for a EGL backend.

	* examples/*.c: Update for the new API.
2007-03-22 18:21:59 +00:00
Matthew Allum
15970bba9b 2007-03-19 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-label.c:
        Simple doc fix.
        * clutter/clutter-texture.c: (clutter_texture_get_pixbuf):
        Backport of fix to get_pixbuf on non alpha textures from 0_2 branch.
2007-03-19 17:02:48 +00:00
Emmanuele Bassi
71815c61d9 2007-03-19 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-texture.c: Clean up code; add checks
	in public API.
2007-03-19 10:00:38 +00:00
Matthew Allum
02d1f56310 2007-02-18 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-actor.c: (clutter_actor_reparent):
        Add a FIXME re calling clutter_group here.
        * clutter/clutter-group.c:
        Fix clutter_group_remove_all
2007-02-18 00:14:19 +00:00
Matthew Allum
f68b04cad4 2007-02-15 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-group.h:
        Add missing clutter_group_remove_all declaration.
2007-02-15 23:23:32 +00:00
Matthew Allum
231b56b3e2 2007-02-14 Matthew Allum <mallum@openedhand.com>
* clutter/Makefile.am:
        * clutter/clutter-main.c:
        * clutter/clutter-stage.c:
        * clutter/clutter-version.h.in:
        * configure.ac:
        * examples/super-oh.c:
        Add CLUTTER_FLAVOUR define.
2007-02-13 23:31:57 +00:00
Matthew Allum
356970fbc1 2007-02-13 Matthew Allum <mallum@openedhand.com>
* examples/super-oh.c: (screensaver_setup):
        Fix example to build with new glx api
2007-02-13 21:09:30 +00:00
Emmanuele Bassi
e2ee1249ee 2007-02-07 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-debug.h: Define the CLUTTER_MARK()
	macro even when CLUTTER_ENABLE_DEBUG is not
	defined. (#215)
2007-02-07 11:03:54 +00:00
Tomas Frydrych
271e877593 fixed fixed point clutter_sine_func 2007-01-30 19:35:19 +00:00
Emmanuele Bassi
9661bd50b8 2007-01-30 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-alpha.h:
	* clutter/clutter-alpha.c: Add the square waveform
	function clutter_square_func() to the precooked
	alpha functions.
2007-01-30 16:51:49 +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
Tomas Frydrych
685c583d51 more fixed point work 2007-01-23 11:48:04 +00:00
Tomas Frydrych
b8b0d01c91 work around punned-pointer problem 2007-01-19 20:00:41 +00:00
Emmanuele Bassi
ee6b583ec1 2007-01-19 Emmanuele Bassi <ebassi@openedhand.com>
Allow the ClutterGroup subclasses to override the add and
	remove operations.

	* clutter/clutter-group.c: Move the add and remove code from
	clutter_group_add() and clutter_group_remove() to the signal
	class closures; make the "add" and "remove" signals as
	RUN_FIRST.
2007-01-19 17:56:35 +00:00
Tomas Frydrych
f924e2bbf7 more fixed point work 2007-01-19 16:04:06 +00:00
Emmanuele Bassi
f51d4659b8 2007-01-18 Emmanuele Bassi <ebassi@openedhand.com>
* configure.ac: Post release bump to 0.3.0.
2007-01-18 14:13:56 +00:00
Matthew Allum
db7bc870e7 2007-01-18 Matthew Allum <mallum@openedhand.com>
* clutter.doap:
        Update for 0.2 release
2007-01-18 13:37:37 +00:00
Emmanuele Bassi
39720f248b 2007-01-18 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-group.h: Add public functions
	clutter_group_get_n_children() and clutter_group_get_nth_child().

	* clutter/clutter-behaviour.h:
	* clutter/clutter-behaviour.c: Fix header alignment; fix argument
	name for apidoc.
2007-01-18 12:33:15 +00:00
Emmanuele Bassi
bf688bbbeb 2007-01-18 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/Makefile.am: Use the build dir when linking to the
	internal pango clutter renderer.
2007-01-18 11:25:26 +00:00
Matthew Allum
f2291525fd Whoops fill in correct Changelog 2007-01-18 11:12:31 +00:00
Matthew Allum
8f8ad433b6 2007-01-18 Matthew Allum <mallum@openedhand.com>
* doc/reference/clutter-docs.sgml
        Update.
2007-01-18 11:11:18 +00:00
Tomas Frydrych
614cd7e895 documentation fixed for clutter-fixed 2007-01-18 10:33:24 +00:00
Emmanuele Bassi
bf376d1aac 2007-01-18 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-fixed.h: Remove some inline documentation to
	make the header more readable.

	* clutter/clutter-behaviour.c: The actors are store inside a
	GSList and not in a GList, so change the list operations to
	use the right API.
2007-01-18 08:54:10 +00:00
Tomas Frydrych
9ba314396b fixed bug in clutter_color_darken/lighten() 2007-01-18 07:21:41 +00:00
Matthew Allum
f2c6a16363 2007-01-17 Matthew Allum <mallum@openedhand.com>
* configure.ac:
        Bump up version to 0.2.0
2007-01-17 19:16:52 +00:00
Tomas Frydrych
7078dc5254 documentation for fixed point API 2007-01-17 16:00:00 +00:00
Emmanuele Bassi
9bd77e25b2 2007-01-17 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-feature.h:
	* clutter/clutter-feature.c: Move the GL headers from the
	header file to the body.

	* clutter/clutter-fixed.h:
	* clutter/clutter-fixed.c: Fix apidoc.

	* clutter/clutter-color.h:
	* clutter/clutter-color.c: Ditto.
2007-01-17 13:51:14 +00:00
Tomas Frydrych
cbe5c47090 float -> fixed point 2007-01-17 13:25:51 +00:00
Tomas Frydrych
9a28ac34cd fixed point sqrt 2007-01-17 13:03:52 +00:00
Emmanuele Bassi
4e765d1a34 2007-01-16 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-feature.c: Use clutter_vblank_method() to
	get the VBlank method name from the environment variable OR
	the command line switch.

	(clutter_feature_do_init): Move the check on the features
	state here, to avoid an expensive function call, and inline
	the function.

	* clutter/clutter-fixed.c: Fix gtk-doc.

	* clutter/clutter-main.c: Add a --clutter-vblank command line
	switch controlling the VBlank method to be used: it overrides
	the CLUTTER_VBLANK environment variable.

	(pre_parse_hook), (clutter_init),
	(clutter_init_with_args): Move thread initialisation before
	type init, to avoid the warning that comes with newer GLib
	versions.

	* clutter/clutter-group.h:
	* clutter/clutter-group.c: Mark clutter_group_show_all() and
	clutter_group_hide_all() as deprecated.
2007-01-16 14:37:54 +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
Tomas Frydrych
3b7a8c0c5c replacement of floating point ops with fixed point 2007-01-16 10:39:18 +00:00
Tomas Frydrych
884cc0f5cf added ClutterAngle type and fast clutter_angle_sin() function; fixed clutter_fixed to work for negative angles; added convenience macros clutter_fixex_cos and clutter_angle_cos 2007-01-16 08:14:53 +00:00
Tomas Frydrych
44a89898ca pluged clutter_fixed_sin into clutter-alpha; updated change log 2007-01-15 19:43:09 +00:00
Matthew Allum
097bb235db 2007-01-07 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-actor.c: (clutter_actor_allocate_coords):
        Fix an amazingly not noticed until now typo.
        Minor doc tweaks.

        * clutter/clutter-behaviour-opacity.c:
        (clutter_behaviour_alpha_notify):
        Take into account initial opacity value when calculating from alpha.

        * clutter/clutter-group.c:
        Add new get_nth_child() and get_n_children() api calls.
2007-01-07 00:36:41 +00:00
Matthew Allum
83700e97c7 2007-01-04 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-actor.c:
        * clutter/clutter-actor.h:
        Add new set_width/height API calls.
        Tweak scaling by reseting matrix.
        Make set_opactiy() take parent opacity into account.
        Fix clipping.

        * clutter/clutter-alpha.c:
        Add more sine functionality.

        * clutter/clutter-behaviour-opacity.c:
        Dont make a copy of all applied actors but use a foreach()

        * clutter/clutter-behaviour-scale.c:
        Give correct limits to propertys.
        Tweak gravity a little more.
        Update docs.
:
        * clutter/clutter-behaviour.c: (clutter_behaviour_remove):
        Minor warning text change.

        * clutter/clutter-feature.c: (clutter_feature_wait_for_vblank):
        Minor dri ioctl tweak.

        * clutter/clutter-label.c:
        * clutter/clutter-label.h:
        Add new label_full api call.
2007-01-04 19:56:01 +00:00
Emmanuele Bassi
0033b539b8 2006-12-27 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-stage.[ch]:
	* clutter/clutter-event.[ch]: Revert changes; this is what
	happens when you keep old tree around.
2006-12-27 18:25:43 +00:00
Emmanuele Bassi
89de2fa269 2006-12-27 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-color.h:
	* clutter/clutter-color.c: Add clutter_color_to_string(),
	which creates a hex-encoded color string from a ClutterColor.
2006-12-27 18:19:34 +00:00
Matthew Allum
17ba56b2fa 2006-12-20 Matthew Allum <mallum@openedhand.com>
* NEWS:
        Add some missing improvements.
2006-12-20 00:59:07 +00:00
Emmanuele Bassi
c69e1d36ae 2006-12-17 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-label.c: Remove some gtk-isms; always take
	a reference before calling g_object_notify(), as the object
	might get disposed while calling the closures inside the
	notify queue; notify the changes of the ellipsize property.
2006-12-17 16:52:40 +00:00
Emmanuele Bassi
9118c2ef99 2006-12-14 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-color.h:
	* clutter/clutter-color.c: Expose clutter_color_copy()
	and clutter_color_free() for the python bindings, so that
	they can manager the conversion automatically; use the
	slice allocator when copying/freeing a ClutterColor.
2006-12-14 22:19:08 +00:00
Emmanuele Bassi
4d168e81fa 2006-12-13 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-actor.c:
	* clutter/clutter-clone-texture.c:
	* clutter/clutter-event.h:
	* clutter/clutter-stage.c:
	* clutter/clutter-texture.c:
	* clutter/clutter-timeline.c: Update the inline apidoc.
2006-12-13 18:12:09 +00:00
Matthew Allum
77f421a294 2006-12-13 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-actor.c: (clutter_actor_class_init):
        Allow actor x,y props to be negative.
2006-12-13 09:44:05 +00:00
Emmanuele Bassi
10fbfb1659 2006-12-12 Emmanuele Bassi <ebassi@openedhand.com>
Rework part of the show/hide machinery.  Allow groups sub-classes
	and composite actors to override show_all/hide_all in order to
	decide which children they wish to show/hide.  This means that
	if an actor overrides the default show/hide virtual methods, it'll
	have to chain up to the parent class show/hide.  While we're at it,
	provide the fully recursive clutter_actor_show_all() and
	clutter_actor_hide_all() methods.

	* clutter/clutter-behaviour-path.c: Add apidoc for the ClutterKnot
	functions; add pathological equality case for clutter_knot_equal().

	* clutter/clutter-event.h:
	* clutter/clutter-feature.h:
	* clutter/clutter-behaviour.c:
	* clutter/clutter-behaviour-scale.c:Fix parameters name so that
	gtk-doc doesn't complain.

	* clutter/clutter-actor.c:
	* clutter/clutter-event.c: Add apidoc

	* clutter/clutter-actor.h:
	* clutter/clutter-actor.c: Add a clutter_actor_show_all() and a
	clutter_actor_hide_all() functions; provide a mechanism for
	groups and composited actors to programmatically select what to
	show/hide when clutter_actor_show_all() and clutter_actor_hide_all()
	are called.  If you are overriding the ClutterActor::show or
	the ClutterActor::hide virtual methods you should chain up with
	the parent class.

	* clutter/clutter-group.c: Override show_all and hide_all and
	recursively show/hide every child inside the group;
	clutter_group_show_all() and clutter_group_hide_all() remain as non
	recursive versions of clutter_actor_show_all() and
	clutter_actor_hide_all() (maybe we should rename them in order
	to avoid name clashes with the bindings).

	* clutter/clutter-stage.c:
	* clutter/clutter-texture.c: Chain up with parent class show
	and hide vfuncs.

	* clutter/clutter-clone-texture.h:
	* clutter/clutter-clone-texture.c: Provide API for changing the
	parent texture of a clone texture actor.

	* examples/behave.c:
	* examples/super-oh.c:
	* examples/test.c: Use clutter_actor_show_all() instead of
	clutter_group_show_all().
2006-12-12 20:20:04 +00:00
Matthew Allum
1d1dc43674 2006-12-08 Matthew Allum <mallum@openedhand.com>
* clutter.doap:
        Put release date in correct format.
2006-12-08 16:47:20 +00:00
Emmanuele Bassi
aa623df78f 2006-12-08 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-behaviour.h: Add a function prototype
	for the foreach function: we need something more specific
	than GFunc; add clutter_behaviour_get_actors(), used to
	get a list of the actors.

	* clutter/clutter-behaviour.c: Add debugging notes; add
	a warning for behaviour implementations missing the
	alpha_notify vfunc; add api documentation

	* clutter/clutter-behaviour-opacity.c:
	* clutter/clutter-behaviour-path.c:
	* clutter/clutter-behaviour-scale.c: Reimplement the
	alpha_notify functions using the new foreach function
	and, where possible, by directly iterating on the
	actors: this shaves off the number of recalculations
	of the property/alpha values, and the number of
	functions.
2006-12-08 16:12:52 +00:00
Emmanuele Bassi
a56ea84dd5 2006-12-05 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-rectangle.c: Forgot to set the
	pencil color.
2006-12-05 13:15:25 +00:00
Emmanuele Bassi
bceae43706 2006-12-05 Emmanuele Bassi <ebassi@openedhand.com>
* behave.c: Add test for clutter_color_parse().
2006-12-05 05:20:39 +00:00
Emmanuele Bassi
2c8e235f04 2006-12-05 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-event.c: Move the apidoc out.
2006-12-05 05:16:52 +00:00
Emmanuele Bassi
b45b844004 2006-12-05 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-color.h:
	* clutter/clutter-color.c: Add clutter_color_parse(),
	which parses a string containing a color definition as
	understood by XParseColor() (or pango_color_parse()).
2006-12-05 04:56:24 +00:00
Emmanuele Bassi
6d87b1479c 2006-12-04 Emmanuele Bassi <ebassi@openedhand.com>
Avoid clutter segfaulting when used without invoking
	clutter_init().  This is needed when using api documentation
	tools and every other tool relying on the GObject
	introspection API (esp. on a headless box).  see the
	note in clutter/clutter-feature.c:clutter_feature_init
	for a full explanation.

	* clutter/clutter-feature.c: Call clutter_feature_init()
	when needed by one of the accessors of the features
	structure.

	* clutter/clutter-main.c:
	* clutter/clutter-private.h: Remove clutter_feature_init()
	public declaration: the features support check is done the
	first time a feature is needed.

	* clutter/clutter-main.c: Do not ever access the clutter
	main context pointer directly; instead, obtain a pointer
	to it via clutter_context_get_default(), which will always
	return something valid.
2006-12-04 19:19:53 +00:00
Emmanuele Bassi
f83ffa3520 2006-12-04 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-private.h: Add our own READABLE,
	WRITABLE and READWRITE paramspec flags, declaring the
	string components of the properties GParamSpec as static;
	this should shave off some bytes in the memory footprint
	and avoid relocations.

	* clutter/clutter-actor.c:
	* clutter/clutter-behaviour.c:
	* clutter/clutter-behaviour-opacity.c:
	* clutter/clutter-behaviour-path.c:
	* clutter/clutter-behavuour-scale.c:
	* clutter/clutter-clone-texture.c:
	* clutter/clutter-label.c:
	* clutter/clutter-rectangle.c:
	* clutter/clutter-stage.c:
	* clutter/clutter-texture.c:
	* clutter/clutter-timeline.c: Use the CLUTTER_PARAM_*
	macros we just added.

	* clutter/clutter-behaviour-scale.c: Add properties for
	the scale begin, scale end and gravity parameters.

	* clutter/clutter-behaviour-path.h: Mark the ClutterKnot
	memory management functions as public (for the bindings),
	since we use the slice allocator for copying knots around;
	add a clutter_knot_equal() function.

	* clutter/clutter-behaviour-path.c:
	(node_distance): Use clutter_knot_equal() as a fast path
	to avoid the sqrt() in case the nodes we are using are
	at the same position.
	(path_total_length): Additional check on the existence
	of the next node.

	* examples/behave.c: Do not leak the ClutterBehaviour
	objects around.
2006-12-04 16:26:35 +00:00
Emmanuele Bassi
28d83d3c1a 2006-12-03 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-texture.h: Clean up.

	* clutter/clutter-texture.c: Typo fix in the name
	of ClutterTextureTileDimension.

	* clutter/clutter-behaviour.c: Allow passing NULL
	to clutter_behaviour_set_alpha() (as we pass NULL
	in the finalize process).
2006-12-03 18:34:41 +00:00
Emmanuele Bassi
334789b1fc 2006-12-02 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-version.h.in: Fix a stupid logic
	error in the CHECK_VERSION macro.
2006-12-02 22:54:58 +00:00
Matthew Allum
0abaab44ac 2006-11-30 Matthew Allum <mallum@openedhand.com>
* clutter.doap:
        Updates
2006-11-30 15:34:46 +00:00
Emmanuele Bassi
c2d724a2cd 2006-11-30 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-stage.h:
	* clutter/clutter-stage.c:
	(clutter_stage_swap_buffers): Remove, as the same is done
	via clutter_redraw() and clutter_actor_queue_redraw().

	(clutter_stage_unrealize), (clutter_stage_init),
	(clutter_stage_set_xwindow_foreign): Do not call
	XDestroyWindow() on the stage Window if we are using a
	foreign Window, as we don't control its lifetime.
2006-11-30 14:45:19 +00:00
Emmanuele Bassi
69707e94a4 2006-11-30 Emmanuele Bassi <ebassi@openedhand.com>
* Makefile.am: Remove the gtk directory from the SUBDIRS.

	* clutter/clutter-stage.h:
	* clutter/clutter-stage.c: Add clutter_stage_swap_buffers(),
	which swaps the GL buffers.  This fixes the redraw in the
	GTK widget.
2006-11-30 11:08:54 +00:00
Emmanuele Bassi
56132b57ca 2006-11-29 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-stage.c:
	(clutter_stage_set_xwindow_foreign): Add checks;
	remove an indirection to the private data.
2006-11-29 22:55:23 +00:00
Emmanuele Bassi
11a3cabcd6 2006-11-29 Emmanuele Bassi <ebassi@openedhand.com>
* gtk/*
	* configure.ac:
	* Makfile.am: Remove the GTK+ widget from the
	main tree; now Clutter depends just on GLib,
	XLibs, GdkPixbuf and OpenGL.
2006-11-29 22:05:33 +00:00
Matthew Allum
25b8dec464 2006-11-29 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-stage.c: (clutter_stage_realize):
        Set colormap on stage window - should fix issues
        with indirect rendering.
2006-11-29 12:14:41 +00:00
Matthew Allum
382edccf6d 2006-11-23 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-debug.h:
        Fix small macro typo.
2006-11-23 21:36:45 +00:00
Matthew Allum
c57108e030 2006-11-22 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-actor.c:
        * clutter/clutter-alpha.c:
        * clutter/clutter-behaviour-opacity.c:
        * clutter/clutter-behaviour-scale.c:
        * clutter/clutter-clone-texture.c:
        * clutter/clutter-feature.c:
        * clutter/clutter-label.c:
        * clutter/clutter-main.c:
        * clutter/clutter-stage.c:
        * clutter/clutter-texture.c
        * clutter/clutter-timeline.c:
        * clutter/clutter-debug.h:
        Make CLUTTER_NOTE() just take a string rather than a func.
        Add more default context to output.

        * configure.ac:
        Fix flag and add more help docs for --ebable-debug option.
2006-11-22 20:52:27 +00:00
Emmanuele Bassi
dae4375d08 2006-11-21 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-main.c: Add a --g-fatal-warnings switch
	for abort()-ing on warnings and criticals.
2006-11-21 22:35:48 +00:00
Emmanuele Bassi
e4b9a507e3 2006-11-21 Emmanuele Bassi <ebassi@openedhand.com>
* configure.ac: Enable debug messages also when
	--enable-debug is set to "minimum".

	* clutter/Makefile.am:
	* clutter/clutter-debug.h: Move all debugging macros inside
	this private header; make all debug macros depend on the
	CLUTTER_ENABLE_DEBUG compile time define, controlled by
	the --enable-debug configure switch; add G_LOG_DOMAIN define.

	* clutter/clutter-main.c: Clean up the debug stuff; add
	command line argument parsing using GOption; the debug
	messages now are triggered like this:

	  CLUTTER_DEBUG=section:section:... clutter-app
	
	or like this:

	  clutter-app --clutter-debug=section:section:...
	
	where "section" is one of the sections listed in clutter-main.c,
	or "all", for all sections; each section is bound to a flag,
	which can be used to define a domain when adding a debug note
	using the CLUTTER_NOTE() macro; the old CLUTTER_DBG() macro is
	just a wrapper around that, under the CLUTTER_DEBUG_MISC domain;
	CLUTTER_NOTE() is used like this:

	  CLUTTER_NOTE (DOMAIN, log-function);
	
	where log function is g_printerr(), g_message(), g_warning(),
	g_critical() or directly g_log() - for instance:

	  CLUTTER_NOTE (PANGO, g_warning ("Cache miss: %d", glyph));

	will print the warning only if the "pango" flag has been
	set to the CLUTTER_DEBUG envvar or passed to the --clutter-debug
	command line argument.

	similar to CLUTTER_SHOW_FPS, there's also the --clutter-show-fps
	command line switch; also, the --display and --screen command
	line switches have been added: the first overrides the DISPLAY
	envvar and the second controls the X screen used by Clutter to
	get the root window on the display.

	* clutter/clutter-main.h:
	* clutter/clutter-main.c: Add extended support for GOption
	in Clutter; use clutter_init_with_args() to let Clutter
	parse your own command line arguments; use instead
	clutter_get_option_group() to get the GOptionGroup used by
	Clutter if you want to do the parsing yourself with
	g_option_context_parse(). The init sequence has been verified,
	updated and moved into common functions where possible.

	* clutter/pango/pangoclutter-render.c:
	* clutter/*.c: Include "clutter-debug.h" where needed; use
	CLUTTER_NOTE() instead of CLUTTER_DBG().

	* examples/super-oh.c: Use the new clutter_init_with_args()
	function, and add a --num-hands command line switch to
	the SuperOH example code controlling the number of hands at
	runtime.
2006-11-21 21:27:53 +00:00
Emmanuele Bassi
ff84406143 2006-11-21 Emmanuele Bassi <ebassi@openedhand.com>
* configure.ac: Rename G_ENABLE_DEBUG to CLUTTER_ENABLE_DEBUG.
2006-11-21 09:18:40 +00:00
Emmanuele Bassi
af0d04be7c 2006-11-20 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-rectangle.h:
	* clutter/clutter-rectangle.c: Add border to the ClutterRectangle
	actor; add "border-width", "border-color" and "has-border"
	properties, plus their accessors.  The border generation code is
	pretty lame, at the moment.

	* examples/behave.c: Add code to test the new rectangle properties.
2006-11-20 22:20:48 +00:00
Matthew Allum
ada4b4e96b 2006-11-20 Matthew Allum <mallum@openedhand.com>
* clutter.doap:
        Add an initial DOAP file to project
2006-11-20 20:29:57 +00:00
Emmanuele Bassi
5cc29888af 2006-11-20 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/Makefile.am:
	* clutter/clutter.h:
	* clutter/clutter-version.h.in: Auto-generated versioning macros.

	* clutter/clutter-actor.h:
	* clutter/clutter-actor.c: Add a ClutterActor::parent-set signal,
	for notificating changes of an actor's parent; add api-doc for
	the actor's properties; add the ClutterActor "name" property; clean
	up a bit some functions; emit the "parent-set" signal when setting
	te parent and when unparenting; better warnings when lowering
	and raising an actor.

	* configure.ac:
	* clutter/Makefile.am: Add a --enable-debug configure option,
	with three levels of debugging: no, minimum and yes; default
	for development releases (odd minor version) is "yes"; update
	the version m4 defines; update the libtool macros: now just
	changed the clutter_interface_age when releasing will update
	everything else.
2006-11-20 12:02:24 +00:00
Emmanuele Bassi
c9b6a89d04 2006-11-17 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-behaviour-path.h:
	* clutter/clutter-behaviour-path.c: Add "since" strings; add
	a "knot" property which can be used to append a knot to the path;
	fix apidoc.

	* clutter/clutter-alpha.c: Add "since" strings.

	* clutter/clutter-feature.c: Add apidoc.

	* clutter/clutter-behaviour-opacity.c: Add the "opacity-start"
	and "opacity-end" properties; rewrite constructor to use them.
2006-11-17 19:17:40 +00:00
Emmanuele Bassi
237496fa75 2006-11-17 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-behaviour-path.h:
	* clutter/clutter-behaviour-path.c: Add a "knot-reached" signal,
	which is emitted when the path reaches a node in the nodes list;
	flesh out the documentation a bit; sync the parameters names
	so that gtk-doc doesn't complain about missing stuff.

	* clutter/clutter-behaviour.h:
	* clutter/clutter-behaviour.c: Add the alpha value to the
	ClutterBehaviour::alpha_notify vfunc, so you don't have to
	get the value from the alpha inside the behaviour implementations;
	add more documentation.

	* clutter/clutter-alpha.c: Flesh out the description.

	* clutter/clutter-actor.h: Update the header.

	* clutter/clutter-behaviour-opacity.c:
	* clutter/clutter-behaviour-scale.c: Update docs.
2006-11-17 18:45:31 +00:00
Matthew Allum
491e3ca9d2 2006-11-17 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-alpha.c:
        * clutter/clutter-behaviour-opacity.c:
        More docs.

        * clutter/clutter-behaviour-path.h:
        * clutter/clutter-behaviour-path.c:
        More docs, add clutter_behaviour_path_insert_knot(),
        clutter_behaviour_path_remove_knot()

        * clutter/clutter-behaviour-scale.h:
        * clutter/clutter-behaviour-scale.c:
        More docs, add clutter_behaviour_scale_newx() taking fixed values.

        * clutter/Makefile.am:
        * clutter/pango/Makefile.am:
        Fix linking warning.
2006-11-17 18:24:28 +00:00
Emmanuele Bassi
252368901f 2006-11-16 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-private.h:
	* clutter/clutter-actor.c: Implement the defined
	clutter_actor_reparent() method; call unrealize
	when unparenting an actor.
2006-11-16 00:24:23 +00:00
Emmanuele Bassi
734f808fbc 2006-11-15 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-alpha.h:
	* clutter/clutter-alpha.c: Add a data parameter to
	the ClutterAlphaFunc; add a data+destroy parameter
	to clutter_alpha_set_func() and to clutter_alpha_new(),
	and turned the latter into clutter_alpha_new_full();
	add a simple, empty constructor clutter_alpha_new().

	These changes makes writing bindings a tad more easy,
	as bindings require passing their own functions in
	order to call the real alpha function.

	* clutter/clutter-behaviour.h: Clean up the header.

	* clutter/clutter-behaviours.[ch]:
	* clutter/clutter-behaviour-opacity.[ch]:
	* clutter/clutter-behaviour-path.[ch]:
	* clutter/clutter-behaviour-scale.[ch]: Split the
	ClutterBehaviourPath, ClutterBehaviourOpacity and
	ClutterBehaviourScale into their own files as they
	have been growing a bit. Fix ClutterBehaviourPath
	API.

	* clutter/clutter-media.h: Remove the commented
	"metadata_available" signal: gtk-doc chokes up on that.

	* clutter/clutter-timeline.h:
	* clutter/clutter-timeline.c: Remove the useless
	ClutterTimelineAlphaFunc signature; add missing accessor
	methods for the properties; clean up a bit.

	* clutter/clutter-util.h:
	* clutter/clutter-util.c: Remove unneeded function
	clutter_util_can_create_texture().

	* clutter/clutter-feature.h: Sync the name of
	clutter_feature_get_all() with the name declared
	in clutter-feature.h.

	* clutter/Makefile.am:
	* clutter/clutter.h: Update.

	* examples/behave.c: Update to the new ClutterAlpha
	constructor.

	* examples/super-oh.c: Use the right pointer and avoid
	the compiler making a fuss about it.
2006-11-15 23:37:53 +00:00
Emmanuele Bassi
3f62c72d07 2006-11-16 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-alpha.h:
	* clutter/clutter-alpha.c: ClutterAlpha is an initially
	floating object, as it makes sense only when bound to
	a ClutterBehaviour; add checks for public API.

	* clutter/clutter-behaviour.h:
	* clutter/clutter-behaviour.c: Remove the ClutterBehaviour
	constructor: ClutterBehaviour is an abstract class which
	must be implemented by subclassing; add checks for public
	API; unref the actors on finalize; sink the ClutterAlpha
	object.

	* clutter/clutter-behaviours.h: ClutterKnot is a boxed
	type: add the _get_type() function declaration and the
	type macro.
2006-11-14 14:12:56 +00:00
Matthew Allum
ddab271272 2006-10-23 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-alpha.h:
        * clutter/clutter-behaviour.c:
        * clutter/clutter-behaviour.h:
        * clutter/clutter-behaviours.c:
        * clutter/clutter-behaviours.h:
        * examples/behave.c:
        Behaviours now only 'driven' by ClutterAlpha, not any object/prop.
        Add simple Clutter path behaviour.
2006-10-22 23:33:14 +00:00
Matthew Allum
e9cceac1ee 2006-10-03 Matthew Allum <mallum@openedhand.com>
* configure.ac:
        * clutter/Makefile.am:
        * clutter/clutter-actor.c:
        * clutter/clutter-label.c:
        * clutter/clutter-label.h:
        * clutter/pango/Makefile.am:
        * clutter/pango/pangoclutter-font.c:
        * clutter/pango/pangoclutter-fontmap.c:
        * clutter/pango/pangoclutter-private.h:
        * clutter/pango/pangoclutter-render.c:
        * clutter/pango/pangoclutter.h:
        Add initial rough new pango renderer and clutter-label.

        * examples/super-oh.c:
        * examples/test.c:
        Minor fixups
2006-10-03 21:59:30 +00:00
Matthew Allum
1bd964c757 2006-09-20 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-actor.c: (clutter_actor_paint):
        * clutter/clutter-clone-texture.c: (clutter_clone_texture_paint):
        * clutter/clutter-group.c: (clutter_group_paint):
        * clutter/clutter-rectangle.c: (clutter_rectangle_paint):
        * clutter/clutter-texture.c: (clutter_texture_paint):
        Fix for #156.
        clutter_actor_paint() now translates to actor position as
        to not fix scaled groups positioning. Sub classes now paint
        at 0,0.
2006-09-20 18:38:08 +00:00
Matthew Allum
94c0e54bc3 2006-09-19 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-actor.c: (redraw_update_idle),
        (clutter_actor_queue_redraw):
        * clutter/clutter-main.c: (clutter_redraw):
        Remove now uneeded locks
        ( new gst and texture code makes redundant )

        * clutter/clutter-texture.c:
        * clutter/clutter-texture.h:
        Redo clutter texture as to not keep a reference
        to underlying texture.
2006-09-19 19:27:16 +00:00
Matthew Allum
55c723b9a2 2006-09-15 Matthew Allum <mallum@openedhand.com>
More fixes from Bastien Nocera (#155):

        * clutter/clutter-main.c: (clutter_init):
        * clutter/clutter-main.h:
        Add an enum for clutter init to return an error code.
        * configure.ac:
        Dont check for XInitThreads, there is no need, its part of xlib.
2006-09-15 12:30:15 +00:00
Matthew Allum
93f102fc85 2006-09-14 Matthew Allum <mallum@openedhand.com>
Various fixes from Bastien Nocera:

        * clutter/clutter-event.h:
        * clutter/clutter-stage.c: (clutter_stage_unrealize),
        (clutter_stage_realize), (clutter_stage_request_coords),
        (clutter_stage_dispose), (clutter_stage_init):
        * clutter/clutter-stage.h:
        * gtk/gtk-clutter-test.c: (input_cb), (frame_cb), (main):
        * gtk/gtk-clutter.c: (realize):
        Misc fixes (#152)

        * clutter/clutter-group.c: (clutter_group_remove):
        Remove uneeded ref count (#143)

        * examples/super-oh.c: (input_cb):
        Handle key release rather than presses (#154)

        * configure.ac:
        Add old style X libs check when x11.pc unavailable (#101)
2006-09-14 17:18:54 +00:00
Matthew Allum
2a4865b2b0 2006-09-01 Matthew Allum <mallum@openedhand.com>
* clutter/Makefile.am:
        * clutter/clutter-media.c:
        * clutter/clutter-media.h:
        * clutter/clutter.h:
        Re-add clutter media.
2006-09-01 17:26:47 +00:00
Matthew Allum
bff5afe724 2006-08-31 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-actor.c:
        * clutter/clutter-group.c: (clutter_group_paint),
        (clutter_group_request_coords), (clutter_group_allocate_coords),
        (clutter_group_add):
        Fix some group sizing/positioning issues.
2006-08-31 18:54:51 +00:00
Jorn Baayen
76d1b5fd5b 2006-08-30 Jorn Baayen <jorn@openedhand.com>
* clutter.pc.in:

	Remove gstreamer deps.
2006-08-30 13:57:03 +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
Jorn Baayen
f907bcee1e 2006-08-30 Jorn Baayen <jorn@openedhand.com>
* clutter/Makefile.am:
	* clutter/clutter-audio.c:
	* clutter/clutter-audio.h:
	* clutter/clutter.h:

	Added ClutterAudio audio playback object.
2006-08-30 09:06:35 +00:00
Matthew Allum
3afb377c3e 2006-08-29 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-fixed.h:
        Add basic fixed point utility defines and type.

        * clutter/Makefile.am:
        * clutter/clutter-actor.c:
        * clutter/clutter-actor.h:
        * clutter/clutter-group.c:
        * clutter/clutter-stage.c:
        * examples/super-oh.c: (main):
        Add scale API and functionality.
        Rework group sizing. Now group size requests have no effect
        but can be scaled.
2006-08-29 19:09:43 +00:00
Jorn Baayen
9f81571737 2006-08-29 Jorn Baayen <jorn@openedhand.com>
* clutter/clutter-behaviour.c: (_clutter_behaviour_finalize),
	(_clutter_behaviour_set_property),
	(_clutter_behaviour_get_property), (clutter_behaviour_class_init),
	(clutter_behaviour_init), (clutter_behaviour_apply),
	(clutter_behaviour_remove), (clutter_behaviour_remove_all),
	(clutter_behaviour_actors_foreach):
	* clutter/clutter-behaviour.h:
	* clutter/clutter-behaviours.c:
	(clutter_behaviour_property_change),
	(clutter_behaviour_opacity_dispose),
	(clutter_behaviour_opacity_finalize),
	(clutter_behaviour_opacity_class_init),
	(clutter_behaviour_opacity_init):
	* clutter/clutter-behaviours.h:
	* clutter/clutter-marshal.list:
	* examples/behave.c: (main):

	Behaviours track generic GObject properties.

	* clutter/clutter-video-texture.h:

	Remove signal prototypes - they are already specified in
	clutter-media.h.
2006-08-29 13:20:29 +00:00
Jorn Baayen
bc3d914ccd 2006-08-28 Jorn Baayen <jorn@openedhand.com>
* clutter/Makefile.am:
	* clutter/clutter-alpha.c:
	* clutter/clutter-alpha.h:
	* clutter/clutter-behaviours.c:
	(clutter_behaviour_opacity_dispose),
	(clutter_behaviour_opacity_init),
	(clutter_behaviour_opacity_frame_foreach),
	(clutter_behaviour_opacity_frame):
	* clutter/clutter-behaviours.h:
	* clutter/clutter-timeline.c: (clutter_timeline_class_init):
	* clutter/clutter-timeline.h:
	* clutter/clutter.h:
	* examples/behave.c: (main):

	Separate alpha calculation into its own class.

	* clutter/clutter-behaviour.c: (clutter_behaviour_set_timelime):

	Correct NULL check.
2006-08-28 17:11:15 +00:00
Matthew Allum
149a4bac0c 2006-08-15 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-behaviour.h:
        Behaviours shouldn't subclass timelines.
2006-08-15 20:38:25 +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
c13b025083 2006-08-14 Matthew Allum <mallum@openedhand.com>
* clutter/Makefile.am:
        * clutter/clutter-behaviour.c:
        * clutter/clutter-behaviour.h:
        * clutter/clutter-behaviours.c:
        * clutter/clutter-behaviours.h:
        * clutter/clutter-timeline.c:
        * clutter/clutter-timeline.h:
        Add very initial new behaviour functionality.

        * clutter/clutter-stage.c:
        * clutter/clutter-main.c:
        * clutter/clutter-actor.c:
        Improve clipping using stencil test rather than scissor check.
        ( Should now handle rotated clips etc ).

        * clutter/clutter-group.c: (clutter_group_paint):
        Fix typo on position check.
2006-08-13 23:55:52 +00:00
Matthew Allum
9b1ae0949e 2006-08-07 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-video-texture.c: (lay_pipeline):
        Set quality of service prop on fakesink to TRUE.
2006-08-07 22:04:29 +00:00
Matthew Allum
410eabf9d5 2006-08-07 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-actor.c: (clutter_actor_paint):
        Remove relic from old stage behaviour - dont unref
        it during a clip.
2006-08-07 21:27:11 +00:00
Emmanuele Bassi
3146bdbf16 2006-07-27 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-feature.c: No need to call clutter_feature_init()
	each time: it's private and should never be seen from the outside;
	add a warning, just in case something screws up and calls it more
	than once.
2006-07-27 17:10:33 +00:00
Emmanuele Bassi
ad29f37780 2006-07-27 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-private.h: Move clutter_feature_init()
	declaration here: you shouldn't even need to initialise
	features yourself.

	* clutter/clutter-feature.c: call clutter_feature_init()
	each time you try to access the feature list; add a static
	lock around the feature flags container; add api documentation.

	* clutter/clutter-feature.h: Add a type for the feature flags
	to make bindings happy.
2006-07-27 16:09:25 +00:00
Matthew Allum
ecccec75cb 2006-07-24 Matthew Allum <mallum@openedhand.com>
* clutter/Makefile.am:
        * clutter/clutter-feature.c:
        * clutter/clutter-feature.h:

        Add new funcs for checking for available runtime GL
        extensions.

        * clutter/clutter-clone-texture.c:
        * clutter/clutter-texture.c:

        Add support for non power of two textures
       if GL_TEXTURE_RECTANGLE_ARB extension available ( at runtime ).
       Should lower texture memory needs a little.
2006-07-24 21:15:19 +00:00
Emmanuele Bassi
55f9adeb41 2006-07-17 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-stage.c (clutter_stage_get_default): Fix
	api documentation.
2006-07-17 09:10:08 +00:00
Emmanuele Bassi
939ce2877c 2006-07-15 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-main.c:
	
	(clutter_main): Destroy the main stage, instead of unreffing it.

	(clutter_init): Ref and sink the main stage, as it is a top
	level actor.

	* clutter/clutter-stage.c (clutter_stage_unrealize): Access
	the Window private member directly, instead of calling the
	get_xwindow method.

	* examples/test.c (main): Quit on button press.
2006-07-15 22:47:37 +00:00
Emmanuele Bassi
ce5c1150f2 2006-07-09 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-event.h: Change the name of the
	ClutterEvent union members to something a little shorter.
2006-07-10 10:52:04 +00:00
Emmanuele Bassi
ec3979d4c3 2006-07-06 Emmanuele Bassi <ebassi@openedhand.com>
* configure.ac: Remove the python stuff, now that the bindings
	are out of tree.
2006-07-06 22:28:35 +00:00
Emmanuele Bassi
3ecdb62d7b 2006-07-06 Emmanuele Bassi <ebassi@openedhand.com>
* configure.ac: Mark this as 0.1.1, and change the version info
	of the library.

	* clutter/clutter-actor.c:
	* clutter/clutter-group.c: Fix documentation.
2006-07-06 18:55:46 +00:00
Emmanuele Bassi
5fa9fc161b 2006-07-06 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-actor.h:
	* clutter/clutter-actor.c:
	
	(clutter_actor_class_init), (clutter_actor_set_property),
	(clutter_actor_get_property): Add the "clip" and "has-clip"
	properties.

	(clutter_actor_set_clip), (clutter_actor_remove_clip): Emit
	the notification for the changed properties.

	(clutter_actor_has_clip): Simple accessor to the "has-clip"
	property.
2006-07-06 18:12:19 +00:00
Emmanuele Bassi
212c4a0ee8 2006-07-06 Emmanuele Bassi <ebassi@openedhand.com>
Big rework of the actor management semantics: now ClutterActor
	objects behave like GtkObjects - that is they have an initial
	"floating" reference that gets "sunk" when they are added to
	a ClutterGroup.  This makes a group responsible of de-allocating
	each actor inside it, so you just have to destroy the group to
	get every child actor destroyed.  Also, now you can do:

	  clutter_group_add (group, clutter_video_texture_new ());
	
	without having to care about reference counting and explicit
	unreffing.

	* clutter/clutter-private.h: Add private flags setter and
	getter macros.

	* clutter/clutter-actor.h:
	* clutter/clutter-actor.c: Clean up; inherit from GInitiallyUnowned;
	add a "visible" property; add the "destroy", "show" and "hide"
	signals to ClutterActorClass.

	(clutter_actor_show), (clutter_actor_hide): Refactor a bit; emit
	the "show" and "hide" signals.

	(clutter_actor_set_property), (clutter_actor_get_property),
	(clutter_actor_class_init): Implement the "visible" property; add
	signals.

	(clutter_actor_finalize): Do not leak the actor's name, if it is
	set.
	
	(clutter_actor_dispose): Emit the "destroy" signal here.

	(clutter_actor_init): Sink the initial floating flag if needed.

	(clutter_actor_destroy): Add a function to explicitely destroy
	a ClutterActor.

	(clutter_actor_set_parent), (clutter_actor_get_parent),
	(clutter_actor_unparent): Make set_parent require a valid parent;
	add unparent; check on get_parent; ref_sink the actor when
	setting its parent and unref it when unsetting it.  Probably we'll
	need a function that does reparenting as unparent+set_parent in
	a single shot.

	* clutter/clutter-group.h:
	* clutter/clutter-group.c (clutter_group_dispose),
	(clutter_group_finalize), (clutter_group_add),
	(clutter_group_remove): Make the group destroy its children when
	disposing it; clean up, and use the newly-available
	clutter_actor_unparent().

	* clutter/clutter-stage.h:
	* clutter/clutter-stage.c (clutter_stage_init): ClutterStage is
	a top-level actor; clean up.

	* clutter/clutter-video-texture.h:
	* clutter/clutter-video-texture.c: Clean up.

	* examples/super-oh.c:
	* examples/test.c:
	* examples/video-player.c:
	* examples/test-text.c:
	* examples/video-cube.c: Remove the g_object_unref() call, as the
	ClutterStage object is destroyed on clutter_main_quit().
2006-07-06 17:52:57 +00:00
Iain Holmes
8692008027 Fix typo 2006-06-23 18:18:56 +00:00
Matthew Allum
e2a6630817 2006-06-23 Matthew Allum <mallum@openedhand.com>
* examples/super-oh.c:
        Remove random stage unref fixing trails. Fixes #98
2006-06-23 16:29:11 +00:00
Matthew Allum
21728c5ba9 2006-06-23 Matthew Allum <mallum@openedhand.com>
* examples/video-player.c: (size_change):
        cast stage height to gint avoiding wierdness for when
        video height greater than half display height. Fixed #99
2006-06-23 16:21:13 +00:00
Matthew Allum
fb5f7475d7 2006-06-23 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-video-texture.c: (clutter_video_texture_new):
        Small fix for video playback on Big Endian. See #99
2006-06-23 15:26:43 +00:00
Iain Holmes
5a01d0ab1c Shuffle some layout so that gapi2-parser can understand everything 2006-06-23 15:13:11 +00:00
Ross Burton
c43da5a4bd 2006-06-23 Ross Burton <ross@openedhand.com>
* configure.ac:
	* Makefile.am:
	Remove references to bindings/, it's moved.
2006-06-23 11:36:54 +00:00
Emmanuele Bassi
c38bbd2708 2006-06-23 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-group.c
	(clutter_group_get_children): Mention that you must free
	the returned list otherwise you'll leak stuff all around.
2006-06-23 10:32:42 +00:00
Ross Burton
ff1152e3b1 2006-06-23 Ross Burton <ross@openedhand.com>
* examples/super-oh.c:
	Fix build with trails enabled. Still crashes.
2006-06-23 09:29:54 +00:00
Ross Burton
6ddf5c196a 2006-06-23 Ross Burton <ross@openedhand.com>
* configure.ac:
	Disable static libraries.
2006-06-23 09:20:04 +00:00
Matthew Allum
70328d585f 2006-06-22 Matthew Allum <mallum@openedhand.com>
* web/index.html:
        Make OpeneHand link
2006-06-22 15:37:00 +00:00
Matthew Allum
f2ecb3745c 2006-06-22 Matthew Allum <mallum@openedhand.com>
* web/index.html:
        Add Pango ref, authors info.
2006-06-22 15:27:42 +00:00
Matthew Allum
8c31bb8e45 2006-06-22 Matthew Allum <mallum@openedhand.com>
* configure.ac:
        * web/index.html:
        Correct Bugzilla link. Add debs link
        Bump up version to 0.1 !
2006-06-22 15:01:22 +00:00
Matthew Allum
9cf7f81d6a 2006-06-22 Matthew Allum <mallum@openedhand.com>
* NEWS:
        Add an entry for 0.1 release
        * web/index.html:
        * web/style.css:
        Add basic website.
2006-06-22 14:57:25 +00:00
Iain Holmes
9b0bd1320e 80% coverage 2006-06-22 14:36:05 +00:00
Iain Holmes
96ed832b09 Add more docs...80% coverage 2006-06-22 14:31:19 +00:00
Iain Holmes
bf695c4dab Add docs for clutter-media 2006-06-22 14:14:58 +00:00
Iain Holmes
3d95e12687 Fix typos...74% 2006-06-22 13:56:04 +00:00
Iain Holmes
f13810a34a Docs 2006-06-22 13:48:09 +00:00
Iain Holmes
23cf8a892b More docs 2006-06-22 13:44:47 +00:00
Iain Holmes
ae1eccdc6d Fix typos and move *_get_type t private sections
--his line, and those below, will be ignored--

M    clutter/clutter-actor.c
M    ChangeLog
M    doc/reference/clutter-sections.txt
M    doc/reference/ChangeLog
M    doc/reference/tmpl/clutter-enum-types.sgml
M    doc/reference/tmpl/clutter-color.sgml
M    doc/reference/tmpl/clutter-event.sgml
M    doc/reference/tmpl/clutter-group.sgml
2006-06-22 13:05:45 +00:00
Emmanuele Bassi
33d0c989ca 2006-06-22 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-timeline.h:
	* clutter/clutter-timeline.c: Add a "started" and a "paused"
	signals; add more sanity checks on the public functions.
	
	(clutter_timeline_get_loop): Add a getter function for the
	loop property.

	* clutter/clutter-marshal.list: Add marshallers.

	* clutter/clutter-timeline.h:
	* clutter/clutter-actor.h: Add padding for future expansion
	without breaking ABI.
2006-06-22 12:05:51 +00:00
Iain Holmes
a695e2f06c More docustuff 2006-06-22 09:25:01 +00:00
Ross Burton
110d8b9f2d * clutter/clutter-group.c:
Fix gtk-doc problems.
2006-06-22 09:19:32 +00:00
Ross Burton
58f2fff6d7 2006-06-22 Ross Burton <ross@openedhand.com>
* clutter/clutter-label.c:
	* clutter/clutter-video-texture.c:
	* clutter/clutter-texture.c:
	* clutter/clutter-timeline.c:
	Fix gtk-doc problems.
2006-06-22 09:14:35 +00:00
Iain Holmes
ad77326868 More documentation 2006-06-22 09:12:40 +00:00
Matthew Allum
2ccbe3001f 2006-06-22 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-main.h:
        Remove bogus xvisual call.
2006-06-22 08:40:37 +00:00
Iain Holmes
4dd3fa6400 Some more docs 2006-06-21 23:19:59 +00:00
Iain Holmes
f4eee9ad3a Some more docs 2006-06-21 23:02:20 +00:00
Matthew Allum
c39b868aeb 2006-06-22 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-actor.c:
        * clutter/clutter-clone-texture.c:
        * clutter/clutter-color.c:
        * clutter/clutter-event.c:
        * clutter/clutter-group.c:
        * clutter/clutter-label.c:
        * clutter/clutter-main.c:
        * clutter/clutter-media.c:
        * clutter/clutter-rectangle.c:
        * clutter/clutter-stage.c:
        * clutter/clutter-texture.c:
        * clutter/clutter-timeline.c:
        * clutter/clutter-util.c:
        * clutter/clutter-video-texture.c:
        * configure.ac:
        Documentation updates - add section headers.
2006-06-21 22:34:25 +00:00
Iain Holmes
64712056fa Don't show the stage before its embedded. 2006-06-21 22:32:38 +00:00
Iain Holmes
e34b2f77c6 2006-06-22 Iain Holmes <iain@openedhand.com>
* gtk/gtk-clutter.[ch]: Rewrite to use
        clutter_stage_set_xwindow_foreign rather than GtkSocket.

        * gtk/gtk-clutter-test.c: Add fading!1!!!!11! OMGWTFBBQ!!!
2006-06-21 22:29:28 +00:00
Emmanuele Bassi
1b7b2bc573 2006-06-21 Emmanuele Bassi <ebassi@openedhand.com>
* examples/video-cube.c (main): Quit on key press.
2006-06-21 17:25:14 +00:00
Emmanuele Bassi
8cb8cfd5f0 2006-06-21 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/Makefile.am: Re-fix distcheck after last commit.
2006-06-21 17:21:19 +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
177add8768 2006-06-21 Ross Burton <ross@openedhand.com>
* Makefile.am:
	* gtk/Makefile.am:
	Add gtk widget to distcheck and fix.
2006-06-21 16:14:43 +00:00
Emmanuele Bassi
c8d963f80d 2006-06-21 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/Makefile.am:
	* bindings/python/Makefile.am:
	* Makefile.am: Fix distcheck
2006-06-21 15:54:46 +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
35ee56c50d 2006-06-20 Matthew Allum <mallum@openedhand.com>
* TODO:
        Update.
        * clutter/clutter-group.c:
        Attempt better group sizing code.
        * clutter/clutter-label.c:
        Minor tweaks.
        * clutter/clutter-texture.c:
        More debug info, make sure texture is realised for base_size()
        * clutter/clutter-video-texture.c:
        Seeking fixes
        * examples/test.c: (main):
        Populate with more randomness.
2006-06-20 20:29:45 +00:00
Matthew Allum
13ce0e3709 2006-06-15 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-stage.c:
        * clutter/clutter-stage.h:
        Add clutter_stage_set_xwindow_foreign() call
        * clutter/clutter-util.c:
        * clutter/clutter-util.h:
        Add some X error traps
        * examples/super-oh.c:
        Toy with us of new clutter_stage_set_xwindow_foreign() for
        optional screensaver functionality.
2006-06-15 22:04:19 +00:00
Matthew Allum
7639872f5f 2006-06-14 Matthew Allum <mallum@openedhand.com>
* configure.ac:
        Add checks for GL/gl.h and GL/glx.h
2006-06-14 13:04:26 +00:00
Matthew Allum
7b1945eb84 2006-06-14 Matthew Allum <mallum@openedhand.com>
* AUTHORS:
        * README:
        * TODO:
        Update all.
2006-06-13 22:29:51 +00:00
Matthew Allum
1127c5605f 2006-06-13 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-video-texture.c:
        Add missing license.
2006-06-13 16:18:24 +00:00
Matthew Allum
df92202c5f 2006-06-13 Matthew Allum <mallum@openedhand.com>
* clutter/Makefile.am:
        * clutter/clutter-actor.c:
        * clutter/clutter-actor.h:
        * clutter/clutter-clone-texture.c:
        * clutter/clutter-clone-texture.h:
        * clutter/clutter-element.c:
        * clutter/clutter-element.h:
        * clutter/clutter-group.c:
        * clutter/clutter-group.h:
        * clutter/clutter-label.c:
        * clutter/clutter-label.h:
        * clutter/clutter-main.c:
        * clutter/clutter-main.h:
        * clutter/clutter-rectangle.c:
        * clutter/clutter-rectangle.h:
        * clutter/clutter-stage.c:
        * clutter/clutter-stage.h:
        * clutter/clutter-texture.c:
        * clutter/clutter-texture.h:
        * clutter/clutter-video-texture.c:
        * clutter/clutter-video-texture.h:
        * clutter/clutter.h:
        * examples/super-oh.c:
        * examples/test-text.c:
        * examples/test-video.c:
        * examples/test.c:
        * examples/video-cube.c:
        * gtk/gtk-clutter-test.c:
        * gtk/gtk-clutter.c:
        * gtk/gtk-clutter.h:
        Element to Actor Renaming.
2006-06-13 13:17:45 +00:00
Matthew Allum
9afe83e695 2006-06-12 Matthew Allum <mallum@openedhand.com>
* clutter/Makefile.am:
        * clutter/clutter-media.c:
        * clutter/clutter-media.h:
        * clutter/clutter-video-texture.c:
        * clutter/clutter-video-texture.h:
        * clutter/clutter.h:
        * examples/test-video.c: (main):
        * examples/video-cube.c: (main):
        Add new 'media' interface.
        Drop Totem based video playback code replace with newly
        rewritten supper Jorn based code. Clutter is now fully LGPL.

        * clutter/clutter-texture.c: (tile_dimension):
        Remove uneeded overlap code.
2006-06-12 20:38:57 +00:00
Matthew Allum
3d7c3295f4 Fix ChangeLog quick 2006-06-08 22:44:14 +00:00
Iain Holmes
968f8c1054 2006-06-08 Iain Holmes <iain@openedhand.com>
* clutter/clutter-texture.c:
        Opps, undo change I didn't mean to commit
2006-06-08 22:36:17 +00:00
Iain Holmes
9e9240b2a5 2006-06-08 Iain Holmes <iain@openedhand.com>
* configure.ac:
        Add gdk-pixbuf-xlib cflags/libs to clutter libs
        Build the gtk-clutter.pc file.

        * clutter.pc.in:
        Add the gdk-pixbuf-xlib depends.

        * gtk/gtk-clutter.pc.in:
        pkg-config stuff for gtk-clutter

        * gtk/Makefile.am:
        Install gtk-clutter.pc
2006-06-08 22:19:32 +00:00
Matthew Allum
f00e84606c 2006-06-06 Matthew Allum <mallum@openedhand.com>
* configure.ac:
        Use pkg-config to check for X. Really Check for GL libs.
        Make gtk binding optional. Cleanup a little.

        * Makefile.am:
        * gtk/Makefile.am:
        Make gtk binding optional

        * clutter/clutter-element.c:
        Cleanup a little, notify on size change.

        * clutter/clutter-texture.c:
        Lots of cleanups. Add waste prop. Add filter quality prop.

        * clutter/clutter-clone-texture.c:
        Make object construction simpler to work better with bindings.

        * clutter/clutter-stage.c:
        * clutter/clutter-timeline.c:
        Minor reformating, cleanups.

        * examples/test-text.c: (main):
        Random experimentation
2006-06-06 20:40:40 +00:00
Iain Holmes
615d519d7a 2006-06-06 Iain Holmes <iain@openedhand.com>
* gtk/gtk-clutter.c (size_request): Take the size of the widget from
        the ClutterStage.
        (gtk_clutter_class_init): Hook up size-request
2006-06-06 18:25:55 +00:00
Iain Holmes
f0efad6b79 2006-06-06 Iain Holmes <iain@openedhand.com>
* gtk/: Add a gtk widget for clutter.

        * configure.ac: Add GTK checks

        * Makefile.am: Go into gtk/
2006-06-06 18:19:11 +00:00
Matthew Allum
f040e5b0da 2006-06-05 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-group.c: (clutter_group_remove):
        Fix parent check.
2006-06-05 21:49:25 +00:00
Matthew Allum
7806e409fb 2006-06-05 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-event.h:
        Remove send_event field. Clutter shouldn't need it.

        * clutter/clutter-main.c: (clutter_dispatch_x_event):
        Dont malloc a new clutter event for each xevent.

        * clutter/clutter-stage.h:
        * clutter/clutter-stage.c: (clutter_stage_class_init),
        (clutter_stage_get_default):
        Dont ref stage from clutter_stage_get_default.

        * examples/super-oh.c: (main):
        Remove some now uneeded debug g_prints
2006-06-05 21:44:13 +00:00
Emmanuele Bassi
f6fe9e7412 2006-06-05 Emmanuele Bassi <ebassi@openedhand.com>
* clutter-color.h:
	* clutter-color.c: Reimplement ClutterColor as a boxed type;
	add convenience API for color handling, like: add, subtract,
	shade, HSL color-space conversion, packing and unpacking.

	* clutter-private.h: Update ClutterMainContext, and export the
	main context pointer here.

	* clutter-rectangle.h:
	* clutter-rectangle.c: Update the color-related code; make
	clutter_rectangle_new() and empty constructor and provide
	clutter_rectangle_new_with_color(); provide color setter
	and getter API.

	* clutter-label.h:
	* clutter-label.c: Rename the "font" property to "font-name";
	update the color-related code to the new ClutterColor object;
	rename clutter_label_new() to clutter_label_new_with_text(),
	and add setters and getters for the properties.

	* clutter-marshal.list: Add VOID:OBJECT and VOID:BOXED marshallers
	generators.

	* clutter-stage.h:
	* clutter-stage.c: Rework the API: provide a default constructor
	for a singleton object, named clutter_stage_get_default(), which
	supercedes the clutter_stage() function in clutter-main; provide
	new events: button-press-event, button-release-event,
	key-press-event and key-release-event; update the color-related
	code;

	(clutter_stage_snapshot): Allow negative width and height when
	taking a snapshot (meaning: use full width/height).

	(clutter_stage_get_element_at_pos): Rename clutter_stage_pick().

	* clutter-element.c (clutter_element_paint): Clean up the
	stage and color related code.

	* clutter-event.h:
	* clutter-event.c: Add generic ClutterAnyEvent type; add
	clutter_event_new(), clutter_event_copy() and clutter_event_free();
	make ClutterEvent a boxed type.

	* clutter-main.h:
	* clutter-main.c: Remove clutter_stage(); add clutter_main_quit(),
	for cleanly quitting from clutter_main(); add multiple mainloops
	support; allocate the ClutterCntx instead of adding it to the
	stack; re-work the ClutterEvent dispatching.

	* clutter-group.c (clutter_group_add), (clutter_group_remove): Keep
	a reference on the element when added to a ClutterGroup.

	* examples/rects.py
	* examples/test.c:
	* examples/test-text.c:
	* examples/video-cube.c:
	* examples/super-oh.c:
	* examples/test-video.c: Update.
2006-06-05 13:38:31 +00:00
Matthew Allum
1d16ef11ca 2006-06-04 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-element.c:
        * clutter/clutter-group.c:
        * clutter/clutter-group.h:
        Work more on depth ( Z ) setting with sorting.

        * clutter/clutter-main.c: (clutter_redraw):
        Experiment with glXWaitVideoSyncSGI. Currently disabled.
2006-06-04 22:09:18 +00:00
Matthew Allum
ba09979db0 2006-06-02 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-element.h:
        Add missing _depth() declarations

        * clutter/clutter-main.c:
        * clutter/clutter-main.h:
        * clutter/clutter-private.h:
        * clutter/clutter-stage.c:
        * clutter/clutter-stage.h:
        Rejig GL setup as for stage to support an offscreen property.
        Offscreen support is however a little borked.
2006-06-02 20:24:55 +00:00
Matthew Allum
6c471cb7e1 2006-06-01 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-element.c:
        Fix a snafu in clutter_element_raise ()

        * clutter/clutter-timeline.c:
        * clutter/clutter-timeline.h:
        Add new clutter_timeline_is_playing() method
2006-06-01 21:37:28 +00:00
Matthew Allum
70ed2f4233 2006-05-29 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-color.c: (clutter_color_set):
        Fix bit shifts in clutter color setters.
2006-05-29 20:01:49 +00:00
Matthew Allum
342ea125f1 Merge gobject-branch into trunk 2006-05-29 08:59:36 +00:00
Matthew Allum
c936f265b0 more select hacking 2005-05-27 14:02:39 +00:00
Matthew Allum
8f30e4e0c1 much select hacking 2005-05-23 21:21:50 +00:00
Matthew Allum
956008e6c3 playback fixes 2005-05-17 10:12:10 +00:00
Matthew Allum
55fdb9bc79 much 2005-05-16 22:38:57 +00:00
Matthew Allum
9c9dad903c Add initial animator zoom code 2005-05-15 23:16:19 +00:00
Matthew Allum
3838ffe065 Much, see ChangeLog 2005-05-14 10:19:39 +00:00
Matthew Allum
24cefa8d2a gl crash fixes 2005-05-11 12:52:01 +00:00
Matthew Allum
f085407d41 Video widget updates 2005-05-06 17:41:15 +00:00
Matthew Allum
246e6bdd5d hack buttons some more 2005-04-29 16:44:17 +00:00
Matthew Allum
64355c0e48 video improvements + other tweaks 2005-04-27 22:17:45 +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
Matthew Allum
f016f09792 Add list widget + cleanups 2005-04-07 22:46:43 +00:00
Matthew Allum
668890821f Add basic toolkit infrastructure 2005-04-03 16:13:08 +00:00
Matthew Allum
a4ce71bb79 Implemented scrolling 2005-03-31 18:19:25 +00:00
Matthew Allum
251eacc592 More renaming 2005-03-30 16:55:06 +00:00
Matthew Allum
c5a9ee7914 rename CltrImage 2005-03-30 16:52:02 +00:00
Matthew Allum
99bb51a5be Added texture tiling code 2005-03-29 23:26:36 +00:00
Matthew Allum
bc2e4f9b70 Add threaded loader 2005-03-27 20:12:19 +00:00
Matthew Allum
a731e612b6 See ChangeLog 2005-03-25 17:22:10 +00:00
Matthew Allum
22acd39f0f refactoring 2005-03-24 16:46:49 +00:00
Matthew Allum
1ec99cb5e1 tweakage 2005-03-23 21:09:57 +00:00
Matthew Allum
2a24ed964a more fixes 2005-03-23 18:48:27 +00:00
Matthew Allum
0e19d99457 make grid work 2005-03-23 17:33:37 +00:00
Matthew Allum
0809a5eb5c Add glib event loop 2005-03-22 17:25:52 +00:00