You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@royale.apache.org by al...@apache.org on 2018/05/23 06:30:28 UTC

[royale-asjs] branch feature/MXRoyale updated: Delete TextBase.as from Invalid path

This is an automated email from the ASF dual-hosted git repository.

alinakazi pushed a commit to branch feature/MXRoyale
in repository https://gitbox.apache.org/repos/asf/royale-asjs.git


The following commit(s) were added to refs/heads/feature/MXRoyale by this push:
     new cae5aea  Delete TextBase.as from Invalid path
cae5aea is described below

commit cae5aeae6f11bc0615d6fd23b00a74cc050dcf76
Author: alinakazi <AL...@GMAIL.COM>
AuthorDate: Tue May 22 23:30:26 2018 -0700

    Delete TextBase.as from Invalid path
---
 .../src/main/royale/spark/components/TextBase.as   | 1108 --------------------
 1 file changed, 1108 deletions(-)

diff --git a/frameworks/projects/SparkRoyale/src/main/royale/spark/components/TextBase.as b/frameworks/projects/SparkRoyale/src/main/royale/spark/components/TextBase.as
deleted file mode 100644
index 6182f57..0000000
--- a/frameworks/projects/SparkRoyale/src/main/royale/spark/components/TextBase.as
+++ /dev/null
@@ -1,1108 +0,0 @@
-////////////////////////////////////////////////////////////////////////////////
-//
-//  Licensed to the Apache Software Foundation (ASF) under one or more
-//  contributor license agreements.  See the NOTICE file distributed with
-//  this work for additional information regarding copyright ownership.
-//  The ASF licenses this file to You under the Apache License, Version 2.0
-//  (the "License"); you may not use this file except in compliance with
-//  the License.  You may obtain a copy of the License at
-//
-//      http://www.apache.org/licenses/LICENSE-2.0
-//
-//  Unless required by applicable law or agreed to in writing, software
-//  distributed under the License is distributed on an "AS IS" BASIS,
-//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-//  See the License for the specific language governing permissions and
-//  limitations under the License.
-//
-////////////////////////////////////////////////////////////////////////////////
-
-package spark.components.supportClasses
-{
-
-/* import flash.display.DisplayObject;
-import flash.display.Graphics;
-import flash.display.Shape;
-import flash.events.Event;
-import flash.geom.Rectangle;
-import flash.text.engine.FontLookup;
-import flash.text.engine.TextLine;
-import flash.text.engine.TextLineValidity;
-
-import mx.core.IFlexModuleFactory;
-
-import mx.resources.IResourceManager;
-import mx.resources.ResourceManager;
-
-import spark.core.IDisplayText;
-import spark.utils.TextUtil;
-
-import flashx.textLayout.compose.TextLineRecycler; */
-import org.apache.royale.events.Event;
-import mx.core.UIComponent;
-import mx.core.mx_internal;
-import mx.events.FlexEvent;
-import org.apache.royale.svg.GraphicShape;
-use namespace mx_internal;
-
-//--------------------------------------
-//  Styles
-//--------------------------------------
-
-/**
- *  The alpha level of the color defined by
- *  the <code>backgroundColor</code> style.
- *  Valid values range from 0.0 to 1.0.
- * 
- *  @default 1.0
- *
- *  @langversion 3.0
- *  @playerversion Flash 10
- *  @playerversion AIR 1.5
- *  @productversion Royale 0.9.4
- */
-//[Style(name="backgroundAlpha", type="Number", inherit="no", minValue="0.0", maxValue="1.0")]
-
-/**
- *  The color of the background of the entire
- *  bounding rectangle of this component.
- *  If this style is <code>undefined</code>,
- *  no background is drawn.
- *  Otherwise, this RGB color is drawn with an alpha level
- *  determined by the <code>backgroundAlpha</code> style.
- * 
- *  @default undefined
- *
- *  @langversion 3.0
- *  @playerversion Flash 10
- *  @playerversion AIR 1.5
- *  @productversion Royale 0.9.4
- */
-//[Style(name="backgroundColor", type="uint", format="Color", inherit="no")]
-
- //--------------------------------------------------------------------------
- // Other metadata for accessibility API
- //-------------------------------------------------------------------------
-//[AccessibilityClass(implementation="spark.accessibility.TextBaseAccImpl")]  
-
-/**
- *  The base class for Spark text controls such as Label and RichText
- *  which display text using CSS styles for the default format.
- *
- *  <p>In addition to adding a <code>text</code> property,
- *  this class also adds the <code>maxDisplayedLines</code>
- *  and <code>isTruncated</code> properties to support truncation.</p>
- *
- *  @langversion 3.0
- *  @playerversion Flash 10
- *  @playerversion AIR 1.5
- *  @productversion Royale 0.9.4
- *  @royalesuppresspublicvarwarning
-*/
-
-public class TextBase extends UIComponent 
-{ //implements IDisplayText
-
-  //  include "../../core/Version.as";
-
-    //--------------------------------------------------------------------------
-    //
-    //  Class variables
-    //
-    //--------------------------------------------------------------------------
-
-    /**
-     *  @private
-     *  Most resources are fetched on the fly from the ResourceManager,
-     *  so they automatically get the right resource when the locale changes.
-     *  But since truncation can happen frequently,
-     *  this class caches this resource value in this variable
-     *  and updates it when the locale changes.
-     */ 
-   // mx_internal static var truncationIndicatorResource:String;
-
-    /**
-     *  @private
-     *  Mixins for accessibility
-     */
-   // mx_internal static var createAccessibilityImplementation:Function;		
-
-    /**
-     *  @private
-     *  Accessibility initialization function
-     */
-   
-   /*  override protected function initializeAccessibility():void
-    {
-      if (TextBase.createAccessibilityImplementation != null)
-        TextBase.createAccessibilityImplementation(this);
-    } */
-
-    //--------------------------------------------------------------------------
-    //
-    //  Constructor
-    //
-    //--------------------------------------------------------------------------
-
-    /**
-     *  Constructor. 
-     *  
-     *  @langversion 3.0
-     *  @playerversion Flash 10
-     *  @playerversion AIR 1.5
-     *  @productversion Royale 0.9.4
-     */
-    public function TextBase()
-    {
-        super();
-        
-        // set mouseChildren to false so that the TextLines that get 
-        // added don't trap the mouse events.
-		/* mouseChildren = false;
-		
-		 var resourceManager:IResourceManager = ResourceManager.getInstance();
-                                    
-		if (!truncationIndicatorResource)
-        {
-            truncationIndicatorResource = resourceManager.getString(
-                "core", "truncationIndicator");
-        }
-        
-        addEventListener(FlexEvent.UPDATE_COMPLETE, updateCompleteHandler);
-                
-        // Register as a weak listener for "change" events from ResourceManager.
-        // If TextBases registered as a strong listener,
-        // they wouldn't get garbage collected.
-        resourceManager.addEventListener(
-            Event.CHANGE, resourceManager_changeHandler, false, 0, true);
-        
-        // Our background fill. 
-        _backgroundShape = new Shape();
-        addChild(_backgroundShape); */
-    }
-    
-    //--------------------------------------------------------------------------
-    //
-    //  Variables
-    //
-    //--------------------------------------------------------------------------
-    
-	/**
-     *  @private
-     *  The composition bounds used when creating the TextLines.
-     */
-   // mx_internal var bounds:Rectangle = new Rectangle(0, 0, NaN, NaN);
-
-    /**
-     *  @private
-	 *  The TextLines and Shapes created to render the text.
-	 *  (Shapes are used to render the backgroundColor format for RichText.)
-     */
-   /*  mx_internal var textLines:Vector.<DisplayObject> =
-    	new Vector.<DisplayObject>();
- */
-    /**
-     *  @private
-     *  This flag is set to true if the text must be clipped.
-     */
-  //  mx_internal var isOverset:Boolean = false;
-
-    /**
-     *  @private
-     *  This flag is used to avoid getting or setting the scrollRect
-     *  of our displayObject unnecessarily when we need to clip TextLines
-     *  that extend beyond our bounds.
-     *  It shouldn't even be set to null if you can avoid it,
-     *  because Player 10.0 allocates a surface even in this case.
-     */
-   // mx_internal var hasScrollRect:Boolean = false;
-    
-    /**
-     *  @private
-     */
-   // mx_internal var invalidateCompose:Boolean = true;    
-
-    /**
-     *  @private
-     *  The value of bounds.width, before the compose was done.
-     */
-  //  mx_internal var _composeWidth:Number;
-
-    /**
-     *  @private
-     *  The value of bounds.height, before the compose was done.
-     */
-   // mx_internal var _composeHeight:Number;
-    
-    /**
-     *  @private
-     *  Cache the width constraint as set by the layout in setLayoutBoundsSize()
-     *  so that text reflow can be calculated during a subsequent measure pass.
-     */
-   // private var _widthConstraint:Number = NaN;
-    
-    /**
-     *  @private
-     *  We can optimize for a single line text reflow, which is a lot of cases.
-     */
-   // private var _measuredOneTextLine:Boolean = false;
-    
-    /**
-     *  @private
-     *  Shape we use to render our background fill to work around several
-     *  player blendMode issues.  See SDK-24821.
-     */
-    private var _backgroundShape:GraphicShape; //Shape;
-    
-    //--------------------------------------------------------------------------
-    //
-    //  Overridden properties: UIComponent
-    //
-    //--------------------------------------------------------------------------
-        
-    //----------------------------------
-    //  baselinePosition
-    //----------------------------------
-
-    //[Inspectable(category="General")]
-    
-    /**
-     *  @private
-     */
-    /* override public function get baselinePosition():Number
-    {
-        if (!validateBaselinePosition())
-            return NaN;
-
-        // Create an empty text line so we can measure the height. If the
-        // text is vertically aligned then need the composeHeight so the 
-        // baseline remains consistent when the width is so narrow there
-        // are no textLines.
-        if (textLines.length == 0 ||
-            (textLines.length == 1 && textLines[0] is Shape))
-            createEmptyTextLine(_composeHeight);
-        
-        // Return the baseline of the first line of composed text.
-        return textLines.length > 0 ? getBaselineFromFirstTextLine() : 0;
-    }
-    
-    private function getBaselineFromFirstTextLine():Number
-    {
-        // you may find a Shape in here when background colors are on
-        for each (var tl:DisplayObject in textLines)
-        {
-            if (tl is TextLine)
-                return tl.y;
-        }
-        return 0;
-    } */
-
-    //----------------------------------
-    //  visible
-    //----------------------------------
-    
-    /**
-     *  @private
-     */
-    private var visibleChanged:Boolean = false;
-
-    /**
-     *  @private
-     */
-    override public function set visible(value:Boolean):void
-    {        
-    	super.visible = value;
-    	visibleChanged = true;
-
-    	invalidateDisplayList();
-	}
-
-    //--------------------------------------------------------------------------
-    //
-    //  Properties
-    //
-    //--------------------------------------------------------------------------
-
-    //----------------------------------
-	//  isTruncated
-    //----------------------------------
-	
-    /**
-     *  @private
-	 *  Storage for the isTruncated property.
-     */
-    //private var _isTruncated:Boolean = false;
-        
-    /**
-	 *  A read-only property reporting whether the text has been truncated.
-	 *
-	 *  <p>Truncating text means replacing excess text
-	 *  with a truncation indicator such as "...".
-     *  The truncation indicator is locale-dependent;
-     *  it is specified by the "truncationIndicator" resource
-     *  in the "core" resource bundle.</p>
-	 *
-     *  <p>If <code>maxDisplayedLines</code> is 0, no truncation occurs.
-     *  Instead, the text will simply be clipped
-	 *  if it doesn't fit within the component's bounds.</p>
-     *
-     *  <p>If <code>maxDisplayedLines</code> is is a positive integer,
-	 *  the text will be truncated if necessary to reduce
-	 *  the number of lines to this integer.</p>
-     *
-     *  <p>If <code>maxDisplayedLines</code> is -1, the text will be truncated
-	 *  to display as many lines as will completely fit within the height
-     *  of the component.</p>
-     *
-     *  <p>Truncation is only performed if the <code>lineBreak</code>
-     *  style is <code>"toFit"</code>; the value of this property
-     *  is ignored if <code>lineBreak</code> is <code>"explicit"</code>.</p>
-	 *
-	 *  @default false
-     *  
-     *  @langversion 3.0
-     *  @playerversion Flash 10
-     *  @playerversion AIR 1.5
-     *  @productversion Royale 0.9.4
-     */
-	/* public function get isTruncated():Boolean
-    {
-		// For some reason, the compiler needs an explicit cast to Boolean
-		// to avoid a warning even though at runtime "is Boolean" is true.
-		return Boolean(_isTruncated);
-    } */
-    
-    /**
-     *  @private
-     *  Dispatch an "isTruncatedChanged" event when the property is set.
-     */
-    /* mx_internal function setIsTruncated(value:Boolean):void
-    {
-        if (_isTruncated != value)
-        {
-            _isTruncated = value;
-            if (showTruncationTip)
-                toolTip = _isTruncated ? text : null;
-            dispatchEvent(new Event("isTruncatedChanged"));
-        }
-    } */
-    
-    //----------------------------------
-	//  maxDisplayedLines
-    //----------------------------------
-    
-    /**
-     *  @private
-     */
-	/* private var _maxDisplayedLines:int = 0;
-    
-    [Inspectable(category="General", minValue="-1", defaultValue="0")] */
-    
-    /**
-     *  An integer which determines whether, and where,
-	 *  the text gets truncated.
-	 *
-	 *  <p>Truncating text means replacing excess text
-	 *  with a truncation indicator such as "...".
-     *  The truncation indicator is locale-dependent;
-     *  it is specified by the "truncationIndicator" resource
-     *  in the "core" resource bundle.</p>
-     *
-     *  <p>If the value is 0, no truncation occurs.
-     *  Instead, the text will simply be clipped
-	 *  if it doesn't fit within the component's bounds.</p>
-     *
-     *  <p>If the value is is a positive integer,
-	 *  the text will be truncated if necessary to reduce
-	 *  the number of lines to this integer.</p>
-     *
-     *  <p>If the value is -1, the text will be truncated to display
-     *  as many lines as will completely fit within the height
-     *  of the component.</p>
-     *
-     *  <p>Truncation is only performed if the <code>lineBreak</code>
-     *  style is <code>"toFit"</code>; the value of this property
-     *  is ignored if <code>lineBreak</code> is <code>"explicit"</code>.</p>
-	 *
-	 *  @default 0
-     *  
-     *  @langversion 3.0
-     *  @playerversion Flash 10
-     *  @playerversion AIR 1.5
-     *  @productversion Royale 0.9.4
-     */
-	/* public function get maxDisplayedLines():int
-    {
-		return _maxDisplayedLines;
-    } */
-    
-    /**
-     *  @private
-     */
-	/* public function set maxDisplayedLines(value:int):void
-    {
-		if (value != _maxDisplayedLines)
-    	{
-			_maxDisplayedLines = value;
-    		
-			invalidateTextLines();
-                 		
-    		invalidateSize();
-    		invalidateDisplayList();
-    	}
-    } */
-
-    //----------------------------------
-	//  showTruncationTip
-    //----------------------------------
-	
-    /**
-     *  @private
-	 *  Storage for the showTruncationTip property.
-     */
-    /* private var _showTruncationTip:Boolean = false;
-        
-    [Inspectable(category="General", defaultValue="false")] */
-
-    /**
-	 *  A property that controls whether the component
-     *  should show a toolTip when the text has been truncated.
-	 *
-	 *  @default false
-     *  
-     *  @langversion 3.0
-     *  @playerversion Flash 10
-     *  @playerversion AIR 1.5
-     *  @productversion Royale 0.9.4
-     */
-	/* public function get showTruncationTip():Boolean
-    {
-		return _showTruncationTip;
-    } */
-
-    /**
-     *  @private
-     */
-    /* public function set showTruncationTip(value:Boolean):void
-    {
-        _showTruncationTip = value;
-
-        // Typically the toolTip gets set when the text is composed,
-        // based on showToolTip and isTruncated.
-        // But showToolTip can change at runtime
-        // without later recomposing the text,
-        // so we handle that by also setting toolTip here.
-        toolTip = _isTruncated && _showTruncationTip ? text : null;
-    } */
-
-    //----------------------------------
-    //  text
-    //----------------------------------
-
-    /**
-     *  @private
-     */
-    mx_internal var _text:String = "";
-        
-    [Inspectable(category="General", defaultValue="")]
-    
-    /**
-     *  The text displayed by this text component.
-	 *
-     *  <p>The formatting of this text is controlled by CSS styles.
-     *  The supported styles depend on the subclass.</p>
-	 *
-	 *  @default ""
-     *  
-     *  @langversion 3.0
-     *  @playerversion Flash 10
-     *  @playerversion AIR 1.5
-     *  @productversion Royale 0.9.4
-     */
-    public function get text():String 
-    {
-        return _text;
-    }
-    
-    /**
-     *  @private
-     */
-    public function set text(value:String):void
-    {
-        if (value != _text)
-        {
-            _text = value;
-
-           // invalidateTextLines();
-            invalidateSize();
-            invalidateDisplayList();
-        }
-    }
-    
-    //--------------------------------------------------------------------------
-    /**
-     *  @private
-     */
-    /* override protected function measure():void
-    {
-        // _widthConstraint trumps even explicitWidth as some layouts may choose
-        // to specify width different from the explicit.
-        var constrainedWidth:Number =
-            !isNaN(_widthConstraint) ? _widthConstraint : explicitWidth;
-            
-        // for measurement, try not to collapse so small we don't measure
-        // anything
-        var fontSize:Number = getStyle("fontSize") 
-        var allLinesComposed:Boolean =
-            composeTextLines(Math.max(constrainedWidth, fontSize), Math.max(explicitHeight, fontSize));
-        
-        // Anytime we are composing we need to invalidate the display list
-        // as we may have messed up the text lines.
-        invalidateDisplayList();
-        
-        // Put on next pixel boundary for crisp edges.  If text is aligned,
-        // x and/or y may not be 0.        
-        var newMeasuredHeight:Number = Math.ceil(bounds.bottom);
-
-        // If the measured height is not affected, then constrained
-        // width measurement is not neccessary.
-        if (!isNaN(_widthConstraint) && measuredHeight == newMeasuredHeight)
-            return;
-            
-        // Call super.measure() here insted of in the beginning of the method,
-        // as it zeroes the measuredWidth, measuredHeight and these values will
-        // still be valid if we decided to do an early return above.
-        super.measure();
-
-        measuredWidth = Math.ceil(bounds.right);
-        measuredHeight = newMeasuredHeight;
-        
-        // Remember the number of text lines during measure. We can use this to
-        // optimize the double measure scheme for text reflow.
-        _measuredOneTextLine = allLinesComposed && 
-                               textLines.length == 1; 
-
-        //trace(id, drawnDisplayObject.name, "measure", measuredWidth, measuredHeight);
-    } */
-
-    /**
-     *  @private
-     *  We override the setLayoutBoundsSize to determine whether to perform
-     *  text reflow. This is a convenient place, as the layout passes NaN
-     *  for a dimension not constrained to the parent.
-     */
-    /* override public function setLayoutBoundsSize(width:Number,
-                                                 height:Number,
-                                                 postLayoutTransform:Boolean = true):void
-    {
-        super.setLayoutBoundsSize(width, height, postLayoutTransform);
-
-        // TODO (egeorgie): possible optimization - if we reflow the text
-        // immediately, we'll be able to detect whether the constrained
-        // width causes the measured height to change.
-        // Also certain layouts like vertical/horizontal will
-        // be able to get the better performance as subsequent elements
-        // will not go through updateDisplayList twice. This also has the
-        // potential of avoiding text compositing during measure.
-
-        // Did we already constrain the width?
-        if (_widthConstraint == width)
-            return;
-
-        // No reflow for explicit lineBreak
-        if (getStyle("lineBreak") == "explicit")
-            return;
-
-        // If we don't measure
-        if (canSkipMeasurement())
-            return;
-
-        if (!isNaN(explicitHeight))
-            return;
-
-        // We support reflow only in the case of constrained width and
-        // unconstrained height. Note that we compare with measuredWidth,
-        // as for example the TextBase can be
-        // constrained by the layout with "left" and "right", but the
-        // container width itself may not be constrained and it would depend
-        // on the element's measuredWidth.
-        var constrainedWidth:Boolean = !isNaN(width) && (width != measuredWidth) && (width != 0); 
-        if (!constrainedWidth)
-            return;
-            
-        // Special case - if we have a single line, then having a constraint larger
-        // than the measuredWidth will not result in measuredHeight change, as we
-        // will still have only a single line
-        if (_measuredOneTextLine && width > measuredWidth)
-            return;
-    
-        // We support reflow only when we don't have a transform.
-        // We could add support for scale, but not skew or rotation.
-        if (postLayoutTransform && hasComplexLayoutMatrix)
-			return;
-
-        _widthConstraint = width;
-        invalidateSize();
-    
-    } */
-
-    /**
-     *  @private
-     */
-    override protected function updateDisplayList(unscaledWidth:Number, 
-                                                  unscaledHeight:Number):void
-    {
-        //trace(id, drawnDisplayObject.name, "updateDisplayList", unscaledWidth, unscaledHeight);  
-        super.updateDisplayList(unscaledWidth, unscaledHeight);
-
-        // Figure out if a compose is needed or maybe just clip what is already
-        // composed.
-
-       /*  var compose:Boolean = false;
-        var clipText:Boolean = false;
-        var contentHeight:Number = Math.ceil(bounds.bottom);
-        var contentWidth:Number = Math.ceil(bounds.right);
-        
-        // TODO (gosmith):Optimize for right-to-left text
-		// so composition isn't always done when the height or width changes.
-        if (invalidateCompose || 
-            composeForAlignStyles(unscaledWidth, unscaledHeight, contentWidth, contentHeight))
-        {
-            compose = true;
-        }
-        else if (unscaledHeight != contentHeight)
-        {
-            // Height changed.
-            if (composeOnHeightChange(unscaledHeight, contentHeight))
-            {
-                compose = true;
-            }
-            else if (unscaledHeight < contentHeight)
-            {
-                // Don't need to recompose but need to clip since not all the
-                // height is needed.
-                clipText = true;                   
-            }
-        }
-
-        // Width changed.        
-        if (!compose && unscaledWidth != contentWidth)
-        {
-            if (composeOnWidthChange(unscaledWidth, contentWidth))
-            {
-                compose = true;
-            }
-            else if (getStyle("lineBreak") == "explicit" &&
-                     unscaledWidth < contentWidth)
-            {
-                // Explicit line breaks.  Don't need to recompose but need to 
-                // clip since the not all the width is needed.
-                clipText = true;                   
-            }
-        }
-
-        // Compose will add the new text lines to the display object container.
-        // Otherwise, if the text is in a shared container, make sure the 
-        // position of the lines has remained the same.
-        if (compose)
-            composeTextLines(unscaledWidth, unscaledHeight);
-            
-        // If the text is overset it always has to be clipped (as well as if 
-        // it is being clipped to reduce the size to avoid a recomposition).              
-        if (isOverset)
-            clipText = true;
-        
-        //trace(id, drawnDisplayObject.name, "udl", "compose", compose, "clip", 
-        //      clipText, "bounds", bounds);        
-
-        // Set the scrollRect used for clipping appropriately.              
-        clip(clipText, unscaledWidth, unscaledHeight);
- 
-     	// If backgroundColor is defined, fill the bounds of the component
-    	// with backgroundColor drawn with alpha level backgroundAlpha, 
-        // otherwise, render a fully transparent background.
-        
-    	var backgroundColor:* = getStyle("backgroundColor");
-        var backgroundAlpha:Number = getStyle("backgroundAlpha");
-        
-    	if (backgroundColor === undefined)
-        {
-            backgroundColor = 0;
-            backgroundAlpha = 0;
-        }
-
-        var g:Graphics = _backgroundShape.graphics;
-        g.clear();
-        g.beginFill(uint(backgroundColor), backgroundAlpha);
-        g.drawRect(0, 0, unscaledWidth, unscaledHeight);
-        g.endFill(); */
-    }
-
-    //--------------------------------------------------------------------------
-    //
-    //  Overidden Methods: ISimpleStyleClient
-    //
-    //--------------------------------------------------------------------------
-
-    /**
-     *  @private
-     */
-    /* override public function styleChanged(styleProp:String):void
-    {
-        super.styleChanged(styleProp);
-
-        invalidateTextLines();
-    } */
-
-    //--------------------------------------------------------------------------
-    //
-    //  Methods
-    //
-    //--------------------------------------------------------------------------
-
-    /**
-     *  @private
-     */
-   /*  mx_internal function createEmptyTextLine(height:Number=NaN):void
-    {
-        // override this
-    } */
-    
-    /**
-     *  @private
-     */
-    /* mx_internal function invalidateTextLines():void
-    {
-        invalidateCompose = true;
-    } */
-    
-    /**
-     *  @private
-     */
-    /* private function composeForAlignStyles(unscaledWidth:Number, 
-                                           unscaledHeight:Number,
-                                           contentWidth:Number,
-                                           contentHeight:Number):Boolean
-    {
-        // For textAlign, if the composeWidth isn't the same
-        // as the unscaledWidth, and the text isn't left aligned, we need to 
-        // recompose.
-        //
-        var width:Number = isNaN(_composeWidth) ? 
-                           contentWidth : _composeWidth;
-        if (unscaledWidth != width)
-        {
-            var direction:String = getStyle("direction");
-            var textAlign:String = getStyle("textAlign");
-
-            var leftAligned:Boolean =
-                textAlign == "left" ||
-                textAlign == "start" && direction == "ltr" ||
-                textAlign == "end" && direction == "rtl";
-
-            if (!leftAligned)
-                return true;
-        }
-        
-        // For verticalAlign, if the composeHeight isn't the same as the
-        // unscaledHeight, and the text isn't top aligned, we need to
-        // recompose (or adjust the y values of all the text lines).
-        var height:Number = isNaN(_composeHeight) ? 
-                            contentHeight : _composeHeight;
-        if (unscaledHeight != height)
-        {
-            var verticalAlign:String = getStyle("verticalAlign");
-            var topAligned:Boolean = (verticalAlign == "top");
-
-            if (!topAligned)
-                return true;
-        }
-
-        return false;   
-    } */
-
-    /**
-     *  @private
-     */
-    /* private function composeOnHeightChange(unscaledHeight:Number,
-                                           contentHeight:Number):Boolean
-    {
-        // Height increased and there may be more text.  It is possible that
-        // there is more text even if isOverset isn't set.  If height
-        // was specified, it will compose just enough text to fit the 
-        // composition bounds and depending on text placement, it may not 
-        // be overset.
-        if (unscaledHeight > contentHeight &&
-            (isOverset || !isNaN(_composeHeight)))
-            return true;
-            
-        if (maxDisplayedLines != 0 && getStyle("lineBreak") == "toFit")
-        {
-            // -1 is fill the bounds and the bounds changed so recompose.
-            if (maxDisplayedLines == -1)            
-                return true;
-                
-            // If truncating at n lines and the height got smaller, may need to
-            // redo the truncation. Or if the height got larger, only have to
-            // redo the truncation if we don't already have the number of
-            // truncation lines needed.
-            if (maxDisplayedLines > 0 &&
-               (unscaledHeight < contentHeight ||
-                 textLines.length != maxDisplayedLines))
-            {
-                return true;
-            }
-        }
-
-        // TODO (gosmith): Handle this case properly.
-        if (getStyle("blockProgression") != "tb")
-            return true;    
-            
-        return false;                
-    } */
-
-    /**
-     *  @private
-     */
-    /* private function composeOnWidthChange(unscaledWidth:Number, 
-                                          contentWidth:Number):Boolean
-    {
-        // If toFit, then the composeWidth must equal the unscaledWidth
-        // so that the text flows properly. 
-        if (getStyle("lineBreak") == "toFit")
-        {
-            if (isNaN(_composeWidth) || _composeWidth != unscaledWidth)
-                return true;
-        }
-        
-        // TODO (gosmith): Handle this case properly.  
-        if (getStyle("blockProgression") != "tb")
-            return true;
-                    
-        return false;
-    } */
-
-    /**
-     *  @private
-     *  Returns false to indicate no lines were composed.
-     */
-    /* mx_internal function composeTextLines(width:Number = NaN,
-										height:Number = NaN):Boolean
-	{
-	    _composeWidth = width;
-	    _composeHeight = height;
-	    
-	    setIsTruncated(false);
-	    
-	    return false;
-	} */
-
-	/**
-	 *  @private
-	 *  Adds the TextLines created by composeTextLines() to this container.
-	 */
-	/* mx_internal function addTextLines():void
-	{
-		var n:int = textLines.length;
-        if (n == 0)
-            return;
-
-        for (var i:int = n - 1; i >= 0; i--)
-        {
-            var textLine:DisplayObject = textLines[i];		
-            // Add new TextLine accounting for our background Shape.
-            $addChildAt(textLine, 1);
-        }
-	} */
-
-	/**
-	 *  @private
-	 *  Removes the TextLines created by composeTextLines()
-     *  from whatever container they were in.
-     * 
-	 *  This does not empty the textLines Array.
-	 */
-	/* mx_internal function removeTextLines():void
-	{
-		var n:int = textLines.length;		
-		if (n == 0)
-			return;
-
-		for (var i:int = 0; i < n; i++)
-		{
-			var textLine:DisplayObject = textLines[i];	
-            var parent:UIComponent = textLine.parent as UIComponent;
-            if (parent)
-                UIComponent(textLine.parent).$removeChild(textLine);
-		}
-	} */
-
-    /**
-     *  @private
-     *  Adds the TextLines to the reuse cache, and clears the textLines array.
-     */
-    /* mx_internal function releaseTextLines(
-    	textLinesVector:Vector.<DisplayObject> = null):void
-    {
-        if (!textLinesVector)
-            textLinesVector = textLines;
-            
-        var n:int = textLinesVector.length;
-        for (var i:int = 0; i < n; i++)
-        {
-            var textLine:TextLine = textLinesVector[i] as TextLine;
-            if (textLine)
-            {
-                // Throws an ArgumentError if validity set to INVALID in
-                // either of these cases.
-                if (textLine.validity != TextLineValidity.INVALID && 
-                    textLine.validity != TextLineValidity.STATIC)
-                {
-                    textLine.validity = TextLineValidity.INVALID;
-                }
-                
-                textLine.userData = null;	// clear any userData
-                TextLineRecycler.addLineForReuse(textLine);
-            }
-        }
-        
-        textLinesVector.length = 0;
-   } */
-    
-    /**
-     *  @private
-     *  Does the bounds of the contents rectangle fit within the bounds
-     *  of the composition rectangle?
-     */
-    /* mx_internal function isTextOverset(composeWidth:Number, 
-                                       composeHeight:Number):Boolean
-    {        
-        // The composition bounds available for text placement.
-        var compositionRect:Rectangle =
-        	new Rectangle(0, 0, composeWidth, composeHeight);
-    
-        // Add in a half-pixel slop factor to the throw-away rectangle (do
-        // not modify bounds).  This covers the case where the
-        // y (textLine.y - textLine.ascent) is slightly less than 0 because of
-        // rounding errors.
-        compositionRect.inflate(0.25, 0.25);
-
-        // The bounds of the composed text.
-        var contentRect:Rectangle = bounds;
-       
-        // Does the text fit totally within the composition area?  This is
-        // a Rectangle.contains but allows for composition width and/or height
-        // to be NaN.
-        var isOverset:Boolean = (contentRect.top < compositionRect.top || 
-                                 contentRect.left < compositionRect.left ||
-                                 (!isNaN(compositionRect.bottom) &&
-                                 contentRect.bottom > compositionRect.bottom) ||
-                                 (!isNaN(compositionRect.right) &&
-                                 contentRect.right > compositionRect.right));
-                   
-        //trace(id, drawnDisplayObject.name, "bounds", contentRect, "overset", isOverset);
-        
-        return isOverset;                                                     
-    }  */
-    
-    /**
-	 *  Use scrollRect to clip overset lines.
-	 *  But don't read or write scrollRect if you can avoid it,
-	 *  because this causes Player 10.0 to allocate memory.
-	 *  And if scrollRect is already set to a Rectangle instance,
-	 *  reuse it rather than creating a new one.
-     *  
-     *  @langversion 3.0
-     *  @playerversion Flash 10
-     *  @playerversion AIR 1.5
-     *  @productversion Royale 0.9.4
-     */
-    /* mx_internal function clip(clipText:Boolean, w:Number, h:Number):void
-	{
-        // TODO (rfrishbe): What if someone else sets the scrollRect?
-        if (clipText)
-        {
-            var r:Rectangle = scrollRect;
-            if (r)
-            {
-            	r.x = 0;
-            	r.y = 0;
-            	r.width = w;
-            	r.height = h;
-            }
-            else
-            {
-            	r = new Rectangle(0, 0, w, h);
-            }
-            scrollRect = r;
-            hasScrollRect = true;
-        }
-        else if (hasScrollRect)
-        {
-            scrollRect = null;
-            hasScrollRect = false;
-        }
-    } */
-    
-    /**
-     *  @private
-     *  Uses the component's CSS styles to determine the module factory
-     *  that should creates its TextLines.
-     */
-    /* mx_internal function getEmbeddedFontContext():IFlexModuleFactory
-    {
-        var fontContext:IFlexModuleFactory;
-        
-        var fontLookup:String = getStyle("fontLookup");
-        if (fontLookup != FontLookup.DEVICE)
-        {
-            var font:String = getStyle("fontFamily");
-            var bold:Boolean = getStyle("fontWeight") == "bold";
-            var italic:Boolean = getStyle("fontStyle") == "italic";
-            
-            fontContext = getFontContext(font, bold, italic, true);
-        }
-        
-        return fontContext;
-    } */
-
-    //--------------------------------------------------------------------------
-    //
-    //  Event handlers
-    //
-    //--------------------------------------------------------------------------
-
-    /**
-     *  @private
-     */
-    /* private function resourceManager_changeHandler(event:Event):void
-    {
-		var resourceManager:IResourceManager = ResourceManager.getInstance();
-
-        truncationIndicatorResource = resourceManager.getString(
-            "core", "truncationIndicator");
-
-        // If we're truncating, recompose the text.
-        if (maxDisplayedLines != 0)
-        {
-            invalidateTextLines();
-
-            invalidateSize();
-            invalidateDisplayList();
-        }
-    } */
-
-    /**
-     *  @private
-     *  We clear the width constraint that's used for the text reflow
-     *  after the layout pass is complete.
-     */
-    private function updateCompleteHandler(event:FlexEvent):void
-    {
-        // Make sure that if we did a double pass, next time around we'll
-        // measure normally
-        // _widthConstraint = NaN;
-    }
-}
-
-}

-- 
To stop receiving notification emails like this one, please contact
alinakazi@apache.org.