Detect scroll activity (when LC is not frontmost)

J. Landman Gay jacque at hyperactivesw.com
Fri Dec 23 17:28:59 EST 2016


It doesn't seem logical to expect a "doScrollUpStuff" handler to also 
manage all other keystrokes. One would expect the original rawKeyDown 
handler to manage non-scroll keys by passing them to the engine.

If the intent is to block all keys except those used for scrolling, then 
Craig's way would work. The method chosen depends on where the handler 
resides; other keys may not be applicable in a field script where the 
field is locked. If the handler is in a card or stack script, then 
passing other keystrokes is usually necessary.


On 12/23/16 3:47 PM, hh wrote:
> What you say is logically totally wrong.
> "DoScrollUpStuff" may of course easily be written such that Craig's
> script does the same as your script. And even more, for example
> reader's exercises :-))
>
>> Quentin L. wrote:
>> sez dunbarx:
>>> The "rawkeyDown" message may be trapped as follows:
>>>
>>> on rawkeydown tkey
>>>    if  tkey = 65308 then doScrollDownStuff
>>>    else doScrollUpStuff
>>> end rawkeydown
>> Hold it. That code, as written, will trap *A*L*L* rawKeyDown
>> events, and silently kill everything that's *not* a scrollwheel-down
>> event. Which, in turn, means that text input is toast, among other
>> probably-unwanted side-effects. Try something like this instead:
>>
>> on rawKeyDown DerKey
>>   switch DerKey
>>     case 65308
>>       DoScrollDownStuff
>>       break
>>     case 65309
>>       DoScrollUpStuff
>>       break
>>     default
>>      pass rawKeyDown
>>   end switch
>> end rawKeyDown
>>
>> Note that with the switch structure I've used here, there are a
>> number of perhaps-useful tricks you can pull… but said tricks are
>> strictly outside the scope of the original "how do I detect
>> scrollwheel activity?" problem, so I will leave said tricks as
>> exercises for the reader.
>
> _______________________________________________
> use-livecode mailing list
> use-livecode at lists.runrev.com
> Please visit this url to subscribe, unsubscribe and manage your subscription preferences:
> http://lists.runrev.com/mailman/listinfo/use-livecode
>


-- 
Jacqueline Landman Gay         |     jacque at hyperactivesw.com
HyperActive Software           |     http://www.hyperactivesw.com





More information about the use-livecode mailing list