[clutter] clutter_actor_animate: assertion `duration 0' failed
I am playing around with clutter and am using if from c#. Because the c# bindings are in a poor state I am having to create my own bindings as I go. clutter_actor_animate is a hard call to interop because it has a variable number of arguments (something not supported in c#). However I have something which I think will work, (based on the example code I have seen). But when I try to use it I am getting the following assertion. [clutter] clutter_actor_animate: assertion `duration 0' failed I have debugged it and checked that I am passing a value for duration which is valid ( greater then zero). This is now the only thing from the tuxradar tutorial which I havn't got going. http://www.tuxradar.com/content/clutter-beginners-tutorial So before I spend a lot of time trying to debug the interop I wanted to check that their was not a known issue with the clutter_actor_animate function. I'm using the version of clutter in ubuntu 10.04. -- To unsubscribe send a mail to clutter+unsubscr...@o-hand.com
Re: [clutter] clutter_actor_animate: assertion `duration 0' failed
Daniel Hughes tramps...@gmail.com wrote: I am playing around with clutter and am using if from c#. Because the c# bindings are in a poor state I am having to create my own bindings as I go. clutter_actor_animate is a hard call to interop because it has a variable number of arguments (something not supported in c#). Are you literally binding the clutter_actor_animate function? That's not recommended. I think the idea is that bindings would bind the clutter_actor_animatev function instead which does not take a variable number of arguments. clutter_actor_animate is intended as the C 'binding' for clutter_actor_animatev which just provides a convenient interface. Other languages are expected to bind clutter_actor_animatev separately using whatever method makes sense. For example, the Ruby bindings take a hash as the last argument which it then converts into two separate arrays (one for the property names and one for the values) to pass to clutter_actor_animatev. Calling it from Ruby then looks like this: some_actor.animate(Clutter::LINEAR, 1000, x = 100, y = 100) Maybe if C# supports array literals or hash literals it could do something similar. However I have something which I think will work, (based on the example code I have seen). But when I try to use it I am getting the following assertion. [clutter] clutter_actor_animate: assertion `duration 0' failed I have debugged it and checked that I am passing a value for duration which is valid ( greater then zero). So before I spend a lot of time trying to debug the interop I wanted to check that their was not a known issue with the clutter_actor_animate function. I don't think there are any known problems with the duration. You may want to try posting a code snippet of your binding and someone with knowledge of C# may be able to help. Regards, - Neil -- To unsubscribe send a mail to clutter+unsubscr...@o-hand.com
Re: [clutter] clutter_actor_animate: assertion `duration 0' failed
Thank neil for the pointer I tried the suggested function but I get exactly the same Assertion. Clutter-CRITICAL **: clutter_actor_animatev: assertion `duration 0' failed (we except for the v) here is my code: public Animation Animate(ClutterAnimationMode mode, uint duration, string property1, float val1, string property2, float val2, string property3, float val3) { var values = new float[]{val1,val2,val3}; IntPtr pointer = GCHandle.Alloc(values,GCHandleType.Pinned).AddrOfPinnedObject(); Console.WriteLine(duration); IntPtr nativeAnimation = clutter_actor_animatev(_clutterActorNative, (ulong)mode, duration, 3, new string[]{property1, property2, property3}, pointer); return new Animation( nativeAnimation ); } [DllImport (libclutter-glx-1.0.so.0)] private static extern IntPtr clutter_actor_animatev(IntPtr actor,ulong mode, uint duration,int n_properties, string[] properties, IntPtr values); On Wed, Jun 23, 2010 at 10:11 PM, Neil Roberts n...@linux.intel.com wrote: Daniel Hughes tramps...@gmail.com wrote: I am playing around with clutter and am using if from c#. Because the c# bindings are in a poor state I am having to create my own bindings as I go. clutter_actor_animate is a hard call to interop because it has a variable number of arguments (something not supported in c#). Are you literally binding the clutter_actor_animate function? That's not recommended. I think the idea is that bindings would bind the clutter_actor_animatev function instead which does not take a variable number of arguments. clutter_actor_animate is intended as the C 'binding' for clutter_actor_animatev which just provides a convenient interface. Other languages are expected to bind clutter_actor_animatev separately using whatever method makes sense. For example, the Ruby bindings take a hash as the last argument which it then converts into two separate arrays (one for the property names and one for the values) to pass to clutter_actor_animatev. Calling it from Ruby then looks like this: some_actor.animate(Clutter::LINEAR, 1000, x = 100, y = 100) Maybe if C# supports array literals or hash literals it could do something similar. However I have something which I think will work, (based on the example code I have seen). But when I try to use it I am getting the following assertion. [clutter] clutter_actor_animate: assertion `duration 0' failed I have debugged it and checked that I am passing a value for duration which is valid ( greater then zero). So before I spend a lot of time trying to debug the interop I wanted to check that their was not a known issue with the clutter_actor_animate function. I don't think there are any known problems with the duration. You may want to try posting a code snippet of your binding and someone with knowledge of C# may be able to help. Regards, - Neil -- To unsubscribe send a mail to clutter+unsubscr...@o-hand.com
[clutter] clutter.pc buglet.
Hi, Commit 7e6b60 sets libdir incorrectly in clutter.pc.in: -libd...@libdir@ -included...@includedir@ +libdir=${exec_prefix}/libdir +includedir=${prefix}/include Changing that to ${exec_prefix}/lib makes things work again for me.. Cheers! Rob -- To unsubscribe send a mail to clutter+unsubscr...@o-hand.com
Re: [clutter] clutter.pc buglet.
On Wed, 2010-06-23 at 19:44 +0800, Rob Kramer wrote: Hi, Commit 7e6b60 sets libdir incorrectly in clutter.pc.in: -libd...@libdir@ -included...@includedir@ +libdir=${exec_prefix}/libdir +includedir=${prefix}/include Changing that to ${exec_prefix}/lib makes things work again for me.. thanks. it turns out that that commit was wrong and I reverted it on master. just pull again, and sorry for the mess. ciao, Emmanuele. -- Emmanuele Bassi, Open Source Software Engineer Intel Open Source Technology Center -- To unsubscribe send a mail to clutter+unsubscr...@o-hand.com
[clutter] Centering actors inside groups
Hi, I am arithmetically challenged, but I shall soldier-on. I want to work with Actors and Groups with the default 'anchor' being in the center. For example, I have a 64x64 Actor (C) and a 128x128 Group (P) and another 512x512 group (P2), so: P2 \_P \_C I want the middle of C to be in the middle of P and the middle of P to be in the middle of P2. Is there some way to magically matrix the works so that a normal P.add(C) will also jiggle the positions and anchors etc. to make this happen? I'd like (0,0) to be in the 'middle' and negative goes left/down, positive right/up. Also, future animation (alphas and co.) should 'just work' based on same. I am aiming towards a small animation tool and I don't want to have to keep working out offsets for centering. Matrixes (matrices?) are bewilderingly new to me. I have mucked with them in PyCairo before (see my Things! project linked in sig) but all I am left with is the confusing memory of the wooshing sounds made flying overhead. :) I do recall that I could arrange a central function that would apply a matrix to the entire context so that everything was drawn properly. Perhaps there's something similar in Clutter. \d --- https://savannah.nongnu.org/projects/things/ -- To unsubscribe send a mail to clutter+unsubscr...@o-hand.com
[clutter] [ANNOUNCEMENT] List migration (PLEASE READ)
hi everyone; the last piece of the migration puzzle finally fell into place; we now have new mailing lists for Clutter, hosted at: http://lists.clutter-project.org the new lists are: • clutter-announce: a mailing list for announcement regarding Clutter, its integration libraries, its bindings and all projects related to Clutter; announcements can come from the Clutter Development Team but we invite the community to use it to let people know of new projects using Clutter. the list is moderated, and it should only be used for announcements. if you are subscribed to the clutter@o-hand.com mailing list then you'll be automatically subscribed. • clutter-app-devel-list: a mailing list for application development with Clutter. if you are subscribed to the clutter@o-hand.com mailing list then you'll be automatically subscribed. • clutter-devel-list: a mailing list for discussing the development of Clutter itself (and not development with Clutter). the clutter@o-hand.com mailing list will be closed; I will put a copy of the archives on the new website, for historical purposes. ciao, Emmanuele. -- Emmanuele Bassi, Open Source Software Engineer Intel Open Source Technology Center -- To unsubscribe send a mail to clutter+unsubscr...@o-hand.com