Hi Sarah: Depending on the arrangement and characteristics of your 400 controls, you could take the approach of putting mouse detection in an image above your buttons instead of in a card script below: Create a one-bit mask...with areas in the image that register with buttons being made opaque, other areas being transparent. In Rev set the blendlevel of the image to 100. The entire image will be visually transparent, but mouse clicks will respect *original* opacity/transparency. Therefore in the script of the image you could have something like this:
on mouseDown --detectable in opaque areas only put BtnBelowAtMouseDown() into gBtnDown set the hilite of btn gBtnDown to true end mouseDown on mouseRelease set the hilite of btn gBtnDown to false end mouseRelease on mouseUp set the hilite of btn gBtnDown to false send mouseUp to btn gBtnDown -- if needed end mouseUp on mouseMove put BtnBelowAtHover() into tBtnHovered ... end mouseMove The BtnBelowAtMouseDown and BtnBelowAtHover algorithms depend a lot on card design. I have done something similar, but with 4 underlying controls instead of 400 so I am not sure about performance and the efficiency of those two algorithms in your particular case. A compelling feature of this approach is that the creation of the mask itself could be scriptable...using snapshot, button rects, alphadata, etc...though I have never done it. Mark _______________________________________________ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution