David Bovill wrote:
>
> I have a field in a stack and a substack that I open as a palette. I want to
> know what field has the selection point inside it when I click on the
> palette, and having problems help appreciated:
>
> on mouseUp
> put the focusedObject & return & the selectedChunk
> end mouseUp
>
> This is the script in the button in the palette. And it works fine if there
> is more than 1 character selected. If the insertion point is within the
> field but no character selected then both lines are empty
I just finished setting up the same kind of palette, and had a similar
experience. What I think is happening is that when you click on the
palette to bring it to the front, the focus is shifted to the palette --
and the old focus from the original stack is lost.
To compensate, I had to do an ugly work-around. Maybe someone else knows
a better approach, but this seems to work:
on openField
global gActiveSel
put the selectedChunk into gActiveSel
end openField
on enterInField -- we use Enter to deselect; you may not want this
global gActiveSel
select empty
put "" into gActiveSel
end enterInField
on selectionChanged
global gActiveSel
put the selectedChunk into gActiveSel
end selectionChanged
on rawKeyUp which
global gActiveSel
put the selectedChunk into gActiveSel
pass rawKeyUp
end rawKeyUp
This catches most of the field messages; you may want to add more, such
as a "closeField" handler to empty the global. When the palette needs to
interact with the stack, it just reads the global variable to get the
user's last selection.
--
Jacqueline Landman Gay | [EMAIL PROTECTED]
HyperActive Software | http://www.hyperactivesw.com
Archives: http://www.mail-archive.com/[email protected]/
Info: http://www.xworlds.com/metacard/mailinglist.htm
Please send bug reports to <[EMAIL PROTECTED]>, not this list.