On Apr 2, 2007, at 4:27 PM, Joe Lewis Wilkins wrote:
Graham and everyone else who is interested or should be,
Since I started this thread with what I thought was a fairly naive
question with a pretty obvious conclusion, perhaps I should
summarize the input - if that is possible, what with some of the
quite lengthy monologues.
I believe that Richard and Jim have made the most poignant
arguments both for and against the use of globals; and I was
leaning very sharply in the CP direction until Graham made a very
good point: CPs do tend to involve writing a lot more code, and I
have to learn something that I've not used before; hence probably
subject to some errors in usage on my part - typos and otherwise.
No one has mentioned what may be the most compelling reason to use
custom properties in certain cases--the setProp structure. I used
this for the first time about a year ago (I just had never noticed it
before) and it opened up a whole new world for me. In a nutshell, one
can use a setProp structure, whenever a custom property's value is
set, to do whatever one wants. For instance, I was recently writing
an app in which certain visual and behavioral things needed to change
when a sound file was playing versus stopped. So I created a custom
property isPlaying for the card and did something like this:
setProp isPlaying
if isPlaying then
set the icon of btn "play" to <pause icon>
disable field "dialog"
else
set the icon of btn "play" to <back to the play icon>
enable field "dialog"
end if
pass isPlaying
end isPlaying
Every time I start playing the sound file I also set the isPlaying of
the card to true, then set it to false again when it stops. I've
simplified the example here quite a bit, but this structure makes it
much easier than trying to remember in which handlers you need to
enable/disable things, change icons, etc.
You can also use setProp structures to validate data, to make sure
it's in the property format or type or whatever.
Cheers.
Devin
Devin Asay
Humanities Technology and Research Support Center
Brigham Young University
_______________________________________________
use-revolution mailing list
[email protected]
Please visit this url to subscribe, unsubscribe and manage your subscription
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution