(Sorry for top posting - darn pocket outlook) I forgot to say thhat I need cancellable timers. (In case the user lets go of the button before the timer goes off).
Sam -----Original Message----- From: JürgBilleter <[EMAIL PROTECTED]> Sent: 17 June 2008 21:49 To: Sam Liddicott <[EMAIL PROTECTED]> Cc: [email protected] Subject: Re: [Vala] timers with callbacks On Tue, 2008-06-17 at 19:59 +0100, Sam Liddicott wrote: > I've grep'd all my vapi files and can't find any timer classes that > provide callbacks, can anyone help? > I've seen the example at: http://live.gnome.org/Vala/Tutorial > but O'm just running Gtk.main, not making a loop, so I don't have > anything to time.attach to. Gtk.main uses a mainloop, so you can use something as follows: Timeout.add (interval, callback); > I've also modified the vala glade demo to make connect_signals more > reasonable: > > if (!module.symbol ("glade_phone_ui_" + handler_name, out sym) > && !module.symbol (handler_name, out sym)) { > > Of course "glade_phone_ui" is my namespace hierachy, but is there a > magical preprocessor token to pull out the current namespace hierachy > prefix to save me hard wiring it? That would be a reasonable change to > the glade example. No, that's not possible at the moment. It would be nice if we find a convenient solution for this - I'd focus on GtkBuilder instead of Glade, though. > Finally, (cos I'm an old Delphi nut) I want to extend the > connect_signals stuff to connect more than signals, but also widget > names, so I'll be pulling back all widget names, and then looking for > exported symbols in a similar manner; however I guess I should be doing > some RTTI stuff to make sure the symbol I'm about to populate is of the > right types. Any clues?? I'll do it typeless for now. > > > I'm annoyed that this C syntax isn't supported: > if (this.module = Module.open (null, ModuleFlags.BIND_LAZY)) { That's by design, if expects a boolean condition and this.module is certainly not a boolean. > However this doesn't work either: > if ((this.module = Module.open (null, > ModuleFlags.BIND_LAZY))!=NULL) { > > I've not managed to find the equivalent for NULL checking yet. (This was > to save re-opening module for every attached signal). `NULL' in C is `null' in Vala Jürg -- Jürg Billeter <[EMAIL PROTECTED]> _______________________________________________ Vala-list mailing list [email protected] http://mail.gnome.org/mailman/listinfo/vala-list
