<?xml version="1.0" encoding="utf-8"?>
<!-- http://blog.flexexamples.com/2007/08/08/making-auto-repeat-button-controls-using-the-autorepeat-property-and-buttondown-event/ -->
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
		layout="vertical" 
		verticalAlign="middle" 
		backgroundColor="white" viewSourceURL="srcview/index.html">

    <mx:Script>
        <![CDATA[
            import mx.core.UIComponent;

            private function moveLeft(target:UIComponent):void {
            	var t1:int = target.x - 10;
            	var t2:int = 0;
                target.x = Math.max(t1, t2);
            }

            private function moveRight(target:UIComponent):void {
            	var t1:int = target.x + 10;
            	var t2:int = Application.application.width - target.width;
                target.x = Math.min(t1, t2);
            }
        ]]>
    </mx:Script>

    <mx:Box id="box" width="100" height="100" backgroundColor="red" />

    <mx:HBox>
        <mx:Button id="leftButton"
        		label="left" 
        		autoRepeat="true" 
        		repeatDelay="{button_repeatDelay.value}"
        		repeatInterval="{button_repeatInterval.value}" 
        		buttonDown="moveLeft(box)" />

        <mx:Button id="rightButton"
        		label="right" 
        		autoRepeat="true" 
        		repeatDelay="{button_repeatDelay.value}"
        		repeatInterval="{button_repeatInterval.value}" 
        		buttonDown="moveRight(box)" />
    </mx:HBox>

	<mx:Form>
		<mx:FormItem label="repeatDelay ({button_repeatDelay.value}):">
			<mx:HSlider id="button_repeatDelay"
					minimum="50" 
					maximum="950"
					value="100"
					snapInterval="50" 
					tickInterval="100" 
					dataTipPrecision="0" />
		</mx:FormItem>
		<mx:FormItem label="repeatInterval ({button_repeatInterval.value}):">
			<mx:HSlider id="button_repeatInterval"
					minimum="10" 
					maximum="910" 
					value="10"
					snapInterval="10" 
					tickInterval="100" 
					dataTipPrecision="0" />
		</mx:FormItem>
	</mx:Form>

</mx:Application>

