On Wed, 2011-06-29 at 12:08 +0200, Quikee wrote: > Hi, > > Uh, this is a quite old mail you dig up. :) > Hmm. You are right. For some reason it came near top of the ML in evolution. And I've mixed a bit with "Gee LinkedList Problem : Memory allocation fails when list size > 1000000" (they were placed next to each other) > On Wed, Jun 15, 2011 at 03:32, Maciej Marcin Piechotka > <uzytkownik2 gmail com> wrote: > > There was well-motivated bug report that asked about signals being added > > (to allow use GObject goodies IIRC). That would cover also this case at > > least to some extend. > > > > I cannot find it right now - I think it might be deleted during last > > bugzilla crash. > > > > I haven't implemented it yet which seems ironic as it is one of few > > features not blocked by lack of vala features (currently - mostly > > unreviewed/unapplied patches - I'm trying to regularly nag to get the > > reviewed) > > The problem with signals is that you need GLib mainloop for them to > work IMHO you don't always have so an alternative way that allows you > to do something in a certain event should also be provided (for > example implemented via callbacks). Requirement of GLib mainloop is not a problem for me. Vala GObject and libgee AFAIK targets the 'normal desktop' and gtk+ application. > Another problem I guess is also that in a lot of cases you do a lot of > additions or changes in a short period of time. I guess in this case I > just don't want any signals to be triggered as it might severely slow > down the sistem (signal handling is not cheap). > Hmm. Currently I think signal is the most idiomatic way of handling them. Maybe there should be something like: [Sync] public signal void my_signal(...); The GObject signals have however benefit of integration gtk. The text from the bug report (I BCC'ed the author): """In an attempt to make gee more useful as a model in MVC patterns it would need to have a number of signals added to the interfaces. Of the top of my head at least: Collection: "added" "removed" - both with a Iterator<G> parameter. List: "sorted" map should also take added/removed however IMO it would be better done through http://live.gnome.org/Libgee/NewMapInterfaceProposal""" (the integration with gtk+ was with e-mail but I'm not sure). Regards
Attachment:
signature.asc
Description: This is a digitally signed message part