Pacote | flashx.textLayout.edit |
Classe | public class EditManager |
Herança | EditManager SelectionManager Object |
Implementações | IEditManager |
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 10, AIR 1.5 |
Para ativar a edição do fluxo de texto, atribua um objeto EditManager à propriedade interactionManager
do objeto TextFlow. O gerenciador de edições trata as alterações no texto (tais como inserções, exclusões e alterações de formato). As alterações são reversíveis se o gerenciador de edições tiver um gerenciador de reversão. O gerenciador de edição aciona a recomposição e exibição do fluxo de texto, conforme seja necessário.
A classe EditManager suporta os seguintes atalhos de teclado:
Teclas | Resultado |
---|---|
ctrl-z | Desfazer |
ctrl-y | refazer |
ctrl-backspace | deletePreviousWord |
ctrl-delete | deleteNextWord |
alt+delete | deleteNextWord |
ctrl+alt-delete | deleteNextWord |
ctrl-shift-hyphen | insere hífen de separação |
ctrl+backspace | deletePreviousWord |
alt+backspace | deletePreviousWord |
ctrl+alt-backspace | deletePreviousWord |
INSERT | alterna overWriteMode |
Backspace | deletePreviousCharacter |
Enter | se textFlow.configuration.manageEnterKey em uma lista, cria um novo item de lista; caso contrário cria um novo parágrafo |
shift-ENTER | se textFlow.configuration.manageEnterKey, cria um novo parágrafo |
TAB | se textFlow.configuration.manageTabKey em uma lista, cria lista aninhada; caso contrário, insere um TAB ou substitui do próximo caractere com um TAB |
shift-TAB | se textFlow.configuration.manageTabKey no primeiro item de uma lista, move o item para fora da lista (força-o) |
Nota: as teclas a seguir não interferem no Windows: alt-backspace, alt-delete, ctrl+alt-backspace, e ctrl+alt-delete. Estas teclas não geram um evento para o tempo de execução.
Elementos da API relacionados
Propriedade | Definido por | ||
---|---|---|---|
absoluteEnd : int [somente leitura]
A posição de texto do final da seleção, como deslocamento a partir do início do fluxo de texto. | SelectionManager | ||
absoluteStart : int [somente leitura]
A posição de texto do início da seleção, como deslocamento a partir do início do fluxo de texto. | SelectionManager | ||
activePosition : int [somente leitura]
O ponto ativo da seleção. | SelectionManager | ||
allowDelayedOperations : Boolean | EditManager | ||
anchorPosition : int [somente leitura]
O ponto de ancoragem da seleção. | SelectionManager | ||
constructor : Object
Uma referência ao objeto de classe ou à função de construtor de uma determinada ocorrência de objeto. | Object | ||
currentSelectionFormat : SelectionFormat [somente leitura]
O objeto SelectionFormat atual. | SelectionManager | ||
delayUpdates : Boolean | EditManager | ||
editingMode : String [somente leitura]
O modo de edição. | SelectionManager | ||
focused : Boolean [somente leitura]
Indica se o foco estará em um contêiner no fluxo de texto. | SelectionManager | ||
focusedSelectionFormat : SelectionFormat
O objeto SelectionFormat usado para desenhar a seleção em um contêiner com foco. | SelectionManager | ||
inactiveSelectionFormat : SelectionFormat
O objeto SelectionFormat usado para desenhar a seleção quando ela não estiver na janela ativa. | SelectionManager | ||
overwriteMode : Boolean = false [estático]
Indica se o modo de sobrescrita está ativado ou desativado. | EditManager | ||
textFlow : flashx.textLayout.elements:TextFlow
O objeto TextFlow gerenciado por este gerenciador de seleções. | SelectionManager | ||
undoManager : IUndoManager [somente leitura]
O IUndoManager atribuído a este gerenciador de edições. | EditManager | ||
unfocusedSelectionFormat : SelectionFormat
O objeto SelectionFormat usado para desenhar a seleção quando ela não estiver em um contêiner com foco e sim na janela ativa. | SelectionManager | ||
windowActive : Boolean [somente leitura]
Indica se a janela associada ao fluxo de texto está ativa. | SelectionManager |
Método | Definido por | ||
---|---|---|---|
EditManager(undoManager:IUndoManager = null)
Cria um objeto EditManager. | EditManager | ||
Processa um evento de ativação. | SelectionManager | ||
applyContainerFormat(containerFormat:flashx.textLayout.formats:ITextLayoutFormat, operationState:SelectionState = null):void
Aplica estilos do contêiner a todos os contêineres da seleção. | EditManager | ||
applyFormat(leafFormat:flashx.textLayout.formats:ITextLayoutFormat, paragraphFormat:flashx.textLayout.formats:ITextLayoutFormat, containerFormat:flashx.textLayout.formats:ITextLayoutFormat, operationState:SelectionState = null):void
Altera os formatos da seleção especificada (ou atual). | EditManager | ||
applyFormatToElement(targetElement:FlowElement, format:flashx.textLayout.formats:ITextLayoutFormat, relativeStart:int = 0, relativeEnd:int = -1, operationState:SelectionState = null):void
Aplica estilos ao elemento especificado. | EditManager | ||
applyLeafFormat(characterFormat:flashx.textLayout.formats:ITextLayoutFormat, operationState:SelectionState = null):void
Alterações no formato aplicadas aos elementos folha na seleção especificada (ou atual). | EditManager | ||
applyLink(href:String, targetString:String = null, extendToLinkBoundary:Boolean = false, operationState:SelectionState = null):LinkElement
Transforma uma seleção em um link, ou um link em texto normal. | EditManager | ||
applyParagraphFormat(paragraphFormat:flashx.textLayout.formats:ITextLayoutFormat, operationState:SelectionState = null):void
Aplica estilos do parágrafo a todos os parágrafos da seleção. | EditManager | ||
Transforma o texto em uma execução TCY, ou uma execução TCY em texto não TCY. | EditManager | ||
Inicia um novo grupo de operações. | EditManager | ||
changeElementID(newID:String, targetElement:FlowElement, relativeStart:int = 0, relativeEnd:int = -1, operationState:SelectionState = null):void
Modifica a ID de um elemento. | EditManager | ||
changeStyleName(newName:String, targetElement:FlowElement, relativeStart:int = 0, relativeEnd:int = -1, operationState:SelectionState = null):void Obsoleto desde 2.0: Use applyFormatToElement
Altera o styleName de um elemento ou de parte de um elemento. | EditManager | ||
changeTypeName(newName:String, targetElement:FlowElement, relativeStart:int = 0, relativeEnd:int = -1, operationState:SelectionState = null):void
Altera o typeName de um elemento ou de parte de um elemento. | EditManager | ||
clearFormat(leafFormat:flashx.textLayout.formats:ITextLayoutFormat, paragraphFormat:flashx.textLayout.formats:ITextLayoutFormat, containerFormat:flashx.textLayout.formats:ITextLayoutFormat, operationState:SelectionState = null):void
Não define os formatos da seleção especificada (ou atual). | EditManager | ||
clearFormatOnElement(targetElement:FlowElement, format:flashx.textLayout.formats:ITextLayoutFormat, operationState:SelectionState = null):void
Altera estilos ao elemento especificado. | EditManager | ||
createDiv(parent:FlowGroupElement = null, format:flashx.textLayout.formats:ITextLayoutFormat = null, operationState:SelectionState = null):DivElement Cria um novo DivElement que contém o intervalo inteiro especificado no operationState no elemento pai comum inferior que contém tanto as extremidades iniciais quanto finais do intervalo. | EditManager | ||
createList(parent:FlowGroupElement = null, format:flashx.textLayout.formats:ITextLayoutFormat = null, operationState:SelectionState = null):ListElement Cria um novo ListElement que contém o intervalo inteiro especificado no operationState no elemento pai comum inferior que contém tanto as extremidades iniciais quanto finais do intervalo. | EditManager | ||
createSubParagraphGroup(parent:FlowGroupElement = null, format:flashx.textLayout.formats:ITextLayoutFormat = null, operationState:SelectionState = null):SubParagraphGroupElement Cria um novo SubParagraphGroupElement que contém o intervalo inteiro especificado no operationState no elemento pai comum inferior que contém tanto as extremidades iniciais quanto finais do intervalo. | EditManager | ||
Exclui a área selecionada e coloca a área excluída em um objeto TextScrap. | EditManager | ||
Processa um evento de desativação. | SelectionManager | ||
Exclui um intervalo de texto, ou, se uma seleção pontual for dada, exclui o próximo caractere. | EditManager | ||
Exclui a palavra seguinte. | EditManager | ||
Exclui um intervalo de texto, ou, se uma seleção pontual for dada, exclui o caractere anterior. | EditManager | ||
Exclui a palavra anterior. | EditManager | ||
Exclui um intervalo de texto. | EditManager | ||
[substituir]
Executa um FlowOperation. | EditManager | ||
Processa um evento de edição. | SelectionManager | ||
Encerra um grupo de operações. | EditManager | ||
SelectionManager | |||
Processa um evento focusChange. | SelectionManager | ||
Processa um evento focusIn. | SelectionManager | ||
Processa um evento focusOut. | SelectionManager | ||
getCommonCharacterFormat(range:flashx.textLayout.elements:TextRange = null):flashx.textLayout.formats:TextLayoutFormat
Obtém os atributos de formato de caractere comuns a todos os caracteres do intervalo de texto especificado ou da seleção atual. | SelectionManager | ||
getCommonContainerFormat(range:flashx.textLayout.elements:TextRange = null):flashx.textLayout.formats:TextLayoutFormat
Obtém os atributos de formato de contêiner comuns a todos os contêineres no intervalo de texto especificado ou da seleção atual. | SelectionManager | ||
getCommonParagraphFormat(range:flashx.textLayout.elements:TextRange = null):flashx.textLayout.formats:TextLayoutFormat
Obtém os atributos de formato de parágrafo comuns a todos os parágrafos no intervalo de texto especificado ou na seleção atual. | SelectionManager | ||
Lê o objeto SelectionState da seleção atual. | SelectionManager | ||
Indica se um objeto tem uma propriedade especificada definida. | Object | ||
Indica se há uma seleção. | SelectionManager | ||
Processa um evento imeStartComposition
| SelectionManager | ||
insertInlineGraphic(source:Object, width:Object, height:Object, options:Object = null, operationState:SelectionState = null):InlineGraphicElement
Insere uma imagem. | EditManager | ||
Insere o texto. | EditManager | ||
Indica se uma ocorrência da classe Object está na cadeia de protótipos do objeto especificado como o parâmetro. | Object | ||
Indica se a seleção cobre um intervalo de texto. | SelectionManager | ||
Processa um evento keyDown. | SelectionManager | ||
Processa um evento keyFocusChange. | SelectionManager | ||
Processa um evento keyUp. | SelectionManager | ||
Processa um evento menuSelect. | SelectionManager | ||
modifyInlineGraphic(source:Object, width:Object, height:Object, options:Object = null, operationState:SelectionState = null):void
Modifica um gráfico inline existente. | EditManager | ||
Processa um evento mouseDoubleClick. | SelectionManager | ||
Processa um evento mouseDown. | SelectionManager | ||
Processa um evento mouseMove. | SelectionManager | ||
Processa um evento mouseOut. | SelectionManager | ||
Processa um evento mouseOver. | SelectionManager | ||
Processa um evento mouseUp. | SelectionManager | ||
Processa um evento mouseWheel. | SelectionManager | ||
moveChildren(source:FlowGroupElement, sourceIndex:int, numChildren:int, destination:FlowGroupElement, destinationIndex:int, selectionState:SelectionState = null):void Mova o grupo de FlowElements de um FlowGroupElement para outro. | EditManager | ||
Atualiza o gerenciador de seleções quando um texto é inserido ou excluído. | SelectionManager | ||
Sobrescreve o texto selecionado. | EditManager | ||
pasteTextScrap(scrapToPaste:flashx.textLayout.edit:TextScrap, operationState:SelectionState = null):void
Cola o TextScrap na área selecionada. | EditManager | ||
Indica se a propriedade especificada existe e é enumerável. | Object | ||
Realiza novamente a operação anterior desfeita. | EditManager | ||
Reexibe as formas da seleção. | SelectionManager | ||
SelectionManager | |||
SelectionManager | |||
Põe o foco no primeiro contêiner da seleção. | SelectionManager | ||
Define a disponibilidade de uma propriedade dinâmica para operações de repetição. | Object | ||
Define o objeto SelectionState da seleção atual. | SelectionManager | ||
Processa um evento softKeyboardActivating
| SelectionManager | ||
Divide o elemento de alvo no local especificado, criando um novo elemento depois do atual. | EditManager | ||
Divide o parágrafo na posição atual, criando um novo parágrafo depois do atual. | EditManager | ||
Processa um TextEvent. | SelectionManager | ||
Retorna a representação da string deste objeto, formatado segundo as convenções específicas para a localidade. | Object | ||
Retorna a representação de string do objeto especificado. | Object | ||
Reverte a operação anterior. | EditManager | ||
EditManager | |||
Retorna o valor primitivo do objeto especificado. | Object |
allowDelayedOperations | propriedade |
delayUpdates | propriedade |
overwriteMode | propriedade |
public static var overwriteMode:Boolean = false
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 10, AIR 1.5 |
Indica se o modo de sobrescrita está ativado ou desativado.
Se for true
, uma tecla digitada sobrescreverá o caractere após o cursor. Se for false
, uma tecla digitada será inserida na posição do cursor.
undoManager | propriedade |
undoManager:IUndoManager
[somente leitura] Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 10, AIR 1.5 |
O IUndoManager atribuído a este gerenciador de edições.
Para permitir que as edições sejam desfeitas (e refeitas), transmita uma instância de IUndoManager ao construtor do EditManager. O gerenciador de reversão mantém uma pilha de operações que foram executadas e pode desfazer ou refazer operações individuais.
Nota: se o TextFlow for modificado diretamente (e não por meio de chamadas ao EditManager, mas diretamente por chamadas aos objetos FlowElement gerenciados), o EditManager limpará a pilha de reversão para evitar que a pilha perca a sincronia com o estado atual.
Implementação
public function get undoManager():IUndoManager
EditManager | () | Construtor |
public function EditManager(undoManager:IUndoManager = null)
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 10, AIR 1.5 |
Cria um objeto EditManager.
Atribua um objeto EditManager à propriedade interactionManager
de um fluxo de texto para ativar a edição desse fluxo de texto.
Para permitir a reversão e a repetição das mudanças, transmita uma instância IUndoManager ao construtor do EditManager. Você pode usar a classe flashx.undo.UndoManager
ou criar uma instância IUndoManager personalizada. Use uma instância IUndoManager personalizada para integrar as mudanças de Estrutura de layout de texto com um gerente de cancelamento de ação existente que não é uma instância da classe UndoManager. Para criar uma instância IUndoManager personalizada, assegure que a classe que você usa para definir o gerente de cancelamento de ação implementa a interface IUndoManager.
undoManager:IUndoManager (default = null ) — O UndoManager do aplicativo
|
Elementos da API relacionados
Exemplo ( Como usar este exemplo )
package flashx.textLayout.edit.examples { import flashx.textLayout.edit.EditManager; import flashx.textLayout.elements.TextFlow; import flashx.undo.UndoManager; public class EditManager_constructor { // Create a new TextFlow that is editable and undoable. static public function createEditableTextFlow():TextFlow { var textFlow:TextFlow = new TextFlow(); textFlow.interactionManager = new EditManager( new UndoManager() ); return textFlow; } } }
applyContainerFormat | () | método |
public function applyContainerFormat(containerFormat:flashx.textLayout.formats:ITextLayoutFormat, operationState:SelectionState = null):void
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 10, AIR 1.5 |
Aplica estilos do contêiner a todos os contêineres da seleção.
Qualquer propriedade de estilo no objeto de formato que seja null
permanecerá inalterada.
Parâmetros
containerFormat:flashx.textLayout.formats:ITextLayoutFormat — O formato a ser aplicado aos contêineres no intervalo
| |
operationState:SelectionState (default = null ) — Especifica o texto ao qual esta operação se aplica; se for null , a operação será aplicada à seleção atual.
|
Exemplo ( Como usar este exemplo )
package flashx.textLayout.edit.examples { import flashx.textLayout.edit.IEditManager; import flashx.textLayout.edit.SelectionState; import flashx.textLayout.elements.TextFlow; import flashx.textLayout.formats.TextLayoutFormat; public class EditManager_applyContainerFormat { public function EditManager_applyContainerFormat( selection:SelectionState ):void { var textFlow:TextFlow = selection.textFlow; var editManager:IEditManager = textFlow.interactionManager as IEditManager; var containerStyle:TextLayoutFormat = new TextLayoutFormat(); containerStyle.columnCount = 2; editManager.applyContainerFormat( containerStyle ); } } }
applyFormat | () | método |
public function applyFormat(leafFormat:flashx.textLayout.formats:ITextLayoutFormat, paragraphFormat:flashx.textLayout.formats:ITextLayoutFormat, containerFormat:flashx.textLayout.formats:ITextLayoutFormat, operationState:SelectionState = null):void
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 10, AIR 1.5 |
Altera os formatos da seleção especificada (ou atual).
Executa uma operação reversível que aplica os novos formatos. Apenas os atributos de estilo definidos para os objetos TextLayoutFormat são aplicados. Os atributos indefinidos nos objetos de formato não são alterados.
Parâmetros
leafFormat:flashx.textLayout.formats:ITextLayoutFormat — O formato a ser aplicado aos elementos folha, tais como spans e gráficos inline.
| |
paragraphFormat:flashx.textLayout.formats:ITextLayoutFormat — O formato a ser aplicado aos elementos do parágrafo.
| |
containerFormat:flashx.textLayout.formats:ITextLayoutFormat — O formato a ser aplicado aos contêineres.
| |
operationState:SelectionState (default = null ) — Especifica o texto ao qual esta operação se aplica; se for null , a operação será aplicada à seleção atual.
|
Exemplo ( Como usar este exemplo )
package flashx.textLayout.edit.examples { import flashx.textLayout.edit.IEditManager; import flashx.textLayout.edit.SelectionState; import flashx.textLayout.elements.TextFlow; import flashx.textLayout.formats.TextAlign; import flashx.textLayout.formats.TextLayoutFormat; public class EditManager_applyFormat { public function EditManager_applyFormat( selection:SelectionState ):void { var textFlow:TextFlow = selection.textFlow; var editManager:IEditManager = textFlow.interactionManager as IEditManager; var containerStyle:TextLayoutFormat = new TextLayoutFormat(); containerStyle.columnCount = 2; var paraStyle:TextLayoutFormat = new TextLayoutFormat(); paraStyle.textAlign = TextAlign.JUSTIFY; var charStyle:TextLayoutFormat = new TextLayoutFormat(); charStyle.color = 0xff0000; editManager.applyFormat( charStyle, paraStyle, containerStyle ); } } }
applyFormatToElement | () | método |
public function applyFormatToElement(targetElement:FlowElement, format:flashx.textLayout.formats:ITextLayoutFormat, relativeStart:int = 0, relativeEnd:int = -1, operationState:SelectionState = null):void
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 10, AIR 1.5 |
Aplica estilos ao elemento especificado.
Qualquer propriedade de estilo no objeto de formato que seja null
permanecerá inalterada. Apenas os estilos que forem relevantes para o elemento especificado serão aplicados.
Parâmetros
targetElement:FlowElement — O elemento ao qual os estilos são aplicados.
| |
format:flashx.textLayout.formats:ITextLayoutFormat — O formato que contém os estilos a serem aplicados.
| |
relativeStart:int (default = 0 ) — Um deslocamento em relação ao início do elemento no qual o elemento deverá ser dividido quando a nova formatação for atribuída.
| |
relativeEnd:int (default = -1 ) — Um deslocamento em relação ao início do elemento no qual o elemento deverá ser dividido quando a nova formatação for aplicada.
| |
operationState:SelectionState (default = null ) — Especifica o texto ao qual esta operação se aplica; se for null , a operação será aplicada à seleção atual.
|
applyLeafFormat | () | método |
public function applyLeafFormat(characterFormat:flashx.textLayout.formats:ITextLayoutFormat, operationState:SelectionState = null):void
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 10, AIR 1.5 |
Alterações no formato aplicadas aos elementos folha na seleção especificada (ou atual).
Executa uma operação reversível que aplica o novo formato a elementos folha tais como os objetos SpanElement e InlineGraphicElement. Apenas os atributos de estilo definidos para os objetos TextLayoutFormat são aplicados. Os atributos indefinidos no objeto de formato são alterados.
Parâmetros
characterFormat:flashx.textLayout.formats:ITextLayoutFormat — O formato a ser aplicado.
| |
operationState:SelectionState (default = null ) — Especifica o texto ao qual esta operação se aplica; se for null , a operação será aplicada à seleção atual.
|
Exemplo ( Como usar este exemplo )
package flashx.textLayout.edit.examples { import flashx.textLayout.edit.IEditManager; import flashx.textLayout.edit.SelectionState; import flashx.textLayout.elements.TextFlow; import flashx.textLayout.formats.TextLayoutFormat; public class EditManager_applyLeafFormat { public function EditManager_applyLeafFormat(selection:SelectionState) { var textFlow:TextFlow = selection.textFlow; var editManager:IEditManager = textFlow.interactionManager as IEditManager; var charStyle:TextLayoutFormat = new TextLayoutFormat(); charStyle.color = 0xff0000; editManager.applyLeafFormat( charStyle ); } } }
applyLink | () | método |
public function applyLink(href:String, targetString:String = null, extendToLinkBoundary:Boolean = false, operationState:SelectionState = null):LinkElement
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 10 - + 10.2, AIR 1.5 |
Transforma uma seleção em um link, ou um link em texto normal.
Executa uma operação reversível que cria ou elimina o link.
Se um parâmetro target
for especificado, ele deverá ter um dos seguintes valores:
- "_self"
- "_blank"
- "_parent"
- "_top"
Em runtimes hospedados no navegador, o alvo de "_self" substitui a página html atual. Portanto, se o conteúdo SWF que contém o link estiver em uma página dentro de um quadro ou frameset, o conteúdo do link será carregado nesse quadro. Se a página estiver no nível superior, o conteúdo do link será aberto para substituir a página original. Um alvo de "_blank" abre uma nova janela sem nome no navegador. Um alvo de "_parent" substitui o pai da página html que contém o conteúdo SWF. Um alvo de "_top" substitui a página de nível superior na janela atual do navegador.
Em outros runtimes, como o Adobe AIR, o link é aberto no navegador padrão do usuário e o parâmetro target
é ignorado.
O parâmetro extendToLinkBoundary
determina como o gerenciador de edições tratará uma seleção que tenha interseção com um ou mais links existentes. Caso o parâmetro seja true
, a operação será aplicada em bloco à seleção e a todo o texto dos links existentes. Portanto, um único link é criado, cobrindo do início do primeiro link de interseção até o fim do último link de interseção. Por outro lado, se extendToLinkBoundary
fosse false
nesta situação, os links existentes parcialmente selecionados seriam divididos em dois links.
Parâmetros
href:String — O URL a que o link faz referência.
| |
targetString:String (default = null ) — A janela-alvo de navegador do link.
| |
extendToLinkBoundary:Boolean (default = false ) — Especifica se a seleção será consolidada com qualquer link existente sobreposto e, depois, aplica a alteração.
| |
operationState:SelectionState (default = null ) — Especifica o texto ao qual esta operação se aplica; se for null , a operação será aplicada à seleção atual.
|
LinkElement — O LinkElement que foi criado.
|
Exemplo ( Como usar este exemplo )
package flashx.textLayout.edit.examples { import flash.display.Sprite; import flashx.textLayout.container.ContainerController; import flashx.textLayout.conversion.TextConverter; import flashx.textLayout.edit.IEditManager; import flashx.textLayout.edit.SelectionState; import flashx.textLayout.elements.TextFlow; public class EditManager_applyLink { static public function makeLink( selection:SelectionState ):void { var textFlow:TextFlow = selection.textFlow; var editManager:IEditManager = textFlow.interactionManager as IEditManager; editManager.applyLink( "http://www.adobe.com" ); } static public function removeLink( selection:SelectionState ):void { var textFlow:TextFlow = selection.textFlow; var editManager:IEditManager = textFlow.interactionManager as IEditManager; editManager.applyLink( null, null, true ); } } }
applyParagraphFormat | () | método |
public function applyParagraphFormat(paragraphFormat:flashx.textLayout.formats:ITextLayoutFormat, operationState:SelectionState = null):void
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 10, AIR 1.5 |
Aplica estilos do parágrafo a todos os parágrafos da seleção.
Qualquer propriedade de estilo no objeto de formato que seja null
permanecerá inalterada.
Parâmetros
paragraphFormat:flashx.textLayout.formats:ITextLayoutFormat — O formato a ser aplicado aos parágrafos selecionados.
| |
operationState:SelectionState (default = null ) — Especifica o texto ao qual esta operação se aplica; se for null , a operação será aplicada à seleção atual.
|
Exemplo ( Como usar este exemplo )
package flashx.textLayout.edit.examples { import flashx.textLayout.edit.IEditManager; import flashx.textLayout.edit.SelectionState; import flashx.textLayout.elements.TextFlow; import flashx.textLayout.formats.TextAlign; import flashx.textLayout.formats.TextLayoutFormat; public class EditManager_applyParagraphFormat { static public function justifyParagraph( selection:SelectionState ):void { var textFlow:TextFlow = selection.textFlow; var editManager:IEditManager = textFlow.interactionManager as IEditManager; var paraStyle:TextLayoutFormat = new TextLayoutFormat(); paraStyle.textAlign = TextAlign.JUSTIFY; editManager.applyParagraphFormat( paraStyle ); } } }
applyTCY | () | método |
public function applyTCY(tcyOn:Boolean, operationState:SelectionState = null):flashx.textLayout.elements:TCYElement
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 10 - + 10.2, AIR 1.5 |
Transforma o texto em uma execução TCY, ou uma execução TCY em texto não TCY.
O TCY, ou tate-chuu-yoko, faz com que o texto seja desenhado horizontalmente dentro de uma linha vertical, sendo usado para tornar mais legíveis em texto vertical pequenos blocos de texto ou números, como datas, que não sejam em japonês.
Parâmetros
tcyOn:Boolean — Defina para true para aplicar o TCY a um intervalo de texto, ou false para excluir o TCY.
| |
operationState:SelectionState (default = null ) — Especifica o texto ao qual esta operação se aplica; se for null , a operação será aplicada à seleção atual.
|
flashx.textLayout.elements:TCYElement — O TCYElement que foi criado.
|
Exemplo ( Como usar este exemplo )
package flashx.textLayout.edit.examples { import flashx.textLayout.edit.IEditManager; import flashx.textLayout.edit.SelectionState; import flashx.textLayout.elements.TextFlow; public class EditManager_applyTCY { static public function tcyOn( selection:SelectionState ):void { var textFlow:TextFlow = selection.textFlow; var editManager:IEditManager = textFlow.interactionManager as IEditManager; editManager.applyTCY( true ); } static public function tcyOff( selection:SelectionState ):void { var textFlow:TextFlow = selection.textFlow; var editManager:IEditManager = textFlow.interactionManager as IEditManager; editManager.applyTCY( false ); } } }
beginCompositeOperation | () | método |
public function beginCompositeOperation():void
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 10, AIR 1.5 |
Inicia um novo grupo de operações.
Todas as operações executadas após a chamada a beginCompositeOperation()
e antes da chamada correspondente a endCompositeOperation()
são executadas e agrupadas como uma única operação que pode ser desfeita em conjunto.
Um bloco beginCompositeOperation
/endCompositeOperation
pode ser aninhado dentro de outro bloco beginCompositeOperation
/endCompositeOperation
.
Exemplo ( Como usar este exemplo )
beginCompositeOperation()
e endCompositeOperation()
não foram usadas, então cada uma das suboperações teria de ser desfeita separadamente, em vez de em grupo.
package flashx.textLayout.edit.examples { import flashx.textLayout.edit.IEditManager; import flashx.textLayout.edit.SelectionState; import flashx.textLayout.elements.TextFlow; public class EditManager_beginCompositeOperation { static public function insertGraphic( source:Object, width:Object, height:Object, float:String, selection:SelectionState ):void { var editManager:IEditManager = selection.textFlow.interactionManager as IEditManager; editManager.beginCompositeOperation(); editManager.deleteText( selection ); var changedSelection:SelectionState = new SelectionState( selection.textFlow, selection.anchorPosition, selection.anchorPosition ); editManager.splitParagraph( changedSelection ); changedSelection = new SelectionState( changedSelection.textFlow, changedSelection.anchorPosition + 1, changedSelection.anchorPosition + 1); editManager.insertInlineGraphic( source, width, height, float, changedSelection ); changedSelection = new SelectionState( changedSelection.textFlow, changedSelection.anchorPosition + 1, changedSelection.anchorPosition + 1); editManager.splitParagraph( changedSelection ); editManager.endCompositeOperation(); } } }
changeElementID | () | método |
public function changeElementID(newID:String, targetElement:FlowElement, relativeStart:int = 0, relativeEnd:int = -1, operationState:SelectionState = null):void
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 10, AIR 1.5 |
Modifica a ID de um elemento.
Se os parâmetros relativeStart
ou relativeEnd
forem definidos (com qualquer valor que não seja o padrão), o elemento será dividido. As partes do elemento fora desse intervalo mantêm a ID original. A definição dos parâmetros relativeStart
e relativeEnd
cria elementos com IDs duplicadas.
Parâmetros
newID:String — O novo valor da ID.
| |
targetElement:FlowElement — O elemento a ser modificado.
| |
relativeStart:int (default = 0 ) — Um deslocamento em relação ao início do elemento no qual o elemento deverá ser dividido quando a nova ID for atribuída.
| |
relativeEnd:int (default = -1 ) — Um deslocamento em relação ao início do elemento no qual o elemento deverá ser dividido quando a nova ID for atribuída.
| |
operationState:SelectionState (default = null ) — Especifica a seleção a ser restaurada quando esta operação for desfeita; se for null , a operação salvará a seleção atual.
|
Exemplo ( Como usar este exemplo )
package flashx.textLayout.edit.examples { import flashx.textLayout.edit.ElementRange; import flashx.textLayout.edit.IEditManager; import flashx.textLayout.edit.SelectionState; import flashx.textLayout.elements.TextFlow; public class EditManager_changeElementID { static public function changeParagraphID( id:String, selection:SelectionState ):void { var textFlow:TextFlow = selection.textFlow; var editManager:IEditManager = textFlow.interactionManager as IEditManager; var selectedRange:ElementRange = ElementRange.createElementRange( selection.textFlow, selection.absoluteStart, selection.absoluteEnd ); editManager.changeElementID( id, selectedRange.firstParagraph, 0, -1, selection ); } } }
changeStyleName | () | método |
public function changeStyleName(newName:String, targetElement:FlowElement, relativeStart:int = 0, relativeEnd:int = -1, operationState:SelectionState = null):void
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 10, AIR 1.5 |
Altera o styleName de um elemento ou de parte de um elemento.
Se os parâmetros relativeStart
ou relativeEnd
forem definidos (com qualquer valor que não seja o padrão), o elemento será dividido. As partes do elemento fora desse intervalo mantêm o estilo original.
Parâmetros
newName:String — O nome do novo estilo.
| |
targetElement:FlowElement — Especifica o elemento a ser alterado.
| |
relativeStart:int (default = 0 ) — Um deslocamento em relação ao início do elemento no qual o elemento deverá ser dividido quando o novo estilo for atribuído.
| |
relativeEnd:int (default = -1 ) — Um deslocamento em relação ao final do elemento no qual o elemento deverá ser dividido quando o novo estilo for atribuído.
| |
operationState:SelectionState (default = null ) — Especifica a seleção a ser restaurada quando esta operação for desfeita; se for null , a operação salvará a seleção atual.
|
Exemplo ( Como usar este exemplo )
package flashx.textLayout.edit.examples { import flashx.textLayout.edit.ElementRange; import flashx.textLayout.edit.IEditManager; import flashx.textLayout.edit.SelectionState; import flashx.textLayout.elements.TextFlow; public class EditManager_changeStyleName { static public function changeParagraphStyle( styleName:String, selection:SelectionState ):void { var textFlow:TextFlow = selection.textFlow; var editManager:IEditManager = textFlow.interactionManager as IEditManager; var selectedRange:ElementRange = ElementRange.createElementRange( selection.textFlow, selection.absoluteStart, selection.absoluteEnd ); editManager.changeElementID( styleName, selectedRange.firstParagraph, 0, -1, selection ); } } }
changeTypeName | () | método |
public function changeTypeName(newName:String, targetElement:FlowElement, relativeStart:int = 0, relativeEnd:int = -1, operationState:SelectionState = null):void
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 10, AIR 1.5 |
Altera o typeName de um elemento ou de parte de um elemento.
Se os parâmetros relativeStart
ou relativeEnd
forem definidos (com qualquer valor que não seja o padrão), o elemento será dividido. As partes do elemento fora desse intervalo mantêm o estilo original.
Parâmetros
newName:String — O nome do novo tipo.
| |
targetElement:FlowElement — Especifica o elemento a ser alterado.
| |
relativeStart:int (default = 0 ) — Um deslocamento em relação ao início do elemento no qual o elemento deverá ser dividido quando o novo estilo for atribuído
| |
relativeEnd:int (default = -1 ) — Um deslocamento em relação ao final do elemento no qual o elemento deverá ser dividido quando o novo estilo for atribuído
| |
operationState:SelectionState (default = null ) — Especifica a seleção a ser restaurada quando esta operação for desfeita; se for null , a operação salvará a seleção atual.
|
clearFormat | () | método |
public function clearFormat(leafFormat:flashx.textLayout.formats:ITextLayoutFormat, paragraphFormat:flashx.textLayout.formats:ITextLayoutFormat, containerFormat:flashx.textLayout.formats:ITextLayoutFormat, operationState:SelectionState = null):void
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 10, AIR 1.5 |
Não define os formatos da seleção especificada (ou atual).
Executa uma operação irreversível que desfaz os formatos especificados. Apenas os atributos de estilo definidos para os objetos TextLayoutFormat são aplicados. Os atributos indefinidos nos objetos de formato não são alterados.
Parâmetros
leafFormat:flashx.textLayout.formats:ITextLayoutFormat — O formato cujos valores de conjunto indicam propriedades para não definir para objetos LeafFlowElement no intervalo selecionado.
| |
paragraphFormat:flashx.textLayout.formats:ITextLayoutFormat — O formato cujos valores de conjunto indicam propriedades para não definir para objetos ParagraphElement no intervalo selecionado.
| |
containerFormat:flashx.textLayout.formats:ITextLayoutFormat — O formato cujos valores de conjunto indicam propriedades para não definir para objetos ContainerController no intervalo selecionado.
| |
operationState:SelectionState (default = null ) — Especifica o texto ao qual esta operação se aplica; se for null , a operação será aplicada à seleção atual.
|
clearFormatOnElement | () | método |
public function clearFormatOnElement(targetElement:FlowElement, format:flashx.textLayout.formats:ITextLayoutFormat, operationState:SelectionState = null):void
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 10, AIR 1.5 |
Altera estilos ao elemento especificado.
Qualquer propriedade de estilo no objeto de formato que seja null
permanecerá inalterada. Qualquer estilo que for definido no formato especificado é indefinido no elemento especificado.
Parâmetros
targetElement:FlowElement — O elemento ao qual os estilos são aplicados.
| |
format:flashx.textLayout.formats:ITextLayoutFormat — O formato que contém os estilos a serem alterados.
| |
operationState:SelectionState (default = null ) — Especifica o texto ao qual esta operação se aplica; se for null , a operação será aplicada à seleção atual.
|
createDiv | () | método |
public function createDiv(parent:FlowGroupElement = null, format:flashx.textLayout.formats:ITextLayoutFormat = null, operationState:SelectionState = null):DivElement
Cria um novo DivElement que contém o intervalo inteiro especificado no operationState no elemento pai comum inferior que contém tanto as extremidades iniciais quanto finais do intervalo. Se as extremidades iniciais e finais forem iguais, um novo DivElement é criado nesta posição com um parágrafo de filho único.
Parâmetros
parent:FlowGroupElement (default = null ) — Especifica um elemento pai do novo DivElement. Se null o novo pai será o nível inferior que contém o SelectionState.
| |
format:flashx.textLayout.formats:ITextLayoutFormat (default = null ) — Formatar atributos para aplicar ao novo DivElement.
| |
operationState:SelectionState (default = null ) — Especifica o texto ao qual esta operação se aplica; se for null , a operação será aplicada à seleção atual.
|
DivElement — O novo DivElement que foi criado.
|
createList | () | método |
public function createList(parent:FlowGroupElement = null, format:flashx.textLayout.formats:ITextLayoutFormat = null, operationState:SelectionState = null):ListElement
Cria um novo ListElement que contém o intervalo inteiro especificado no operationState no elemento pai comum inferior que contém tanto as extremidades iniciais quanto finais do intervalo. Cada parágrafo dentro do intervalo vai se tornar um ListItemElement no novo ListElement. Se as extremidades iniciais e finais forem iguais, um novo ListElement é criado nesta posição com um filho ListItemElement único.
Parâmetros
parent:FlowGroupElement (default = null ) — Opcionalmente especifica um elemento pai do novo ListElement. Se null o novo pai será o nível inferior que contém o SelectionState.
| |
format:flashx.textLayout.formats:ITextLayoutFormat (default = null ) — Formatar atributos para aplicar ao novo ListElement.
| |
operationState:SelectionState (default = null ) — Especifica o texto ao qual esta operação se aplica; se for null , a operação será aplicada à seleção atual.
|
ListElement — O novo ListElement que foi criado.
|
createSubParagraphGroup | () | método |
public function createSubParagraphGroup(parent:FlowGroupElement = null, format:flashx.textLayout.formats:ITextLayoutFormat = null, operationState:SelectionState = null):SubParagraphGroupElement
Cria um novo SubParagraphGroupElement que contém o intervalo inteiro especificado no operationState no elemento pai comum inferior que contém tanto as extremidades iniciais quanto finais do intervalo. Se as extremidades iniciais e finais forem iguais nada é feito.
Parâmetros
parent:FlowGroupElement (default = null ) — Especifica um elemento pai do novo elemento SubParagraphGroupElement. Se null o novo pai será o nível inferior que contém o SelectionState.
| |
format:flashx.textLayout.formats:ITextLayoutFormat (default = null ) — Formatar atributos para aplicar ao novo SubParagraphGroupElement
| |
operationState:SelectionState (default = null ) — Especifica o texto ao qual esta operação se aplica; se for null , a operação será aplicada à seleção atual.
|
SubParagraphGroupElement — O novo SubParagraphGroupElement que foi criado.
|
cutTextScrap | () | método |
public function cutTextScrap(operationState:SelectionState = null):flashx.textLayout.edit:TextScrap
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 10, AIR 1.5 |
Exclui a área selecionada e coloca a área excluída em um objeto TextScrap.
O TextScrap resultante pode ser colocado na área de transferência do sistema ou usado em uma operação pasteTextOperation()
subsequente.
Parâmetros
operationState:SelectionState (default = null ) — Especifica o texto ao qual esta operação se aplica; se for null , a operação será aplicada à seleção atual.
|
flashx.textLayout.edit:TextScrap — o TextScrap que foi cortado.
|
Elementos da API relacionados
Exemplo ( Como usar este exemplo )
package flashx.textLayout.edit.examples { import flash.display.Sprite; import flashx.textLayout.container.ContainerController; import flashx.textLayout.conversion.TextConverter; import flashx.textLayout.edit.EditManager; import flashx.textLayout.edit.TextScrap; import flashx.undo.UndoManager; import flashx.textLayout.elements.TextFlow; public class EditManager_cutTextScrap { static public function cutTextScrap():TextScrap { var textFlow:TextFlow = TextConverter.importToFlow( "How do now brown cow.", TextConverter.PLAIN_TEXT_FORMAT ); textFlow.flowComposer.addController( new ContainerController( new Sprite() )); var editManager:EditManager = new EditManager( new UndoManager() ); textFlow.interactionManager = editManager; textFlow.flowComposer.updateAllControllers(); editManager.selectRange( 4, 7 ); var scrap:TextScrap = editManager.cutTextScrap(); //Displays: How now brown cow. return scrap; } } }
deleteNextCharacter | () | método |
public function deleteNextCharacter(operationState:SelectionState = null):void
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 10, AIR 1.5 |
Exclui um intervalo de texto, ou, se uma seleção pontual for dada, exclui o próximo caractere.
Parâmetros
operationState:SelectionState (default = null ) — especifica o texto ao qual esta operação se aplica; se for null , a operação será aplicada à seleção atual.
|
Exemplo ( Como usar este exemplo )
package flashx.textLayout.edit.examples { import flash.display.Sprite; import flashx.textLayout.container.ContainerController; import flashx.textLayout.conversion.TextConverter; import flashx.textLayout.edit.EditManager; import flashx.textLayout.elements.TextFlow; public class EditManager_deleteNextCharacter { static public function deleteNextCharacter():void { var textFlow:TextFlow = TextConverter.importToFlow( "How now brown crow.", TextConverter.PLAIN_TEXT_FORMAT ); textFlow.flowComposer.addController( new ContainerController( new Sprite() )); var editManager:EditManager = new EditManager(); textFlow.interactionManager = editManager; textFlow.flowComposer.updateAllControllers(); editManager.selectRange( 15, 15 ); editManager.deleteNextCharacter(); //displays: How now brown cow. } } }
deleteNextWord | () | método |
public function deleteNextWord(operationState:SelectionState = null):void
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 10, AIR 1.5 |
Exclui a palavra seguinte.
Se um intervalo for selecionado, a primeira palavra do intervalo será excluída.
Parâmetros
operationState:SelectionState (default = null ) — Especifica o texto ao qual esta operação se aplica; se for null , a operação será aplicada à seleção atual.
|
Exemplo ( Como usar este exemplo )
package flashx.textLayout.edit.examples { import flash.display.Sprite; import flashx.textLayout.container.ContainerController; import flashx.textLayout.conversion.TextConverter; import flashx.textLayout.edit.EditManager; import flashx.textLayout.elements.TextFlow; public class EditManager_deleteNextWord { static public function deleteNextWord():void { var textFlow:TextFlow = TextConverter.importToFlow( "How do now brown cow.", TextConverter.PLAIN_TEXT_FORMAT ); textFlow.flowComposer.addController( new ContainerController( new Sprite() )); var editManager:EditManager = new EditManager(); textFlow.interactionManager = editManager; textFlow.flowComposer.updateAllControllers(); editManager.selectRange( 3, 3 ); editManager.deleteNextWord(); //displays: How now brown cow. } } }
deletePreviousCharacter | () | método |
public function deletePreviousCharacter(operationState:SelectionState = null):void
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 10, AIR 1.5 |
Exclui um intervalo de texto, ou, se uma seleção pontual for dada, exclui o caractere anterior.
Parâmetros
operationState:SelectionState (default = null ) — Especifica o texto ao qual esta operação se aplica; se for null , a operação será aplicada à seleção atual.
|
Exemplo ( Como usar este exemplo )
package flashx.textLayout.edit.examples { import flash.display.Sprite; import flashx.textLayout.container.ContainerController; import flashx.textLayout.conversion.TextConverter; import flashx.textLayout.edit.EditManager; import flashx.textLayout.elements.TextFlow; public class EditManager_deletePreviousCharacter { static public function deletePreviousCharacter():void { var textFlow:TextFlow = TextConverter.importToFlow( "How now brown crow.", TextConverter.PLAIN_TEXT_FORMAT ); textFlow.flowComposer.addController( new ContainerController( new Sprite() )); var editManager:EditManager = new EditManager(); textFlow.interactionManager = editManager; textFlow.flowComposer.updateAllControllers(); editManager.selectRange( 16, 16 ); editManager.deletePreviousCharacter(); //displays: How now brown cow. } } }
deletePreviousWord | () | método |
public function deletePreviousWord(operationState:SelectionState = null):void
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 10, AIR 1.5 |
Exclui a palavra anterior.
Se um intervalo for selecionado, a primeira palavra do intervalo será excluída.
Parâmetros
operationState:SelectionState (default = null ) — Especifica o texto ao qual esta operação se aplica; se for null , a operação será aplicada à seleção atual.
|
Exemplo ( Como usar este exemplo )
var textFlow:TextFlow = TextConverter.importToFlow( "How do now brown cow.", TextConverter.PLAIN_TEXT_FORMAT ); textFlow.flowComposer = new StandardFlowComposer(); textFlow.flowComposer.addController( new ContainerController( this )); var editManager:EditManager = new EditManager( new UndoManager() ); textFlow.interactionManager = editManager; textFlow.flowComposer.updateAllControllers(); editManager.setSelection( 7, 7 ); editManager.deletePreviousWord(); //displays: How now brown cow.
deleteText | () | método |
public function deleteText(operationState:SelectionState = null):void
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 10, AIR 1.5 |
Exclui um intervalo de texto.
Parâmetros
operationState:SelectionState (default = null ) — Especifica o texto ao qual esta operação se aplica; se for null , a operação será aplicada à seleção atual.
|
Exemplo ( Como usar este exemplo )
package flashx.textLayout.edit.examples { import flash.display.Sprite; import flashx.textLayout.container.ContainerController; import flashx.textLayout.conversion.TextConverter; import flashx.textLayout.edit.EditManager; import flashx.textLayout.elements.TextFlow; public class EditManager_deleteText { static public function deleteText():void { var textFlow:TextFlow = TextConverter.importToFlow( "How do now brown cow.", TextConverter.PLAIN_TEXT_FORMAT ); textFlow.flowComposer.addController( new ContainerController( new Sprite() )); var editManager:EditManager = new EditManager(); textFlow.interactionManager = editManager; textFlow.flowComposer.updateAllControllers(); editManager.selectRange( 4, 7 ); editManager.deleteText(); //displays: How now brown cow. } } }
doOperation | () | método |
override public function doOperation(operation:FlowOperation):void
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 10, AIR 1.5 |
Executa um FlowOperation.
O método doOperation()
é chamado pelas funções IEditManager que atualizam o fluxo de texto. Normalmente não é necessário chamar diretamente esta função, a menos que você crie suas próprias operações personalizadas.
Esta função prossegue nas seguintes etapas:
- Limpe todas as operações pendentes antes de realizar esta operação.
- Envie um evento flowOperationBegin cancelável. Se for cancelado, este método retornará imediatamente.
- Execute a operação. A operação gera
true
oufalse
.false
indica que não foi efetuada nenhuma alteração. - Envie a operação para a pilha de reversão.
- Limpe a pilha de repetição.
- Atualize a exibição.
- Envie um evento flowOperationEnd cancelável.
Tratamento de exceções: se a operação gerar uma exceção, ela será detectada e o erro será anexado ao evento flowOperationEnd. Se o evento não for cancelado, o erro será gerado novamente.
Parâmetros
operation:FlowOperation — um objeto FlowOperation
|
Exemplo ( Como usar este exemplo )
package flashx.textLayout.edit.examples { import flash.display.Sprite; import flashx.textLayout.container.ContainerController; import flashx.textLayout.conversion.TextConverter; import flashx.textLayout.edit.EditManager; import flashx.textLayout.edit.SelectionState; import flashx.textLayout.elements.TextFlow; import flashx.textLayout.operations.InsertTextOperation; public class EditManager_doOperation { static public function doOperation(sprite:Sprite):void { var textFlow:TextFlow = TextConverter.importToFlow( "How brown cow.", TextConverter.PLAIN_TEXT_FORMAT ); textFlow.flowComposer.addController( new ContainerController( sprite )); var editManager:EditManager = new EditManager(); textFlow.interactionManager = editManager; textFlow.flowComposer.updateAllControllers(); var selectionState:SelectionState = new SelectionState(textFlow, 4, 4); var insertOperation:InsertTextOperation = new InsertTextOperation( selectionState, "now " ); editManager.doOperation( insertOperation ); // displays: How now brown cow } } }
endCompositeOperation | () | método |
public function endCompositeOperation():void
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 10, AIR 1.5 |
Encerra um grupo de operações.
Todas as operações executadas desde a última chamada a beginCompositeOperation()
serão agrupadas como uma CompositeOperation que, então, será concluída. Este objeto CompositeOperation é incluído na pilha de reversão ou, se esta operação composta estiver aninhada dentro de outra operação composta, é adicionado à operação ascendente (pai).
Exemplo ( Como usar este exemplo )
beginCompositeOperation()
e endCompositeOperation()
não foram usadas, então cada uma das suboperações teria de ser desfeita separadamente, em vez de em grupo.
package flashx.textLayout.edit.examples { import flashx.textLayout.edit.IEditManager; import flashx.textLayout.edit.SelectionState; import flashx.textLayout.elements.TextFlow; public class EditManager_beginCompositeOperation { static public function insertGraphic( source:Object, width:Object, height:Object, float:String, selection:SelectionState ):void { var editManager:IEditManager = selection.textFlow.interactionManager as IEditManager; editManager.beginCompositeOperation(); editManager.deleteText( selection ); var changedSelection:SelectionState = new SelectionState( selection.textFlow, selection.anchorPosition, selection.anchorPosition ); editManager.splitParagraph( changedSelection ); changedSelection = new SelectionState( changedSelection.textFlow, changedSelection.anchorPosition + 1, changedSelection.anchorPosition + 1); editManager.insertInlineGraphic( source, width, height, float, changedSelection ); changedSelection = new SelectionState( changedSelection.textFlow, changedSelection.anchorPosition + 1, changedSelection.anchorPosition + 1); editManager.splitParagraph( changedSelection ); editManager.endCompositeOperation(); } } }
insertInlineGraphic | () | método |
public function insertInlineGraphic(source:Object, width:Object, height:Object, options:Object = null, operationState:SelectionState = null):InlineGraphicElement
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 10 - + 10.2, AIR 1.5 |
Insere uma imagem.
A origem da imagem pode ser uma string que contêm um URL, um objeto URLRequest, um objeto Class que representa um ativo incorporado, ou uma instância DisplayObject.
Os valores de largura e altura podem ser o número de pixels, uma porcentagem ou a string, 'auto', caso no qual a dimensão real do gráfico será usada.
Atribua float
a uma das constantes definida na classe Float para especificar se a imagem deve ser exibida à esquerda ou à direita de qualquer texto ou inline com o texto.
Parâmetros
source:Object — Pode ser uma String interpretada como um URL, uma Classe interpretada como a classe de um Embed DisplayObject, uma instância DisplayObject ou uma URLRequest.
| |
width:Object — A largura da imagem a ser inserida (número, porcentagem ou 'auto').
| |
height:Object — A altura da imagem a ser inserida (número, porcentagem, ou 'auto').
| |
options:Object (default = null ) — Nenhum compatível.
| |
operationState:SelectionState (default = null ) — Especifica o texto ao qual esta operação se aplica; se for null , a operação será aplicada à seleção atual.
|
InlineGraphicElement |
Elementos da API relacionados
Exemplo ( Como usar este exemplo )
package flashx.textLayout.edit.examples { import flash.display.Shape; import flash.display.Sprite; import flashx.textLayout.container.ContainerController; import flashx.textLayout.conversion.TextConverter; import flashx.textLayout.edit.EditManager; import flashx.textLayout.elements.TextFlow; import flashx.undo.UndoManager; public class EditManager_insertInlineGraphic { static public function insertInlineGraphic(sprite:Sprite):void { var textFlow:TextFlow = TextConverter.importToFlow( "How now brown cow.", TextConverter.PLAIN_TEXT_FORMAT ); textFlow.flowComposer.addController( new ContainerController( sprite )); var editManager:EditManager = new EditManager( new UndoManager() ); textFlow.interactionManager = editManager; textFlow.flowComposer.updateAllControllers(); editManager.selectRange( 0, 0 ); editManager.insertInlineGraphic( createGraphic(), 6, 6, "none" ); } static private function createGraphic():Shape { var shape:Shape = new Shape(); shape.graphics.beginFill( 0x993366 ); shape.graphics.drawCircle( 5, 4, 6 ); return shape; } } }
insertText | () | método |
public function insertText(text:String, origOperationState:SelectionState = null):void
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 10, AIR 1.5 |
Insere o texto.
Insere o texto em uma posição ou em um intervalo no texto. Se o local fornecido no parâmetro operationState
for um intervalo (ou se o parâmetro for null
e a seleção atual for um intervalo), o texto que está atualmente no intervalo será substituído pelo texto inserido.
Parâmetros
text:String — A sequência de caracteres a ser inserida.
| |
origOperationState:SelectionState (default = null ) — Especifica o texto no fluxo ao qual esta operação se aplica; se for null , a operação é aplicada à seleção atual.
|
Exemplo ( Como usar este exemplo )
package flashx.textLayout.edit.examples { import flash.display.Sprite; import flashx.textLayout.container.ContainerController; import flashx.textLayout.conversion.TextConverter; import flashx.textLayout.edit.EditManager; import flashx.textLayout.elements.TextFlow; import flashx.undo.UndoManager; public class EditManager_insertText { static public function insertText(sprite:Sprite):void { var textFlow:TextFlow = TextConverter.importToFlow( "How brown cow.", TextConverter.PLAIN_TEXT_FORMAT ); textFlow.flowComposer.addController( new ContainerController( sprite )); var editManager:EditManager = new EditManager( new UndoManager() ); textFlow.interactionManager = editManager; textFlow.flowComposer.updateAllControllers(); editManager.selectRange( 4, 4 ); editManager.insertText( "now " ); } } }
modifyInlineGraphic | () | método |
public function modifyInlineGraphic(source:Object, width:Object, height:Object, options:Object = null, operationState:SelectionState = null):void
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 10, AIR 1.5 |
Modifica um gráfico inline existente.
Atribua propriedades inalteráveis aos valores no gráfico original. (Normalmente, modificar um objeto de gráfico existente é mais eficiente que excluí-lo e recriá-lo).
Parâmetros
source:Object — Pode ser uma String interpretada como um URL, uma Classe interpretada como a classe de um Embed DisplayObject, uma instância DisplayObject ou uma URLRequest.
| |
width:Object — A nova largura para a imagem (número ou porcentagem).
| |
height:Object — A nova altura para a imagem (número ou porcentagem).
| |
options:Object (default = null ) — Nenhum compatível.
| |
operationState:SelectionState (default = null ) — Especifica o texto ao qual esta operação se aplica; se for null , a operação será aplicada à seleção atual.
|
Exemplo ( Como usar este exemplo )
width
e height
do gráfico em linha para esticá-lo em uma elipse:
package flashx.textLayout.edit.examples { import flash.display.Sprite; import flash.display.Shape; import flashx.textLayout.container.ContainerController; import flashx.textLayout.conversion.TextConverter; import flashx.textLayout.edit.EditManager; import flashx.textLayout.elements.TextFlow; import flashx.undo.UndoManager; public class EditManager_modifyInlineGraphic { static public function modifyInlineGraphic(sprite:Sprite):void { var textFlow:TextFlow = TextConverter.importToFlow( "How now brown cow.", TextConverter.PLAIN_TEXT_FORMAT ); textFlow.flowComposer.addController( new ContainerController( sprite )); var editManager:EditManager = new EditManager( new UndoManager() ); textFlow.interactionManager = editManager; textFlow.flowComposer.updateAllControllers(); editManager.selectRange( 0, 0 ); editManager.insertInlineGraphic( createGraphic(), 6, 6, "none" ); editManager.selectRange( 0, 1 ); editManager.modifyInlineGraphic( null, '12', '5', 'none' ); } static private function createGraphic():Shape { var shape:Shape = new Shape(); shape.graphics.beginFill( 0x993366 ); shape.graphics.drawCircle( 4, 4, 6 ); return shape; } } }
moveChildren | () | método |
public function moveChildren(source:FlowGroupElement, sourceIndex:int, numChildren:int, destination:FlowGroupElement, destinationIndex:int, selectionState:SelectionState = null):void
Mova o grupo de FlowElements de um FlowGroupElement para outro. O desinationElement deve ser um tipo de pai permitido dos filhos que são movidos, ou uma exceção é lançada.
Parâmetros
source:FlowGroupElement — O pai original dos elementos a serem movidos.
| |
sourceIndex:int — O índice filho dentro da origem do primeiro elemento a ser movido.
| |
numChildren:int — O número de filhos que são movidos.
| |
destination:FlowGroupElement — O novo pai de elementos depois de serem movidos.
| |
destinationIndex:int — O índice filho dentro do destino para onde os elementos são movidos.
| |
selectionState:SelectionState (default = null ) — Especifica o texto a que esta operação se aplica, e que retorna à seleção após ser desfeito. Se null , a operação é aplicada à seleção atual. Se não houver nenhuma seleção atual, este parâmetro deve ser não null.
|
overwriteText | () | método |
public function overwriteText(text:String, operationState:SelectionState = null):void
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 10, AIR 1.5 |
Sobrescreve o texto selecionado.
Se a seleção for uma seleção pontual, o primeiro caractere é sobrescrito pelo novo texto.
Parâmetros
text:String — A sequência de caracteres a ser inserida.
| |
operationState:SelectionState (default = null ) — Especifica o texto ao qual esta operação se aplica; se for null , a operação será aplicada à seleção atual.
|
Exemplo ( Como usar este exemplo )
package flashx.textLayout.edit.examples { import flash.display.Sprite; import flashx.textLayout.container.ContainerController; import flashx.textLayout.conversion.TextConverter; import flashx.textLayout.edit.EditManager; import flashx.textLayout.elements.TextFlow; import flashx.undo.UndoManager; public class EditManager_overwriteText { static public function overwriteText(sprite:Sprite):void { var textFlow:TextFlow = TextConverter.importToFlow( "How zzz brown cow.", TextConverter.PLAIN_TEXT_FORMAT ); textFlow.flowComposer.addController( new ContainerController( sprite )); var editManager:EditManager = new EditManager( new UndoManager() ); textFlow.interactionManager = editManager; textFlow.flowComposer.updateAllControllers(); editManager.selectRange( 4, 6 ); editManager.overwriteText( "now" ); //Displays: How now brown cow. } } }
pasteTextScrap | () | método |
public function pasteTextScrap(scrapToPaste:flashx.textLayout.edit:TextScrap, operationState:SelectionState = null):void
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 10, AIR 1.5 |
Cola o TextScrap na área selecionada.
Se um intervalo de texto for especificado, o texto no intervalo será excluído.
Parâmetros
scrapToPaste:flashx.textLayout.edit:TextScrap — O TextScrap a ser colado.
| |
operationState:SelectionState (default = null ) — Especifica o texto ao qual esta operação se aplica; se for null , a operação será aplicada à seleção atual.
|
Elementos da API relacionados
Exemplo ( Como usar este exemplo )
package flashx.textLayout.edit.examples { import flash.display.Sprite; import flashx.textLayout.container.ContainerController; import flashx.textLayout.conversion.TextConverter; import flashx.textLayout.edit.EditManager; import flashx.textLayout.edit.TextScrap; import flashx.textLayout.elements.TextFlow; import flashx.undo.UndoManager; public class EditManager_pasteTextScrap { static public function pasteText(sprite:Sprite):void { var textFlow:TextFlow = TextConverter.importToFlow( "How brown cow now.", TextConverter.PLAIN_TEXT_FORMAT ); textFlow.flowComposer.addController( new ContainerController( sprite )); var editManager:EditManager = new EditManager( new UndoManager() ); textFlow.interactionManager = editManager; textFlow.flowComposer.updateAllControllers(); editManager.selectRange( 13, 17 ); var scrap:TextScrap = editManager.cutTextScrap(); editManager.selectRange( 3, 3 ); editManager.pasteTextScrap( scrap ); //Displays: How now brown cow. } } }
redo | () | método |
public function redo():void
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 10, AIR 1.5 |
Realiza novamente a operação anterior desfeita.
Observação: Se o IUndoManager associado a este IEditManager também estiver associado a outro IEditManager, será possível que a operação de repetição associada ao outro IEditManager seja a operação repetida. Isso pode acontecer caso FlowOperation de outro IEditManager esteja no alto da pilha de repetição.
Esta função ficará inativa se a reversão não estiver ativada.
Elementos da API relacionados
Exemplo ( Como usar este exemplo )
package flashx.textLayout.edit.examples { import flash.display.Sprite; import flashx.textLayout.edit.IEditManager; import flashx.textLayout.elements.TextFlow; public class EditManager_redo { static public function redo( textFlow:TextFlow ):void { if( textFlow.interactionManager is IEditManager ) { IEditManager( textFlow.interactionManager ).redo(); } } } }
splitElement | () | método |
public function splitElement(target:FlowGroupElement, operationState:SelectionState = null):FlowGroupElement
Divide o elemento de alvo no local especificado, criando um novo elemento depois do atual. Se o operationState for um intervalo, o texto dentro do intervalo é excluído. O novo elemento é criado depois da posição do texto especificada por operationState. Observe que a divisão de um SubParagraphGroupElement não terá nenhum efeito porque mesclarão de novo automaticamente com os elementos adejacent.
Um exemplo onde você pode querer usar isto é se tiver uma lista, e quiser dividi-la em duas listas.
Parâmetros
target:FlowGroupElement — O elemento a ser dividido.
| |
operationState:SelectionState (default = null ) — Especifica o texto ao qual esta operação se aplica; se for null , a operação será aplicada à seleção atual.
|
FlowGroupElement — O novo parágrafo que foi criado.
|
splitParagraph | () | método |
public function splitParagraph(operationState:SelectionState = null):ParagraphElement
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 10, AIR 1.5 |
Divide o parágrafo na posição atual, criando um novo parágrafo depois do atual.
Se um intervalo de texto for especificado, o texto no intervalo será excluído.
Parâmetros
operationState:SelectionState (default = null ) — Especifica o texto ao qual esta operação se aplica; se for null , a operação será aplicada à seleção atual.
|
ParagraphElement — O novo parágrafo que foi criado.
|
Exemplo ( Como usar este exemplo )
package flashx.textLayout.edit.examples { import flash.display.Sprite; import flashx.textLayout.container.ContainerController; import flashx.textLayout.conversion.TextConverter; import flashx.textLayout.edit.EditManager; import flashx.textLayout.edit.TextScrap; import flashx.textLayout.elements.TextFlow; import flashx.undo.UndoManager; public class EditManager_splitParagraph { static public function splitParagraph(sprite:Sprite):void { var textFlow:TextFlow = TextConverter.importToFlow( "How now brown cow.", TextConverter.PLAIN_TEXT_FORMAT ); textFlow.flowComposer.addController( new ContainerController( sprite )); var editManager:EditManager = new EditManager( new UndoManager() ); textFlow.interactionManager = editManager; textFlow.flowComposer.updateAllControllers(); editManager.selectRange( 8, 8 ); editManager.splitParagraph(); //Displays: How now // brown cow. } } }
undo | () | método |
public function undo():void
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 10, AIR 1.5 |
Reverte a operação anterior.
Observação: Se o IUndoManager associado a este IEditManager também estiver associado a outro IEditManager, será possível que a operação de reversão associada ao outro IEditManager seja a operação desfeita. Isso pode acontecer caso FlowOperation de outro IEditManager esteja no alto da pilha de reversão.
Esta função ficará inativa se a reversão não estiver ativada.
Elementos da API relacionados
Exemplo ( Como usar este exemplo )
package flashx.textLayout.edit.examples { import flashx.textLayout.edit.IEditManager; import flashx.textLayout.elements.TextFlow; public class EditManager_undo { static public function undo( textFlow:TextFlow ):void { if( textFlow.interactionManager is IEditManager ) { IEditManager( textFlow.interactionManager ).undo(); } } } }
updateAllControllers | () | método |
public function updateAllControllers():void
- Crie um TextFlow (
tf
) para conter uma linha do texto de amostra. - Salve o texto em um SpanElement que, por sua vez, seja salvo em ParagraphElement.
- Crie um ContainerController do texto e componha o texto para exibição.
- Instancie os objetos de gerenciador do TextFlow para uso posterior por um ouvinte de evento.
- Crie um botão de edição muito simples que permita a um usuário tornar o texto editável.
- Crie o ouvinte de evento do botão que alterne entre somente leitura e status editáveis.
O valor da propriedade interactionManager
do TextFlow determina se o texto de amostra é editável. Se a propriedade for null
, o texto de amostra será somente leitura. Se a propriedade for atribuída a uma sessão do EditManager, o texto de amostra será editável. O método createEditButton() cria um exemplo de Campo de texto parecido a um botão muito simples. Quando um usuário clica na instância Campo de texto, a função de ouvinte de updateEditable()
alterna o valor da propriedade interactionManager
.
package flashx.textLayout.edit.examples { import flash.display.Sprite; import flash.events.MouseEvent; import flash.text.TextField; import flash.text.TextFieldAutoSize; import flashx.textLayout.container.ContainerController; import flashx.textLayout.edit.EditManager; import flashx.textLayout.elements.ParagraphElement; import flashx.textLayout.elements.SpanElement; import flashx.textLayout.elements.TextFlow; import flashx.undo.UndoManager; public class EditManager_example extends Sprite { private var tf:TextFlow; private var em:EditManager; private var um:UndoManager; private var editable:TextField; public function EditManager_example() { //define TextFlow tf = new TextFlow(); //define elements to contain text var p:ParagraphElement = new ParagraphElement(); var s:SpanElement = new SpanElement(); s.text ="This is sample text for the EditManager example."; //add these elements to the TextFlow p.addChild(s); tf.addChild(p); //compose TextFlow to display var tfController:ContainerController = new ContainerController(this,600,600); tfController.container.y = 10 tf.flowComposer.addController(tfController); tf.flowComposer.updateAllControllers(); //define TextFlow manager objects um = new UndoManager(); em = new EditManager(um); tf.interactionManager = null; createEditButton(); } private function createEditButton ():void { editable = new TextField(); editable.appendText("Click to make the sample text editable"); editable.x = 0; editable.y = 50; editable.width = 150; editable.autoSize = flash.text.TextFieldAutoSize.LEFT; editable.selectable = false; editable.background = true; editable.backgroundColor = 0xAAAAAA; addChild(editable); editable.addEventListener(MouseEvent.CLICK, updateEditable); } private function updateEditable(me:MouseEvent):void{ if (editable.text.indexOf("read only") >= 0) { editable.text = "Click to make the sample text editable"; tf.interactionManager = null; } else { editable.text = "Click to make the sample text read only"; tf.interactionManager = em; } } } }
Wed Jun 13 2018, 11:10 AM Z