You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@flex.apache.org by ha...@apache.org on 2017/03/16 13:37:28 UTC
[08/42] flex-asjs git commit: And here’s TLF…
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/fd08d137/frameworks/projects/TLF/src/main/flex/org/apache/flex/textLayout/formats/LeadingModel.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/TLF/src/main/flex/org/apache/flex/textLayout/formats/LeadingModel.as b/frameworks/projects/TLF/src/main/flex/org/apache/flex/textLayout/formats/LeadingModel.as
new file mode 100644
index 0000000..ea6e883
--- /dev/null
+++ b/frameworks/projects/TLF/src/main/flex/org/apache/flex/textLayout/formats/LeadingModel.as
@@ -0,0 +1,152 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+// 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 org.apache.flex.textLayout.formats
+{
+ /**
+ * Defines values for setting the <code>leadingModel</code> property
+ * of the <code>TextLayoutFormat</code> class, composed of valid combinations of leading basis and leading direction.
+ * Leading basis describes which baselines determine the leading (or <code>lineHeight</code>) of lines in a paragraph.
+ * Leading direction specifies whether the <code>lineHeight</code> property refers to the distance of a line's
+ * baseline from that of the line before it or the line after it.
+ * <p>
+ * <img src="../../../images/textLayout_baselines.jpg" alt="baselines" border="0"/>
+ * <img src="../../../images/textLayout_LD1.jpg" alt="leadingDirection_1" border="0"/>
+ * <img src="../../../images/textLayout_LD2.jpg" alt="leadingDirection_2" border="0"/>
+ * <img src="../../../images/textLayout_LD3.jpg" alt="leadingDirection_3" border="0"/>
+ * </p>
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ *
+ * @see TextLayoutFormat#leadingModel
+ * @see TextLayoutFormat#lineHeight
+ * @see flash.text.TextField
+ * @see org.apache.flex.text.engine.TextLine
+ */
+
+ public final class LeadingModel
+ {
+ /** Specifies that leading basis is ROMAN and leading direction is UP.
+ * In other words, <code>lineHeight</code> refers to the distance of a line's Roman baseline from the
+ * previous line's Roman baseline.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+
+ public static const ROMAN_UP:String = "romanUp";
+
+ /** Specifies that leading basis is IDEOGRAPHIC_TOP and leading direction is UP.
+ * In other words, <code>lineHeight</code> refers to the distance of a line's ideographic top
+ * baseline from the previous line's ideographic top baseline.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+
+ public static const IDEOGRAPHIC_TOP_UP:String = "ideographicTopUp";
+
+ /** Specifies that leading basis is IDEOGRAPHIC_CENTER and leading direction is UP.
+ * In other words, <code>lineHeight</code> refers to the distance of a line's ideographic center
+ * baseline from the previous line's ideographic center baseline.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+
+ public static const IDEOGRAPHIC_CENTER_UP:String = "ideographicCenterUp";
+
+ /** Specifies that leading basis is IDEOGRAPHIC_TOP and leading direction is DOWN.
+ * In other words, <code>lineHeight</code> refers to the distance of a line's ideographic top baseline
+ * from the next line's ideographic top baseline.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+
+ public static const IDEOGRAPHIC_TOP_DOWN:String = "ideographicTopDown";
+
+ /** Specifies that leading basis is IDEOGRAPHIC_CENTER and leading direction is down.
+ * In other words, <code>lineHeight</code> refers to the distance of a line's ideographic center
+ * baseline from the next line's ideographic center baseline.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+
+ public static const IDEOGRAPHIC_CENTER_DOWN:String = "ideographicCenterDown";
+
+ /** Specifies that leading basis is ASCENT/DESCENT and leading direction is UP.
+ * In other words, <code>lineHeight</code> refers to the distance of a line's ascent baseline from the
+ * previous line's descent baseline.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+
+ public static const ASCENT_DESCENT_UP:String = "ascentDescentUp";
+
+ /** Specifies that leading model is chosen automatically based on the paragraph's <code>locale</code> property.
+ * For Japanese and Chinese, it is IDEOGRAPHIC_TOP_DOWN and for all others it is ROMAN_UP.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ *
+ * #IDEOGRAPHIC_TOP_DOWN
+ * #ROMAN_UP
+ */
+
+ public static const AUTO:String = "auto";
+
+ /** Specifies a leading model that approximates the line spacing behavior of <code>TextField</code>.
+ * It is similar to <code>ASCENT_DESCENT_UP</code> in that <code>lineHeight</code> refers to the
+ * distance of a line's ascent baseline from the previous line's descent baseline. However, baseline
+ * positions approximate those determined by <code>TextField</code>, rather than using metrics
+ * offered by <code>TextLine</code>.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+ public static const APPROXIMATE_TEXT_FIELD:String = "approximateTextField";
+
+ /** Specifies a leading model based on the CSS inline formatting model, which involves stacking <i>line boxes</i> contiguously.
+ * A <i>line box</i> is defined as the bounding box around <i>inline boxes</i> for all leaf elements on the text line, after they have been aligned
+ * using <code>baselineShift</code>, <code>dominantBaseline</code>, <code>alignmentBaseline</code> etc. For a span, the <i>inline box</i>
+ * is obtained by applying leading equally above and below the text content such that its height equals <code>lineHeight</code>.
+ * For an inline graphic, <code>lineHeight</code> is ignored; the <i>inline box</i> is derived from its specified dimensions and padding values.
+ * Also, <code>firstBaselineOffset</code> is ignored with this leading model.
+ *
+ * <p>For more information, see <a href='http://blogs.adobe.com/tlf/2010/11/box-leading-model.html'>Box leading model</a>.</p>
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+ public static const BOX:String = "box";
+
+ }
+}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/fd08d137/frameworks/projects/TLF/src/main/flex/org/apache/flex/textLayout/formats/LineBreak.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/TLF/src/main/flex/org/apache/flex/textLayout/formats/LineBreak.as b/frameworks/projects/TLF/src/main/flex/org/apache/flex/textLayout/formats/LineBreak.as
new file mode 100644
index 0000000..240a22b
--- /dev/null
+++ b/frameworks/projects/TLF/src/main/flex/org/apache/flex/textLayout/formats/LineBreak.as
@@ -0,0 +1,49 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+// 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 org.apache.flex.textLayout.formats
+{
+ /** Defines values for setting the <code>lineBreak</code> property of <code>TextLayoutFormat</code> to
+ * specify how lines are broken within wrapping text.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ * @see TextLayoutFormat#linebreak
+ */
+ public final class LineBreak
+ {
+ /** Specifies that lines wrap to fit the container width.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+
+ public static const TO_FIT:String = "toFit";
+
+ /** Specifies that lines break only at explicit return or line feed characters.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+
+ public static const EXPLICIT:String = "explicit";
+ }
+}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/fd08d137/frameworks/projects/TLF/src/main/flex/org/apache/flex/textLayout/formats/ListMarkerFormat.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/TLF/src/main/flex/org/apache/flex/textLayout/formats/ListMarkerFormat.as b/frameworks/projects/TLF/src/main/flex/org/apache/flex/textLayout/formats/ListMarkerFormat.as
new file mode 100644
index 0000000..acf203c
--- /dev/null
+++ b/frameworks/projects/TLF/src/main/flex/org/apache/flex/textLayout/formats/ListMarkerFormat.as
@@ -0,0 +1,370 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+// 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 org.apache.flex.textLayout.formats
+{
+ import org.apache.flex.textLayout.property.CounterContentHandler;
+ import org.apache.flex.textLayout.property.CounterPropHandler;
+ import org.apache.flex.textLayout.property.EnumPropertyHandler;
+ import org.apache.flex.textLayout.property.Property;
+ import org.apache.flex.textLayout.property.PropertyFactory;
+ import org.apache.flex.textLayout.property.PropertyUtil;
+
+
+
+
+ /** Defines the marker format in a ListItemElement.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ *
+ * @see org.apache.flex.textLayout.elements.ListItemElement
+ */
+ public class ListMarkerFormat extends TextLayoutFormat implements IListMarkerFormat
+ {
+ /** @private */
+ public static function createCounterResetProperty(nameValue:String, defaultValue:String, inherited:Boolean, categories:Vector.<String>):Property
+ {
+ var rslt:Property = new Property(nameValue, defaultValue, inherited, categories);
+ rslt.addHandlers(PropertyFactory.sharedUndefinedHandler, new EnumPropertyHandler([ FormatValue.NONE ]),new CounterPropHandler(0));
+ return rslt;
+ }
+
+ /** @private */
+ public static function createCounterIncrementProperty(nameValue:String, defaultValue:String, inherited:Boolean, categories:Vector.<String>):Property
+ {
+ var rslt:Property = new Property(nameValue, defaultValue, inherited, categories);
+ rslt.addHandlers(PropertyFactory.sharedUndefinedHandler, new EnumPropertyHandler([ FormatValue.NONE ]),new CounterPropHandler(1));
+ return rslt;
+ }
+
+ /** @private */
+ public static function createCounterContentProperty(nameValue:String, defaultValue:String, inherited:Boolean, categories:Vector.<String>):Property
+ {
+ var rslt:Property = new Property(nameValue, defaultValue, inherited, categories);
+ rslt.addHandlers(PropertyFactory.sharedUndefinedHandler, new EnumPropertyHandler([ FormatValue.NONE ]),new CounterContentHandler());
+ return rslt;
+ }
+
+ /** @private */
+ static public const counterResetProperty:Property = createCounterResetProperty("counterReset", FormatValue.NONE, false, Vector.<String>([Category.LIST]));
+ /** @private */
+ static public const counterIncrementProperty:Property = createCounterResetProperty("counterIncrement", "ordered 1", false, Vector.<String>([Category.LIST]));
+ /** @private */
+ static public const beforeContentProperty:Property = PropertyFactory.string("beforeContent", null, false, Vector.<String>([Category.LIST]));
+ /** @private */
+ static public const contentProperty:Property = createCounterContentProperty("content", "counter(ordered)", false, Vector.<String>([Category.LIST]));
+ /** @private */
+ static public const afterContentProperty:Property = PropertyFactory.string("afterContent", null, false, Vector.<String>([Category.LIST]));
+ /** @private */
+ static public const suffixProperty:Property = PropertyFactory.enumString("suffix", Suffix.AUTO, false, Vector.<String>([Category.LIST]), Suffix.AUTO, Suffix.NONE);
+
+ static private var _lmfDescription:Object = {
+ counterReset:counterResetProperty,
+ counterIncrement:counterIncrementProperty,
+ beforeContent:beforeContentProperty,
+ content:contentProperty,
+ afterContent:afterContentProperty,
+ suffix:suffixProperty
+ };
+
+ // at this point we know that both TextLayoutFormat and ListMarkerFormat are initialized so can setup the Property objects
+ PropertyFactory.sharedTextLayoutFormatHandler.converter = TextLayoutFormat.createTextLayoutFormat;
+ PropertyFactory.sharedListMarkerFormatHandler.converter = ListMarkerFormat.createListMarkerFormat;
+
+
+ /** Create a ListMarkerFormat that holds all the properties possible for a list marker.
+ *
+ * @param initialValues An optional instance from which to copy initial values.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+ public function ListMarkerFormat(initialValues:IListMarkerFormat = null)
+ {
+ super(initialValues);
+ }
+
+ /** @private */
+ private function setLMFStyle(styleProp:Property,newValue:*):void
+ {
+ var name:String = styleProp.name;
+ newValue = styleProp.setHelper(getStyle(name),newValue);
+ super.setStyleByName(name,newValue);
+ }
+
+ /** @private */
+ public override function setStyle(styleProp:String,newValue:*):void
+ {
+ var lmfStyle:Property = _lmfDescription[styleProp];
+ if (lmfStyle)
+ setLMFStyle(lmfStyle,newValue);
+ else
+ super.setStyle(styleProp,newValue);
+ }
+
+ /**
+ * Controls resetting the value of the counter.
+ * <p>Legal values for this property are:
+ * <ul>
+ * <li><code>none</code> - No reset.</li>
+ * <li><code>ordered</code> - Reset the counter to zero.</li>
+ * <li><code>ordered <i>integer</i></code> - Reset the counter to <code><i>integer</i></code>.</li>
+ * </ul>
+ * </p>
+ * <p>If <code>undefined</code>, the default value of this property is "none".</p>
+ * <p>Note: The <code>counterReset</code> property is applied before the <code>counterIncrement</code> property.</p>
+ *
+ * @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 counterReset():*
+ { return getStyle(counterResetProperty.name); }
+ public function set counterReset(value:*):void
+ { setLMFStyle(counterResetProperty,value); }
+
+ /**
+ * Controls incrementing the value of the counter.
+ * <p>Legal values for this string are:
+ * <ul>
+ * <li><code>none</code> - No increment.</li>
+ * <li><code>ordered</code> - Increment the counter by one.</li>
+ * <li><code>ordered <i>integer</i></code> - Increment the counter by <code><i>integer</i></code>.</li>
+ * </ul>
+ * </p>
+ * <p>If undefined, the default vaule of this property is <code>"ordered 1"</code>.</p>
+ * <p>Note: The <code>counterIncrement</code> property is applied before the <code>counterReset</code> property.</p>
+ *
+ * @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 counterIncrement():*
+ { return getStyle(counterIncrementProperty.name); }
+ public function set counterIncrement(value:*):void
+ { setLMFStyle(counterIncrementProperty,value); }
+
+ /**
+ * Controls the content of the marker.
+ * <p>Legal values for this string are:
+ * <ul>
+ * <li><code>none</code> - No marker.</li>
+ * <li><code>counter(ordered)</code> - Display the marker.</li>
+ * <li><code>counter(ordered,ListStyleType)</code> - Display the marker but change the listStyleType to the specified value.</li>
+ * <li><code>counters(ordered)</code> - Starting from the top-most parent ListElement creating a string of values of the ordered counter in each counters specified listStyleType separated by the suffix for each. This is used for outline number - for example I.1., I.2. etc.</li>
+ * <li><code>counters(ordered,"<string>")</code> - Similar to the previous value, except the suffix for each ordered counter is replaced by <string>.</li>
+ * <li><code>counters(ordered,"<string>",ListStyleType)</code> - Similar to the previous value, except each counter's <code>listStyleType</code> is replaced with the specified value.</li>
+ * </ul>
+ * </p>
+ * <p>If undefined, the default vaule of this property is <code>"counter(ordered)"</code>.</p>
+ *
+ * @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 content():*
+ { return getStyle(contentProperty.name); }
+ public function set content(value:*):void
+ { setLMFStyle(contentProperty,value); }
+
+ /** Specifies a string that goes before the marker. Default is the empty string.
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+ public function get beforeContent():*
+ { return getStyle(beforeContentProperty.name); }
+ public function set beforeContent(value:*):void
+ { setLMFStyle(beforeContentProperty,value); }
+
+ /** Specifies a string that goes after the marker. Default is the empty string.
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+ public function get afterContent():*
+ { return getStyle(afterContentProperty.name); }
+ public function set afterContent(value:*):void
+ { setLMFStyle(afterContentProperty,value); }
+
+ /**
+ * Controls the application of the suffix in the generated text in the ListItemElement.
+ * <p>Legal values are:
+ * <ul>
+ * <li><code>org.apache.flex.textLayout.formats.Suffix.NONE</code> - No suffix.</li>
+ * <li><code>org.apache.flex.textLayout.formats.Suffix.AUTO</code> - Follow CSS rules for adding a suffix.</li>
+ * </ul>
+ * </p>
+ * <p>Default value is <code>Suffix.AUTO</code>.</p>
+ *
+ * @throws RangeError when set value is not within range for this property
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ * @see org.apache.flex.textLayout.formats.Suffix
+ */
+ public function get suffix():*
+ { return getStyle(suffixProperty.name); }
+ public function set suffix(value:*):void
+ { setLMFStyle(suffixProperty,value); }
+
+ static private var _description:Object;
+
+ /** Property descriptions accessible by name. @private */
+ static public function get description():Object
+ {
+ if (!_description)
+ {
+ // use prototype chaining
+ _description = PropertyUtil.createObjectWithPrototype(TextLayoutFormat.description);
+ for (var key:String in _lmfDescription)
+ _description[key] = _lmfDescription[key];
+ }
+ return _description;
+ }
+
+ /** @private */
+ public override function copy(incoming:ITextLayoutFormat):void
+ {
+ super.copy(incoming);
+
+ var lmf:IListMarkerFormat = incoming as IListMarkerFormat;
+ if (lmf)
+ {
+ for (var key:String in _lmfDescription)
+ this[key] = lmf[key];
+ }
+ }
+
+ /** @private */
+ public override function concat(incoming:ITextLayoutFormat):void
+ {
+ super.concat(incoming);
+ var lmf:IListMarkerFormat = incoming as IListMarkerFormat;
+ if (lmf)
+ {
+ for each (var prop:Property in _lmfDescription)
+ {
+ var name:String = prop.name;
+ setLMFStyle(prop,prop.concatHelper(this[name],lmf[name]));
+ }
+ }
+ }
+
+ /** @private */
+ public override function concatInheritOnly(incoming:ITextLayoutFormat):void
+ {
+ super.concatInheritOnly(incoming);
+ var lmf:IListMarkerFormat = incoming as IListMarkerFormat;
+ if (lmf)
+ {
+ for each (var prop:Property in _lmfDescription)
+ {
+ var name:String = prop.name;
+ setLMFStyle(prop,prop.concatInheritOnlyHelper(this[name],lmf[name]));
+ }
+ }
+ }
+
+ /** @private */
+ public override function apply(incoming:ITextLayoutFormat):void
+ {
+ super.apply(incoming);
+ var lmf:IListMarkerFormat = incoming as IListMarkerFormat;
+ if (lmf)
+ {
+ for each (var prop:Property in _lmfDescription)
+ {
+ var name:String = prop.name;
+ var val:* = lmf[name];
+ if (val !== undefined)
+ this[name] = val;
+ }
+ }
+ }
+
+ /** @private */
+ public override function removeMatching(incoming:ITextLayoutFormat):void
+ {
+ super.removeMatching(incoming);
+ var lmf:IListMarkerFormat = incoming as IListMarkerFormat;
+ if (lmf)
+ {
+ for each (var prop:Property in _lmfDescription)
+ {
+ var name:String = prop.name;
+ if (prop.equalHelper(this[name],lmf[name]))
+ this[name] = undefined;
+ }
+ }
+
+ }
+
+ /** @private */
+ public override function removeClashing(incoming:ITextLayoutFormat):void
+ {
+ super.removeClashing(incoming);
+ var lmf:IListMarkerFormat = incoming as IListMarkerFormat;
+ if (lmf)
+ {
+ for each (var prop:Property in _lmfDescription)
+ {
+ var name:String = prop.name;
+ if (!prop.equalHelper(this[name],lmf[name]))
+ this[name] = undefined;
+ }
+ }
+ }
+
+ /**
+ * Creates a new ListMarkerFormat object. All settings are empty or, optionally, are initialized from the
+ * supplied <code>initialValues</code> object.
+ *
+ * @param initialValues Optional instance from which to copy initial values. If the object is of type IListMarkerFormat or ITextLayoutFormat, the values are copied.
+ * Otherwise the <code>initialValues</code> parameter is treated like a ObjectMap or Object and iterated over.
+ *
+ * @return The new ListMarkerFormat object.
+ *
+ * @see #defaultFormat
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+ public static function createListMarkerFormat(initialValues:Object):ListMarkerFormat
+ {
+ var lmf:IListMarkerFormat = initialValues as IListMarkerFormat;
+ var rslt:ListMarkerFormat = new ListMarkerFormat(lmf);
+ if (lmf == null && initialValues)
+ {
+ for (var key:String in initialValues)
+ rslt.setStyle(key,initialValues[key]);
+ }
+ return rslt;
+ }
+ }
+}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/fd08d137/frameworks/projects/TLF/src/main/flex/org/apache/flex/textLayout/formats/ListStylePosition.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/TLF/src/main/flex/org/apache/flex/textLayout/formats/ListStylePosition.as b/frameworks/projects/TLF/src/main/flex/org/apache/flex/textLayout/formats/ListStylePosition.as
new file mode 100644
index 0000000..63cf916
--- /dev/null
+++ b/frameworks/projects/TLF/src/main/flex/org/apache/flex/textLayout/formats/ListStylePosition.as
@@ -0,0 +1,50 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+// 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 org.apache.flex.textLayout.formats
+{
+ /**
+ * Defines values for setting the <code>listStylePosition</code> property. These values control the placement
+ * of a list item marker relative to the list item.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ *
+ * @see TextLayoutFormat#listStylePosition
+ */
+
+ public final class ListStylePosition
+ {
+ /** Marker will appear inline with the list item. This style position lets you include trailing spaces.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+ public static const INSIDE:String = "inside";
+
+ /** Marker will appear in the margin of the list. This style position does not recognize trailing spaces.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+ public static const OUTSIDE:String = "outside";
+ }
+}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/fd08d137/frameworks/projects/TLF/src/main/flex/org/apache/flex/textLayout/formats/ListStyleType.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/TLF/src/main/flex/org/apache/flex/textLayout/formats/ListStyleType.as b/frameworks/projects/TLF/src/main/flex/org/apache/flex/textLayout/formats/ListStyleType.as
new file mode 100644
index 0000000..a98e55d
--- /dev/null
+++ b/frameworks/projects/TLF/src/main/flex/org/apache/flex/textLayout/formats/ListStyleType.as
@@ -0,0 +1,314 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+// 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 org.apache.flex.textLayout.formats
+{
+ /**
+ * Defines values for setting the <code>listStyleType</code> property of a TextLayoutFormat object. These values are used for controlling
+ * the appearance of items in a list.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ *
+ * @see TextLayoutFormat#listStyleType
+ */
+
+ public final class ListStyleType
+ {
+ /** Upper-case alphabetic "numbering": A-Z, AA-ZZ, and so on.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+ public static const UPPER_ALPHA:String = "upperAlpha";
+
+ /** Lower-case alphabetic "numbering": a-z, aa-zz, and so on.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+ public static const LOWER_ALPHA:String = "lowerAlpha";
+
+ /** Upper-case Roman numbering: I, II, III, IV, and so on.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+ public static const UPPER_ROMAN:String = "upperRoman";
+
+ /** Lower-case Roman numbering: i, ii, iii, iv, and so on.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+ public static const LOWER_ROMAN:String = "lowerRoman";
+
+ /** No content is generated for the marker.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+ public static const NONE:String = "none";
+
+ /** A bullet character marker (filled circle).
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+ public static const DISC:String = "disc";
+
+ /** A circle character marker that is not filled.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+ public static const CIRCLE:String = "circle";
+
+ /** A filled square marker.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+ public static const SQUARE:String = "square";
+
+ /** A square marker that is not filled.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+ public static const BOX:String = "box";
+
+ /** A check mark.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+ public static const CHECK:String = "check";
+
+ /** A filled diamond marker.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+ public static const DIAMOND:String = "diamond";
+
+ /** A dash mark.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+ public static const HYPHEN:String = "hyphen";
+
+ /** Numbering using Arabic script.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+ public static const ARABIC_INDIC:String = "arabicIndic";
+
+ /** Numbering using Bengali script.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+ public static const BENGALI:String = "bengali";
+
+ /** Numbering using decimals: 1, 2, 3, and so on.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+ public static const DECIMAL:String = "decimal";
+
+ /** Numbering using decimal with a leading zero: 01, 02, 03, and so on.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+ public static const DECIMAL_LEADING_ZERO:String = "decimalLeadingZero";
+
+ /** Numbering using Devangari.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+ public static const DEVANAGARI:String = "devanagari";
+
+ /** Numbering using Gujarati.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+ public static const GUJARATI:String = "gujarati";
+
+ /** Numbering using Gurmukhi.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+ public static const GURMUKHI:String = "gurmukhi";
+
+ /** Numbering using Kannada.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+ public static const KANNADA:String = "kannada";
+
+ /** Numbering using Persian.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+ public static const PERSIAN:String = "persian";
+
+ /** Numbering using Thai.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+ public static const THAI:String = "thai";
+
+ /** Numbering using Urdu.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+ public static const URDU:String = "urdu";
+
+ /** Numbering for CJK.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+ public static const CJK_EARTHLY_BRANCH:String = "cjkEarthlyBranch";
+
+ /** Numbering for CJK.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+ public static const CJK_HEAVENLY_STEM:String = "cjkHeavenlyStem";
+
+ /** Numbering for Hangul.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+ public static const HANGUL:String = "hangul";
+
+ /** Numbering for Hangul.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+ public static const HANGUL_CONSTANT:String = "hangulConstant";
+
+ /** Numbering for Hiragana.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+ public static const HIRAGANA:String = "hiragana";
+
+ /** Numbering for Hiragana.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+ public static const HIRAGANA_IROHA:String = "hiraganaIroha";
+
+ /** Numbering for Katagana.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+ public static const KATAKANA:String = "katakana";
+
+ /** Numbering for Katagana.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+ public static const KATAKANA_IROHA:String = "katakanaIroha";
+
+ /** Lower-case Greek alphabetic "numering".
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+ public static const LOWER_GREEK:String = "lowerGreek";
+
+ /** Lower-case alphabetic "numbering": a-z, aa-zz, and so on.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+ public static const LOWER_LATIN:String = "lowerLatin";
+
+ /** Upper-case Greek alphabetic "numering".
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+ public static const UPPER_GREEK:String = "upperGreek";
+
+ /** Upper-case alphabetic "numbering": A-Z, AA-ZZ, and so on.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+ public static const UPPER_LATIN:String = "upperLatin";
+ }
+}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/fd08d137/frameworks/projects/TLF/src/main/flex/org/apache/flex/textLayout/formats/Suffix.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/TLF/src/main/flex/org/apache/flex/textLayout/formats/Suffix.as b/frameworks/projects/TLF/src/main/flex/org/apache/flex/textLayout/formats/Suffix.as
new file mode 100644
index 0000000..3afecd2
--- /dev/null
+++ b/frameworks/projects/TLF/src/main/flex/org/apache/flex/textLayout/formats/Suffix.as
@@ -0,0 +1,51 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+// 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 org.apache.flex.textLayout.formats
+{
+ /**
+ * Defines values for setting the <code>suffix</code> property of a ListMarkerFormat.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ *
+ * @see ListMarkerFormat#suffix
+ */
+ public class Suffix
+ {
+ /** Specifies that the auto suffix is appended to the list marker after the content.
+ * See <a href="http://www.w3.org/TR/css3-lists/">http://www.w3.org/TR/css3-lists/</a> for the default suffixes.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+
+ public static const AUTO:String = "auto";
+
+ /** Specifies that no suffix is appended to a list marker after the content.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+
+ public static const NONE:String = "none";
+ }
+}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/fd08d137/frameworks/projects/TLF/src/main/flex/org/apache/flex/textLayout/formats/TLFTypographicCase.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/TLF/src/main/flex/org/apache/flex/textLayout/formats/TLFTypographicCase.as b/frameworks/projects/TLF/src/main/flex/org/apache/flex/textLayout/formats/TLFTypographicCase.as
new file mode 100644
index 0000000..5bdf114
--- /dev/null
+++ b/frameworks/projects/TLF/src/main/flex/org/apache/flex/textLayout/formats/TLFTypographicCase.as
@@ -0,0 +1,79 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+// 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 org.apache.flex.textLayout.formats
+{
+ /**
+ * Defines values for the <code>typographicCase</code> property of the TextLayoutFormat
+ * class.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ *
+ * @see TextLayoutFormat#typographicCase
+ */
+ public final class TLFTypographicCase
+ {
+ /** Specifies default typographic case -- no special features applied.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+
+ public static const DEFAULT:String = "default";
+
+ /** Converts all lowercase characters to uppercase, then applies small caps to only the
+ * characters that the conversion changed.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+
+ public static const LOWERCASE_TO_SMALL_CAPS:String = "lowercaseToSmallCaps";
+
+ /** Specifies that all characters use lowercase glyphs on output.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+
+ public static const LOWERCASE:String = "lowercase";
+
+ /** Specifies that uppercase characters use small-caps glyphs on output.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+
+ public static const CAPS_TO_SMALL_CAPS:String = "capsToSmallCaps";
+
+ /** Specifies that all characters use uppercase glyphs on output.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+
+ public static const UPPERCASE:String = "uppercase";
+ }
+}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/fd08d137/frameworks/projects/TLF/src/main/flex/org/apache/flex/textLayout/formats/TabStopFormat.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/TLF/src/main/flex/org/apache/flex/textLayout/formats/TabStopFormat.as b/frameworks/projects/TLF/src/main/flex/org/apache/flex/textLayout/formats/TabStopFormat.as
new file mode 100644
index 0000000..7571d39
--- /dev/null
+++ b/frameworks/projects/TLF/src/main/flex/org/apache/flex/textLayout/formats/TabStopFormat.as
@@ -0,0 +1,397 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+// 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 org.apache.flex.textLayout.formats
+{
+ import org.apache.flex.text.engine.TabAlignment;
+ import org.apache.flex.textLayout.property.Property;
+ import org.apache.flex.textLayout.property.PropertyFactory;
+ import org.apache.flex.textLayout.property.PropertyUtil;
+ /**
+ * The TabStopFormat class represents the properties of a tab stop in a paragraph. You can set the <code>TextLayoutFormat.tabstops</code> property to an array of TabStopFormat objects.
+ * @see org.apache.flex.textLayout.elements.TabElement
+ * @see org.apache.flex.textLayout.formats.TextLayoutFormat#tabStops
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+ public class TabStopFormat implements ITabStopFormat
+ {
+ /** @private */
+ private static var _positionProperty:Property;
+ private static function get positionProperty():Property
+ {
+ if(!_positionProperty)
+ _positionProperty = PropertyFactory.number("position",0,false,Vector.<String>([Category.TABSTOP]),0,10000);
+ return _positionProperty;
+ }
+ // static public const positionProperty:Property = PropertyUtil.NewNumberProperty("position",0,false,Vector.<String>([Category.TABSTOP]),0,10000);
+ /** @private */
+ private static var _alignmentProperty:Property;
+ private static function get alignmentProperty():Property
+ {
+ if(_alignmentProperty == null)
+ {
+ _alignmentProperty = PropertyFactory.enumString(
+ "alignment",TabAlignment.START,false,Vector.<String>([Category.TABSTOP])
+ ,TabAlignment.START
+ ,TabAlignment.CENTER
+ ,TabAlignment.END
+ ,TabAlignment.DECIMAL
+ );
+ }
+ return _alignmentProperty;
+ }
+ // static public const alignmentProperty:Property = PropertyUtil.NewEnumStringProperty(
+ // "alignment",TabAlignment.START,false,Vector.<String>([Category.TABSTOP])
+ // ,TabAlignment.START
+ // ,TabAlignment.CENTER
+ // ,TabAlignment.END
+ // ,TabAlignment.DECIMAL
+ // );
+ /** @private */
+ private static var _decimalAlignmentTokenProperty:Property;
+ private static function get decimalAlignmentTokenProperty():Property
+ {
+ if(_decimalAlignmentTokenProperty == null)
+ {
+ _decimalAlignmentTokenProperty = PropertyFactory.string("decimalAlignmentToken",null,false,Vector.<String>([Category.TABSTOP]));
+ }
+ return _decimalAlignmentTokenProperty;
+ }
+ // static public const decimalAlignmentTokenProperty:Property = PropertyUtil.NewStringProperty("decimalAlignmentToken",null,false,Vector.<String>([Category.TABSTOP]));
+
+ static private var _description:Object;
+
+ /** Property descriptions accessible by name. @private */
+ static public function get description():Object
+ {
+ if(!_description)
+ {
+ _description = {
+ position:positionProperty
+ , alignment:alignmentProperty
+ , decimalAlignmentToken:decimalAlignmentTokenProperty
+ };
+ }
+ return _description;
+ }
+
+ /** @private */
+ static private var _emptyTabStopFormat:ITabStopFormat;
+ /**
+ * Returns an ITabStopFormat instance with all properties set to <code>undefined</code>.
+ * @private
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+ static public function get emptyTabStopFormat():ITabStopFormat
+ {
+ if (_emptyTabStopFormat == null)
+ _emptyTabStopFormat = new TabStopFormat();
+ return _emptyTabStopFormat;
+ }
+
+
+ private var _position:*;
+ private var _alignment:*;
+ private var _decimalAlignmentToken:*;
+
+ /**
+ * Return the value of the style specified by the <code>styleProp</code> parameter
+ * which specifies the style name.
+ *
+ * @param styleProp The name of the style whose value is to be retrieved.
+ * @return The value of the specified style. The type varies depending on the type of the style being
+ * accessed. Returns <code>undefined</code> if the style is not set.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+ public function getStyle(styleName:String):*
+ { return this[styleName]; }
+
+ /**
+ * Set the value of the style specified by the <code>styleProp</code> parameter
+ * which specifies the style name to <code>value</code>.
+ *
+ * @param styleProp The name of the style whose value is to be set.
+ * @param value The value to set.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+ public function setStyle(styleName:String,value:*):void
+ { this[styleName] = value; }
+
+ /**
+ * The position of the tab stop, in pixels, relative to the start edge of the column.
+ * <p>Legal values are numbers from 0 to 10000 and FormatValue.INHERIT.</p>
+ * <p>Default value is undefined indicating not set.</p>
+ * <p>If undefined during the cascade this property will have a value of 0.</p>
+ * @see FormatValue#INHERIT
+ *
+ * @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 position():*
+ { return _position; }
+ public function set position(newValue:*):void
+ { _position = positionProperty.setHelper(_position,newValue); }
+
+ [Inspectable(enumeration="start,center,end,decimal,inherit")]
+ /**
+ * The tab alignment for this tab stop.
+ * <p>Legal values are TabAlignment.START, TabAlignment.CENTER, TabAlignment.END, TabAlignment.DECIMAL, FormatValue.INHERIT.</p>
+ * <p>Default value is undefined indicating not set.</p>
+ * <p>If undefined during the cascade this property will have a value of TabAlignment.START.</p>
+ * @see FormatValue#INHERIT
+ *
+ * @throws RangeError when set value is not within range for this property
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ * @see org.apache.flex.text.engine.TabAlignment
+ */
+ public function get alignment():*
+ { return _alignment; }
+ public function set alignment(newValue:*):void
+ { _alignment = alignmentProperty.setHelper(_alignment,newValue); }
+
+ /**
+ * The alignment token to be used if the alignment is DECIMAL.
+ * <p>Default value is undefined indicating not set.</p>
+ * <p>If undefined during the cascade this property will have a value of null.</p>
+ *
+ * @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 decimalAlignmentToken():*
+ { return _decimalAlignmentToken; }
+ public function set decimalAlignmentToken(newValue:*):void
+ { _decimalAlignmentToken = decimalAlignmentTokenProperty.setHelper(_decimalAlignmentToken,newValue); }
+
+ /**
+ * Creates a new TabStopFormat object. All settings are empty or, optionally, are initialized from the
+ * supplied <code>initialValues</code> 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 TabStopFormat(initialValues:ITabStopFormat = null)
+ {
+ if (initialValues)
+ apply(initialValues);
+ }
+
+ /**
+ * Copies TabStopFormat settings from the <code>values</code> ITabStopFormat instance into this TabStopFormat object.
+ * If <code>values</code> is <code>null</code>, this TabStopFormat object is initialized with undefined values for all properties.
+ * @param values optional instance from which to copy values.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+ public function copy(values:ITabStopFormat):void
+ {
+ if (values == null)
+ values = emptyTabStopFormat;
+ this.position = values.position;
+ this.alignment = values.alignment;
+ this.decimalAlignmentToken = values.decimalAlignmentToken;
+ }
+
+ /**
+ * Concatenates the values of properties in the <code>incoming</code> ITabStopFormat instance
+ * with the values of this TabStopFormat object. In this (the receiving) TabStopFormat object, properties whose values are <code>FormatValue.INHERIT</code>,
+ * and inheriting properties whose values are <code>undefined</code> will get new values from the <code>incoming</code> object.
+ * Non-inheriting properties whose values are <code>undefined</code> will get their default values.
+ * All other property values will remain unmodified.
+ *
+ * @param incoming instance from which values are concatenated.
+ * @see org.apache.flex.textLayout.formats.FormatValue#INHERIT
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+ public function concat(incoming:ITabStopFormat):void
+ {
+ this.position = positionProperty.concatHelper(this.position, incoming.position);
+ this.alignment = alignmentProperty.concatHelper(this.alignment, incoming.alignment);
+ this.decimalAlignmentToken = decimalAlignmentTokenProperty.concatHelper(this.decimalAlignmentToken, incoming.decimalAlignmentToken);
+ }
+
+ /**
+ * Concatenates the values of properties in the <code>incoming</code> ITabStopFormat instance
+ * with the values of this TabStopFormat object. In this (the receiving) TabStopFormat object, properties whose values are <code>FormatValue.INHERIT</code>,
+ * and inheriting properties whose values are <code>undefined</code> will get new values from the <code>incoming</code> object.
+ * All other property values will remain unmodified.
+ *
+ * @param incoming instance from which values are concatenated.
+ * @see org.apache.flex.textLayout.formats.FormatValue#INHERIT
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+ public function concatInheritOnly(incoming:ITabStopFormat):void
+ {
+ this.position = positionProperty.concatInheritOnlyHelper(this.position, incoming.position);
+ this.alignment = alignmentProperty.concatInheritOnlyHelper(this.alignment, incoming.alignment);
+ this.decimalAlignmentToken = decimalAlignmentTokenProperty.concatInheritOnlyHelper(this.decimalAlignmentToken, incoming.decimalAlignmentToken);
+ }
+
+ /**
+ * Replaces property values in this TabStopFormat object with the values of properties that are set in
+ * the <code>incoming</code> ITabStopFormat instance. Properties that are <code>undefined</code> in the <code>incoming</code>
+ * ITabStopFormat instance are not changed in this object.
+ *
+ * @param incoming instance whose property values are applied to this TabStopFormat object.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+ public function apply(incoming:ITabStopFormat):void
+ {
+ var val:*;
+
+ if ((val = incoming.position) !== undefined)
+ this.position = val;
+ if ((val = incoming.alignment) !== undefined)
+ this.alignment = val;
+ if ((val = incoming.decimalAlignmentToken) !== undefined)
+ this.decimalAlignmentToken = val;
+ }
+
+ /**
+ * Compares properties in ITabStopFormat instance <code>p1</code> with properties in ITabStopFormat instance <code>p2</code>
+ * and returns <code>true</code> if all properties match.
+ *
+ * @param p1 instance to compare to <code>p2</code>.
+ * @param p2 instance to compare to <code>p1</code>.
+ *
+ * @return true if all properties match, false otherwise.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+ static public function isEqual(p1:ITabStopFormat,p2:ITabStopFormat):Boolean
+ {
+ if (p1 == null)
+ p1 = emptyTabStopFormat;
+ if (p2 == null)
+ p2 = emptyTabStopFormat;
+ if (p1 == p2)
+ return true;
+
+ if (!positionProperty.equalHelper(p1.position, p2.position))
+ return false;
+ if (!alignmentProperty.equalHelper(p1.alignment, p2.alignment))
+ return false;
+ if (!decimalAlignmentTokenProperty.equalHelper(p1.decimalAlignmentToken, p2.decimalAlignmentToken))
+ return false;
+
+ return true;
+ }
+
+ /**
+ * Sets properties in this TabStopFormat object to <code>undefined</code> if they match those in the <code>incoming</code>
+ * ITabStopFormat instance.
+ *
+ * @param incoming instance against which to compare this TabStopFormat object's property values.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+ public function removeMatching(incoming:ITabStopFormat):void
+ {
+ if (incoming == null)
+ return;
+
+ if (positionProperty.equalHelper(this.position, incoming.position))
+ this.position = undefined;
+ if (alignmentProperty.equalHelper(this.alignment, incoming.alignment))
+ this.alignment = undefined;
+ if (decimalAlignmentTokenProperty.equalHelper(this.decimalAlignmentToken, incoming.decimalAlignmentToken))
+ this.decimalAlignmentToken = undefined;
+ }
+
+ /**
+ * Sets properties in this TabStopFormat object to <code>undefined</code> if they do not match those in the
+ * <code>incoming</code> ITabStopFormat instance.
+ *
+ * @param incoming instance against which to compare this TabStopFormat object's property values.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+ public function removeClashing(incoming:ITabStopFormat):void
+ {
+ if (incoming == null)
+ return;
+
+ if (!positionProperty.equalHelper(this.position, incoming.position))
+ this.position = undefined;
+ if (!alignmentProperty.equalHelper(this.alignment, incoming.alignment))
+ this.alignment = undefined;
+ if (!decimalAlignmentTokenProperty.equalHelper(this.decimalAlignmentToken, incoming.decimalAlignmentToken))
+ this.decimalAlignmentToken = undefined;
+ }
+
+ static private var _defaults:TabStopFormat;
+ /**
+ * Returns a TabStopFormat object with default settings.
+ * This function always returns the same object.
+ *
+ * @return a singleton instance of ITabStopFormat that is populated with default values.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+ static public function get defaultFormat():ITabStopFormat
+ {
+ if (_defaults == null)
+ {
+ _defaults = new TabStopFormat();
+ PropertyUtil.defaultsAllHelper(_description,_defaults);
+ }
+ return _defaults;
+ }
+ }
+}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/fd08d137/frameworks/projects/TLF/src/main/flex/org/apache/flex/textLayout/formats/TableFrame.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/TLF/src/main/flex/org/apache/flex/textLayout/formats/TableFrame.as b/frameworks/projects/TLF/src/main/flex/org/apache/flex/textLayout/formats/TableFrame.as
new file mode 100644
index 0000000..5270923
--- /dev/null
+++ b/frameworks/projects/TLF/src/main/flex/org/apache/flex/textLayout/formats/TableFrame.as
@@ -0,0 +1,113 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+// 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 org.apache.flex.textLayout.formats
+{
+ /**
+ * Defines values for the <code>TableFrame</code> property of the TextLayoutFormat class. Specifies which
+ * sides of the frame surrounding a table will be visible.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ * @see TextLayoutFormat#TableFrame
+ */
+ public final class TableFrame
+ {
+ /** No sides. This is the default value.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+
+ public static const VOID:String = "void";
+
+ /** The top side only.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+
+ public static const ABOVE:String = "above";
+
+ /** The bottom side only.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+
+ public static const BELOW:String = "below";
+
+ /** The top and bottom sides only.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+
+ public static const HSIDES:String = "hsides";
+
+ /** The right and left sides only
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+
+ public static const VSIDES:String = "vsides";
+
+ /** The left-hand side only.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+
+ public static const LHS:String = "lhs";
+
+ /** The right-hand side only.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+
+ public static const RHS:String = "rhs";
+
+ /** All four sides.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+
+ public static const BOX:String = "box";
+
+ /** All four sides.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+
+ public static const BORDER:String = "border";
+ }
+}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/fd08d137/frameworks/projects/TLF/src/main/flex/org/apache/flex/textLayout/formats/TableRules.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/TLF/src/main/flex/org/apache/flex/textLayout/formats/TableRules.as b/frameworks/projects/TLF/src/main/flex/org/apache/flex/textLayout/formats/TableRules.as
new file mode 100644
index 0000000..f9a4bb4
--- /dev/null
+++ b/frameworks/projects/TLF/src/main/flex/org/apache/flex/textLayout/formats/TableRules.as
@@ -0,0 +1,77 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+// 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 org.apache.flex.textLayout.formats
+{
+ /**
+ * Defines values for the <code>TableRules</code> property of the TextLayoutFormat class. Specifies which
+ * rules will appear between cells within a table. The rendering of rules is user agent dependent.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ * @see TextLayoutFormat#TableRules
+ */
+ public final class TableRules
+ {
+ /** No sides. This is the default value.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+
+ public static const NONE:String = "none";
+
+ /** Rules will appear between row groups (see THEAD, TFOOT, and TBODY) and column groups (see COLGROUP and COL) only.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+
+ public static const GROUPS:String = "groups";
+
+ /** Rules will appear between rows only.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+
+ public static const ROWS:String = "rows";
+
+ /** Rules will appear between columns only.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+
+ public static const COLS:String = "cols";
+
+ /** Rules will appear between all rows and columns.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+
+ public static const ALL:String = "all";
+ }
+}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/fd08d137/frameworks/projects/TLF/src/main/flex/org/apache/flex/textLayout/formats/TextAlign.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/TLF/src/main/flex/org/apache/flex/textLayout/formats/TextAlign.as b/frameworks/projects/TLF/src/main/flex/org/apache/flex/textLayout/formats/TextAlign.as
new file mode 100644
index 0000000..b97f07d
--- /dev/null
+++ b/frameworks/projects/TLF/src/main/flex/org/apache/flex/textLayout/formats/TextAlign.as
@@ -0,0 +1,91 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+// 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 org.apache.flex.textLayout.formats
+{
+ /**
+ * Defines values for setting the <code>textAlign</code> and <code>textAlignLast</code> properties
+ * of the TextLayoutFormat class. The values describe the alignment of lines in the paragraph relative to the
+ * container.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ * @see TextLayoutFormat#textAlign
+ * @see TextLayoutFormat#textAlignLast
+ */
+ public final class TextAlign
+ {
+ /** Specifies start edge alignment - text is aligned to match the writing order. Equivalent to setting
+ * left in left-to-right text, or right in right-to-left text.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+
+ public static const START:String = "start";
+
+ /** Specifies end edge alignment - text is aligned opposite from the writing order. Equivalent to
+ * specifying right in left-to-right text, or left in right-to-left text.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+
+ public static const END:String = "end";
+
+ /** Specifies left edge alignment.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+
+ public static const LEFT:String = "left";
+
+ /** Specifies right edge alignment.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+
+ public static const RIGHT:String = "right";
+
+ /** Specifies center alignment within the container.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+
+ public static const CENTER:String = "center";
+
+ /** Specifies that text is justified within the lines so they fill the container space.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+
+ public static const JUSTIFY:String = "justify";
+
+ }
+}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/fd08d137/frameworks/projects/TLF/src/main/flex/org/apache/flex/textLayout/formats/TextDecoration.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/TLF/src/main/flex/org/apache/flex/textLayout/formats/TextDecoration.as b/frameworks/projects/TLF/src/main/flex/org/apache/flex/textLayout/formats/TextDecoration.as
new file mode 100644
index 0000000..b0b8c62
--- /dev/null
+++ b/frameworks/projects/TLF/src/main/flex/org/apache/flex/textLayout/formats/TextDecoration.as
@@ -0,0 +1,53 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+// 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 org.apache.flex.textLayout.formats
+{
+ /**
+ * Defines values for the <code>textDecoration</code> property
+ * of the TextLayoutFormat class. The values specify either normal text, with no decoration,
+ * or underline.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ *
+ * @see TextLayoutFormat#textDecoration
+ */
+
+ public final class TextDecoration
+ {
+ /** Specifies normal text - no decoration applied
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+
+ public static const NONE:String = "none";
+
+ /** Specifies that text is underlined.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+
+ public static const UNDERLINE:String = "underline";
+ }
+}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/fd08d137/frameworks/projects/TLF/src/main/flex/org/apache/flex/textLayout/formats/TextJustify.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/TLF/src/main/flex/org/apache/flex/textLayout/formats/TextJustify.as b/frameworks/projects/TLF/src/main/flex/org/apache/flex/textLayout/formats/TextJustify.as
new file mode 100644
index 0000000..27f4a8f
--- /dev/null
+++ b/frameworks/projects/TLF/src/main/flex/org/apache/flex/textLayout/formats/TextJustify.as
@@ -0,0 +1,55 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+// 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 org.apache.flex.textLayout.formats
+{
+ /**
+ * Defines values for setting the <code>textJustify</code> property of the TextLayoutFormat class.
+ * Default value is INTER_WORD, meaning that extra space in justification is added to the space characters.
+ * DISTRIBUTE specifies that extra space is added both to space characters and between individual
+ * letters. Use these values only when setting <code>justificationRule</code> to SPACE.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ *
+ * @see TextLayoutFormat#textJustify
+ * @see TextLayoutFormat#justificationRule
+ */
+ public final class TextJustify
+ {
+ /** Specifies that justification is to add space both to space characters and
+ * between individual letters.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+
+ public static const DISTRIBUTE:String = "distribute";
+
+ /** Specifies that justification is to add space to space characters.
+ *
+ * @playerversion Flash 10
+ * @playerversion AIR 1.5
+ * @langversion 3.0
+ */
+
+ public static const INTER_WORD:String = "interWord";
+ }
+}