[comp.sys.mac.hypercard] Buttons in Scrolling Fields

nerb@gt-cmmsr.GATECH.EDU (Brennan Robison) (03/24/88)

I would like to be able to click on an item in a scrolling window to
retrieve specific information on that item.  I attempted this by placing
buttons on top of each item in the window.  This didn't work, however,
because when I scroll, the text moves while the button stays in place.

Is there any way to insert the button INTO the scrolling field?



-- 
Brennan Robison

UUCP:	nerb@gt-cmmsr.UUCP
        ...!{akgua,allegra,hplabs,ihnp4,seismo,ulysses}!gatech!gt-cmmsr!nerb
INTERNET:	nerb@cmmsr.gatech.edu

baum@apple.UUCP (Allen J. Baum) (03/25/88)

--------
[]
>In article <31927@gt-cmmsr.GATECH.EDU> nerb@gt-cmmsr.UUCP (Brennan Robison) writes:
>I would like to be able to click on an item in a scrolling window to
>retrieve specific information on that item.  I attempted this by placing
>buttons on top of each item in the window.  This didn't work, however,
>because when I scroll, the text moves while the button stays in place.
>
>Is there any way to insert the button INTO the scrolling field?

The way I did something like this is to lock the field. When you click
on the field, a mousedown/up script can be run that uses the clickloc,
the field's rect, and the field's scroll to calculate the line in the field.
Alternatively, you can unlock the field, click on the leftedge,yloc and
shiftclick on rightedge,yloc to select the entire line, and then use the
selection to do further processing (don't forget to relock the field).


--
{decwrl,hplabs,ihnp4}!nsc!apple!baum		(408)973-3385

john@felix.UUCP (John Gilbert) (03/31/88)

In article <7494@apple.UUCP> baum@apple.UUCP (Allen Baum) writes:
>>In article <31927@gt-cmmsr.GATECH.EDU> nerb@gt-cmmsr.UUCP (Brennan Robison) writes:
>>Is there any way to insert the button INTO the scrolling field?
>
>The way I did something like this is to lock the field. When you click
>on the field, a mousedown/up script can be run that uses the clickloc,
>the field's rect, and the field's scroll to calculate the line in the field.
>Alternatively, you can unlock the field, click on the leftedge,yloc and
>shiftclick on rightedge,yloc to select the entire line, and then use the
>selection to do further processing (don't forget to relock the field).

There has been quite a discussion about this, and some time back someone posted
a script reported to do this, which I don't have.  It seems to me it is a bit
more complicated than what is mentioned above because the number of lines
in the field does not necessarily correspond to the number of displayed lines
if lines auto-wrap (no 'return' at the end of the display line).  You would
actually need to compute the width of a line relative to the width of the field
and count the number of display lines the field line occupies.  Is this right?
This is the part I am uncertain of how to do.

Could someone E-Mail me the previously posted script if it does this.

Thanks,


John G.

--
John Gilbert
!trwrb!felix!john