package 
{
    import flash.display.Sprite;
    
    import org.tinytlf.components.TextField;
    import org.tinytlf.examples.*;
    import org.tinytlf.examples.smileys.*;
    import org.tinytlf.layout.*;
    import org.tinytlf.layout.factories.ITextBlockFactory;
    
    [SWF("800", height="450")]
    public class Smileys extends Sprite
    {
        [Embed("assets/fonts/Archer-Medium-Pro.otf", fontFamily="ArcherMedium")]
        private var archer:Class;
        
        public function Smileys()
        {
            var tf:TextField = new TextField();
            
//            tf.columnCount = 1;
            tf.width = 800;
            tf.height = 1000;
            tf.y = 50;
            tf.style = 
                "*{" +
                "fontName:ArcherMedium;" +
                "fontSize: 20;" +
                "color:0x000000;" +
                "textAlign: justify;" +
//                "leading:10" +
                "}";
            
            var factory:ITextBlockFactory = tf.engine.layout.textBlockFactory;
            factory.mapElementFactory('smiley', SmileyElementFactory);
            
            tf.layoutConstraintFactory = new SmileyConstraintFactory();
            
            tf.text = '<body><p>Lorem ipsum dolor sit amet, consectetur <smiley face=":)"/> ' +
                'elit. Cras ultrices tortor <smiley face=":*"/> erat adipiscing pulvinar. ' +
                'Nulla et nisl quam, <smiley face=":|"/> blandit ipsum. Pellentesque ac dolor ' +
                '<smiley face=";)"/> turpis sollicitudin cursus non non neque. Cras tristique ' +
                'ullamcorper neque at vehicula. Nunc tincidunt lectus sed elit ' +
                'aliquet ac <smiley face=":D"/> arcu congue. Morbi augue lacus, porttitor sed ' +
                'semper eget, elementum nec lacus. Fusce dictum lacus sed justo ' +
                'dictum lacinia. <smiley face=":P"/> nec orci ac quam feugiat venenatis vel et ' +
                'libero. Vestibulum ante ipsum primis in faucibus orci luctus et ' +
                'ultrices posuere <smiley face=";("/> Curae; Donec sit amet elit eu ipsum ' +
                'consectetur pretium vitae in nibh. Nullam tincidunt sapien id ' +
                'libero porta ultrices. <smiley face=":("/> varius sodales tortor vitae vehicula. ' +
                'Quisque ut erat a sem vehicula luctus. Vestibulum ornare quam nec ' +
                'tellus aliquam semper. <smiley face=":$"/> consequat arcu auctor eros mattis sed ' +
                'imperdiet magna pharetra. Integer blandit blandit magna ac facilisis. ' +
                'Praesent id leo <smiley face=":o"/>. Class aptent taciti sociosqu ad litora torquent ' +
                'per conubia nostra, per inceptos himenaeos. Nulla cursus sapien eu nunc ' +
                'convallis in <smiley face="o.O"/> magna aliquam.</p></body>';
            
//            tf.style = '*{textAlign: justify;}';
            
            addChild(tf);
        }
    }
}