On Wednesday, February 5, 2003, at 05:42  pm, Jim Wilson wrote:

Currently, the property tree knows about changes only when someone
changes a value through it; when a property is tied to C++ code, the
valueChanged() method is never fired.

Sounds like a better technique would be to just reread the "current
directory's" values once every 5 frames or some such thing. It'd be pretty
quick. Actually, every frame wouldn't be bad.
I'm pretty adamant that's the wrong way to do this, we're reduced to polling. Being anal for a second, SGPropertyNode is an interface, and therefore is supposed to make some guarantees about it's behavior. One of these is that changeListeners are correctly invoked. Sure the property picker dialog can do polling, but that's wasteful for infrequently changing values. If there's a performance issues with the core values needing to notify listeners, that's something we need to address too.

BTW, I assumed listeners worked, because I figured several things, such as updating panel state, the telnet property browser and so on used the changeListeners: are they actually all using polling?!

If so, seems like we're kind of shooting ourselves in the foot .... or am I just being super-anal and should just poll them as Jim Wilson suggests?

H&H
James
--
We are all in the gutter, but some of us are looking at the stars.


_______________________________________________
Flightgear-devel mailing list
[EMAIL PROTECTED]
http://mail.flightgear.org/mailman/listinfo/flightgear-devel

Reply via email to