[clutter] clutter_actor_animate: assertion `duration 0' failed

2010-06-23 Thread Daniel Hughes
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

2010-06-23 Thread Neil Roberts

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

2010-06-23 Thread Daniel Hughes
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.

2010-06-23 Thread Rob Kramer
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.

2010-06-23 Thread Emmanuele Bassi
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

2010-06-23 Thread donn

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)

2010-06-23 Thread Emmanuele Bassi
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