On Sun, Oct 24, 2010 at 10:35:03AM -0500, Ryan May wrote: > On Sat, Oct 23, 2010 at 5:05 PM, David Carmean <d...@halibut.com> wrote:
[snip] > > I've spent a few hours this weekend doing some meta-monkey-patching-- > > using __getattribute__ to decorate the setters on-the-fly to invoke > > callbacks.process(*args) after the changes. I have a few more quick > > hacks to try before I'm ready to decide on a production-ready strategy. > > > > So my question today is: is anyone interested in discussing these > > ideas and how to implement them? > > I'm interested. I was just noticing a need for the signals to simplify > some interactive stuff I was doing. I'm not wild about using the > current incarnation of the CallbackRegistry, since it doesn't allow > you to add signals after you create the object. Also, there are only > global signals, you can't connect to a specific object (unless you > were planning on each object having its own registry?). When I was > considering this yesterday, I was looking at these: > > http://code.activestate.com/recipes/87056/ > http://pydispatcher.sourceforge.net/ > > Also, had you given any thought to using decorators to note methods > that emit a certain signal, or to connect one method to a given > signal? I've gone through the same thought process. I do plan to add a CallbackRegistry.add_signals method; I am giving each instance it's own registry instance (axes.Axes already does this); and I am using decorators. ------------------------------------------------------------------------------ Nokia and AT&T present the 2010 Calling All Innovators-North America contest Create new apps & games for the Nokia N8 for consumers in U.S. and Canada $10 million total in prizes - $4M cash, 500 devices, nearly $6M in marketing Develop with Nokia Qt SDK, Web Runtime, or Java and Publish to Ovi Store http://p.sf.net/sfu/nokia-dev2dev _______________________________________________ Matplotlib-devel mailing list Matplotlib-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-devel