//////////////////////////////////////////////////////////////////////////////// // // 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 flashx.textLayout.formats { import flashx.textLayout.debug.Debugging import flashx.textLayout.debug.assert import flashx.textLayout.property.* import flashx.textLayout.tlf_internal use namespace tlf_internal import flashx.textLayout.formats.BackgroundColor import flash.text.engine.BreakOpportunity import flash.text.engine.DigitCase import flash.text.engine.DigitWidth import flash.text.engine.TextBaseline import flash.text.engine.Kerning import flash.text.engine.LigatureLevel import flash.text.engine.TextBaseline import flashx.textLayout.formats.TLFTypographicCase import flashx.textLayout.formats.TextDecoration import flash.text.engine.FontWeight import flash.text.engine.FontPosture import flashx.textLayout.formats.WhiteSpaceCollapse import flash.text.engine.RenderingMode import flash.text.engine.CFFHinting import flash.text.engine.FontLookup import flash.text.engine.TextRotation import flashx.textLayout.formats.TextAlign import flashx.textLayout.formats.TextAlign import flashx.textLayout.formats.TextJustify import flashx.textLayout.formats.JustificationRule import flash.text.engine.JustificationStyle import flashx.textLayout.formats.Direction import flashx.textLayout.formats.LeadingModel import flashx.textLayout.formats.FormatValue import flashx.textLayout.formats.FormatValue import flashx.textLayout.formats.BaselineOffset import flashx.textLayout.formats.VerticalAlign import flashx.textLayout.formats.BlockProgression import flashx.textLayout.formats.LineBreak /** * The TextLayoutFormat class holds all of the text layout properties. These properties affect the format and style of a text flow at the container level, paragraph level, and text level. Both the ContainerController class and the FlowElement base class have format properties that enable you to assign a TextLayoutFormat instance to them. Assign a TextLayoutFormat object to a container to affect the format of all of the container's content. Assign a TextLayoutFormat object to a FlowElement descendant to specify formatting for that particular element: TextFlow, ParagraphElement, DivElement, SpanElement, InlineGraphicElement, LinkElement, and TCYElement. * In addition to the format property, these classes also define each of the individual TextLayoutFormat properties so that you can override the setting of a particular style property for that element, if you wish.

Because you can set a given style at multiple levels, it is possible to have conflicts. For example, the color of the text at the TextFlow level could be set to black while a SpanElement object sets it to blue. The general rule is that the setting at the lowest level on the text flow tree takes precedence. So if the ligature level is set for a TextFlow instance and also set for a DivElement, the DivElement setting takes precedence.

Cascading styles refers to the process of adopting styles from a higher level in the text flow if a style value is undefined at a lower level. When a style is undefined on an element at the point it is about to be rendered, it either takes its default value or the value cascades or descends from the value on a parent element. For example, if the transparency (textAlpha property) of the text is undefined on a SpanElement object, but is set on the TextFlow, the value of the TextFlow.textAlpha property cascades to the SpanElement object and is applied to the text for that span. The result of the cascade, or the sum of the styles that is applied to the element, is stored in the element's computedFormat property.

In the same way, you can apply user styles using the userStyles property of the ContainerController and FlowElement classes. This property allows you to read or write a dictionary of user styles and apply its settings to a container or a text flow element. The user styles dictionary is an object that consists of stylename-value pairs. Styles specified by the userStyles property take precedence over all others.

Most styles that are undefined inherit the value of their immediate parent during a cascade. A small number of styles, however, do not inherit their parent's value and take on their default values instead.

Style properties that adopt their default values, if undefined, include: backgroundAlpha, backgroundColor, columnCount, columnGap, columnWidth, lineBreak, paddingBottom, paddingLeft, paddingRight, paddingTop, verticalAlign.

* @includeExample examples\TextLayoutFormatExample.as -noswf * @includeExample examples\TextLayoutFormatExample2.as -noswf * @see flashx.textLayout.elements.FlowElement#format * @see flashx.textLayout.factory.TextFlowTextLineFactory * @playerversion Flash 10 * @playerversion AIR 1.5 * @langversion 3.0 */ public class TextLayoutFormat implements ITextLayoutFormat { /** @private */ static private var _colorProperty:UintProperty = new UintProperty("color",0,true,Category.CHARACTER); /** @private */ static private var _backgroundColorProperty:UintWithEnumProperty = new UintWithEnumProperty( "backgroundColor",flashx.textLayout.formats.BackgroundColor.TRANSPARENT,false,Category.CHARACTER ,flashx.textLayout.formats.BackgroundColor.TRANSPARENT ); /** @private */ static private var _lineThroughProperty:BooleanProperty = new BooleanProperty("lineThrough",false,true,Category.CHARACTER); /** @private */ static private var _textAlphaProperty:NumberProperty = new NumberProperty("textAlpha",1,true,Category.CHARACTER,0,1); /** @private */ static private var _backgroundAlphaProperty:NumberProperty = new NumberProperty("backgroundAlpha",1,false,Category.CHARACTER,0,1); /** @private */ static private var _fontSizeProperty:NumberProperty = new NumberProperty("fontSize",12,true,Category.CHARACTER,1,720); /** @private */ static private var _baselineShiftProperty:NumberOrPercentOrEnumProperty = new NumberOrPercentOrEnumProperty("baselineShift",0.0,true,Category.CHARACTER,-1000,1000,"-1000%","1000%" ,flashx.textLayout.formats.BaselineShift.SUPERSCRIPT ,flashx.textLayout.formats.BaselineShift.SUBSCRIPT ); /** @private */ static private var _trackingLeftProperty:NumberOrPercentProperty = new NumberOrPercentProperty("trackingLeft",0,true,Category.CHARACTER,-1000,1000,"-1000%","1000%") /** @private */ static private var _trackingRightProperty:NumberOrPercentProperty = new NumberOrPercentProperty("trackingRight",0,true,Category.CHARACTER,-1000,1000,"-1000%","1000%") /** @private */ static private var _lineHeightProperty:NumberOrPercentProperty = new NumberOrPercentProperty("lineHeight","120%",true,Category.CHARACTER,-720,720,"-1000%","1000%") /** @private */ static private var _breakOpportunityProperty:EnumStringProperty = new EnumStringProperty( "breakOpportunity",flash.text.engine.BreakOpportunity.AUTO,true,Category.CHARACTER ,flash.text.engine.BreakOpportunity.ALL ,flash.text.engine.BreakOpportunity.ANY ,flash.text.engine.BreakOpportunity.AUTO ,flash.text.engine.BreakOpportunity.NONE ); /** @private */ static private var _digitCaseProperty:EnumStringProperty = new EnumStringProperty( "digitCase",flash.text.engine.DigitCase.DEFAULT,true,Category.CHARACTER ,flash.text.engine.DigitCase.DEFAULT ,flash.text.engine.DigitCase.LINING ,flash.text.engine.DigitCase.OLD_STYLE ); /** @private */ static private var _digitWidthProperty:EnumStringProperty = new EnumStringProperty( "digitWidth",flash.text.engine.DigitWidth.DEFAULT,true,Category.CHARACTER ,flash.text.engine.DigitWidth.DEFAULT ,flash.text.engine.DigitWidth.PROPORTIONAL ,flash.text.engine.DigitWidth.TABULAR ); /** @private */ static private var _dominantBaselineProperty:EnumStringProperty = new EnumStringProperty( "dominantBaseline",flashx.textLayout.formats.FormatValue.AUTO,true,Category.CHARACTER ,flashx.textLayout.formats.FormatValue.AUTO ,flash.text.engine.TextBaseline.ROMAN ,flash.text.engine.TextBaseline.ASCENT ,flash.text.engine.TextBaseline.DESCENT ,flash.text.engine.TextBaseline.IDEOGRAPHIC_TOP ,flash.text.engine.TextBaseline.IDEOGRAPHIC_CENTER ,flash.text.engine.TextBaseline.IDEOGRAPHIC_BOTTOM ); /** @private */ static private var _kerningProperty:EnumStringProperty = new EnumStringProperty( "kerning",flash.text.engine.Kerning.AUTO,true,Category.CHARACTER ,flash.text.engine.Kerning.ON ,flash.text.engine.Kerning.OFF ,flash.text.engine.Kerning.AUTO ); /** @private */ static private var _ligatureLevelProperty:EnumStringProperty = new EnumStringProperty( "ligatureLevel",flash.text.engine.LigatureLevel.COMMON,true,Category.CHARACTER ,flash.text.engine.LigatureLevel.MINIMUM ,flash.text.engine.LigatureLevel.COMMON ,flash.text.engine.LigatureLevel.UNCOMMON ,flash.text.engine.LigatureLevel.EXOTIC ); /** @private */ static private var _alignmentBaselineProperty:EnumStringProperty = new EnumStringProperty( "alignmentBaseline",flash.text.engine.TextBaseline.USE_DOMINANT_BASELINE,true,Category.CHARACTER ,flash.text.engine.TextBaseline.ROMAN ,flash.text.engine.TextBaseline.ASCENT ,flash.text.engine.TextBaseline.DESCENT ,flash.text.engine.TextBaseline.IDEOGRAPHIC_TOP ,flash.text.engine.TextBaseline.IDEOGRAPHIC_CENTER ,flash.text.engine.TextBaseline.IDEOGRAPHIC_BOTTOM ,flash.text.engine.TextBaseline.USE_DOMINANT_BASELINE ); /** @private */ static private var _localeProperty:StringProperty = new StringProperty("locale","en",true,Category.CHARACTER); /** @private */ static private var _typographicCaseProperty:EnumStringProperty = new EnumStringProperty( "typographicCase",flashx.textLayout.formats.TLFTypographicCase.DEFAULT,true,Category.CHARACTER ,flashx.textLayout.formats.TLFTypographicCase.DEFAULT ,flashx.textLayout.formats.TLFTypographicCase.CAPS_TO_SMALL_CAPS ,flashx.textLayout.formats.TLFTypographicCase.UPPERCASE ,flashx.textLayout.formats.TLFTypographicCase.LOWERCASE ,flashx.textLayout.formats.TLFTypographicCase.LOWERCASE_TO_SMALL_CAPS ); /** @private */ static private var _fontFamilyProperty:StringProperty = new StringProperty("fontFamily","Arial",true,Category.CHARACTER); /** @private */ static private var _textDecorationProperty:EnumStringProperty = new EnumStringProperty( "textDecoration",flashx.textLayout.formats.TextDecoration.NONE,true,Category.CHARACTER ,flashx.textLayout.formats.TextDecoration.NONE ,flashx.textLayout.formats.TextDecoration.UNDERLINE ); /** @private */ static private var _fontWeightProperty:EnumStringProperty = new EnumStringProperty( "fontWeight",flash.text.engine.FontWeight.NORMAL,true,Category.CHARACTER ,flash.text.engine.FontWeight.NORMAL ,flash.text.engine.FontWeight.BOLD ); /** @private */ static private var _fontStyleProperty:EnumStringProperty = new EnumStringProperty( "fontStyle",flash.text.engine.FontPosture.NORMAL,true,Category.CHARACTER ,flash.text.engine.FontPosture.NORMAL ,flash.text.engine.FontPosture.ITALIC ); /** @private */ static private var _whiteSpaceCollapseProperty:EnumStringProperty = new EnumStringProperty( "whiteSpaceCollapse",flashx.textLayout.formats.WhiteSpaceCollapse.COLLAPSE,true,Category.CHARACTER ,flashx.textLayout.formats.WhiteSpaceCollapse.PRESERVE ,flashx.textLayout.formats.WhiteSpaceCollapse.COLLAPSE ); /** @private */ static private var _renderingModeProperty:EnumStringProperty = new EnumStringProperty( "renderingMode",flash.text.engine.RenderingMode.CFF,true,Category.CHARACTER ,flash.text.engine.RenderingMode.NORMAL ,flash.text.engine.RenderingMode.CFF ); /** @private */ static private var _cffHintingProperty:EnumStringProperty = new EnumStringProperty( "cffHinting",flash.text.engine.CFFHinting.HORIZONTAL_STEM,true,Category.CHARACTER ,flash.text.engine.CFFHinting.NONE ,flash.text.engine.CFFHinting.HORIZONTAL_STEM ); /** @private */ static private var _fontLookupProperty:EnumStringProperty = new EnumStringProperty( "fontLookup",flash.text.engine.FontLookup.DEVICE,true,Category.CHARACTER ,flash.text.engine.FontLookup.DEVICE ,flash.text.engine.FontLookup.EMBEDDED_CFF ); /** @private */ static private var _textRotationProperty:EnumStringProperty = new EnumStringProperty( "textRotation",flash.text.engine.TextRotation.AUTO,true,Category.CHARACTER ,flash.text.engine.TextRotation.ROTATE_0 ,flash.text.engine.TextRotation.ROTATE_180 ,flash.text.engine.TextRotation.ROTATE_270 ,flash.text.engine.TextRotation.ROTATE_90 ,flash.text.engine.TextRotation.AUTO ); /** @private */ static private var _textIndentProperty:NumberProperty = new NumberProperty("textIndent",0,true,Category.PARAGRAPH,-1000,1000); /** @private */ static private var _paragraphStartIndentProperty:NumberProperty = new NumberProperty("paragraphStartIndent",0,true,Category.PARAGRAPH,0,1000); /** @private */ static private var _paragraphEndIndentProperty:NumberProperty = new NumberProperty("paragraphEndIndent",0,true,Category.PARAGRAPH,0,1000); /** @private */ static private var _paragraphSpaceBeforeProperty:NumberProperty = new NumberProperty("paragraphSpaceBefore",0,true,Category.PARAGRAPH,0,1000); /** @private */ static private var _paragraphSpaceAfterProperty:NumberProperty = new NumberProperty("paragraphSpaceAfter",0,true,Category.PARAGRAPH,0,1000); /** @private */ static private var _textAlignProperty:EnumStringProperty = new EnumStringProperty( "textAlign",flashx.textLayout.formats.TextAlign.START,true,Category.PARAGRAPH ,flashx.textLayout.formats.TextAlign.LEFT ,flashx.textLayout.formats.TextAlign.RIGHT ,flashx.textLayout.formats.TextAlign.CENTER ,flashx.textLayout.formats.TextAlign.JUSTIFY ,flashx.textLayout.formats.TextAlign.START ,flashx.textLayout.formats.TextAlign.END ); /** @private */ static private var _textAlignLastProperty:EnumStringProperty = new EnumStringProperty( "textAlignLast",flashx.textLayout.formats.TextAlign.START,true,Category.PARAGRAPH ,flashx.textLayout.formats.TextAlign.LEFT ,flashx.textLayout.formats.TextAlign.RIGHT ,flashx.textLayout.formats.TextAlign.CENTER ,flashx.textLayout.formats.TextAlign.JUSTIFY ,flashx.textLayout.formats.TextAlign.START ,flashx.textLayout.formats.TextAlign.END ); /** @private */ static private var _textJustifyProperty:EnumStringProperty = new EnumStringProperty( "textJustify",flashx.textLayout.formats.TextJustify.INTER_WORD,true,Category.PARAGRAPH ,flashx.textLayout.formats.TextJustify.INTER_WORD ,flashx.textLayout.formats.TextJustify.DISTRIBUTE ); /** @private */ static private var _justificationRuleProperty:EnumStringProperty = new EnumStringProperty( "justificationRule",flashx.textLayout.formats.FormatValue.AUTO,true,Category.PARAGRAPH ,flashx.textLayout.formats.JustificationRule.EAST_ASIAN ,flashx.textLayout.formats.JustificationRule.SPACE ,flashx.textLayout.formats.FormatValue.AUTO ); /** @private */ static private var _justificationStyleProperty:EnumStringProperty = new EnumStringProperty( "justificationStyle",flashx.textLayout.formats.FormatValue.AUTO,true,Category.PARAGRAPH ,flash.text.engine.JustificationStyle.PRIORITIZE_LEAST_ADJUSTMENT ,flash.text.engine.JustificationStyle.PUSH_IN_KINSOKU ,flash.text.engine.JustificationStyle.PUSH_OUT_ONLY ,flashx.textLayout.formats.FormatValue.AUTO ); /** @private */ static private var _directionProperty:EnumStringProperty = new EnumStringProperty( "direction",flashx.textLayout.formats.Direction.LTR,true,Category.PARAGRAPH ,flashx.textLayout.formats.Direction.LTR ,flashx.textLayout.formats.Direction.RTL ); /** @private */ static private var _tabStopsProperty:TabStopsProperty = new TabStopsProperty("tabStops",null,true,Category.PARAGRAPH); /** @private */ static private var _leadingModelProperty:EnumStringProperty = new EnumStringProperty( "leadingModel",flashx.textLayout.formats.LeadingModel.AUTO,true,Category.PARAGRAPH ,flashx.textLayout.formats.LeadingModel.ROMAN_UP ,flashx.textLayout.formats.LeadingModel.IDEOGRAPHIC_TOP_UP ,flashx.textLayout.formats.LeadingModel.IDEOGRAPHIC_CENTER_UP ,flashx.textLayout.formats.LeadingModel.IDEOGRAPHIC_TOP_DOWN ,flashx.textLayout.formats.LeadingModel.IDEOGRAPHIC_CENTER_DOWN ,flashx.textLayout.formats.LeadingModel.APPROXIMATE_TEXT_FIELD ,flashx.textLayout.formats.LeadingModel.ASCENT_DESCENT_UP ,flashx.textLayout.formats.LeadingModel.AUTO ); /** @private */ static private var _columnGapProperty:NumberProperty = new NumberProperty("columnGap",20,false,Category.CONTAINER,0,1000); /** @private */ static private var _paddingLeftProperty:NumberProperty = new NumberProperty("paddingLeft",0,false,Category.CONTAINER,0,1000); /** @private */ static private var _paddingTopProperty:NumberProperty = new NumberProperty("paddingTop",0,false,Category.CONTAINER,0,1000); /** @private */ static private var _paddingRightProperty:NumberProperty = new NumberProperty("paddingRight",0,false,Category.CONTAINER,0,1000); /** @private */ static private var _paddingBottomProperty:NumberProperty = new NumberProperty("paddingBottom",0,false,Category.CONTAINER,0,1000); /** @private */ static private var _columnCountProperty:IntWithEnumProperty = new IntWithEnumProperty( "columnCount",flashx.textLayout.formats.FormatValue.AUTO,false,Category.CONTAINER,1,50 ,flashx.textLayout.formats.FormatValue.AUTO ); /** @private */ static private var _columnWidthProperty:NumberWithEnumProperty = new NumberWithEnumProperty( "columnWidth",flashx.textLayout.formats.FormatValue.AUTO,false,Category.CONTAINER,0,8000 ,flashx.textLayout.formats.FormatValue.AUTO ); /** @private */ static private var _firstBaselineOffsetProperty:NumberWithEnumProperty = new NumberWithEnumProperty( "firstBaselineOffset",flashx.textLayout.formats.BaselineOffset.AUTO,true,Category.CONTAINER,0,1000 ,flashx.textLayout.formats.BaselineOffset.AUTO ,flashx.textLayout.formats.BaselineOffset.ASCENT ,flashx.textLayout.formats.BaselineOffset.LINE_HEIGHT ); /** @private */ static private var _verticalAlignProperty:EnumStringProperty = new EnumStringProperty( "verticalAlign",flashx.textLayout.formats.VerticalAlign.TOP,false,Category.CONTAINER ,flashx.textLayout.formats.VerticalAlign.TOP ,flashx.textLayout.formats.VerticalAlign.MIDDLE ,flashx.textLayout.formats.VerticalAlign.BOTTOM ,flashx.textLayout.formats.VerticalAlign.JUSTIFY ); /** @private */ static private var _blockProgressionProperty:EnumStringProperty = new EnumStringProperty( "blockProgression",flashx.textLayout.formats.BlockProgression.TB,true,Category.CONTAINER ,flashx.textLayout.formats.BlockProgression.RL ,flashx.textLayout.formats.BlockProgression.TB ); /** @private */ static private var _lineBreakProperty:EnumStringProperty = new EnumStringProperty( "lineBreak",flashx.textLayout.formats.LineBreak.TO_FIT,false,Category.CONTAINER ,flashx.textLayout.formats.LineBreak.EXPLICIT ,flashx.textLayout.formats.LineBreak.TO_FIT ); /** @private */ static tlf_internal function get colorProperty():UintProperty { return _colorProperty; } /** @private */ static tlf_internal function get backgroundColorProperty():UintWithEnumProperty { return _backgroundColorProperty; } /** @private */ static tlf_internal function get lineThroughProperty():BooleanProperty { return _lineThroughProperty; } /** @private */ static tlf_internal function get textAlphaProperty():NumberProperty { return _textAlphaProperty; } /** @private */ static tlf_internal function get backgroundAlphaProperty():NumberProperty { return _backgroundAlphaProperty; } /** @private */ static tlf_internal function get fontSizeProperty():NumberProperty { return _fontSizeProperty; } /** @private */ static tlf_internal function get baselineShiftProperty():NumberOrPercentOrEnumProperty { return _baselineShiftProperty; } /** @private */ static tlf_internal function get trackingLeftProperty():NumberOrPercentProperty { return _trackingLeftProperty; } /** @private */ static tlf_internal function get trackingRightProperty():NumberOrPercentProperty { return _trackingRightProperty; } /** @private */ static tlf_internal function get lineHeightProperty():NumberOrPercentProperty { return _lineHeightProperty; } /** @private */ static tlf_internal function get breakOpportunityProperty():EnumStringProperty { return _breakOpportunityProperty; } /** @private */ static tlf_internal function get digitCaseProperty():EnumStringProperty { return _digitCaseProperty; } /** @private */ static tlf_internal function get digitWidthProperty():EnumStringProperty { return _digitWidthProperty; } /** @private */ static tlf_internal function get dominantBaselineProperty():EnumStringProperty { return _dominantBaselineProperty; } /** @private */ static tlf_internal function get kerningProperty():EnumStringProperty { return _kerningProperty; } /** @private */ static tlf_internal function get ligatureLevelProperty():EnumStringProperty { return _ligatureLevelProperty; } /** @private */ static tlf_internal function get alignmentBaselineProperty():EnumStringProperty { return _alignmentBaselineProperty; } /** @private */ static tlf_internal function get localeProperty():StringProperty { return _localeProperty; } /** @private */ static tlf_internal function get typographicCaseProperty():EnumStringProperty { return _typographicCaseProperty; } /** @private */ static tlf_internal function get fontFamilyProperty():StringProperty { return _fontFamilyProperty; } /** @private */ static tlf_internal function get textDecorationProperty():EnumStringProperty { return _textDecorationProperty; } /** @private */ static tlf_internal function get fontWeightProperty():EnumStringProperty { return _fontWeightProperty; } /** @private */ static tlf_internal function get fontStyleProperty():EnumStringProperty { return _fontStyleProperty; } /** @private */ static tlf_internal function get whiteSpaceCollapseProperty():EnumStringProperty { return _whiteSpaceCollapseProperty; } /** @private */ static tlf_internal function get renderingModeProperty():EnumStringProperty { return _renderingModeProperty; } /** @private */ static tlf_internal function get cffHintingProperty():EnumStringProperty { return _cffHintingProperty; } /** @private */ static tlf_internal function get fontLookupProperty():EnumStringProperty { return _fontLookupProperty; } /** @private */ static tlf_internal function get textRotationProperty():EnumStringProperty { return _textRotationProperty; } /** @private */ static tlf_internal function get textIndentProperty():NumberProperty { return _textIndentProperty; } /** @private */ static tlf_internal function get paragraphStartIndentProperty():NumberProperty { return _paragraphStartIndentProperty; } /** @private */ static tlf_internal function get paragraphEndIndentProperty():NumberProperty { return _paragraphEndIndentProperty; } /** @private */ static tlf_internal function get paragraphSpaceBeforeProperty():NumberProperty { return _paragraphSpaceBeforeProperty; } /** @private */ static tlf_internal function get paragraphSpaceAfterProperty():NumberProperty { return _paragraphSpaceAfterProperty; } /** @private */ static tlf_internal function get textAlignProperty():EnumStringProperty { return _textAlignProperty; } /** @private */ static tlf_internal function get textAlignLastProperty():EnumStringProperty { return _textAlignLastProperty; } /** @private */ static tlf_internal function get textJustifyProperty():EnumStringProperty { return _textJustifyProperty; } /** @private */ static tlf_internal function get justificationRuleProperty():EnumStringProperty { return _justificationRuleProperty; } /** @private */ static tlf_internal function get justificationStyleProperty():EnumStringProperty { return _justificationStyleProperty; } /** @private */ static tlf_internal function get directionProperty():EnumStringProperty { return _directionProperty; } /** @private */ static tlf_internal function get tabStopsProperty():TabStopsProperty { return _tabStopsProperty; } /** @private */ static tlf_internal function get leadingModelProperty():EnumStringProperty { return _leadingModelProperty; } /** @private */ static tlf_internal function get columnGapProperty():NumberProperty { return _columnGapProperty; } /** @private */ static tlf_internal function get paddingLeftProperty():NumberProperty { return _paddingLeftProperty; } /** @private */ static tlf_internal function get paddingTopProperty():NumberProperty { return _paddingTopProperty; } /** @private */ static tlf_internal function get paddingRightProperty():NumberProperty { return _paddingRightProperty; } /** @private */ static tlf_internal function get paddingBottomProperty():NumberProperty { return _paddingBottomProperty; } /** @private */ static tlf_internal function get columnCountProperty():IntWithEnumProperty { return _columnCountProperty; } /** @private */ static tlf_internal function get columnWidthProperty():NumberWithEnumProperty { return _columnWidthProperty; } /** @private */ static tlf_internal function get firstBaselineOffsetProperty():NumberWithEnumProperty { return _firstBaselineOffsetProperty; } /** @private */ static tlf_internal function get verticalAlignProperty():EnumStringProperty { return _verticalAlignProperty; } /** @private */ static tlf_internal function get blockProgressionProperty():EnumStringProperty { return _blockProgressionProperty; } /** @private */ static tlf_internal function get lineBreakProperty():EnumStringProperty { return _lineBreakProperty; } static private var _description:Object = { color:_colorProperty , backgroundColor:_backgroundColorProperty , lineThrough:_lineThroughProperty , textAlpha:_textAlphaProperty , backgroundAlpha:_backgroundAlphaProperty , fontSize:_fontSizeProperty , baselineShift:_baselineShiftProperty , trackingLeft:_trackingLeftProperty , trackingRight:_trackingRightProperty , lineHeight:_lineHeightProperty , breakOpportunity:_breakOpportunityProperty , digitCase:_digitCaseProperty , digitWidth:_digitWidthProperty , dominantBaseline:_dominantBaselineProperty , kerning:_kerningProperty , ligatureLevel:_ligatureLevelProperty , alignmentBaseline:_alignmentBaselineProperty , locale:_localeProperty , typographicCase:_typographicCaseProperty , fontFamily:_fontFamilyProperty , textDecoration:_textDecorationProperty , fontWeight:_fontWeightProperty , fontStyle:_fontStyleProperty , whiteSpaceCollapse:_whiteSpaceCollapseProperty , renderingMode:_renderingModeProperty , cffHinting:_cffHintingProperty , fontLookup:_fontLookupProperty , textRotation:_textRotationProperty , textIndent:_textIndentProperty , paragraphStartIndent:_paragraphStartIndentProperty , paragraphEndIndent:_paragraphEndIndentProperty , paragraphSpaceBefore:_paragraphSpaceBeforeProperty , paragraphSpaceAfter:_paragraphSpaceAfterProperty , textAlign:_textAlignProperty , textAlignLast:_textAlignLastProperty , textJustify:_textJustifyProperty , justificationRule:_justificationRuleProperty , justificationStyle:_justificationStyleProperty , direction:_directionProperty , tabStops:_tabStopsProperty , leadingModel:_leadingModelProperty , columnGap:_columnGapProperty , paddingLeft:_paddingLeftProperty , paddingTop:_paddingTopProperty , paddingRight:_paddingRightProperty , paddingBottom:_paddingBottomProperty , columnCount:_columnCountProperty , columnWidth:_columnWidthProperty , firstBaselineOffset:_firstBaselineOffsetProperty , verticalAlign:_verticalAlignProperty , blockProgression:_blockProgressionProperty , lineBreak:_lineBreakProperty } /** Property descriptions accessible by name. @private */ static tlf_internal function get description():Object { return _description; } /** @private */ static private var _emptyTextLayoutFormat:ITextLayoutFormat; /** * Returns an ITextLayoutFormat instance with all properties set to undefined. * @private * @playerversion Flash 10 * @playerversion AIR 1.5 * @langversion 3.0 */ static tlf_internal function get emptyTextLayoutFormat():ITextLayoutFormat { if (_emptyTextLayoutFormat == null) _emptyTextLayoutFormat = new TextLayoutFormatValueHolder(); return _emptyTextLayoutFormat; } private var _color:*; private var _backgroundColor:*; private var _lineThrough:*; private var _textAlpha:*; private var _backgroundAlpha:*; private var _fontSize:*; private var _baselineShift:*; private var _trackingLeft:*; private var _trackingRight:*; private var _lineHeight:*; private var _breakOpportunity:*; private var _digitCase:*; private var _digitWidth:*; private var _dominantBaseline:*; private var _kerning:*; private var _ligatureLevel:*; private var _alignmentBaseline:*; private var _locale:*; private var _typographicCase:*; private var _fontFamily:*; private var _textDecoration:*; private var _fontWeight:*; private var _fontStyle:*; private var _whiteSpaceCollapse:*; private var _renderingMode:*; private var _cffHinting:*; private var _fontLookup:*; private var _textRotation:*; private var _textIndent:*; private var _paragraphStartIndent:*; private var _paragraphEndIndent:*; private var _paragraphSpaceBefore:*; private var _paragraphSpaceAfter:*; private var _textAlign:*; private var _textAlignLast:*; private var _textJustify:*; private var _justificationRule:*; private var _justificationStyle:*; private var _direction:*; private var _tabStops:*; private var _leadingModel:*; private var _columnGap:*; private var _paddingLeft:*; private var _paddingTop:*; private var _paddingRight:*; private var _paddingBottom:*; private var _columnCount:*; private var _columnWidth:*; private var _firstBaselineOffset:*; private var _verticalAlign:*; private var _blockProgression:*; private var _lineBreak:*; /** * Color of the text. A hexadecimal number that specifies three 8-bit RGB (red, green, blue) values; for example, 0xFF0000 is red and 0x00FF00 is green. *

Default value is undefined indicating not set.

*

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of 0.

* * @throws RangeError when set value is not within range for this property * * @playerversion Flash 10 * @playerversion AIR 1.5 * @langversion 3.0 */ public function get color():* { return _color; } public function set color(newValue:*):void { _color = _colorProperty.setHelper(_color,newValue); } /** * Background color of the text (adopts default value if undefined during cascade). Can be either the constant value BackgroundColor.TRANSPARENT, or a hexadecimal value that specifies the three 8-bit RGB (red, green, blue) values; for example, 0xFF0000 is red and 0x00FF00 is green. *

Legal values as a string are flashx.textLayout.formats.BackgroundColor.TRANSPARENT, flashx.textLayout.formats.FormatValue.INHERIT and uints from 0x0 to 0xffffffff.

*

Default value is undefined indicating not set.

*

If undefined during the cascade this property will have a value of TRANSPARENT.

* * @throws RangeError when set value is not within range for this property * * @playerversion Flash 10 * @playerversion AIR 1.5 * @langversion 3.0 * @see flashx.textLayout.formats.BackgroundColor */ public function get backgroundColor():* { return _backgroundColor; } public function set backgroundColor(newValue:*):void { _backgroundColor = _backgroundColorProperty.setHelper(_backgroundColor,newValue); } /** * If true, applies strikethrough, a line drawn through the middle of the text. *

Legal values are true, false and flashx.textLayout.formats.FormatValue.INHERIT.

*

Default value is undefined indicating not set.

*

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of false.

* * @throws RangeError when set value is not within range for this property * * @playerversion Flash 10 * @playerversion AIR 1.5 * @langversion 3.0 */ public function get lineThrough():* { return _lineThrough; } public function set lineThrough(newValue:*):void { _lineThrough = _lineThroughProperty.setHelper(_lineThrough,newValue); } /** * Alpha (transparency) value for the text. A value of 0 is fully transparent, and a value of 1 is fully opaque. Display objects with textAlpha set to 0 are active, even though they are invisible. *

Legal values are numbers from 0 to 1 and flashx.textLayout.formats.FormatValue.INHERIT.

*

Default value is undefined indicating not set.

*

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of 1.

* * @throws RangeError when set value is not within range for this property * * @playerversion Flash 10 * @playerversion AIR 1.5 * @langversion 3.0 */ public function get textAlpha():* { return _textAlpha; } public function set textAlpha(newValue:*):void { _textAlpha = _textAlphaProperty.setHelper(_textAlpha,newValue); } /** * Alpha (transparency) value for the background (adopts default value if undefined during cascade). A value of 0 is fully transparent, and a value of 1 is fully opaque. Display objects with alpha set to 0 are active, even though they are invisible. *

Legal values are numbers from 0 to 1 and flashx.textLayout.formats.FormatValue.INHERIT.

*

Default value is undefined indicating not set.

*

If undefined during the cascade this property will have a value of 1.

* * @throws RangeError when set value is not within range for this property * * @playerversion Flash 10 * @playerversion AIR 1.5 * @langversion 3.0 */ public function get backgroundAlpha():* { return _backgroundAlpha; } public function set backgroundAlpha(newValue:*):void { _backgroundAlpha = _backgroundAlphaProperty.setHelper(_backgroundAlpha,newValue); } /** * The size of the text in pixels. *

Legal values are numbers from 1 to 720 and flashx.textLayout.formats.FormatValue.INHERIT.

*

Default value is undefined indicating not set.

*

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of 12.

* * @throws RangeError when set value is not within range for this property * * @playerversion Flash 10 * @playerversion AIR 1.5 * @langversion 3.0 */ public function get fontSize():* { return _fontSize; } public function set fontSize(newValue:*):void { _fontSize = _fontSizeProperty.setHelper(_fontSize,newValue); } /** * Amount to shift the baseline from the dominantBaseline value. Units are in pixels, or a percentage of fontSize (in which case, enter a string value, like 140%). Positive values shift the line up for horizontal text (right for vertical) and negative values shift it down for horizontal (left for vertical). *

Legal values are flashx.textLayout.formats.BaselineShift.SUPERSCRIPT, flashx.textLayout.formats.BaselineShift.SUBSCRIPT, flashx.textLayout.formats.FormatValue.INHERIT.

*

Legal values as a number are from -1000 to 1000.

*

Legal values as a percent are numbers from -1000 to 1000.

*

Default value is undefined indicating not set.

*

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of 0.0.

* * @throws RangeError when set value is not within range for this property * * @playerversion Flash 10 * @playerversion AIR 1.5 * @langversion 3.0 * @see flashx.textLayout.formats.BaselineShift */ public function get baselineShift():* { return _baselineShift; } public function set baselineShift(newValue:*):void { _baselineShift = _baselineShiftProperty.setHelper(_baselineShift,newValue); } /** * Number in pixels (or percent of fontSize, like 120%) indicating the amount of tracking (manual kerning) to be applied to the left of each character. If kerning is enabled, the trackingLeft value is added to the values in the kerning table for the font. If kerning is disabled, the trackingLeft value is used as a manual kerning value. Supports both positive and negative values. *

Legal values as a number are from -1000 to 1000.

*

Legal values as a percent are numbers from -1000% to 1000%.

*

Legal values include flashx.textLayout.formats.FormatValue.INHERIT.

*

Default value is undefined indicating not set.

*

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of 0.

* * @throws RangeError when set value is not within range for this property * * @playerversion Flash 10 * @playerversion AIR 1.5 * @langversion 3.0 */ public function get trackingLeft():* { return _trackingLeft; } public function set trackingLeft(newValue:*):void { _trackingLeft = _trackingLeftProperty.setHelper(_trackingLeft,newValue); } /** * Number in pixels (or percent of fontSize, like 120%) indicating the amount of tracking (manual kerning) to be applied to the right of each character. If kerning is enabled, the trackingRight value is added to the values in the kerning table for the font. If kerning is disabled, the trackingRight value is used as a manual kerning value. Supports both positive and negative values. *

Legal values as a number are from -1000 to 1000.

*

Legal values as a percent are numbers from -1000% to 1000%.

*

Legal values include flashx.textLayout.formats.FormatValue.INHERIT.

*

Default value is undefined indicating not set.

*

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of 0.

* * @throws RangeError when set value is not within range for this property * * @playerversion Flash 10 * @playerversion AIR 1.5 * @langversion 3.0 */ public function get trackingRight():* { return _trackingRight; } public function set trackingRight(newValue:*):void { _trackingRight = _trackingRightProperty.setHelper(_trackingRight,newValue); } /** * Leading controls for the text. The distance from the baseline of the previous or the next line (based on LeadingModel) to the baseline of the current line is equal to the maximum amount of the leading applied to any character in the line. This is either a number or a percent. If specifying a percent, enter a string value, like 140%.

lineHeight1lineHeight2

*

Legal values as a number are from -720 to 720.

*

Legal values as a percent are numbers from -1000% to 1000%.

*

Legal values include flashx.textLayout.formats.FormatValue.INHERIT.

*

Default value is undefined indicating not set.

*

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of 120%.

* * @throws RangeError when set value is not within range for this property * * @playerversion Flash 10 * @playerversion AIR 1.5 * @langversion 3.0 */ public function get lineHeight():* { return _lineHeight; } public function set lineHeight(newValue:*):void { _lineHeight = _lineHeightProperty.setHelper(_lineHeight,newValue); } /** * Controls where lines are allowed to break when breaking wrapping text into multiple lines. Set to BreakOpportunity.AUTO to break text normally. Set to BreakOpportunity.NONE to not break the text unless the text would overrun the measure and there are no other places to break the line. Set to BreakOpportunity.ANY to allow the line to break anywhere, rather than just between words. Set to BreakOpportunity.ALL to have each typographic cluster put on a separate line (useful for text on a path). *

Legal values are flash.text.engine.BreakOpportunity.ALL, flash.text.engine.BreakOpportunity.ANY, flash.text.engine.BreakOpportunity.AUTO, flash.text.engine.BreakOpportunity.NONE, flashx.textLayout.formats.FormatValue.INHERIT.

*

Default value is undefined indicating not set.

*

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of AUTO.

* * @throws RangeError when set value is not within range for this property * * @playerversion Flash 10 * @playerversion AIR 1.5 * @langversion 3.0 * @see flash.text.engine.BreakOpportunity */ public function get breakOpportunity():* { return _breakOpportunity; } public function set breakOpportunity(newValue:*):void { _breakOpportunity = _breakOpportunityProperty.setHelper(_breakOpportunity,newValue); } /** * The type of digit case used for this text. Setting the value to DigitCase.OLD_STYLE approximates lowercase letterforms with varying ascenders and descenders. The figures are proportionally spaced. This style is only available in selected typefaces, most commonly in a supplemental or expert font. The DigitCase.LINING setting has all-cap height and is typically monospaced to line up in charts.

digitCase

*

Legal values are flash.text.engine.DigitCase.DEFAULT, flash.text.engine.DigitCase.LINING, flash.text.engine.DigitCase.OLD_STYLE, flashx.textLayout.formats.FormatValue.INHERIT.

*

Default value is undefined indicating not set.

*

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of DEFAULT.

* * @throws RangeError when set value is not within range for this property * * @playerversion Flash 10 * @playerversion AIR 1.5 * @langversion 3.0 * @see flash.text.engine.DigitCase */ public function get digitCase():* { return _digitCase; } public function set digitCase(newValue:*):void { _digitCase = _digitCaseProperty.setHelper(_digitCase,newValue); } /** * Type of digit width used for this text. This can be DigitWidth.PROPORTIONAL, which looks best for individual numbers, or DigitWidth.TABULAR, which works best for numbers in tables, charts, and vertical rows.

digitWidth

*

Legal values are flash.text.engine.DigitWidth.DEFAULT, flash.text.engine.DigitWidth.PROPORTIONAL, flash.text.engine.DigitWidth.TABULAR, flashx.textLayout.formats.FormatValue.INHERIT.

*

Default value is undefined indicating not set.

*

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of DEFAULT.

* * @throws RangeError when set value is not within range for this property * * @playerversion Flash 10 * @playerversion AIR 1.5 * @langversion 3.0 * @see flash.text.engine.DigitWidth */ public function get digitWidth():* { return _digitWidth; } public function set digitWidth(newValue:*):void { _digitWidth = _digitWidthProperty.setHelper(_digitWidth,newValue); } /** * Specifies which element baseline snaps to the alignmentBaseline to determine the vertical position of the element on the line. A value of TextBaseline.AUTO selects the dominant baseline based on the locale property of the parent paragraph. For Japanese and Chinese, the selected baseline value is TextBaseline.IDEOGRAPHIC_CENTER; for all others it is TextBaseline.ROMAN. These baseline choices are determined by the choice of font and the font size.

baselines

*

Legal values are flashx.textLayout.formats.FormatValue.AUTO, flash.text.engine.TextBaseline.ROMAN, flash.text.engine.TextBaseline.ASCENT, flash.text.engine.TextBaseline.DESCENT, flash.text.engine.TextBaseline.IDEOGRAPHIC_TOP, flash.text.engine.TextBaseline.IDEOGRAPHIC_CENTER, flash.text.engine.TextBaseline.IDEOGRAPHIC_BOTTOM, flashx.textLayout.formats.FormatValue.INHERIT.

*

Default value is undefined indicating not set.

*

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of flashx.textLayout.formats.FormatValue.AUTO.

* * @throws RangeError when set value is not within range for this property * * @playerversion Flash 10 * @playerversion AIR 1.5 * @langversion 3.0 * @see flash.text.engine.TextBaseline */ public function get dominantBaseline():* { return _dominantBaseline; } public function set dominantBaseline(newValue:*):void { _dominantBaseline = _dominantBaselineProperty.setHelper(_dominantBaseline,newValue); } /** * Kerning adjusts the pixels between certain character pairs to improve readability. Kerning is supported for all fonts with kerning tables. *

Legal values are flash.text.engine.Kerning.ON, flash.text.engine.Kerning.OFF, flash.text.engine.Kerning.AUTO, flashx.textLayout.formats.FormatValue.INHERIT.

*

Default value is undefined indicating not set.

*

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of AUTO.

* * @throws RangeError when set value is not within range for this property * * @playerversion Flash 10 * @playerversion AIR 1.5 * @langversion 3.0 * @see flash.text.engine.Kerning */ public function get kerning():* { return _kerning; } public function set kerning(newValue:*):void { _kerning = _kerningProperty.setHelper(_kerning,newValue); } /** * Controls which of the ligatures that are defined in the font may be used in the text. The ligatures that appear for each of these settings is dependent on the font. A ligature occurs where two or more letter-forms are joined as a single glyph. Ligatures usually replace consecutive characters sharing common components, such as the letter pairs 'fi', 'fl', or 'ae'. They are used with both Latin and Non-Latin character sets. The ligatures enabled by the values of the LigatureLevel class - MINIMUM, COMMON, UNCOMMON, and EXOTIC - are additive. Each value enables a new set of ligatures, but also includes those of the previous types.

Note: When working with Arabic or Syriac fonts, ligatureLevel must be set to MINIMUM or above.

ligatureLevel

*

Legal values are flash.text.engine.LigatureLevel.MINIMUM, flash.text.engine.LigatureLevel.COMMON, flash.text.engine.LigatureLevel.UNCOMMON, flash.text.engine.LigatureLevel.EXOTIC, flashx.textLayout.formats.FormatValue.INHERIT.

*

Default value is undefined indicating not set.

*

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of COMMON.

* * @throws RangeError when set value is not within range for this property * * @playerversion Flash 10 * @playerversion AIR 1.5 * @langversion 3.0 * @see flash.text.engine.LigatureLevel */ public function get ligatureLevel():* { return _ligatureLevel; } public function set ligatureLevel(newValue:*):void { _ligatureLevel = _ligatureLevelProperty.setHelper(_ligatureLevel,newValue); } /** * Specifies the baseline to which the dominant baseline aligns. For example, if you set dominantBaseline to ASCENT, setting alignmentBaseline to DESCENT aligns the top of the text with the DESCENT baseline, or below the line. The largest element in the line generally determines the baselines.

baselines

*

Legal values are flash.text.engine.TextBaseline.ROMAN, flash.text.engine.TextBaseline.ASCENT, flash.text.engine.TextBaseline.DESCENT, flash.text.engine.TextBaseline.IDEOGRAPHIC_TOP, flash.text.engine.TextBaseline.IDEOGRAPHIC_CENTER, flash.text.engine.TextBaseline.IDEOGRAPHIC_BOTTOM, flash.text.engine.TextBaseline.USE_DOMINANT_BASELINE, flashx.textLayout.formats.FormatValue.INHERIT.

*

Default value is undefined indicating not set.

*

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of USE_DOMINANT_BASELINE.

* @includeExample examples\TextLayoutFormat_alignmentBaselineExample.as -noswf * * @throws RangeError when set value is not within range for this property * * @playerversion Flash 10 * @playerversion AIR 1.5 * @langversion 3.0 * @see flash.text.engine.TextBaseline */ public function get alignmentBaseline():* { return _alignmentBaseline; } public function set alignmentBaseline(newValue:*):void { _alignmentBaseline = _alignmentBaselineProperty.setHelper(_alignmentBaseline,newValue); } /** * The locale of the text. Controls case transformations and shaping. Standard locale identifiers as described in Unicode Technical Standard #35 are used. For example en, en_US and en-US are all English, ja is Japanese. *

Default value is undefined indicating not set.

*

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of en.

* * @throws RangeError when set value is not within range for this property * * @playerversion Flash 10 * @playerversion AIR 1.5 * @langversion 3.0 */ public function get locale():* { return _locale; } public function set locale(newValue:*):void { _locale = _localeProperty.setHelper(_locale,newValue); } /** * The type of typographic case used for this text. Here are some examples:

typographicCase

*

Legal values are flashx.textLayout.formats.TLFTypographicCase.DEFAULT, flashx.textLayout.formats.TLFTypographicCase.CAPS_TO_SMALL_CAPS, flashx.textLayout.formats.TLFTypographicCase.UPPERCASE, flashx.textLayout.formats.TLFTypographicCase.LOWERCASE, flashx.textLayout.formats.TLFTypographicCase.LOWERCASE_TO_SMALL_CAPS, flashx.textLayout.formats.FormatValue.INHERIT.

*

Default value is undefined indicating not set.

*

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of DEFAULT.

* * @throws RangeError when set value is not within range for this property * * @playerversion Flash 10 * @playerversion AIR 1.5 * @langversion 3.0 * @see flashx.textLayout.formats.TLFTypographicCase */ public function get typographicCase():* { return _typographicCase; } public function set typographicCase(newValue:*):void { _typographicCase = _typographicCaseProperty.setHelper(_typographicCase,newValue); } /** * The name of the font to use, or a comma-separated list of font names. The Flash runtime renders the element with the first available font in the list. For example Arial, Helvetica, _sans causes the player to search for Arial, then Helvetica if Arial is not found, then _sans if neither is found. *

Default value is undefined indicating not set.

*

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of Arial.

* * @throws RangeError when set value is not within range for this property * * @playerversion Flash 10 * @playerversion AIR 1.5 * @langversion 3.0 */ public function get fontFamily():* { return _fontFamily; } public function set fontFamily(newValue:*):void { _fontFamily = _fontFamilyProperty.setHelper(_fontFamily,newValue); } /** * Decoration on text. Use to apply underlining; default is none. *

Legal values are flashx.textLayout.formats.TextDecoration.NONE, flashx.textLayout.formats.TextDecoration.UNDERLINE, flashx.textLayout.formats.FormatValue.INHERIT.

*

Default value is undefined indicating not set.

*

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of NONE.

* * @throws RangeError when set value is not within range for this property * * @playerversion Flash 10 * @playerversion AIR 1.5 * @langversion 3.0 * @see flashx.textLayout.formats.TextDecoration */ public function get textDecoration():* { return _textDecoration; } public function set textDecoration(newValue:*):void { _textDecoration = _textDecorationProperty.setHelper(_textDecoration,newValue); } /** * Weight of text. May be FontWeight.NORMAL for use in plain text, or FontWeight.BOLD. Applies only to device fonts (fontLookup property is set to flash.text.engine.FontLookup.DEVICE). *

Legal values are flash.text.engine.FontWeight.NORMAL, flash.text.engine.FontWeight.BOLD, flashx.textLayout.formats.FormatValue.INHERIT.

*

Default value is undefined indicating not set.

*

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of NORMAL.

* * @throws RangeError when set value is not within range for this property * * @playerversion Flash 10 * @playerversion AIR 1.5 * @langversion 3.0 * @see flash.text.engine.FontWeight */ public function get fontWeight():* { return _fontWeight; } public function set fontWeight(newValue:*):void { _fontWeight = _fontWeightProperty.setHelper(_fontWeight,newValue); } /** * Style of text. May be FontPosture.NORMAL, for use in plain text, or FontPosture.ITALIC for italic. This property applies only to device fonts (fontLookup property is set to flash.text.engine.FontLookup.DEVICE). *

Legal values are flash.text.engine.FontPosture.NORMAL, flash.text.engine.FontPosture.ITALIC, flashx.textLayout.formats.FormatValue.INHERIT.

*

Default value is undefined indicating not set.

*

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of NORMAL.

* * @throws RangeError when set value is not within range for this property * * @playerversion Flash 10 * @playerversion AIR 1.5 * @langversion 3.0 * @see flash.text.engine.FontPosture */ public function get fontStyle():* { return _fontStyle; } public function set fontStyle(newValue:*):void { _fontStyle = _fontStyleProperty.setHelper(_fontStyle,newValue); } /** * Collapses or preserves whitespace when importing text into a TextFlow. WhiteSpaceCollapse.PRESERVE retains all whitespace characters. WhiteSpaceCollapse.COLLAPSE removes newlines, tabs, and leading or trailing spaces within a block of imported text. Line break tags (<br/>) and Unicode line separator characters are retained. *

Legal values are flashx.textLayout.formats.WhiteSpaceCollapse.PRESERVE, flashx.textLayout.formats.WhiteSpaceCollapse.COLLAPSE, flashx.textLayout.formats.FormatValue.INHERIT.

*

Default value is undefined indicating not set.

*

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of COLLAPSE.

* * @throws RangeError when set value is not within range for this property * * @playerversion Flash 10 * @playerversion AIR 1.5 * @langversion 3.0 * @see flashx.textLayout.formats.WhiteSpaceCollapse */ public function get whiteSpaceCollapse():* { return _whiteSpaceCollapse; } public function set whiteSpaceCollapse(newValue:*):void { _whiteSpaceCollapse = _whiteSpaceCollapseProperty.setHelper(_whiteSpaceCollapse,newValue); } /** * The rendering mode used for this text. Applies only to embedded fonts (fontLookup property is set to FontLookup.EMBEDDED_CFF). *

Legal values are flash.text.engine.RenderingMode.NORMAL, flash.text.engine.RenderingMode.CFF, flashx.textLayout.formats.FormatValue.INHERIT.

*

Default value is undefined indicating not set.

*

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of CFF.

* * @throws RangeError when set value is not within range for this property * * @playerversion Flash 10 * @playerversion AIR 1.5 * @langversion 3.0 * @see flash.text.engine.RenderingMode */ public function get renderingMode():* { return _renderingMode; } public function set renderingMode(newValue:*):void { _renderingMode = _renderingModeProperty.setHelper(_renderingMode,newValue); } /** * The type of CFF hinting used for this text. CFF hinting determines whether the Flash runtime forces strong horizontal stems to fit to a sub pixel grid or not. This property applies only if the renderingMode property is set to RenderingMode.CFF, and the font is embedded (fontLookup property is set to FontLookup.EMBEDDED_CFF). At small screen sizes, hinting produces a clear, legible text for human readers. *

Legal values are flash.text.engine.CFFHinting.NONE, flash.text.engine.CFFHinting.HORIZONTAL_STEM, flashx.textLayout.formats.FormatValue.INHERIT.

*

Default value is undefined indicating not set.

*

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of HORIZONTAL_STEM.

* * @throws RangeError when set value is not within range for this property * * @playerversion Flash 10 * @playerversion AIR 1.5 * @langversion 3.0 * @see flash.text.engine.CFFHinting */ public function get cffHinting():* { return _cffHinting; } public function set cffHinting(newValue:*):void { _cffHinting = _cffHintingProperty.setHelper(_cffHinting,newValue); } /** * Font lookup to use. Specifying FontLookup.DEVICE uses the fonts installed on the system that is running the SWF file. Device fonts result in a smaller movie size, but text is not always rendered the same across different systems and platforms. Specifying FontLookup.EMBEDDED_CFF uses font outlines embedded in the published SWF file. Embedded fonts increase the size of the SWF file (sometimes dramatically), but text is consistently displayed in the chosen font. *

Legal values are flash.text.engine.FontLookup.DEVICE, flash.text.engine.FontLookup.EMBEDDED_CFF, flashx.textLayout.formats.FormatValue.INHERIT.

*

Default value is undefined indicating not set.

*

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of DEVICE.

* * @throws RangeError when set value is not within range for this property * * @playerversion Flash 10 * @playerversion AIR 1.5 * @langversion 3.0 * @see flash.text.engine.FontLookup */ public function get fontLookup():* { return _fontLookup; } public function set fontLookup(newValue:*):void { _fontLookup = _fontLookupProperty.setHelper(_fontLookup,newValue); } /** * Determines the number of degrees to rotate this text. *

Legal values are flash.text.engine.TextRotation.ROTATE_0, flash.text.engine.TextRotation.ROTATE_180, flash.text.engine.TextRotation.ROTATE_270, flash.text.engine.TextRotation.ROTATE_90, flash.text.engine.TextRotation.AUTO, flashx.textLayout.formats.FormatValue.INHERIT.

*

Default value is undefined indicating not set.

*

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of AUTO.

* * @throws RangeError when set value is not within range for this property * * @playerversion Flash 10 * @playerversion AIR 1.5 * @langversion 3.0 * @see flash.text.engine.TextRotation */ public function get textRotation():* { return _textRotation; } public function set textRotation(newValue:*):void { _textRotation = _textRotationProperty.setHelper(_textRotation,newValue); } /** * A Number that specifies, in pixels, the amount to indent the first line of the paragraph. * A negative indent will push the line into the margin, and possibly out of the container. *

Legal values are numbers from -1000 to 1000 and flashx.textLayout.formats.FormatValue.INHERIT.

*

Default value is undefined indicating not set.

*

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of 0.

* * @throws RangeError when set value is not within range for this property * * @playerversion Flash 10 * @playerversion AIR 1.5 * @langversion 3.0 */ public function get textIndent():* { return _textIndent; } public function set textIndent(newValue:*):void { _textIndent = _textIndentProperty.setHelper(_textIndent,newValue); } /** * A Number that specifies, in pixels, the amount to indent the paragraph's start edge. Refers to the left edge in left-to-right text and the right edge in right-to-left text. *

Legal values are numbers from 0 to 1000 and flashx.textLayout.formats.FormatValue.INHERIT.

*

Default value is undefined indicating not set.

*

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of 0.

* * @throws RangeError when set value is not within range for this property * * @playerversion Flash 10 * @playerversion AIR 1.5 * @langversion 3.0 */ public function get paragraphStartIndent():* { return _paragraphStartIndent; } public function set paragraphStartIndent(newValue:*):void { _paragraphStartIndent = _paragraphStartIndentProperty.setHelper(_paragraphStartIndent,newValue); } /** * A Number that specifies, in pixels, the amount to indent the paragraph's end edge. Refers to the right edge in left-to-right text and the left edge in right-to-left text. *

Legal values are numbers from 0 to 1000 and flashx.textLayout.formats.FormatValue.INHERIT.

*

Default value is undefined indicating not set.

*

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of 0.

* * @throws RangeError when set value is not within range for this property * * @playerversion Flash 10 * @playerversion AIR 1.5 * @langversion 3.0 */ public function get paragraphEndIndent():* { return _paragraphEndIndent; } public function set paragraphEndIndent(newValue:*):void { _paragraphEndIndent = _paragraphEndIndentProperty.setHelper(_paragraphEndIndent,newValue); } /** * A Number that specifies the amount of space, in pixels, to leave before the paragraph. * Collapses in tandem with paragraphSpaceAfter. *

Legal values are numbers from 0 to 1000 and flashx.textLayout.formats.FormatValue.INHERIT.

*

Default value is undefined indicating not set.

*

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of 0.

* * @throws RangeError when set value is not within range for this property * * @playerversion Flash 10 * @playerversion AIR 1.5 * @langversion 3.0 */ public function get paragraphSpaceBefore():* { return _paragraphSpaceBefore; } public function set paragraphSpaceBefore(newValue:*):void { _paragraphSpaceBefore = _paragraphSpaceBeforeProperty.setHelper(_paragraphSpaceBefore,newValue); } /** * A Number that specifies the amount of space, in pixels, to leave after the paragraph. * Collapses in tandem with paragraphSpaceBefore. *

Legal values are numbers from 0 to 1000 and flashx.textLayout.formats.FormatValue.INHERIT.

*

Default value is undefined indicating not set.

*

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of 0.

* * @throws RangeError when set value is not within range for this property * * @playerversion Flash 10 * @playerversion AIR 1.5 * @langversion 3.0 */ public function get paragraphSpaceAfter():* { return _paragraphSpaceAfter; } public function set paragraphSpaceAfter(newValue:*):void { _paragraphSpaceAfter = _paragraphSpaceAfterProperty.setHelper(_paragraphSpaceAfter,newValue); } /** * Alignment of lines in the paragraph relative to the container. * TextAlign.LEFT aligns lines along the left edge of the container. TextAlign.RIGHT aligns on the right edge. TextAlign.CENTER positions the line equidistant from the left and right edges. TextAlign.JUSTIFY spreads the lines out so they fill the space. TextAlign.START is equivalent to setting left in left-to-right text, or right in right-to-left text. TextAlign.END is equivalent to setting right in left-to-right text, or left in right-to-left text. *

Legal values are flashx.textLayout.formats.TextAlign.LEFT, flashx.textLayout.formats.TextAlign.RIGHT, flashx.textLayout.formats.TextAlign.CENTER, flashx.textLayout.formats.TextAlign.JUSTIFY, flashx.textLayout.formats.TextAlign.START, flashx.textLayout.formats.TextAlign.END, flashx.textLayout.formats.FormatValue.INHERIT.

*

Default value is undefined indicating not set.

*

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of START.

* * @throws RangeError when set value is not within range for this property * * @playerversion Flash 10 * @playerversion AIR 1.5 * @langversion 3.0 * @see flashx.textLayout.formats.TextAlign */ public function get textAlign():* { return _textAlign; } public function set textAlign(newValue:*):void { _textAlign = _textAlignProperty.setHelper(_textAlign,newValue); } /** * Alignment of the last (or only) line in the paragraph relative to the container in justified text. * If textAlign is set to TextAlign.JUSTIFY, textAlignLast specifies how the last line (or only line, if this is a one line block) is aligned. Values are similar to textAlign. *

Legal values are flashx.textLayout.formats.TextAlign.LEFT, flashx.textLayout.formats.TextAlign.RIGHT, flashx.textLayout.formats.TextAlign.CENTER, flashx.textLayout.formats.TextAlign.JUSTIFY, flashx.textLayout.formats.TextAlign.START, flashx.textLayout.formats.TextAlign.END, flashx.textLayout.formats.FormatValue.INHERIT.

*

Default value is undefined indicating not set.

*

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of START.

* * @throws RangeError when set value is not within range for this property * * @playerversion Flash 10 * @playerversion AIR 1.5 * @langversion 3.0 * @see flashx.textLayout.formats.TextAlign */ public function get textAlignLast():* { return _textAlignLast; } public function set textAlignLast(newValue:*):void { _textAlignLast = _textAlignLastProperty.setHelper(_textAlignLast,newValue); } /** * Specifies options for justifying text. * Default value is TextJustify.INTER_WORD, meaning that extra space is added to the space characters. TextJustify.DISTRIBUTE adds extra space to space characters and between individual letters. Used only in conjunction with a justificationRule value of JustificationRule.SPACE. *

Legal values are flashx.textLayout.formats.TextJustify.INTER_WORD, flashx.textLayout.formats.TextJustify.DISTRIBUTE, flashx.textLayout.formats.FormatValue.INHERIT.

*

Default value is undefined indicating not set.

*

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of INTER_WORD.

* * @throws RangeError when set value is not within range for this property * * @playerversion Flash 10 * @playerversion AIR 1.5 * @langversion 3.0 * @see flashx.textLayout.formats.TextJustify */ public function get textJustify():* { return _textJustify; } public function set textJustify(newValue:*):void { _textJustify = _textJustifyProperty.setHelper(_textJustify,newValue); } /** * Rule used to justify text in a paragraph. * Default value is FormatValue.AUTO, which justifies text based on the paragraph's locale property. For all languages except Japanese and Chinese, FormatValue.AUTO becomes JustificationRule.SPACE, which adds extra space to the space characters. For Japanese and Chinese, FormatValue.AUTO becomes JustficationRule.EAST_ASIAN. In part, justification changes the spacing of punctuation. In Roman text the comma and Japanese periods take a full character's width but in East Asian text only half of a character's width. Also, in the East Asian text the spacing between sequential punctuation marks becomes tighter, obeying traditional East Asian typographic conventions. Note, too, in the example below the leading that is applied to the second line of the paragraphs. In the East Asian version, the last two lines push left. In the Roman version, the second and following lines push left.

justificationRule

*

Legal values are flashx.textLayout.formats.JustificationRule.EAST_ASIAN, flashx.textLayout.formats.JustificationRule.SPACE, flashx.textLayout.formats.FormatValue.AUTO, flashx.textLayout.formats.FormatValue.INHERIT.

*

Default value is undefined indicating not set.

*

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of flashx.textLayout.formats.FormatValue.AUTO.

* * @throws RangeError when set value is not within range for this property * * @playerversion Flash 10 * @playerversion AIR 1.5 * @langversion 3.0 * @see flashx.textLayout.formats.JustificationRule */ public function get justificationRule():* { return _justificationRule; } public function set justificationRule(newValue:*):void { _justificationRule = _justificationRuleProperty.setHelper(_justificationRule,newValue); } /** * The style used for justification of the paragraph. Used only in conjunction with a justificationRule setting of JustificationRule.EAST_ASIAN. * Default value of FormatValue.AUTO is resolved to JustificationStyle.PUSH_IN_KINSOKU for all locales. The constants defined by the JustificationStyle class specify options for handling kinsoku characters, which are Japanese characters that cannot appear at either the beginning or end of a line. If you want looser text, specify JustificationStyle.PUSH-OUT-ONLY. If you want behavior that is like what you get with the justificationRule of JustificationRule.SPACE, use JustificationStyle.PRIORITIZE-LEAST-ADJUSTMENT. *

Legal values are flash.text.engine.JustificationStyle.PRIORITIZE_LEAST_ADJUSTMENT, flash.text.engine.JustificationStyle.PUSH_IN_KINSOKU, flash.text.engine.JustificationStyle.PUSH_OUT_ONLY, flashx.textLayout.formats.FormatValue.AUTO, flashx.textLayout.formats.FormatValue.INHERIT.

*

Default value is undefined indicating not set.

*

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of flashx.textLayout.formats.FormatValue.AUTO.

* * @throws RangeError when set value is not within range for this property * * @playerversion Flash 10 * @playerversion AIR 1.5 * @langversion 3.0 * @see flash.text.engine.JustificationStyle */ public function get justificationStyle():* { return _justificationStyle; } public function set justificationStyle(newValue:*):void { _justificationStyle = _justificationStyleProperty.setHelper(_justificationStyle,newValue); } /** * Specifies the default bidirectional embedding level of the text in the text block. * Left-to-right reading order, as in Latin-style scripts, or right-to-left reading order, as in Arabic or Hebrew. This property also affects column direction when it is applied at the container level. Columns can be either left-to-right or right-to-left, just like text. Below are some examples:

direction

*

Legal values are flashx.textLayout.formats.Direction.LTR, flashx.textLayout.formats.Direction.RTL, flashx.textLayout.formats.FormatValue.INHERIT.

*

Default value is undefined indicating not set.

*

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of LTR.

* * @throws RangeError when set value is not within range for this property * * @playerversion Flash 10 * @playerversion AIR 1.5 * @langversion 3.0 * @see flashx.textLayout.formats.Direction */ public function get direction():* { return _direction; } public function set direction(newValue:*):void { _direction = _directionProperty.setHelper(_direction,newValue); } /** * Specifies the tab stops associated with the paragraph. * Setters can take an array of flashx.textLayout.formats.TabStopFormat, a condensed string representation, undefined, or FormatValue.INHERIT. The condensed string representation is always converted into an array of flashx.textLayout.formats.TabStopFormat.

The string-based format is a list of tab stops, where each tab stop is delimited by one or more spaces.

A tab stop takes the following form: <alignment type><alignment position>|<alignment token>.

The alignment type is a single character, and can be S, E, C, or D (or lower-case equivalents). S or s for start, E or e for end, C or c for center, D or d for decimal. The alignment type is optional, and if its not specified will default to S.

The alignment position is a Number, and is specified according to FXG spec for Numbers (decimal or scientific notation). The alignment position is required.

The vertical bar is used to separate the alignment position from the alignment token, and should only be present if the alignment token is present.

The alignment token is optional if the alignment type is D, and should not be present if the alignment type is anything other than D. The alignment token may be any sequence of characters terminated by the space that ends the tab stop (for the last tab stop, the terminating space is optional; end of alignment token is implied). A space may be part of the alignment token if it is escaped with a backslash (\ ). A backslash may be part of the alignment token if it is escaped with another backslash (\\). If the alignment type is D, and the alignment token is not specified, it will take on the default value of null.

If no tab stops are specified, a tab action defaults to the end of the line.

*

Default value is undefined indicating not set.

*

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of null.

* * @throws RangeError when set value is not within range for this property * * @playerversion Flash 10 * @playerversion AIR 1.5 * @langversion 3.0 */ public function get tabStops():* { return _tabStops; } public function set tabStops(newValue:*):void { _tabStops = _tabStopsProperty.setHelper(_tabStops,newValue); } /** * Specifies the leading model, which is a combination of leading basis and leading direction. * Leading basis is the baseline to which the lineHeight property refers. Leading direction determines whether the lineHeight property refers to the distance of a line's baseline from that of the line before it or the line after it. The default value of FormatValue.AUTO is resolved based on the paragraph's locale property. For Japanese and Chinese, it is LeadingModel.IDEOGRAPHIC_TOP_DOWN and for all others it is LeadingModel.ROMAN_UP.

Leading Basis:

leadingBasis1 leadingBasis2 leadingBasis3

Leading Direction:

leadingDirection1 leadingDirection2 leadingDirection3

*

Legal values are flashx.textLayout.formats.LeadingModel.ROMAN_UP, flashx.textLayout.formats.LeadingModel.IDEOGRAPHIC_TOP_UP, flashx.textLayout.formats.LeadingModel.IDEOGRAPHIC_CENTER_UP, flashx.textLayout.formats.LeadingModel.IDEOGRAPHIC_TOP_DOWN, flashx.textLayout.formats.LeadingModel.IDEOGRAPHIC_CENTER_DOWN, flashx.textLayout.formats.LeadingModel.APPROXIMATE_TEXT_FIELD, flashx.textLayout.formats.LeadingModel.ASCENT_DESCENT_UP, flashx.textLayout.formats.LeadingModel.AUTO, flashx.textLayout.formats.FormatValue.INHERIT.

*

Default value is undefined indicating not set.

*

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of AUTO.

* * @throws RangeError when set value is not within range for this property * * @playerversion Flash 10 * @playerversion AIR 1.5 * @langversion 3.0 * @see flashx.textLayout.formats.LeadingModel */ public function get leadingModel():* { return _leadingModel; } public function set leadingModel(newValue:*):void { _leadingModel = _leadingModelProperty.setHelper(_leadingModel,newValue); } /** * Specifies the amount of gutter space, in pixels, to leave between the columns (adopts default value if undefined during cascade). * Value is a Number *

Legal values are numbers from 0 to 1000 and flashx.textLayout.formats.FormatValue.INHERIT.

*

Default value is undefined indicating not set.

*

If undefined during the cascade this property will have a value of 20.

* * @throws RangeError when set value is not within range for this property * * @playerversion Flash 10 * @playerversion AIR 1.5 * @langversion 3.0 */ public function get columnGap():* { return _columnGap; } public function set columnGap(newValue:*):void { _columnGap = _columnGapProperty.setHelper(_columnGap,newValue); } /** * Left inset in pixels (adopts default value if undefined during cascade). * Space between the left edge of the container and the text. Value is a Number.

With vertical text, in scrollable containers with multiple columns, the first and following columns will show the padding as blank space at the end of the container, but for the last column, if the text doesn't all fit, you may have to scroll in order to see the padding.

*

Legal values are numbers from 0 to 1000 and flashx.textLayout.formats.FormatValue.INHERIT.

*

Default value is undefined indicating not set.

*

If undefined during the cascade this property will have a value of 0.

* * @throws RangeError when set value is not within range for this property * * @playerversion Flash 10 * @playerversion AIR 1.5 * @langversion 3.0 */ public function get paddingLeft():* { return _paddingLeft; } public function set paddingLeft(newValue:*):void { _paddingLeft = _paddingLeftProperty.setHelper(_paddingLeft,newValue); } /** * Top inset in pixels (adopts default value if undefined during cascade). * Space between the top edge of the container and the text. Value is a Number. *

Legal values are numbers from 0 to 1000 and flashx.textLayout.formats.FormatValue.INHERIT.

*

Default value is undefined indicating not set.

*

If undefined during the cascade this property will have a value of 0.

* * @throws RangeError when set value is not within range for this property * * @playerversion Flash 10 * @playerversion AIR 1.5 * @langversion 3.0 */ public function get paddingTop():* { return _paddingTop; } public function set paddingTop(newValue:*):void { _paddingTop = _paddingTopProperty.setHelper(_paddingTop,newValue); } /** * Right inset in pixels (adopts default value if undefined during cascade). * Space between the right edge of the container and the text. Value is a Number. *

Legal values are numbers from 0 to 1000 and flashx.textLayout.formats.FormatValue.INHERIT.

*

Default value is undefined indicating not set.

*

If undefined during the cascade this property will have a value of 0.

* * @throws RangeError when set value is not within range for this property * * @playerversion Flash 10 * @playerversion AIR 1.5 * @langversion 3.0 */ public function get paddingRight():* { return _paddingRight; } public function set paddingRight(newValue:*):void { _paddingRight = _paddingRightProperty.setHelper(_paddingRight,newValue); } /** * Botttom inset in pixels (adopts default value if undefined during cascade). * Space between the bottom edge of the container and the text. Value is a Number.

With horizontal text, in scrollable containers with multiple columns, the first and following columns will show the padding as blank space at the bottom of the container, but for the last column, if the text doesn't all fit, you may have to scroll in order to see the padding.

*

Legal values are numbers from 0 to 1000 and flashx.textLayout.formats.FormatValue.INHERIT.

*

Default value is undefined indicating not set.

*

If undefined during the cascade this property will have a value of 0.

* * @throws RangeError when set value is not within range for this property * * @playerversion Flash 10 * @playerversion AIR 1.5 * @langversion 3.0 */ public function get paddingBottom():* { return _paddingBottom; } public function set paddingBottom(newValue:*):void { _paddingBottom = _paddingBottomProperty.setHelper(_paddingBottom,newValue); } /** * Number of text columns (adopts default value if undefined during cascade). * The column number overrides the other column settings. Value is an integer, or FormatValue.AUTO if unspecified. If columnCount is not specified,columnWidth is used to create as many columns as can fit in the container. *

Legal values as a string are flashx.textLayout.formats.FormatValue.AUTO, flashx.textLayout.formats.FormatValue.INHERIT and from ints from 1 to 50.

*

Default value is undefined indicating not set.

*

If undefined during the cascade this property will have a value of AUTO.

* * @throws RangeError when set value is not within range for this property * * @playerversion Flash 10 * @playerversion AIR 1.5 * @langversion 3.0 * @see flashx.textLayout.formats.FormatValue */ public function get columnCount():* { return _columnCount; } public function set columnCount(newValue:*):void { _columnCount = _columnCountProperty.setHelper(_columnCount,newValue); } /** * Column width in pixels (adopts default value if undefined during cascade). * If you specify the width of the columns, but not the count, TextLayout will create as many columns of that width as possible, given the container width and columnGap settings. Any remainder space is left after the last column. Value is a Number. *

Legal values as a string are flashx.textLayout.formats.FormatValue.AUTO, flashx.textLayout.formats.FormatValue.INHERIT and numbers from 0 to 8000.

*

Default value is undefined indicating not set.

*

If undefined during the cascade this property will have a value of AUTO.

* * @throws RangeError when set value is not within range for this property * * @playerversion Flash 10 * @playerversion AIR 1.5 * @langversion 3.0 * @see flashx.textLayout.formats.FormatValue */ public function get columnWidth():* { return _columnWidth; } public function set columnWidth(newValue:*):void { _columnWidth = _columnWidthProperty.setHelper(_columnWidth,newValue); } /** * Specifies the baseline position of the first line in the container. Which baseline this property refers to depends on the container-level locale. For Japanese and Chinese, it is TextBaseline.IDEOGRAPHIC_BOTTOM; for all others it is TextBaseline.ROMAN. * The offset from the top inset (or right inset if blockProgression is RL) of the container to the baseline of the first line can be either BaselineOffset.ASCENT, meaning equal to the ascent of the line, BaselineOffset.LINE_HEIGHT, meaning equal to the height of that first line, or any fixed-value number to specify an absolute distance. BaselineOffset.AUTO aligns the ascent of the line with the container top inset.

firstBaselineOffset1firstBaselineOffset2firstBaselineOffset3firstBaselineOffset4

*

Legal values as a string are flashx.textLayout.formats.BaselineOffset.AUTO, flashx.textLayout.formats.BaselineOffset.ASCENT, flashx.textLayout.formats.BaselineOffset.LINE_HEIGHT, flashx.textLayout.formats.FormatValue.INHERIT and numbers from 0 to 1000.

*

Default value is undefined indicating not set.

*

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of AUTO.

* * @throws RangeError when set value is not within range for this property * * @playerversion Flash 10 * @playerversion AIR 1.5 * @langversion 3.0 * @see flashx.textLayout.formats.BaselineOffset */ public function get firstBaselineOffset():* { return _firstBaselineOffset; } public function set firstBaselineOffset(newValue:*):void { _firstBaselineOffset = _firstBaselineOffsetProperty.setHelper(_firstBaselineOffset,newValue); } /** * Vertical alignment or justification (adopts default value if undefined during cascade). * Determines how TextFlow elements align within the container. *

Legal values are flashx.textLayout.formats.VerticalAlign.TOP, flashx.textLayout.formats.VerticalAlign.MIDDLE, flashx.textLayout.formats.VerticalAlign.BOTTOM, flashx.textLayout.formats.VerticalAlign.JUSTIFY, flashx.textLayout.formats.FormatValue.INHERIT.

*

Default value is undefined indicating not set.

*

If undefined during the cascade this property will have a value of TOP.

* * @throws RangeError when set value is not within range for this property * * @playerversion Flash 10 * @playerversion AIR 1.5 * @langversion 3.0 * @see flashx.textLayout.formats.VerticalAlign */ public function get verticalAlign():* { return _verticalAlign; } public function set verticalAlign(newValue:*):void { _verticalAlign = _verticalAlignProperty.setHelper(_verticalAlign,newValue); } /** * Specifies a vertical or horizontal progression of line placement. * Lines are either placed top-to-bottom (BlockProgression.TB, used for horizontal text) or right-to-left (BlockProgression.RL, used for vertical text). *

Legal values are flashx.textLayout.formats.BlockProgression.RL, flashx.textLayout.formats.BlockProgression.TB, flashx.textLayout.formats.FormatValue.INHERIT.

*

Default value is undefined indicating not set.

*

If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of TB.

* * @throws RangeError when set value is not within range for this property * * @playerversion Flash 10 * @playerversion AIR 1.5 * @langversion 3.0 * @see flashx.textLayout.formats.BlockProgression */ public function get blockProgression():* { return _blockProgression; } public function set blockProgression(newValue:*):void { _blockProgression = _blockProgressionProperty.setHelper(_blockProgression,newValue); } /** * Controls word wrapping within the container (adopts default value if undefined during cascade). * Text in the container may be set to fit the width of the container (LineBreak.TO_FIT), or can be set to break only at explicit return or line feed characters (LineBreak.EXPLICIT). *

Legal values are flashx.textLayout.formats.LineBreak.EXPLICIT, flashx.textLayout.formats.LineBreak.TO_FIT, flashx.textLayout.formats.FormatValue.INHERIT.

*

Default value is undefined indicating not set.

*

If undefined during the cascade this property will have a value of TO_FIT.

* * @throws RangeError when set value is not within range for this property * * @playerversion Flash 10 * @playerversion AIR 1.5 * @langversion 3.0 * @see flashx.textLayout.formats.LineBreak */ public function get lineBreak():* { return _lineBreak; } public function set lineBreak(newValue:*):void { _lineBreak = _lineBreakProperty.setHelper(_lineBreak,newValue); } /** * Creates a new TextLayoutFormat object. All settings are empty or, optionally, are initialized from the * supplied initialValues object. * * @param initialValues optional instance from which to copy initial values. * * @see #defaultFormat * @playerversion Flash 10 * @playerversion AIR 1.5 * @langversion 3.0 */ public function TextLayoutFormat(initialValues:ITextLayoutFormat = null) { if (initialValues) apply(initialValues) } /** * Copies TextLayoutFormat settings from the values ITextLayoutFormat instance into this TextLayoutFormat object. * If values is null, this TextLayoutFormat object is initialized with undefined values for all properties. * @param values optional instance from which to copy values. * * @includeExample examples\TextLayoutFormat_copyExample.as -noswf * @playerversion Flash 10 * @playerversion AIR 1.5 * @langversion 3.0 */ public function copy(values:ITextLayoutFormat):void { if (values == null) values = emptyTextLayoutFormat; this.color = values.color; this.backgroundColor = values.backgroundColor; this.lineThrough = values.lineThrough; this.textAlpha = values.textAlpha; this.backgroundAlpha = values.backgroundAlpha; this.fontSize = values.fontSize; this.baselineShift = values.baselineShift; this.trackingLeft = values.trackingLeft; this.trackingRight = values.trackingRight; this.lineHeight = values.lineHeight; this.breakOpportunity = values.breakOpportunity; this.digitCase = values.digitCase; this.digitWidth = values.digitWidth; this.dominantBaseline = values.dominantBaseline; this.kerning = values.kerning; this.ligatureLevel = values.ligatureLevel; this.alignmentBaseline = values.alignmentBaseline; this.locale = values.locale; this.typographicCase = values.typographicCase; this.fontFamily = values.fontFamily; this.textDecoration = values.textDecoration; this.fontWeight = values.fontWeight; this.fontStyle = values.fontStyle; this.whiteSpaceCollapse = values.whiteSpaceCollapse; this.renderingMode = values.renderingMode; this.cffHinting = values.cffHinting; this.fontLookup = values.fontLookup; this.textRotation = values.textRotation; this.textIndent = values.textIndent; this.paragraphStartIndent = values.paragraphStartIndent; this.paragraphEndIndent = values.paragraphEndIndent; this.paragraphSpaceBefore = values.paragraphSpaceBefore; this.paragraphSpaceAfter = values.paragraphSpaceAfter; this.textAlign = values.textAlign; this.textAlignLast = values.textAlignLast; this.textJustify = values.textJustify; this.justificationRule = values.justificationRule; this.justificationStyle = values.justificationStyle; this.direction = values.direction; this.tabStops = values.tabStops; this.leadingModel = values.leadingModel; this.columnGap = values.columnGap; this.paddingLeft = values.paddingLeft; this.paddingTop = values.paddingTop; this.paddingRight = values.paddingRight; this.paddingBottom = values.paddingBottom; this.columnCount = values.columnCount; this.columnWidth = values.columnWidth; this.firstBaselineOffset = values.firstBaselineOffset; this.verticalAlign = values.verticalAlign; this.blockProgression = values.blockProgression; this.lineBreak = values.lineBreak; } /** * Concatenates the values of properties in the incoming ITextLayoutFormat instance * with the values of this TextLayoutFormat object. In this (the receiving) TextLayoutFormat object, properties whose values are FormatValue.INHERIT, * and inheriting properties whose values are undefined will get new values from the incoming object. * Non-inheriting properties whose values are undefined will get their default values. * All other property values will remain unmodified. * * @param incoming instance from which values are concatenated. * @see flashx.textLayout.formats.FormatValue#INHERIT * * @includeExample examples\TextLayoutFormat_concatExample.as -noswf * @playerversion Flash 10 * @playerversion AIR 1.5 * @langversion 3.0 */ public function concat(incoming:ITextLayoutFormat):void { var holder:TextLayoutFormatValueHolder = incoming as TextLayoutFormatValueHolder; if (holder) { for (var key:String in holder.coreStyles) { this[key] = description[key].concatHelper(this[key],holder.coreStyles[key]); } return; } this.color = _colorProperty.concatHelper(this.color, incoming.color); this.backgroundColor = _backgroundColorProperty.concatHelper(this.backgroundColor, incoming.backgroundColor); this.lineThrough = _lineThroughProperty.concatHelper(this.lineThrough, incoming.lineThrough); this.textAlpha = _textAlphaProperty.concatHelper(this.textAlpha, incoming.textAlpha); this.backgroundAlpha = _backgroundAlphaProperty.concatHelper(this.backgroundAlpha, incoming.backgroundAlpha); this.fontSize = _fontSizeProperty.concatHelper(this.fontSize, incoming.fontSize); this.baselineShift = _baselineShiftProperty.concatHelper(this.baselineShift, incoming.baselineShift); this.trackingLeft = _trackingLeftProperty.concatHelper(this.trackingLeft, incoming.trackingLeft); this.trackingRight = _trackingRightProperty.concatHelper(this.trackingRight, incoming.trackingRight); this.lineHeight = _lineHeightProperty.concatHelper(this.lineHeight, incoming.lineHeight); this.breakOpportunity = _breakOpportunityProperty.concatHelper(this.breakOpportunity, incoming.breakOpportunity); this.digitCase = _digitCaseProperty.concatHelper(this.digitCase, incoming.digitCase); this.digitWidth = _digitWidthProperty.concatHelper(this.digitWidth, incoming.digitWidth); this.dominantBaseline = _dominantBaselineProperty.concatHelper(this.dominantBaseline, incoming.dominantBaseline); this.kerning = _kerningProperty.concatHelper(this.kerning, incoming.kerning); this.ligatureLevel = _ligatureLevelProperty.concatHelper(this.ligatureLevel, incoming.ligatureLevel); this.alignmentBaseline = _alignmentBaselineProperty.concatHelper(this.alignmentBaseline, incoming.alignmentBaseline); this.locale = _localeProperty.concatHelper(this.locale, incoming.locale); this.typographicCase = _typographicCaseProperty.concatHelper(this.typographicCase, incoming.typographicCase); this.fontFamily = _fontFamilyProperty.concatHelper(this.fontFamily, incoming.fontFamily); this.textDecoration = _textDecorationProperty.concatHelper(this.textDecoration, incoming.textDecoration); this.fontWeight = _fontWeightProperty.concatHelper(this.fontWeight, incoming.fontWeight); this.fontStyle = _fontStyleProperty.concatHelper(this.fontStyle, incoming.fontStyle); this.whiteSpaceCollapse = _whiteSpaceCollapseProperty.concatHelper(this.whiteSpaceCollapse, incoming.whiteSpaceCollapse); this.renderingMode = _renderingModeProperty.concatHelper(this.renderingMode, incoming.renderingMode); this.cffHinting = _cffHintingProperty.concatHelper(this.cffHinting, incoming.cffHinting); this.fontLookup = _fontLookupProperty.concatHelper(this.fontLookup, incoming.fontLookup); this.textRotation = _textRotationProperty.concatHelper(this.textRotation, incoming.textRotation); this.textIndent = _textIndentProperty.concatHelper(this.textIndent, incoming.textIndent); this.paragraphStartIndent = _paragraphStartIndentProperty.concatHelper(this.paragraphStartIndent, incoming.paragraphStartIndent); this.paragraphEndIndent = _paragraphEndIndentProperty.concatHelper(this.paragraphEndIndent, incoming.paragraphEndIndent); this.paragraphSpaceBefore = _paragraphSpaceBeforeProperty.concatHelper(this.paragraphSpaceBefore, incoming.paragraphSpaceBefore); this.paragraphSpaceAfter = _paragraphSpaceAfterProperty.concatHelper(this.paragraphSpaceAfter, incoming.paragraphSpaceAfter); this.textAlign = _textAlignProperty.concatHelper(this.textAlign, incoming.textAlign); this.textAlignLast = _textAlignLastProperty.concatHelper(this.textAlignLast, incoming.textAlignLast); this.textJustify = _textJustifyProperty.concatHelper(this.textJustify, incoming.textJustify); this.justificationRule = _justificationRuleProperty.concatHelper(this.justificationRule, incoming.justificationRule); this.justificationStyle = _justificationStyleProperty.concatHelper(this.justificationStyle, incoming.justificationStyle); this.direction = _directionProperty.concatHelper(this.direction, incoming.direction); this.tabStops = _tabStopsProperty.concatHelper(this.tabStops, incoming.tabStops); this.leadingModel = _leadingModelProperty.concatHelper(this.leadingModel, incoming.leadingModel); this.columnGap = _columnGapProperty.concatHelper(this.columnGap, incoming.columnGap); this.paddingLeft = _paddingLeftProperty.concatHelper(this.paddingLeft, incoming.paddingLeft); this.paddingTop = _paddingTopProperty.concatHelper(this.paddingTop, incoming.paddingTop); this.paddingRight = _paddingRightProperty.concatHelper(this.paddingRight, incoming.paddingRight); this.paddingBottom = _paddingBottomProperty.concatHelper(this.paddingBottom, incoming.paddingBottom); this.columnCount = _columnCountProperty.concatHelper(this.columnCount, incoming.columnCount); this.columnWidth = _columnWidthProperty.concatHelper(this.columnWidth, incoming.columnWidth); this.firstBaselineOffset = _firstBaselineOffsetProperty.concatHelper(this.firstBaselineOffset, incoming.firstBaselineOffset); this.verticalAlign = _verticalAlignProperty.concatHelper(this.verticalAlign, incoming.verticalAlign); this.blockProgression = _blockProgressionProperty.concatHelper(this.blockProgression, incoming.blockProgression); this.lineBreak = _lineBreakProperty.concatHelper(this.lineBreak, incoming.lineBreak); } /** * Concatenates the values of properties in the incoming ITextLayoutFormat instance * with the values of this TextLayoutFormat object. In this (the receiving) TextLayoutFormat object, properties whose values are FormatValue.INHERIT, * and inheriting properties whose values are undefined will get new values from the incoming object. * All other property values will remain unmodified. * * @param incoming instance from which values are concatenated. * @see flashx.textLayout.formats.FormatValue#INHERIT * * @includeExample examples\TextLayoutFormat_concatInheritOnlyExample.as -noswf * @playerversion Flash 10 * @playerversion AIR 1.5 * @langversion 3.0 */ public function concatInheritOnly(incoming:ITextLayoutFormat):void { var holder:TextLayoutFormatValueHolder = incoming as TextLayoutFormatValueHolder; if (holder) { for (var key:String in holder.coreStyles) { this[key] = description[key].concatInheritOnlyHelper(this[key],holder.coreStyles[key]); } return; } this.color = _colorProperty.concatInheritOnlyHelper(this.color, incoming.color); this.backgroundColor = _backgroundColorProperty.concatInheritOnlyHelper(this.backgroundColor, incoming.backgroundColor); this.lineThrough = _lineThroughProperty.concatInheritOnlyHelper(this.lineThrough, incoming.lineThrough); this.textAlpha = _textAlphaProperty.concatInheritOnlyHelper(this.textAlpha, incoming.textAlpha); this.backgroundAlpha = _backgroundAlphaProperty.concatInheritOnlyHelper(this.backgroundAlpha, incoming.backgroundAlpha); this.fontSize = _fontSizeProperty.concatInheritOnlyHelper(this.fontSize, incoming.fontSize); this.baselineShift = _baselineShiftProperty.concatInheritOnlyHelper(this.baselineShift, incoming.baselineShift); this.trackingLeft = _trackingLeftProperty.concatInheritOnlyHelper(this.trackingLeft, incoming.trackingLeft); this.trackingRight = _trackingRightProperty.concatInheritOnlyHelper(this.trackingRight, incoming.trackingRight); this.lineHeight = _lineHeightProperty.concatInheritOnlyHelper(this.lineHeight, incoming.lineHeight); this.breakOpportunity = _breakOpportunityProperty.concatInheritOnlyHelper(this.breakOpportunity, incoming.breakOpportunity); this.digitCase = _digitCaseProperty.concatInheritOnlyHelper(this.digitCase, incoming.digitCase); this.digitWidth = _digitWidthProperty.concatInheritOnlyHelper(this.digitWidth, incoming.digitWidth); this.dominantBaseline = _dominantBaselineProperty.concatInheritOnlyHelper(this.dominantBaseline, incoming.dominantBaseline); this.kerning = _kerningProperty.concatInheritOnlyHelper(this.kerning, incoming.kerning); this.ligatureLevel = _ligatureLevelProperty.concatInheritOnlyHelper(this.ligatureLevel, incoming.ligatureLevel); this.alignmentBaseline = _alignmentBaselineProperty.concatInheritOnlyHelper(this.alignmentBaseline, incoming.alignmentBaseline); this.locale = _localeProperty.concatInheritOnlyHelper(this.locale, incoming.locale); this.typographicCase = _typographicCaseProperty.concatInheritOnlyHelper(this.typographicCase, incoming.typographicCase); this.fontFamily = _fontFamilyProperty.concatInheritOnlyHelper(this.fontFamily, incoming.fontFamily); this.textDecoration = _textDecorationProperty.concatInheritOnlyHelper(this.textDecoration, incoming.textDecoration); this.fontWeight = _fontWeightProperty.concatInheritOnlyHelper(this.fontWeight, incoming.fontWeight); this.fontStyle = _fontStyleProperty.concatInheritOnlyHelper(this.fontStyle, incoming.fontStyle); this.whiteSpaceCollapse = _whiteSpaceCollapseProperty.concatInheritOnlyHelper(this.whiteSpaceCollapse, incoming.whiteSpaceCollapse); this.renderingMode = _renderingModeProperty.concatInheritOnlyHelper(this.renderingMode, incoming.renderingMode); this.cffHinting = _cffHintingProperty.concatInheritOnlyHelper(this.cffHinting, incoming.cffHinting); this.fontLookup = _fontLookupProperty.concatInheritOnlyHelper(this.fontLookup, incoming.fontLookup); this.textRotation = _textRotationProperty.concatInheritOnlyHelper(this.textRotation, incoming.textRotation); this.textIndent = _textIndentProperty.concatInheritOnlyHelper(this.textIndent, incoming.textIndent); this.paragraphStartIndent = _paragraphStartIndentProperty.concatInheritOnlyHelper(this.paragraphStartIndent, incoming.paragraphStartIndent); this.paragraphEndIndent = _paragraphEndIndentProperty.concatInheritOnlyHelper(this.paragraphEndIndent, incoming.paragraphEndIndent); this.paragraphSpaceBefore = _paragraphSpaceBeforeProperty.concatInheritOnlyHelper(this.paragraphSpaceBefore, incoming.paragraphSpaceBefore); this.paragraphSpaceAfter = _paragraphSpaceAfterProperty.concatInheritOnlyHelper(this.paragraphSpaceAfter, incoming.paragraphSpaceAfter); this.textAlign = _textAlignProperty.concatInheritOnlyHelper(this.textAlign, incoming.textAlign); this.textAlignLast = _textAlignLastProperty.concatInheritOnlyHelper(this.textAlignLast, incoming.textAlignLast); this.textJustify = _textJustifyProperty.concatInheritOnlyHelper(this.textJustify, incoming.textJustify); this.justificationRule = _justificationRuleProperty.concatInheritOnlyHelper(this.justificationRule, incoming.justificationRule); this.justificationStyle = _justificationStyleProperty.concatInheritOnlyHelper(this.justificationStyle, incoming.justificationStyle); this.direction = _directionProperty.concatInheritOnlyHelper(this.direction, incoming.direction); this.tabStops = _tabStopsProperty.concatInheritOnlyHelper(this.tabStops, incoming.tabStops); this.leadingModel = _leadingModelProperty.concatInheritOnlyHelper(this.leadingModel, incoming.leadingModel); this.columnGap = _columnGapProperty.concatInheritOnlyHelper(this.columnGap, incoming.columnGap); this.paddingLeft = _paddingLeftProperty.concatInheritOnlyHelper(this.paddingLeft, incoming.paddingLeft); this.paddingTop = _paddingTopProperty.concatInheritOnlyHelper(this.paddingTop, incoming.paddingTop); this.paddingRight = _paddingRightProperty.concatInheritOnlyHelper(this.paddingRight, incoming.paddingRight); this.paddingBottom = _paddingBottomProperty.concatInheritOnlyHelper(this.paddingBottom, incoming.paddingBottom); this.columnCount = _columnCountProperty.concatInheritOnlyHelper(this.columnCount, incoming.columnCount); this.columnWidth = _columnWidthProperty.concatInheritOnlyHelper(this.columnWidth, incoming.columnWidth); this.firstBaselineOffset = _firstBaselineOffsetProperty.concatInheritOnlyHelper(this.firstBaselineOffset, incoming.firstBaselineOffset); this.verticalAlign = _verticalAlignProperty.concatInheritOnlyHelper(this.verticalAlign, incoming.verticalAlign); this.blockProgression = _blockProgressionProperty.concatInheritOnlyHelper(this.blockProgression, incoming.blockProgression); this.lineBreak = _lineBreakProperty.concatInheritOnlyHelper(this.lineBreak, incoming.lineBreak); } /** * Replaces property values in this TextLayoutFormat object with the values of properties that are set in * the incoming ITextLayoutFormat instance. Properties that are undefined in the incoming * ITextLayoutFormat instance are not changed in this object. * * @param incoming instance whose property values are applied to this TextLayoutFormat object. * * @includeExample examples\TextLayoutFormat_applyExample.as -noswf * @playerversion Flash 10 * @playerversion AIR 1.5 * @langversion 3.0 */ public function apply(incoming:ITextLayoutFormat):void { var val:*; var holder:TextLayoutFormatValueHolder = incoming as TextLayoutFormatValueHolder; if (holder) { for (var key:String in holder.coreStyles) { CONFIG::debug { assert(holder.coreStyles[key] !== undefined,"bad value in apply"); } this[key] = holder.coreStyles[key]; } return; } if ((val = incoming.color) !== undefined) this.color = val; if ((val = incoming.backgroundColor) !== undefined) this.backgroundColor = val; if ((val = incoming.lineThrough) !== undefined) this.lineThrough = val; if ((val = incoming.textAlpha) !== undefined) this.textAlpha = val; if ((val = incoming.backgroundAlpha) !== undefined) this.backgroundAlpha = val; if ((val = incoming.fontSize) !== undefined) this.fontSize = val; if ((val = incoming.baselineShift) !== undefined) this.baselineShift = val; if ((val = incoming.trackingLeft) !== undefined) this.trackingLeft = val; if ((val = incoming.trackingRight) !== undefined) this.trackingRight = val; if ((val = incoming.lineHeight) !== undefined) this.lineHeight = val; if ((val = incoming.breakOpportunity) !== undefined) this.breakOpportunity = val; if ((val = incoming.digitCase) !== undefined) this.digitCase = val; if ((val = incoming.digitWidth) !== undefined) this.digitWidth = val; if ((val = incoming.dominantBaseline) !== undefined) this.dominantBaseline = val; if ((val = incoming.kerning) !== undefined) this.kerning = val; if ((val = incoming.ligatureLevel) !== undefined) this.ligatureLevel = val; if ((val = incoming.alignmentBaseline) !== undefined) this.alignmentBaseline = val; if ((val = incoming.locale) !== undefined) this.locale = val; if ((val = incoming.typographicCase) !== undefined) this.typographicCase = val; if ((val = incoming.fontFamily) !== undefined) this.fontFamily = val; if ((val = incoming.textDecoration) !== undefined) this.textDecoration = val; if ((val = incoming.fontWeight) !== undefined) this.fontWeight = val; if ((val = incoming.fontStyle) !== undefined) this.fontStyle = val; if ((val = incoming.whiteSpaceCollapse) !== undefined) this.whiteSpaceCollapse = val; if ((val = incoming.renderingMode) !== undefined) this.renderingMode = val; if ((val = incoming.cffHinting) !== undefined) this.cffHinting = val; if ((val = incoming.fontLookup) !== undefined) this.fontLookup = val; if ((val = incoming.textRotation) !== undefined) this.textRotation = val; if ((val = incoming.textIndent) !== undefined) this.textIndent = val; if ((val = incoming.paragraphStartIndent) !== undefined) this.paragraphStartIndent = val; if ((val = incoming.paragraphEndIndent) !== undefined) this.paragraphEndIndent = val; if ((val = incoming.paragraphSpaceBefore) !== undefined) this.paragraphSpaceBefore = val; if ((val = incoming.paragraphSpaceAfter) !== undefined) this.paragraphSpaceAfter = val; if ((val = incoming.textAlign) !== undefined) this.textAlign = val; if ((val = incoming.textAlignLast) !== undefined) this.textAlignLast = val; if ((val = incoming.textJustify) !== undefined) this.textJustify = val; if ((val = incoming.justificationRule) !== undefined) this.justificationRule = val; if ((val = incoming.justificationStyle) !== undefined) this.justificationStyle = val; if ((val = incoming.direction) !== undefined) this.direction = val; if ((val = incoming.tabStops) !== undefined) this.tabStops = val; if ((val = incoming.leadingModel) !== undefined) this.leadingModel = val; if ((val = incoming.columnGap) !== undefined) this.columnGap = val; if ((val = incoming.paddingLeft) !== undefined) this.paddingLeft = val; if ((val = incoming.paddingTop) !== undefined) this.paddingTop = val; if ((val = incoming.paddingRight) !== undefined) this.paddingRight = val; if ((val = incoming.paddingBottom) !== undefined) this.paddingBottom = val; if ((val = incoming.columnCount) !== undefined) this.columnCount = val; if ((val = incoming.columnWidth) !== undefined) this.columnWidth = val; if ((val = incoming.firstBaselineOffset) !== undefined) this.firstBaselineOffset = val; if ((val = incoming.verticalAlign) !== undefined) this.verticalAlign = val; if ((val = incoming.blockProgression) !== undefined) this.blockProgression = val; if ((val = incoming.lineBreak) !== undefined) this.lineBreak = val; } /** * Compares properties in ITextLayoutFormat instance p1 with properties in ITextLayoutFormat instance p2 * and returns true if all properties match. * * @param p1 instance to compare to p2. * @param p2 instance to compare to p1. * * @return true if all properties match, false otherwise. * * @playerversion Flash 10 * @playerversion AIR 1.5 * @langversion 3.0 */ static public function isEqual(p1:ITextLayoutFormat,p2:ITextLayoutFormat):Boolean { if (p1 == null) p1 = emptyTextLayoutFormat; if (p2 == null) p2 = emptyTextLayoutFormat; if (p1 == p2) return true; var p1Holder:TextLayoutFormatValueHolder = p1 as TextLayoutFormatValueHolder; var p2Holder:TextLayoutFormatValueHolder = p2 as TextLayoutFormatValueHolder; if (p1Holder && p2Holder) return Property.equalCoreStyles(p1Holder.coreStyles,p2Holder.coreStyles,TextLayoutFormat.description); if (!_colorProperty.equalHelper(p1.color, p2.color)) return false; if (!_backgroundColorProperty.equalHelper(p1.backgroundColor, p2.backgroundColor)) return false; if (!_lineThroughProperty.equalHelper(p1.lineThrough, p2.lineThrough)) return false; if (!_textAlphaProperty.equalHelper(p1.textAlpha, p2.textAlpha)) return false; if (!_backgroundAlphaProperty.equalHelper(p1.backgroundAlpha, p2.backgroundAlpha)) return false; if (!_fontSizeProperty.equalHelper(p1.fontSize, p2.fontSize)) return false; if (!_baselineShiftProperty.equalHelper(p1.baselineShift, p2.baselineShift)) return false; if (!_trackingLeftProperty.equalHelper(p1.trackingLeft, p2.trackingLeft)) return false; if (!_trackingRightProperty.equalHelper(p1.trackingRight, p2.trackingRight)) return false; if (!_lineHeightProperty.equalHelper(p1.lineHeight, p2.lineHeight)) return false; if (!_breakOpportunityProperty.equalHelper(p1.breakOpportunity, p2.breakOpportunity)) return false; if (!_digitCaseProperty.equalHelper(p1.digitCase, p2.digitCase)) return false; if (!_digitWidthProperty.equalHelper(p1.digitWidth, p2.digitWidth)) return false; if (!_dominantBaselineProperty.equalHelper(p1.dominantBaseline, p2.dominantBaseline)) return false; if (!_kerningProperty.equalHelper(p1.kerning, p2.kerning)) return false; if (!_ligatureLevelProperty.equalHelper(p1.ligatureLevel, p2.ligatureLevel)) return false; if (!_alignmentBaselineProperty.equalHelper(p1.alignmentBaseline, p2.alignmentBaseline)) return false; if (!_localeProperty.equalHelper(p1.locale, p2.locale)) return false; if (!_typographicCaseProperty.equalHelper(p1.typographicCase, p2.typographicCase)) return false; if (!_fontFamilyProperty.equalHelper(p1.fontFamily, p2.fontFamily)) return false; if (!_textDecorationProperty.equalHelper(p1.textDecoration, p2.textDecoration)) return false; if (!_fontWeightProperty.equalHelper(p1.fontWeight, p2.fontWeight)) return false; if (!_fontStyleProperty.equalHelper(p1.fontStyle, p2.fontStyle)) return false; if (!_whiteSpaceCollapseProperty.equalHelper(p1.whiteSpaceCollapse, p2.whiteSpaceCollapse)) return false; if (!_renderingModeProperty.equalHelper(p1.renderingMode, p2.renderingMode)) return false; if (!_cffHintingProperty.equalHelper(p1.cffHinting, p2.cffHinting)) return false; if (!_fontLookupProperty.equalHelper(p1.fontLookup, p2.fontLookup)) return false; if (!_textRotationProperty.equalHelper(p1.textRotation, p2.textRotation)) return false; if (!_textIndentProperty.equalHelper(p1.textIndent, p2.textIndent)) return false; if (!_paragraphStartIndentProperty.equalHelper(p1.paragraphStartIndent, p2.paragraphStartIndent)) return false; if (!_paragraphEndIndentProperty.equalHelper(p1.paragraphEndIndent, p2.paragraphEndIndent)) return false; if (!_paragraphSpaceBeforeProperty.equalHelper(p1.paragraphSpaceBefore, p2.paragraphSpaceBefore)) return false; if (!_paragraphSpaceAfterProperty.equalHelper(p1.paragraphSpaceAfter, p2.paragraphSpaceAfter)) return false; if (!_textAlignProperty.equalHelper(p1.textAlign, p2.textAlign)) return false; if (!_textAlignLastProperty.equalHelper(p1.textAlignLast, p2.textAlignLast)) return false; if (!_textJustifyProperty.equalHelper(p1.textJustify, p2.textJustify)) return false; if (!_justificationRuleProperty.equalHelper(p1.justificationRule, p2.justificationRule)) return false; if (!_justificationStyleProperty.equalHelper(p1.justificationStyle, p2.justificationStyle)) return false; if (!_directionProperty.equalHelper(p1.direction, p2.direction)) return false; if (!_tabStopsProperty.equalHelper(p1.tabStops, p2.tabStops)) return false; if (!_leadingModelProperty.equalHelper(p1.leadingModel, p2.leadingModel)) return false; if (!_columnGapProperty.equalHelper(p1.columnGap, p2.columnGap)) return false; if (!_paddingLeftProperty.equalHelper(p1.paddingLeft, p2.paddingLeft)) return false; if (!_paddingTopProperty.equalHelper(p1.paddingTop, p2.paddingTop)) return false; if (!_paddingRightProperty.equalHelper(p1.paddingRight, p2.paddingRight)) return false; if (!_paddingBottomProperty.equalHelper(p1.paddingBottom, p2.paddingBottom)) return false; if (!_columnCountProperty.equalHelper(p1.columnCount, p2.columnCount)) return false; if (!_columnWidthProperty.equalHelper(p1.columnWidth, p2.columnWidth)) return false; if (!_firstBaselineOffsetProperty.equalHelper(p1.firstBaselineOffset, p2.firstBaselineOffset)) return false; if (!_verticalAlignProperty.equalHelper(p1.verticalAlign, p2.verticalAlign)) return false; if (!_blockProgressionProperty.equalHelper(p1.blockProgression, p2.blockProgression)) return false; if (!_lineBreakProperty.equalHelper(p1.lineBreak, p2.lineBreak)) return false; return true; } /** * Sets properties in this TextLayoutFormat object to undefined if they match those in the incoming * ITextLayoutFormat instance. * * @param incoming instance against which to compare this TextLayoutFormat object's property values. * * @includeExample examples\TextLayoutFormat_removeMatchingExample.as -noswf * @playerversion Flash 10 * @playerversion AIR 1.5 * @langversion 3.0 */ public function removeMatching(incoming:ITextLayoutFormat):void { if (incoming == null) return; var holder:TextLayoutFormatValueHolder = incoming as TextLayoutFormatValueHolder; if (holder) { for (var key:String in holder.coreStyles) { CONFIG::debug { assert(holder.coreStyles[key] !== undefined,"bad value in removeMatching"); } if (description[key].equalHelper(this[key],holder.coreStyles[key])) this[key] = undefined; } return; } if (_colorProperty.equalHelper(this.color, incoming.color)) this.color = undefined; if (_backgroundColorProperty.equalHelper(this.backgroundColor, incoming.backgroundColor)) this.backgroundColor = undefined; if (_lineThroughProperty.equalHelper(this.lineThrough, incoming.lineThrough)) this.lineThrough = undefined; if (_textAlphaProperty.equalHelper(this.textAlpha, incoming.textAlpha)) this.textAlpha = undefined; if (_backgroundAlphaProperty.equalHelper(this.backgroundAlpha, incoming.backgroundAlpha)) this.backgroundAlpha = undefined; if (_fontSizeProperty.equalHelper(this.fontSize, incoming.fontSize)) this.fontSize = undefined; if (_baselineShiftProperty.equalHelper(this.baselineShift, incoming.baselineShift)) this.baselineShift = undefined; if (_trackingLeftProperty.equalHelper(this.trackingLeft, incoming.trackingLeft)) this.trackingLeft = undefined; if (_trackingRightProperty.equalHelper(this.trackingRight, incoming.trackingRight)) this.trackingRight = undefined; if (_lineHeightProperty.equalHelper(this.lineHeight, incoming.lineHeight)) this.lineHeight = undefined; if (_breakOpportunityProperty.equalHelper(this.breakOpportunity, incoming.breakOpportunity)) this.breakOpportunity = undefined; if (_digitCaseProperty.equalHelper(this.digitCase, incoming.digitCase)) this.digitCase = undefined; if (_digitWidthProperty.equalHelper(this.digitWidth, incoming.digitWidth)) this.digitWidth = undefined; if (_dominantBaselineProperty.equalHelper(this.dominantBaseline, incoming.dominantBaseline)) this.dominantBaseline = undefined; if (_kerningProperty.equalHelper(this.kerning, incoming.kerning)) this.kerning = undefined; if (_ligatureLevelProperty.equalHelper(this.ligatureLevel, incoming.ligatureLevel)) this.ligatureLevel = undefined; if (_alignmentBaselineProperty.equalHelper(this.alignmentBaseline, incoming.alignmentBaseline)) this.alignmentBaseline = undefined; if (_localeProperty.equalHelper(this.locale, incoming.locale)) this.locale = undefined; if (_typographicCaseProperty.equalHelper(this.typographicCase, incoming.typographicCase)) this.typographicCase = undefined; if (_fontFamilyProperty.equalHelper(this.fontFamily, incoming.fontFamily)) this.fontFamily = undefined; if (_textDecorationProperty.equalHelper(this.textDecoration, incoming.textDecoration)) this.textDecoration = undefined; if (_fontWeightProperty.equalHelper(this.fontWeight, incoming.fontWeight)) this.fontWeight = undefined; if (_fontStyleProperty.equalHelper(this.fontStyle, incoming.fontStyle)) this.fontStyle = undefined; if (_whiteSpaceCollapseProperty.equalHelper(this.whiteSpaceCollapse, incoming.whiteSpaceCollapse)) this.whiteSpaceCollapse = undefined; if (_renderingModeProperty.equalHelper(this.renderingMode, incoming.renderingMode)) this.renderingMode = undefined; if (_cffHintingProperty.equalHelper(this.cffHinting, incoming.cffHinting)) this.cffHinting = undefined; if (_fontLookupProperty.equalHelper(this.fontLookup, incoming.fontLookup)) this.fontLookup = undefined; if (_textRotationProperty.equalHelper(this.textRotation, incoming.textRotation)) this.textRotation = undefined; if (_textIndentProperty.equalHelper(this.textIndent, incoming.textIndent)) this.textIndent = undefined; if (_paragraphStartIndentProperty.equalHelper(this.paragraphStartIndent, incoming.paragraphStartIndent)) this.paragraphStartIndent = undefined; if (_paragraphEndIndentProperty.equalHelper(this.paragraphEndIndent, incoming.paragraphEndIndent)) this.paragraphEndIndent = undefined; if (_paragraphSpaceBeforeProperty.equalHelper(this.paragraphSpaceBefore, incoming.paragraphSpaceBefore)) this.paragraphSpaceBefore = undefined; if (_paragraphSpaceAfterProperty.equalHelper(this.paragraphSpaceAfter, incoming.paragraphSpaceAfter)) this.paragraphSpaceAfter = undefined; if (_textAlignProperty.equalHelper(this.textAlign, incoming.textAlign)) this.textAlign = undefined; if (_textAlignLastProperty.equalHelper(this.textAlignLast, incoming.textAlignLast)) this.textAlignLast = undefined; if (_textJustifyProperty.equalHelper(this.textJustify, incoming.textJustify)) this.textJustify = undefined; if (_justificationRuleProperty.equalHelper(this.justificationRule, incoming.justificationRule)) this.justificationRule = undefined; if (_justificationStyleProperty.equalHelper(this.justificationStyle, incoming.justificationStyle)) this.justificationStyle = undefined; if (_directionProperty.equalHelper(this.direction, incoming.direction)) this.direction = undefined; if (_tabStopsProperty.equalHelper(this.tabStops, incoming.tabStops)) this.tabStops = undefined; if (_leadingModelProperty.equalHelper(this.leadingModel, incoming.leadingModel)) this.leadingModel = undefined; if (_columnGapProperty.equalHelper(this.columnGap, incoming.columnGap)) this.columnGap = undefined; if (_paddingLeftProperty.equalHelper(this.paddingLeft, incoming.paddingLeft)) this.paddingLeft = undefined; if (_paddingTopProperty.equalHelper(this.paddingTop, incoming.paddingTop)) this.paddingTop = undefined; if (_paddingRightProperty.equalHelper(this.paddingRight, incoming.paddingRight)) this.paddingRight = undefined; if (_paddingBottomProperty.equalHelper(this.paddingBottom, incoming.paddingBottom)) this.paddingBottom = undefined; if (_columnCountProperty.equalHelper(this.columnCount, incoming.columnCount)) this.columnCount = undefined; if (_columnWidthProperty.equalHelper(this.columnWidth, incoming.columnWidth)) this.columnWidth = undefined; if (_firstBaselineOffsetProperty.equalHelper(this.firstBaselineOffset, incoming.firstBaselineOffset)) this.firstBaselineOffset = undefined; if (_verticalAlignProperty.equalHelper(this.verticalAlign, incoming.verticalAlign)) this.verticalAlign = undefined; if (_blockProgressionProperty.equalHelper(this.blockProgression, incoming.blockProgression)) this.blockProgression = undefined; if (_lineBreakProperty.equalHelper(this.lineBreak, incoming.lineBreak)) this.lineBreak = undefined; } /** * Sets properties in this TextLayoutFormat object to undefined if they do not match those in the * incoming ITextLayoutFormat instance. * * @param incoming instance against which to compare this TextLayoutFormat object's property values. * * @includeExample examples\TextLayoutFormat_removeClashingExample.as -noswf * @playerversion Flash 10 * @playerversion AIR 1.5 * @langversion 3.0 */ public function removeClashing(incoming:ITextLayoutFormat):void { if (incoming == null) return; var holder:TextLayoutFormatValueHolder = incoming as TextLayoutFormatValueHolder; if (holder) { for (var key:String in holder.coreStyles) { CONFIG::debug { assert(holder.coreStyles[key] !== undefined,"bad value in removeClashing"); } if (!description[key].equalHelper(this[key],holder.coreStyles[key])) this[key] = undefined; } return; } if (!_colorProperty.equalHelper(this.color, incoming.color)) this.color = undefined; if (!_backgroundColorProperty.equalHelper(this.backgroundColor, incoming.backgroundColor)) this.backgroundColor = undefined; if (!_lineThroughProperty.equalHelper(this.lineThrough, incoming.lineThrough)) this.lineThrough = undefined; if (!_textAlphaProperty.equalHelper(this.textAlpha, incoming.textAlpha)) this.textAlpha = undefined; if (!_backgroundAlphaProperty.equalHelper(this.backgroundAlpha, incoming.backgroundAlpha)) this.backgroundAlpha = undefined; if (!_fontSizeProperty.equalHelper(this.fontSize, incoming.fontSize)) this.fontSize = undefined; if (!_baselineShiftProperty.equalHelper(this.baselineShift, incoming.baselineShift)) this.baselineShift = undefined; if (!_trackingLeftProperty.equalHelper(this.trackingLeft, incoming.trackingLeft)) this.trackingLeft = undefined; if (!_trackingRightProperty.equalHelper(this.trackingRight, incoming.trackingRight)) this.trackingRight = undefined; if (!_lineHeightProperty.equalHelper(this.lineHeight, incoming.lineHeight)) this.lineHeight = undefined; if (!_breakOpportunityProperty.equalHelper(this.breakOpportunity, incoming.breakOpportunity)) this.breakOpportunity = undefined; if (!_digitCaseProperty.equalHelper(this.digitCase, incoming.digitCase)) this.digitCase = undefined; if (!_digitWidthProperty.equalHelper(this.digitWidth, incoming.digitWidth)) this.digitWidth = undefined; if (!_dominantBaselineProperty.equalHelper(this.dominantBaseline, incoming.dominantBaseline)) this.dominantBaseline = undefined; if (!_kerningProperty.equalHelper(this.kerning, incoming.kerning)) this.kerning = undefined; if (!_ligatureLevelProperty.equalHelper(this.ligatureLevel, incoming.ligatureLevel)) this.ligatureLevel = undefined; if (!_alignmentBaselineProperty.equalHelper(this.alignmentBaseline, incoming.alignmentBaseline)) this.alignmentBaseline = undefined; if (!_localeProperty.equalHelper(this.locale, incoming.locale)) this.locale = undefined; if (!_typographicCaseProperty.equalHelper(this.typographicCase, incoming.typographicCase)) this.typographicCase = undefined; if (!_fontFamilyProperty.equalHelper(this.fontFamily, incoming.fontFamily)) this.fontFamily = undefined; if (!_textDecorationProperty.equalHelper(this.textDecoration, incoming.textDecoration)) this.textDecoration = undefined; if (!_fontWeightProperty.equalHelper(this.fontWeight, incoming.fontWeight)) this.fontWeight = undefined; if (!_fontStyleProperty.equalHelper(this.fontStyle, incoming.fontStyle)) this.fontStyle = undefined; if (!_whiteSpaceCollapseProperty.equalHelper(this.whiteSpaceCollapse, incoming.whiteSpaceCollapse)) this.whiteSpaceCollapse = undefined; if (!_renderingModeProperty.equalHelper(this.renderingMode, incoming.renderingMode)) this.renderingMode = undefined; if (!_cffHintingProperty.equalHelper(this.cffHinting, incoming.cffHinting)) this.cffHinting = undefined; if (!_fontLookupProperty.equalHelper(this.fontLookup, incoming.fontLookup)) this.fontLookup = undefined; if (!_textRotationProperty.equalHelper(this.textRotation, incoming.textRotation)) this.textRotation = undefined; if (!_textIndentProperty.equalHelper(this.textIndent, incoming.textIndent)) this.textIndent = undefined; if (!_paragraphStartIndentProperty.equalHelper(this.paragraphStartIndent, incoming.paragraphStartIndent)) this.paragraphStartIndent = undefined; if (!_paragraphEndIndentProperty.equalHelper(this.paragraphEndIndent, incoming.paragraphEndIndent)) this.paragraphEndIndent = undefined; if (!_paragraphSpaceBeforeProperty.equalHelper(this.paragraphSpaceBefore, incoming.paragraphSpaceBefore)) this.paragraphSpaceBefore = undefined; if (!_paragraphSpaceAfterProperty.equalHelper(this.paragraphSpaceAfter, incoming.paragraphSpaceAfter)) this.paragraphSpaceAfter = undefined; if (!_textAlignProperty.equalHelper(this.textAlign, incoming.textAlign)) this.textAlign = undefined; if (!_textAlignLastProperty.equalHelper(this.textAlignLast, incoming.textAlignLast)) this.textAlignLast = undefined; if (!_textJustifyProperty.equalHelper(this.textJustify, incoming.textJustify)) this.textJustify = undefined; if (!_justificationRuleProperty.equalHelper(this.justificationRule, incoming.justificationRule)) this.justificationRule = undefined; if (!_justificationStyleProperty.equalHelper(this.justificationStyle, incoming.justificationStyle)) this.justificationStyle = undefined; if (!_directionProperty.equalHelper(this.direction, incoming.direction)) this.direction = undefined; if (!_tabStopsProperty.equalHelper(this.tabStops, incoming.tabStops)) this.tabStops = undefined; if (!_leadingModelProperty.equalHelper(this.leadingModel, incoming.leadingModel)) this.leadingModel = undefined; if (!_columnGapProperty.equalHelper(this.columnGap, incoming.columnGap)) this.columnGap = undefined; if (!_paddingLeftProperty.equalHelper(this.paddingLeft, incoming.paddingLeft)) this.paddingLeft = undefined; if (!_paddingTopProperty.equalHelper(this.paddingTop, incoming.paddingTop)) this.paddingTop = undefined; if (!_paddingRightProperty.equalHelper(this.paddingRight, incoming.paddingRight)) this.paddingRight = undefined; if (!_paddingBottomProperty.equalHelper(this.paddingBottom, incoming.paddingBottom)) this.paddingBottom = undefined; if (!_columnCountProperty.equalHelper(this.columnCount, incoming.columnCount)) this.columnCount = undefined; if (!_columnWidthProperty.equalHelper(this.columnWidth, incoming.columnWidth)) this.columnWidth = undefined; if (!_firstBaselineOffsetProperty.equalHelper(this.firstBaselineOffset, incoming.firstBaselineOffset)) this.firstBaselineOffset = undefined; if (!_verticalAlignProperty.equalHelper(this.verticalAlign, incoming.verticalAlign)) this.verticalAlign = undefined; if (!_blockProgressionProperty.equalHelper(this.blockProgression, incoming.blockProgression)) this.blockProgression = undefined; if (!_lineBreakProperty.equalHelper(this.lineBreak, incoming.lineBreak)) this.lineBreak = undefined; } /** * Gets the TextLayoutFormat hash * @param seed seed value for the hash algorithm * @return the TextLayoutFormat hash * @private * * @playerversion Flash 10 * @playerversion AIR 1.5 * @langversion 3.0 */ tlf_internal function hash(seed:uint):uint { var hash:uint = seed; if (_color) hash = _colorProperty.hash(_color, hash); if (_backgroundColor) hash = _backgroundColorProperty.hash(_backgroundColor, hash); if (_lineThrough) hash = _lineThroughProperty.hash(_lineThrough, hash); if (_textAlpha) hash = _textAlphaProperty.hash(_textAlpha, hash); if (_backgroundAlpha) hash = _backgroundAlphaProperty.hash(_backgroundAlpha, hash); if (_fontSize) hash = _fontSizeProperty.hash(_fontSize, hash); if (_baselineShift) hash = _baselineShiftProperty.hash(_baselineShift, hash); if (_trackingLeft) hash = _trackingLeftProperty.hash(_trackingLeft, hash); if (_trackingRight) hash = _trackingRightProperty.hash(_trackingRight, hash); if (_lineHeight) hash = _lineHeightProperty.hash(_lineHeight, hash); if (_breakOpportunity) hash = _breakOpportunityProperty.hash(_breakOpportunity, hash); if (_digitCase) hash = _digitCaseProperty.hash(_digitCase, hash); if (_digitWidth) hash = _digitWidthProperty.hash(_digitWidth, hash); if (_dominantBaseline) hash = _dominantBaselineProperty.hash(_dominantBaseline, hash); if (_kerning) hash = _kerningProperty.hash(_kerning, hash); if (_ligatureLevel) hash = _ligatureLevelProperty.hash(_ligatureLevel, hash); if (_alignmentBaseline) hash = _alignmentBaselineProperty.hash(_alignmentBaseline, hash); if (_locale) hash = _localeProperty.hash(_locale, hash); if (_typographicCase) hash = _typographicCaseProperty.hash(_typographicCase, hash); if (_fontFamily) hash = _fontFamilyProperty.hash(_fontFamily, hash); if (_textDecoration) hash = _textDecorationProperty.hash(_textDecoration, hash); if (_fontWeight) hash = _fontWeightProperty.hash(_fontWeight, hash); if (_fontStyle) hash = _fontStyleProperty.hash(_fontStyle, hash); if (_whiteSpaceCollapse) hash = _whiteSpaceCollapseProperty.hash(_whiteSpaceCollapse, hash); if (_renderingMode) hash = _renderingModeProperty.hash(_renderingMode, hash); if (_cffHinting) hash = _cffHintingProperty.hash(_cffHinting, hash); if (_fontLookup) hash = _fontLookupProperty.hash(_fontLookup, hash); if (_textRotation) hash = _textRotationProperty.hash(_textRotation, hash); if (_textIndent) hash = _textIndentProperty.hash(_textIndent, hash); if (_paragraphStartIndent) hash = _paragraphStartIndentProperty.hash(_paragraphStartIndent, hash); if (_paragraphEndIndent) hash = _paragraphEndIndentProperty.hash(_paragraphEndIndent, hash); if (_paragraphSpaceBefore) hash = _paragraphSpaceBeforeProperty.hash(_paragraphSpaceBefore, hash); if (_paragraphSpaceAfter) hash = _paragraphSpaceAfterProperty.hash(_paragraphSpaceAfter, hash); if (_textAlign) hash = _textAlignProperty.hash(_textAlign, hash); if (_textAlignLast) hash = _textAlignLastProperty.hash(_textAlignLast, hash); if (_textJustify) hash = _textJustifyProperty.hash(_textJustify, hash); if (_justificationRule) hash = _justificationRuleProperty.hash(_justificationRule, hash); if (_justificationStyle) hash = _justificationStyleProperty.hash(_justificationStyle, hash); if (_direction) hash = _directionProperty.hash(_direction, hash); if (_tabStops) hash = _tabStopsProperty.hash(_tabStops, hash); if (_leadingModel) hash = _leadingModelProperty.hash(_leadingModel, hash); if (_columnGap) hash = _columnGapProperty.hash(_columnGap, hash); if (_paddingLeft) hash = _paddingLeftProperty.hash(_paddingLeft, hash); if (_paddingTop) hash = _paddingTopProperty.hash(_paddingTop, hash); if (_paddingRight) hash = _paddingRightProperty.hash(_paddingRight, hash); if (_paddingBottom) hash = _paddingBottomProperty.hash(_paddingBottom, hash); if (_columnCount) hash = _columnCountProperty.hash(_columnCount, hash); if (_columnWidth) hash = _columnWidthProperty.hash(_columnWidth, hash); if (_firstBaselineOffset) hash = _firstBaselineOffsetProperty.hash(_firstBaselineOffset, hash); if (_verticalAlign) hash = _verticalAlignProperty.hash(_verticalAlign, hash); if (_blockProgression) hash = _blockProgressionProperty.hash(_blockProgression, hash); if (_lineBreak) hash = _lineBreakProperty.hash(_lineBreak, hash); return hash; } static private var _defaults:TextLayoutFormat; /** * Returns a TextLayoutFormat object with default settings. * This function always returns the same object. * * @return a singleton instance of ITextLayoutFormat that is populated with default values. * * @playerversion Flash 10 * @playerversion AIR 1.5 * @langversion 3.0 */ static public function get defaultFormat():ITextLayoutFormat { if (_defaults == null) { _defaults = new TextLayoutFormat(); Property.defaultsAllHelper(_description,_defaults); _defaultFormatHash = _defaults.hash(0); } return _defaults; } static private var _defaultFormatHash:uint; /** @private */ static tlf_internal function getDefaultFormatHash():uint { defaultFormat; return _defaultFormatHash; } } }