| Пакет | flashx.textLayout.events |
| Класс | public class FlowOperationEvent |
| Наследование | FlowOperationEvent Event Object |
| Язык версии: | ActionScript 3.0 |
| Версии среды выполнения: | Flash Player 10, AIR 1.5 |
Перед выполнением любой операции объект TextFlow передает событие FlowOperationEvent, свойство type которого имеет значение FlowOperationEvent.FLOW_OPERATION_BEGIN. Для определения типа начинающейся операции следует проверить свойство operation. События типа FLOW_OPERATION_BEGIN могут быть отменены. Это означает, что при принятии решении о том, что продолжение операции не требуется, можно вызвать метод Event.PreventDefault() для отмены операции. В случае отмены операции, она не выполняется, а событие FLOW_OPERATION_END не передается. Для выполнения другой операции до осуществления операции в событии также можно использовать обратный вызов для EditManager. В этом случае операции, инициированные в обработчике событий, будут отменены как одиночная операция с операцией, запущенной событием.
Если продолжение операции разрешено, элемент TextFlow обеспечит передачу события FlowOperationEvent по завершении операции и свойство type будет иметь значение FlowOperationEvent.FLOW_OPERATION_END. Это событие передается до того, как в проигрывателе Flash Player появятся ошибки, которые могли возникнуть в результате выполнения операции. Благодаря этому можно обработать ошибку до ее появления в проигрывателе Flash Player. Доступ к ошибке можно получить при помощи свойства события error. Если ошибка должна быть обработана в обработчике событий, для предотвращения появления ошибки в проигрывателе Flash Player следует отменить событие FLOW_OPERATION_END, вызвав метод Event.preventDefault(). Для выполнения какой-либо дополнительной операции также можно использовать обратный вызов для EditManager. В этом случае операции, являющиеся результатом, будут отменены единым блоком вместе с операцией, вызывающей событие.
Связанные элементы API
| Свойство | Определено | ||
|---|---|---|---|
![]() | bubbles : Boolean [только для чтения]
Определяет, является ли событие событием восходящей цепочки. | Event | |
![]() | cancelable : Boolean [только для чтения]
Указывает, можно ли предотвратить поведение, связанное с событием. | Event | |
![]() | constructor : Object
Ссылка на объект класса или функцию конструктора для данного экземпляра объекта. | Object | |
![]() | currentTarget : Object [только для чтения]
Объект, активно обрабатывающий объект Event с помощью прослушивателя событий. | Event | |
| error : Error
Ошибка, появляющаяся в ходе операции, при ее наличии. | FlowOperationEvent | ||
![]() | eventPhase : uint [только для чтения]
Текущая фаза в потоке событий. | Event | |
| level : int
Операции можно объединять в составные путем вложения одной в другую. | FlowOperationEvent | ||
| operation : FlowOperation
Операция, выполнение которой должно начаться или только что было завершено. | FlowOperationEvent | ||
![]() | target : Object [только для чтения]
Целевой объект события. | Event | |
![]() | type : String [только для чтения]
Тип события. | Event | |
| Метод | Определено | ||
|---|---|---|---|
FlowOperationEvent(type:String, bubbles:Boolean = false, cancelable:Boolean = false, operation:FlowOperation = null, level:int = 0, error:Error = null) Создает объект события, содержащий информацию об операции потока. | FlowOperationEvent | ||
![]() |
Создает дубликат экземпляра подкласса Event. | Event | |
![]() |
Служебная функция для реализации метода toString() в пользовательских классах ActionScript 3.0 Event. | Event | |
![]() |
Показывает, определено ли заданное свойство для объекта. | Object | |
![]() |
Проверяет, выполнялся ли для события вызова метода preventDefault(). | Event | |
![]() |
Показывает, есть ли экземпляр класса Object в цепи прототипов объекта, заданного в качестве параметра. | Object | |
![]() |
Отменяет поведение по умолчанию для события, если такое поведение можно отменить. | Event | |
![]() |
Показывает наличие заданного свойства и его перечисляемость. | Object | |
![]() |
Задает доступность динамического свойства для операций цикла. | Object | |
![]() |
Отменяет обработку прослушивателей событий в текущем узле, а также во всех узлах, которые следуют в потоке событий за текущим узлом. | Event | |
![]() |
Отменяет обработку прослушивателей событий в узлах, которые следуют в потоке событий за текущим узлом. | Event | |
![]() |
Возвращает строковое представление этого объекта, отформатированного в соответствии со стандартами, принятыми для данной локали. | Object | |
![]() |
Возвращает строку, содержащую все свойства объекта Event. | Event | |
![]() |
Возвращает элементарное значение заданного объекта. | Object | |
| Константа | Определено | ||
|---|---|---|---|
| FLOW_OPERATION_BEGIN : String = "flowOperationBegin" [статические]
Определяет значение свойства type объекта события flowOperationBegin. | FlowOperationEvent | ||
| FLOW_OPERATION_COMPLETE : String = "flowOperationComplete" [статические]
Задает значение свойства type для объекта события flowOperationComplete. | FlowOperationEvent | ||
| FLOW_OPERATION_END : String = "flowOperationEnd" [статические]
Определяет значение свойства type объекта события flowOperationEnd. | FlowOperationEvent | ||
error | свойство |
error:Error| Язык версии: | ActionScript 3.0 |
| Версии среды выполнения: | Flash Player 10, AIR 1.5 |
Ошибка, появляющаяся в ходе операции, при ее наличии. При возникновении ошибки в ходе выполнения операции, ссылка на объект ошибки присоединяется к событию FLOW_OPERATION_END. Благодаря этому можно исправить ошибку до ее появления в проигрывателе Flash Player. В случае отмены события ошибка не появится в проигрывателе Flash Player.
Реализация
public function get error():Error public function set error(value:Error):voidlevel | свойство |
operation | свойство |
operation:FlowOperation| Язык версии: | ActionScript 3.0 |
| Версии среды выполнения: | Flash Player 10, AIR 1.5 |
Операция, выполнение которой должно начаться или только что было завершено.
Реализация
public function get operation():FlowOperation public function set operation(value:FlowOperation):voidСвязанные элементы API
FlowOperationEvent | () | Конструктор |
public function FlowOperationEvent(type:String, bubbles:Boolean = false, cancelable:Boolean = false, operation:FlowOperation = null, level:int = 0, error:Error = null)| Язык версии: | ActionScript 3.0 |
| Версии среды выполнения: | Flash Player 10, AIR 1.5 |
Создает объект события, содержащий информацию об операции потока.
Параметрыtype:String — Тип события. Прослушиватели событий могут получать эту информацию через унаследованное свойство type. Существует два типа: FlowOperationEvent.FLOW_OPERATION_BEGIN и FlowOperationEvent.FLOW_OPERATION_END.
| |
bubbles:Boolean (default = false) — Указывает, является ли событие элементом восходящей цепочки. Это событие не является элементом восходящей цепочки.
| |
cancelable:Boolean (default = false) — Указывает, можно ли предотвратить поведение, связанное с событием. Для отмены этого события необходимо вызвать метод Event.preventDefault() в функции обработчика событий.
| |
operation:FlowOperation (default = null) — Операция FlowOperation, которая должна начаться либо только что была завершена.
| |
level:int (default = 0) — Любая ошибка, создаваемая в ходе выполнения операции.
| |
error:Error (default = null) |
FLOW_OPERATION_BEGIN | Константа |
public static const FLOW_OPERATION_BEGIN:String = "flowOperationBegin"| Язык версии: | ActionScript 3.0 |
| Версии среды выполнения: | Flash Player 10, AIR 1.5 |
Определяет значение свойства type объекта события flowOperationBegin, передаваемого перед выполнением операции. Отмена этого события приведет к блокировке операции.
FLOW_OPERATION_COMPLETE | Константа |
public static const FLOW_OPERATION_COMPLETE:String = "flowOperationComplete"| Язык версии: | ActionScript 3.0 |
| Версии среды выполнения: | Flash Player 10, AIR 1.5 |
Задает значение свойства type для объекта события flowOperationComplete. Отправляется после завершения всех операций, включая ожидающие выполнения и составные, после завершения компоновки и прокрутки экрана.
FLOW_OPERATION_END | Константа |
public static const FLOW_OPERATION_END:String = "flowOperationEnd"| Язык версии: | ActionScript 3.0 |
| Версии среды выполнения: | Flash Player 10, AIR 1.5 |
Определяет значение свойства type объекта события flowOperationEnd, передаваемого после завершения операции. Все ошибки сохраняются в элементе OperationEvent.error. При возникновении ошибки отмена этого события приведет к блокировке повторного появления ошибки. Вообще говоря, все ошибки могут стать критическими с высокой степенью вероятности.
Изменение операции в этот момент времени (после ее выполнения) может завершиться отказом.
В этом примере показано, как создать обработчик событий, который слушает начало и конец операции текстового потока. Двумя ключевыми шагами являются вызов метода addEventListener() для текстового потока и создание функции обработчика событий.
Вызов метода addEventListener() осуществляется для экземпляра TextFlow. Вы можете использовать простую строку flowOperationBegin или flowOperationEnd, но более безопасным вариантом является использование статической константы FlowOperationEvent.FLOW_OPERATION_BEGIN или FlowOperationEvent.FLOW_OPERATION_END соответственно.
Функции обработчика событий в данном примере называются opBeginHandler() и opEndHandler(). Метод opBeginHandler() использует функцию trace(), чтобы создать инструкцию trace, которая указывает на начало операции paste. Метод opEndHandler() также использует функцию trace(), но создает инструкцию trace только в случае ошибки.
package flashx.textLayout.events.examples
{
import flash.display.Sprite;
import flashx.textLayout.compose.StandardFlowComposer;
import flashx.textLayout.container.ContainerController;
import flashx.textLayout.conversion.TextConverter;
import flashx.textLayout.edit.EditManager;
import flashx.textLayout.elements.TextFlow;
import flashx.textLayout.events.FlowOperationEvent;
import flashx.textLayout.operations.FlowOperation;
import flashx.textLayout.operations.PasteOperation;
import flashx.undo.UndoManager;
public class FlowOperationEvent_example extends Sprite
{
private var inputContainer:Sprite;
private var inputTextFlow:TextFlow;
private var inputController:ContainerController;
private var inputEditManager:EditManager;
private var inputUndoManager:UndoManager;
public function FlowOperationEvent_example()
{
var replaceText:String = "paste text here";
inputTextFlow = new TextFlow();
inputContainer = new Sprite();
inputContainer.x = 30;
inputContainer.y = 100;
this.stage.addChild( inputContainer );
inputController = new ContainerController(inputContainer, 225, 20);
inputController.verticalScrollPolicy = flashx.textLayout.container.ScrollPolicy.OFF;
inputTextFlow = TextConverter.importToFlow(replaceText, TextConverter.PLAIN_TEXT_FORMAT);
inputTextFlow.flowComposer = new StandardFlowComposer();
inputTextFlow.flowComposer.addController(inputController);
inputUndoManager = new UndoManager();
inputEditManager = new EditManager(inputUndoManager);
inputTextFlow.interactionManager = inputEditManager;
inputTextFlow.addEventListener(FlowOperationEvent.FLOW_OPERATION_BEGIN, opBeginHandler);
inputTextFlow.addEventListener(FlowOperationEvent.FLOW_OPERATION_END, opEndHandler);
inputTextFlow.flowComposer.updateAllControllers();
}
private function opBeginHandler(evt:FlowOperationEvent):void {
var flowOp:FlowOperation = evt.operation;
if(flowOp is PasteOperation) {
trace("You can cancel or modify the paste operation in this event handler.");
}
}
private function opEndHandler(evt:FlowOperationEvent):void {
var flowOp:FlowOperation = evt.operation;
if(evt.error) {
trace("You can handle the error here and call preventDefault().");
}
}
}
}
Tue Jun 12 2018, 11:34 AM Z
Скрыть унаследованные общедоступные свойства
Показать унаследованные общедоступные свойства