| //////////////////////////////////////////////////////////////////////////////// |
| // |
| // 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.conversion |
| { |
| import flashx.textLayout.elements.TextFlow; |
| import flashx.textLayout.elements.TextRange; |
| |
| /** |
| * Interface for exporting text content from a TextFlow instance to a given format, |
| * which may for example be String or XML format, or a user-defined format. Exporters support the getting |
| * and setting of properties to control the export of data. These properties are implemented |
| * as public properties, but the direct access of these properties should be avoided, since |
| * a user might replace the converter class in the TextConverter registry, causing a downcast |
| * to fail. |
| * @playerversion Flash 10 |
| * @playerversion AIR 1.5 |
| * @langversion 3.0 |
| */ |
| public interface ITextExporter |
| { |
| /** |
| * Export text content from a TextFlow instance in String, or XML, or a user defined format. |
| * <p>Set the <code>conversionType</code> parameter to either of the following values, |
| * or a user defined format in user-defined exporters. |
| * <ul> |
| * <li><code>flashx.textLayout.conversion.ConversionType.STRING_TYPE</code>;</li> |
| * <li><code>flashx.textLayout.conversion.ConversionType.XML_TYPE</code>.</li> |
| * </ul> |
| * </p> |
| * @param source The TextFlow to export |
| * @param conversionType Return a String (STRING_TYPE) or XML (XML_TYPE), or any user defined format. |
| * @return Object The exported content |
| * @includeExample examples\ITextExporterExample.as -noswf |
| * @see flashx.textLayout.conversion.ConversionType |
| * @playerversion Flash 10 |
| * @playerversion AIR 1.5 |
| * @langversion 3.0 |
| */ |
| function export(source:TextFlow, conversionType:String):Object; |
| |
| /** |
| * This property contains a vector of error messages as strings after a call |
| * to an exporter method is the <code>throwOnError</code> property is set to |
| * <code>false</code>, which is the default. If there were no errors, the |
| * property returns <code>null</code>. The property is reset on each method |
| * call. |
| * @playerversion Flash 10.2 |
| * @playerversion AIR 2.0 |
| * @langversion 3.0 |
| */ |
| function get errors():Vector.<String>; |
| |
| /** |
| * The throwOnError property controls how the exporter handles errors. |
| * If set to <code>true</code>, methods throw an Error instance on errors. |
| * If set to <code>false</code>, which is the default, errors are collected |
| * into a vector of strings and stored in the <code>errors</code> property, |
| * and the exporter does not throw. |
| * @playerversion Flash 10.2 |
| * @playerversion AIR 2.0 |
| * @langversion 3.0 |
| */ |
| function get throwOnError():Boolean; |
| function set throwOnError(value:Boolean):void; |
| |
| /** |
| * The <code>useClipboardAnnotations</code> property controls whether or not the |
| * importer should handle the extra information necessary for the clipboard. |
| * When data is in a TextFlow, paragraphs are always complete, and include a |
| * terminator character. When a range of text is pasted to the clipboard, it |
| * will form paragraphs, but the range may not include in the final terminator. |
| * In this case, the paragraph needs to be marked as a partial paragraph if it |
| * is intended for the clipboard, so that if it is later pasted it will merge |
| * into the new text correctly. If the content is intended for the clipboard, |
| * useClipboardAnnotations will be true. |
| * @playerversion Flash 10 |
| * @playerversion AIR 1.5 |
| * @langversion 3.0 |
| */ |
| function get useClipboardAnnotations():Boolean; |
| function set useClipboardAnnotations(value:Boolean):void; |
| } |
| } |