Why no closeField messages sent?

Michael D Mays michael.rr at mdmays.com
Thu Jan 13 07:41:32 CST 2005


I see that now.:) RTM, right?

I was thrown off by the use of "focus"
->
Sent to a field when the focus is being removed from that field and the 
field's content has changed.
<-
and the focus command. In my mind the user selects and types; the 
programer shifts focus. In fact the focus does change when the user 
selects a field. But also the focus can change without any user 
interaction.

In fact a put into the fld can stifle the closeField message. Make a 
card with two flds. In fld 1

  on keyDown theKey
   if theKey is "r" then
    put " rule " after fld 1
    exit keyDown
else
  pass keyDown
end if
end keyDown

In the card's script trap the closeField message

on closeField
   beep
end closeField

Now type 'dogsr<tab>' (where <tab> is the tab key).

No beep even though the user has clicked and typed in the field.

But you can type 'dogsrtheworld<tab>' and get a closeField to fire off.

I understand the compatibility problems with HyperCard and now in turn 
Revolution, but shouldn't there be a fieldTouched and/or fieldDirtied 
message?

Michael

On Jan 12, 2005, at 4:42 PM, Frank D. Engel, Jr. wrote:

> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> Look at the second paragraph under the "Comments" section of Rev's 
> docs on the closeField message.
>
> They explicitly state that the "put" command does *not* trigger a 
> closeField message (at least as of 2.5).
>
> On Jan 12, 2005, at 5:36 PM, Michael D Mays wrote:
>
>> Compatibilty is extended to the documentation. Neither docs state 
>> that the message is sent  only after user interaction.;)
>>
>> Is there a message sent or property changed  when the field is 
>> dirtied?
>>
>> On Jan 12, 2005, at 10:28 AM, J. Landman Gay wrote:
>>
>>> On 1/11/05 5:14 PM, Michael D Mays wrote:
>>>
>>>> If I do this from a handler
>>>>  select char 1 of fld 1
>>>>  select char 2 of fld 2
>>>> an exitField message is sent from fld 1. But I cannot 
>>>> programatically select a fld, modify it, exit it and generate a 
>>>> closeField message.
>>>> What am I doing wrong? Is it possible? If not, why not?:)
>>>
>>> CloseField is only sent after user editing, not after changes from a 
>>> script. It may be due to historical reasons, to maintain 
>>> compatibility with HyperCard which does the same thing.
>>>
>>> -- 
>>> Jacqueline Landman Gay         |     jacque at hyperactivesw.com
>>> HyperActive Software           |     http://www.hyperactivesw.com
>>> _______________________________________________
>>> use-revolution mailing list
>>> use-revolution at lists.runrev.com
>>> http://lists.runrev.com/mailman/listinfo/use-revolution
>>>
>>
>> _______________________________________________
>> use-revolution mailing list
>> use-revolution at lists.runrev.com
>> http://lists.runrev.com/mailman/listinfo/use-revolution
>>
>>
> - -----------------------------------------------------------
> Frank D. Engel, Jr.  <fde101 at fjrhome.net>
>
> $ ln -s /usr/share/kjvbible /usr/manual
> $ true | cat /usr/manual | grep "John 3:16"
> John 3:16 For God so loved the world, that he gave his only begotten 
> Son, that whosoever believeth in him should not perish, but have 
> everlasting life.
> $
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1.2.4 (Darwin)
>
> iD8DBQFB5afS7aqtWrR9cZoRAhDWAJ0RhyEA38Khe4a0JpQbhOAHIbMvYQCdEg7K
> 9hKdYvQpE5kYFfSmFJk0QCs=
> =VOVp
> -----END PGP SIGNATURE-----
>
>
>
> ___________________________________________________________
> $0 Web Hosting with up to 120MB web space, 1000 MB Transfer
> 10 Personalized POP and Web E-mail Accounts, and much more.
> Signup at www.doteasy.com
>
> _______________________________________________
> use-revolution mailing list
> use-revolution at lists.runrev.com
> http://lists.runrev.com/mailman/listinfo/use-revolution
>



More information about the use-livecode mailing list