On Tue, 2009-04-07 at 10:31 -0500, Curtis Olson wrote:
Ctrl-Shift-click on the . entry in the property browser fires all
the listeners of the parent node.
Each property can have multiple listeners tied to it. There are
various types of listeners (read, write) and various modes of
operation.
When a listener's trigger conditions are met, it then executes the
associated nasal code. (Is it possible to also trigger C code?
Probably, but I don't know if that is done or not.)
So to activate this newly added behavior in the property browser,
simply cd to the property node parent, and ctrl-shift click on the .
entry in the children list. Then the parent's changevalue listener
will be fired.
I point this out not to be critical (which might be assumed because my
prior message was somewhat critical) ... this is all *very* useful
functionality. But I want to point out that there are some very
complex interactions between the property systems, these things called
listeners which fire when a property is accessed in any number of
ways, and the nasal code that is triggered as a result. And then this
functionality is leveraged in a variety of subtle ways by the 3d
modeling system, multiplayer system, instrument panels, systems
modeling, etc. We have a large complex network of code snippets that
are executed as a side effect of changing (or even viewing) values in
the property system.
Not every aspect of our property system is simple and self
documenting ... again, not to be critical, complex tasks often require
complex solutions, but I say this to balance out the occasional claim
that the property system is entirely self documenting ... yes at some
levels, but not on many other levels.
Curt.
Curt,
This is exactly the point here. The underpinnings of the property tree
are complex. And when the gentleman who has been responsible for
building and maintaining that complexity stands up and cries out:
STOP, go back! This way lies monsters
It is not wise to shout him down with damn the torpedoes full speed
ahead.
Thanks,
Ron
--
This SF.net email is sponsored by:
High Quality Requirements in a Collaborative Environment.
Download a free trial of Rational Requirements Composer Now!
http://p.sf.net/sfu/www-ibm-com
___
Flightgear-devel mailing list
Flightgear-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/flightgear-devel