Method question

Phil Davis revdev at pdslabs.net
Tue Nov 9 14:27:50 EST 2010


Hi Glen,

See if this works:


-- card script --

local h1, h2, v1, v2


on mouseDown
    put the clickH into h1
    put the clickV into v1
end mouseDown


on mouseUp
    put the mouseH into h2
    put the mouseV into v2
    put grcDragRegion()
end mouseUp


function grcDragRegion
    -- define mouse drag rect
    put min(h1,h2) into tMouseLeft
    put max(h1,h2) into tMouseRight
    put min(v1,v2) into tMouseTop
    put max(v1,v2) into tMouseBottom

    -- define overlap of mouse drag rect & grc rect
    put max(tMouseLeft, the left of grc 1) into item 1 of tOverlapRect
    put max(tMouseTop, the top of grc 1) into item 2 of tOverlapRect
    put min(tMouseRight, the right of grc 1) into item 3 of tOverlapRect
    put min(tMouseBottom, the bottom of grc 1) into item 4 of tOverlapRect

    -- return it
    return tOverlapRect
end grcDragRegion

Phil Davis


On 11/9/10 10:48 AM, Glen Bojsza wrote:
> I have a problem which I am not certain which method is valid or should be
> used (with Rev / Livecode there are sometimes too many ways of achieving a
> goal).
>
> I have a graphic on a card left 62 right 462.
>
> My objective is to allow a user to left click and drag across the graphic as
> if selecting a section of it.
>
> I need start left,top,right,bottom and end left,top,right,bottom.
>
> The only interest is knowing the start of the drag when inside the graphic
> and the end of the drag inside the graphic... with the following caveats.
>
>
>     - The user may start the drag either outside the graphic and then
>     continue the drag into the graphic (which is the start point) or start the
>     drag inside the graphic which would be the start point.
>     - The user may release the mouse button inside the graphic which
>     indicates the stop point or release the mouse button outside the graphic
>     where the stop point is at the point of the mouse leaving the graphic.
>
>
> This seems like it should be simple but I am getting tied down but trying to
> over complicate it?
>
> This is for Windows and Linux .
>
> Any elegant or simple solutions out there?
> _______________________________________________
> use-revolution mailing list
> use-revolution at lists.runrev.com
> Please visit this url to subscribe, unsubscribe and manage your subscription preferences:
> http://lists.runrev.com/mailman/listinfo/use-revolution
>

-- 
Phil Davis

PDS Labs
Professional Software Development
http://pdslabs.net




More information about the use-livecode mailing list