[clutter] Clutter-Sharp questions: Alpha and threading
Hi, I am currently trying to fix the Clutter-Sharp examples (making them work again with the current bindings), but I ran into a few problems. - The first thing is that Alpha functions are not implemented in the bindings (http://bugzilla.openedhand.com/show_bug.cgi?id=1803). - Furthermore, when using an alpha function (like in test-behave.cs) - a stack overflow occurs (http://bugzilla.openedhand.com/show_bug.cgi?id=1802). I would like to help fixing that - is there somebody working on clutter-sharp right now? Besides, I am a bit confused regarding threading. I would like to extent the test-threads.cs example. The idea is that the main clutter routines are placed outside the main routine (because I want to have some network communications in the background), but all I get is a window outline, with a 'screenshot' of my desktop inside. Any ideas on how to solve that? Is that a bug, or is my approach wrong? Thanks! Groeten, Danny Haak -- Product Developer RFID Nedap Retail Support - www.nedaprs.com -- To unsubscribe send a mail to clutter+unsubscr...@o-hand.com
Re: [clutter] Clutter-Sharp questions: Alpha and threading
hi; I'm referring to the C API, but I think the C# API will probably look similar. On Wed, 2009-09-09 at 13:03 +0200, Danny Haak wrote: I am currently trying to fix the Clutter-Sharp examples (making them work again with the current bindings), but I ran into a few problems. - The first thing is that Alpha functions are not implemented in the bindings (http://bugzilla.openedhand.com/show_bug.cgi?id=1803). ClutterAlpha's constructor does not take a function any more: it uses easing modes (an enumeration value). also, Clutter does not provide public Alpha functions any more: it provides the ClutterAnimationMode enumeration: http://www.clutter-project.org/docs/clutter/stable/clutter-Implicit-Animations.html#ClutterAnimationMode since I receive the Bugzilla email for each Clutter bug, I'd like to point out something that you did and that is always a pet peeve of mine: do *not* set the target milestone -- it's not something for you to set: it's for the maintainers and/or QA. the same applies to severity and priority. ciao, Emmanuele. -- Emmanuele Bassi, Senior Engineer| emmanuele.ba...@intel.com Intel Open Source Technology Center | http://oss.intel.com -- To unsubscribe send a mail to clutter+unsubscr...@o-hand.com
Re: [clutter] Clutter-Sharp questions: Alpha and threading
Hi Emmanuele, On Wed, 2009-09-09 at 12:14 +0100, Emmanuele Bassi wrote: I'm referring to the C API, but I think the C# API will probably look similar. Yes, true. But, the main problem is that the documentation and examples are not quite on par with the code sometimes, which is confusing. Which is also the main reason for me to try to update the examples for clutter-sharp - to make it easier for people to start :). ClutterAlpha's constructor does not take a function any more: it uses easing modes (an enumeration value). Clear now. The main problem is that the Alpha function accepts an ulong, and not the enum; which is confusing. I will try to fix that (not that experience in invoking c libraries in C#) and make a patch. Another issue arose: while BehaviourOpacity is working, BehaviourPath is not: GLib-GObject-WARNING **: IA__g_object_new_valist: invalid unclassed object pointer for value type `ClutterPath'. I will look into that as well. since I receive the Bugzilla email for each Clutter bug, I'd like to point out something that you did and that is always a pet peeve of mine: do *not* set the target milestone -- it's not something for you to set: it's for the maintainers and/or QA. the same applies to severity and priority. Excuse me, not my intention - will refrain from it next time. Maybe remove that field in the bug-enter form anyway? Groeten, Danny Haak -- Product Developer RFID Nedap Retail Support - www.nedaprs.com -- To unsubscribe send a mail to clutter+unsubscr...@o-hand.com
Re: [clutter] Clutter-Sharp questions: Alpha and threading
On Wed, 2009-09-09 at 15:16 +0200, Danny Haak wrote: ClutterAlpha's constructor does not take a function any more: it uses easing modes (an enumeration value). Clear now. The main problem is that the Alpha function accepts an ulong, and not the enum; which is confusing. I will try to fix that (not that experience in invoking c libraries in C#) and make a patch. Note you can also register your own global alpha functions. -- Danielle Madeley Collabora Ltd., Melbourne, Australia http://www.collabora.co.uk/ -- To unsubscribe send a mail to clutter+unsubscr...@o-hand.com
Re: [clutter] Clutter-Sharp questions: Alpha and threading
On Wed, 2009-09-09 at 15:16 +0200, Danny Haak wrote: On Wed, 2009-09-09 at 12:14 +0100, Emmanuele Bassi wrote: I'm referring to the C API, but I think the C# API will probably look similar. Yes, true. But, the main problem is that the documentation and examples are not quite on par with the code sometimes, which is confusing. Which is also the main reason for me to try to update the examples for clutter-sharp - to make it easier for people to start :). yeah, I guess the example code needs to be ported to the 1.0 API. ClutterAlpha's constructor does not take a function any more: it uses easing modes (an enumeration value). Clear now. The main problem is that the Alpha function accepts an ulong, and not the enum; which is confusing. I will try to fix that (not that experience in invoking c libraries in C#) and make a patch. Another issue arose: while BehaviourOpacity is working, BehaviourPath is not: GLib-GObject-WARNING **: IA__g_object_new_valist: invalid unclassed object pointer for value type `ClutterPath'. I will look into that as well. ClutterBehaviourPath uses the ClutterPath object, which encapsulates all the functionality that concerned describing paths from BehaviourPath and BehaviourBspline. you'll need to create a new Path object and pass it to the BehaviourPath behaviour -- something like: # define a path as a set of nodes my $behaviour = Clutter::BehaviourPath-new( Clutter::Alpha-new($timeline, 'ease-out-cubic'), Clutter::Path-new( [ 'move-to', [ [ 100, 100 ] ] ], [ 'line-to', [ [ 200, 100 ] ] ], [ 'line-to', [ [ 200, 200 ] ] ], [ 'curve-to', [ [ 100, 200 ], [ 100, 200 ], [ 100, 100 ] ] ], ), ); or # define a path using a SVG-like description my $behaviour = Clutter::BehaviourPath-new( Clutter::Alpha-new($timeline, 'ease-out-cubic'), Clutter::Path-new(M 100,100 L 200,100 L 200,200 C 100,200 100,200 100,100), ); in Perl. I actually need to add this example to the migration guide. :-) since I receive the Bugzilla email for each Clutter bug, I'd like to point out something that you did and that is always a pet peeve of mine: do *not* set the target milestone -- it's not something for you to set: it's for the maintainers and/or QA. the same applies to severity and priority. Excuse me, not my intention - will refrain from it next time. Maybe remove that field in the bug-enter form anyway? it has its uses, if a maintainer and/or a QA engineer files a bug. the bug filing form, though, needs some love anyway, maybe taking some of the lessons learned from the GNOME Bugzilla. ciao, Emmanuele. -- Emmanuele Bassi, Senior Engineer| emmanuele.ba...@intel.com Intel Open Source Technology Center | http://oss.intel.com -- To unsubscribe send a mail to clutter+unsubscr...@o-hand.com
Re: [clutter] Clutter-Sharp questions: Alpha and threading
On Wed, 2009-09-09 at 14:30 +0100, Emmanuele Bassi wrote: ClutterBehaviourPath uses the ClutterPath object, which encapsulates all the functionality that concerned describing paths from BehaviourPath and BehaviourBspline. you'll need to create a new Path object and pass it to the BehaviourPath behaviour -- something like: ... Ah, nice :). Really easy to use! The constructor for ClutterPath in clutter-sharp only accepts knot[] as an input, not a Path - while the Path object is in there already. Seems like a mismatch in the wrapper code. But, still, if the 'knot' input is an option according to the documentation, that's not working either - but should do. By the way, I would like to help updating the examples, only my knowledge of wrapper classes is quite limited - therefore I cannot do much in that code without a bit of help. Groeten, Danny Haak -- Product Developer RFID Nedap Retail Support - www.nedaprs.com -- To unsubscribe send a mail to clutter+unsubscr...@o-hand.com