<?xml version="1.0" encoding="utf-8"?>
<!-- http://blog.flexexamples.com/2009/01/30/creating-an-auto-repeating-fxbutton-control-in-flex-gumbo/ -->
<s:Application name="Spark_Button_autoRepeat_test"
        xmlns:fx="http://ns.adobe.com/mxml/2009"
        xmlns:s="library://ns.adobe.com/flex/spark"
        xmlns:mx="library://ns.adobe.com/flex/halo"
        viewSourceURL="srcview/index.html">

    <fx:Script>
        <![CDATA[
            import mx.events.FlexEvent;

            private var clr:Boolean = false;

            private function btn_buttonDown(evt:FlexEvent):void {
                if (clr) {
                    arrList.removeAll();
                    clr = false;
                }
                doAddItem(evt);
            }

            private function btn_click(evt:MouseEvent):void {
                clr = true;
                doAddItem(evt);
            }

            private function doAddItem(evt:Event):void {
                var obj:Object = {};
                obj.type = evt.type;
                obj.currentTarget = evt.currentTarget.name;
                obj.time = new Date().toTimeString();

                arrList.addItem(obj);
                callLater(doScroll);
            }

            private function doScroll():void {
                dataGrid.scrollToIndex(arrList.length);
            }
        ]]>
    </fx:Script>

    <fx:Declarations>
        <s:ArrayList id="arrList" />
    </fx:Declarations>

    <mx:ApplicationControlBar width="100%" cornerRadius="0">
        <mx:Form styleName="plain">
            <mx:FormItem label="autoRepeat:">
                <s:CheckBox id="checkBox"
                        selected="true" />
            </mx:FormItem>
        </mx:Form>
    </mx:ApplicationControlBar>

    <s:VGroup width="320" horizontalCenter="0" verticalCenter="0">
        <s:Button id="btn"
                label="Spark Button"
                autoRepeat="{checkBox.selected}"
                click="btn_click(event);"
                buttonDown="btn_buttonDown(event);" />

        <mx:DataGrid id="dataGrid"
                dataProvider="{arrList}"
                verticalScrollPolicy="on"
                width="100%"
                rowCount="8" />
    </s:VGroup>

</s:Application>