Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Code Block
package models
{
    public class MyModel
    {
        public function MyModel()
        {
        }
        
	 	private var _items:Array = ["One", "Two", "Three", "Four", "Five"];
        [Bindable]
        public function get items():Array
        {
            return _items;
        }
        
        private var _counter:int = 0;
        public function count():void {
            _counter++;
        }
        [Bindable]
        public function get counter():int {
            return _counter;
        }        
    }
}

...

Code Block
package controllers
{
    import models.MyModel;
    
    import org.apache.flex.core.Application;
    import org.apache.flex.core.IDocument;
    import org.apache.flex.events.Event;
    import org.apache.flex.html.TextButton;
    
    public class MyController implements IDocument
    {
        private var app:Application;
        private var model:MyModel;
        private var initialView:Object;
        
        public function MyController(app:Application = null)
        {
        }

		private function viewChangeHandler(event:Event):void
        {
            var app:Application = event.target as Application;
            app.initialView.addEventListener(MyInitialView.BUTTON_CLICKED, buttonClickHandler);
            initialView = app.initialView;
            model = app.model as MyModel;
        }
        
        private function buttonClickHandler(event:Event):void
        {
            model.count();
            TextButton(initialView.myButton).text = "Clicked " + model.counter + " times"; 
        }
        public function setDocument(document:Object, id:String = null):void
        {
            var app:Application = document as Application;
            app.addEventListener("viewChanged", viewChangeHandler);
        }
    }
}


Screenshot:

Image Added

 

Once you have composed your application and initial view, you can build either a Flash SWF or generate JavaScript and an HTML index page.

...