On 05/11/2021 20:18, Roger Guay via use-livecode wrote:
Alex, I did not see that and it is not in my mailbox. Would you please send it
again?
Thanks,
Roger
Here it is again, below.
Or download the sample stack at
https://tweedly.org/downloads/calcbuttons.livecode
- not as pretty as Richmond's, doesn't even have all the digits ...)
Previously I said:
Here's an expanded snippet. The input is in a field called "fInput", the
buttons are all in a group, and handled by the group script (saves
having many tiny almost identical scripts).
The script uses the name of the target - but since I would never, ever
have a control named as a number, the digit buttons use their label
instead.
If the user cannot select a chunk of text then some of this could be
shortened.
on mouseup
if the target = me then
-- click in the background in the group
exit mouseup
end if
local tChunk
focus on fld "fInput"
put the selectedchunk into tChunk
if the label of the target is a number then
put the label of the target into the selectedchunk
exit mouseUp
end if
local tFirst, tLast
put word 2 of tChunk into tFirst
put word 4 of tChunk into tLast
switch the short name of the target
case "go left"
select before char (min(tFirst, tLast)) of fld "fInput"
break
case "go right"
select after char (max(tFirst, tLast)) of fld "fInput"
break
case "Del"
-- remove the selection, or the char *after* the ibeam
if tFirst <= tLast then
put empty into char tFirst to tLast of fld "fInput"
else
put empty into char (tFirst) of fld "fInput"
end if
break
case "BS"
-- remove the selection, or the char *before* the ibeam
if tFirst <= tLast then
put empty into char tFirst to tLast of fld "fInput"
else
put empty into char (tFirst-1) of fld "fInput"
end if
break
-- all the other keys !!
default
end switch
end mouseup
Alex.
_______________________________________________
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode