﻿<?xml version="1.0" encoding="utf-8"?>
<CodeSnippets>
<!--
Este arquivo determina quais snippets de código aparecem no painel Snippets de código.

Atributo isBranch – Defina como "false" para os snippets.
title – O nome do snippet a ser exibido no painel Snippet de código.
description – A descrição do snippet a ser exibida na dica de ferramenta.
requiresSymbol – Defina como true se o snippet exigir que um objeto seja definido no palco.
código – O código a ser inserido.  O código real deve ser colocado dentro do bloco CDATA como neste exemplo.
minPlayerVersion – Exija um arquivo FLA para atender a uma versão mínima do Player.
maxPlayerVersion -  Exige que o arquivo FLA seja menor ou igual a uma versão máxima do Player.
minASVersion – Exija um arquivo FLA para atender a uma versão mínima do ActionScript.
maxASVersion -  Exige que o arquivo FLA seja menor ou igual a uma versão máxima do ActionScript.

Para criar seus próprios snippets de código, copie o snippet vazio a seguir e cole-o na categoria em que você deseja que ele apareça.

	<snippet isBranch="false">
	  <title>Snippet personalizado</title>
	  <description>Este é um exemplo de um  snippet de código personalizado.</description>
	  <requiresSymbol>true</requiresSymbol>
	  <code><![CDATA[
// O código vai aqui
trace("Um snippet de código personalizado");
	  ]]></code>
	</snippet>
-->
<snippets>
  <category title="Ações"
      isBranch="true" expanded="false"
      description="Código para interações comuns">
	<snippet isBranch="false">
	  <title>Clique para ir para a página da Web</title>
	  <description>Clicar no objeto especificado carrega o URL em uma nova janela do navegador.</description>
	  <requiresSymbol>true</requiresSymbol>
	  <placeholders>
		<placeholder
			type="stageInstance"
			text="instance_name_here" />
		<placeholder
			text="http://www.adobe.com"
			type="editableText" />
	  </placeholders>
	  <minASVersion>3</minASVersion>
	  <ADOBE_PIP_ID>Click_to_Go_to_Web_Page</ADOBE_PIP_ID>
	  <code><![CDATA[
/* Clique para ir para a página da Web
Clicar na instância do símbolo especificada carrega o URL em uma nova janela do navegador.

Instruções:
1. Substitua http://www.adobe.com pelo endereço URL desejado.
   Mantenha as aspas ("").
*/

instance_name_here.addEventListener(MouseEvent.CLICK, fl_ClickToGoToWebPage);

function fl_ClickToGoToWebPage(event:MouseEvent):void
{
	navigateToURL(new URLRequest("http://www.adobe.com"), "_blank");
}
]]></code>
	</snippet>
	<snippet isBranch="false">
	  <title>Cursor personalizado do mouse</title>
	  <description>Substitui o cursor padrão do mouse pelo objeto especificado no palco.</description>
	  <requiresSymbol>true</requiresSymbol>
	  <placeholders>
		<placeholder
			type="stageInstance"
			text="instance_name_here" />
	  </placeholders>
	  <minASVersion>3</minASVersion>
	  <ADOBE_PIP_ID>Custom_Mouse_Cursor</ADOBE_PIP_ID>
	  <code><![CDATA[
/* Cursor personalizado do mouse
Substitui o cursor padrão do mouse pela instância especificada do símbolo.
*/

stage.addChild(instance_name_here);
instance_name_here.mouseEnabled = false;
instance_name_here.addEventListener(Event.ENTER_FRAME, fl_CustomMouseCursor);

function fl_CustomMouseCursor(event:Event)
{
	instance_name_here.x = stage.mouseX;
	instance_name_here.y = stage.mouseY;
}
Mouse.hide();

//Para restaurar o ponteiro padrão do mouse, exclua os comentários das seguintes linhas:
//instance_name_here.removeEventListener(Event.ENTER_FRAME, fl_CustomMouseCursor);
//stage.removeChild(instance_name_here);
//Mouse.show();
]]></code>
	</snippet>
	<snippet isBranch="false">
	  <title>Arrastar e soltar</title>
	  <description>Torna o objeto especificado móvel com o recurso arrastar e soltar.</description>
	  <requiresSymbol>true</requiresSymbol>
	  <placeholders>
		<placeholder
			type="stageInstance"
			text="instance_name_here" />
	  </placeholders>
	  <minASVersion>3</minASVersion>
	  <ADOBE_PIP_ID>Drag_and_Drop</ADOBE_PIP_ID>
	  <code><![CDATA[
/* Arrastar e soltar
Torna a instância do símbolo especificada móvel com arrastar e soltar.
*/

instance_name_here.addEventListener(MouseEvent.MOUSE_DOWN, fl_ClickToDrag);

function fl_ClickToDrag(event:MouseEvent):void
{
	instance_name_here.startDrag();
}

stage.addEventListener(MouseEvent.MOUSE_UP, fl_ReleaseToDrop);

function fl_ReleaseToDrop(event:MouseEvent):void
{
	instance_name_here.stopDrag();
}
]]></code>
	</snippet>
	<snippet isBranch="false">
	  <title>Reproduzir um clipe de filme</title>
	  <description>Reproduz o objeto especificado ou o clipe de filme que estiver parado no palco no momento.</description>
	  <requiresSymbol>true</requiresSymbol>
	  <placeholders>
		<placeholder
			type="stageInstance"
			text="instance_name_here" />
	  </placeholders>
	  <ADOBE_PIP_ID>Play_a_Movie_Clip</ADOBE_PIP_ID>
	  <code><![CDATA[
/* Reproduzir um clipe de filme
Reproduz o clipe de filme especificado no palco.

Instruções:
1. Use este código para clipes de filme que estão parados no momento.
*/

instance_name_here.play();
]]></code>
	</snippet>
	<snippet isBranch="false">
	  <title>Parar um clipe de filme</title>
	  <description>Para o objeto especificado ou o clipe de filme que estiver sendo reproduzido no palco no momento.</description>
	  <requiresSymbol>true</requiresSymbol>
	  <placeholders>
		<placeholder
			type="stageInstance"
			text="instance_name_here" />
	  </placeholders>
	  <ADOBE_PIP_ID>Stop_a_Movie_Clip</ADOBE_PIP_ID>
	  <code><![CDATA[
/* Parar um clipe de filme
Para o clipe de filme especificado no palco.

Instruções:
1. Use este código para clipes de filme que estão em reprodução no momento.
*/

instance_name_here.stop();
]]></code>
	</snippet>
	<snippet isBranch="false">
	  <title>Clique para ocultar um objeto</title>
	  <description>Clicar no objeto especificado o oculta.</description>
	  <requiresSymbol>true</requiresSymbol>
	  <placeholders>
		<placeholder
			type="stageInstance"
			text="instance_name_here" />
	  </placeholders>
	  <minASVersion>3</minASVersion>
	  <ADOBE_PIP_ID>Click_to_Hide_an_Object</ADOBE_PIP_ID>
	  <code><![CDATA[
/* Clique para ocultar um objeto
Clicar na instância do objeto especificado o oculta.

Instruções:
1. Use este código para objetos que estão visíveis no momento.
*/

instance_name_here.addEventListener(MouseEvent.CLICK, fl_ClickToHide);

function fl_ClickToHide(event:MouseEvent):void
{
	instance_name_here.visible = false;
}
]]></code>
	</snippet>
	<snippet isBranch="false">
	  <title>Exibir um objeto</title>
	  <description>Torna o objeto especificado visível.</description>
	  <requiresSymbol>true</requiresSymbol>
	  <placeholders>
		<placeholder
			type="stageInstance"
			text="instance_name_here" />
	  </placeholders>
	  <minASVersion>3</minASVersion>
	  <ADOBE_PIP_ID>Show_an_Object</ADOBE_PIP_ID>
	  <code><![CDATA[
/* Exibir um objeto
Mostra a instância do objeto especificado.

Instruções:
1. Use este código para mostrar objetos que estão ocultos no momento.
*/

instance_name_here.visible = true;
]]></code>
	</snippet>

	<snippet isBranch="false">
	  <title>Clique para posicionar um objeto</title>
	  <description>Move o objeto especificado para as coordenadas x e y especificadas.</description>
	  <requiresSymbol>true</requiresSymbol>
	  <placeholders>
		<placeholder
			type="stageInstance"
			text="instance_name_here" />
		<placeholder
			text="200"
			type="hotTextNumber"
			min="-500"
			max="5000"/>
		<placeholder
			text="100"
			type="hotTextNumber"
			min="-500"
			max="5000"/>
	  </placeholders>
	  <minASVersion>3</minASVersion>
	  <ADOBE_PIP_ID>Click_to_Position_an_Object</ADOBE_PIP_ID>
	  <code><![CDATA[
/* Clique para posicionar um objeto
Move a instância do símbolo especificada para a coordenada x e a coordenada y que você especifica.

Instruções:
1. Substitua o valor 200 pela coordenada x.
   onde você deseja posicionar o objeto.
2. Substitua o valor 100 pela coordenada y em que você deseja posicionar o objeto.
*/

instance_name_here.addEventListener(MouseEvent.CLICK, fl_ClickToPosition);

function fl_ClickToPosition(event:MouseEvent):void
{
	instance_name_here.x = 200;
	instance_name_here.y = 100;
}
]]></code>
	</snippet>

	<snippet isBranch="false">
	  <title>Clique para exibir um TextField</title>
	  <description>Clicar no objeto especificado cria e exibe um TextField na posição especificada.</description>
	  <requiresSymbol>true</requiresSymbol>
	  <placeholders>
		<placeholder
			type="stageInstance"
			text="instance_name_here" />
		<placeholder
			type="hotTextNumber"
			text="100"
			subType="int"
			min="0" />
		<placeholder
			type="hotTextNumber"
			text="200"
			subType="int"
			min="0" />
		<placeholder
			text="Lorem ipsum dolor sit amet."
			type="editableText" />
	  </placeholders>
	  <minASVersion>3</minASVersion>
	  <ADOBE_PIP_ID>Click_to_Display_a_TextField</ADOBE_PIP_ID>
	  <code><![CDATA[
/* Clique para exibir um TextField
Clicar na instância do símbolo especificada cria e exibe um TextField na coordenada x e na coordenada y que você especifica.

Instruções:
1. Substitua o valor 200 pela coordenada x em que você deseja posicionar o TextField.
2. Substitua o valor 100 pela coordenada y em que você deseja posicionar o TextField.
3. Substitua o valor do string "Lorem ipsum dolor sit amet" pelo texto que você deseja exibir no TextField que aparece. Mantenha as aspas.
*/

instance_name_here.addEventListener(MouseEvent.CLICK, fl_ClickToPosition);

var fl_TF:TextField;
var fl_TextToDisplay:String = "Lorem ipsum dolor sit amet.";

function fl_ClickToPosition(event:MouseEvent):void
{
	fl_TF = new TextField();
	fl_TF.autoSize = TextFieldAutoSize.LEFT;
	fl_TF.background = true;
	fl_TF.border = true;
	fl_TF.x = 200;
	fl_TF.y = 100;
	fl_TF.text = fl_TextToDisplay;
	addChild(fl_TF);
}
]]></code>
	</snippet>

	<snippet isBranch="false">
	  <title>Gerar um número aleatório</title>
	  <description>Gera um valor numérico aleatório entre 0 e um número especificado por você.</description>
	  <placeholders>
		<placeholder
			type="hotTextNumber"
			text="100"
			subType="int"
			min="2" />
	  </placeholders>
	  <ADOBE_PIP_ID>Generate_a_Random_Number</ADOBE_PIP_ID>
	  <code><![CDATA[
/* Gerar um número aleatório
Gera um número aleatório entre 0 e um número de limite por você especificado.

Instruções:
1. Para alterar o valor aleatório máximo, troque o número 100 na última linha deste snippet pelo número que você deseja usar.
2. Este código gera o número aleatório no painel Saída.
*/

function fl_GenerateRandomNumber(limit:Number):Number
{
	var randomNumber:Number = Math.floor(Math.random()*(limit+1));
	return randomNumber;
}
trace(fl_GenerateRandomNumber(100));
]]></code>
	</snippet>

	<snippet isBranch="false">
	  <title>Trazer objeto para frente</title>
	  <description>Traz para frente qualquer objeto no qual se clica.</description>
	  <minASVersion>3</minASVersion>
	  <ADOBE_PIP_ID>Bring_Object_to_the_Front</ADOBE_PIP_ID>
	  <code><![CDATA[
/* Trazer qualquer objeto clicado para frente
Clicar em qualquer símbolo no Palco move-o para frente de todas as outras instâncias.
*/

// Este código torna todas as instâncias de símbolo no palco "clicáveis" fazendo-as ouvir o evento CLICK.
for (var fl_ChildIndex:int = 0;
		fl_ChildIndex < this.numChildren;
		fl_ChildIndex++)
{
	this.getChildAt(fl_ChildIndex).addEventListener(MouseEvent.CLICK, fl_ClickToBringToFront);
}

// Esta é a função que move o objeto no qual se clicou para frente da lista de exibição.

function fl_ClickToBringToFront(event:MouseEvent):void
{
	this.addChild(event.currentTarget as DisplayObject);
}
]]></code>
	</snippet>

	<snippet isBranch="false">
	  <title>Cronômetro simples</title>
	  <description>Exibe um timer no Painel de saída, que faz a contagem regressiva da duração que você especificar.</description>
	  <placeholders>
		<placeholder
			type="hotTextNumber"
			text="30"
			subType="int"
			min="1" />
	  </placeholders>
	  <minASVersion>3</minASVersion>
	  <ADOBE_PIP_ID>Simple_Timer</ADOBE_PIP_ID>
	  <code><![CDATA[
/* Cronômetro simples
Exibe um cronômetro regressivo de 30 segundos no painel Saída.
Este código é um bom lugar para começar a criar cronômetros para seus próprios objetivos.

Instruções:
1. Para trocar o número de segundos no cronômetro, troque o valor 30 na primeira linha abaixo pelo número de segundos desejados.
*/

var fl_TimerInstance:Timer = new Timer(1000, 30);
fl_TimerInstance.addEventListener(TimerEvent.TIMER, fl_TimerHandler);
fl_TimerInstance.start();

var fl_SecondsElapsed:Number = 1;

function fl_TimerHandler(event:TimerEvent):void
{
	trace("Segundos transcorridos: " + fl_SecondsElapsed);
	fl_SecondsElapsed++;
}
]]></code>
	</snippet>
	<snippet isBranch="false">
	  <title>Cronômetro regressivo</title>
	  <description>Faz a contagem regressiva da duração que você especificar.</description>
	  <placeholders>
		<placeholder
			type="hotTextNumber"
			text="10"
			subType="int"
			min="2" />
	  </placeholders>
	  <minASVersion>3</minASVersion>
	  <ADOBE_PIP_ID>Countdown_Timer</ADOBE_PIP_ID>
	  <code><![CDATA[
/* Cronômetro regressivo
Faz a contagem regressiva a partir de um número especificado de segundos.

Instruções:
1. Para trocar o tempo da contagem regressiva, troque o valor 10 na primeira linha abaixo pelo número de segundos desejados.
*/

var fl_SecondsToCountDown:Number = 10;

var fl_CountDownTimerInstance:Timer = new Timer(1000, fl_SecondsToCountDown);
fl_CountDownTimerInstance.addEventListener(TimerEvent.TIMER, fl_CountDownTimerHandler);
fl_CountDownTimerInstance.start();

function fl_CountDownTimerHandler(event:TimerEvent):void
{
	trace(fl_SecondsToCountDown + " segundo");
	fl_SecondsToCountDown--;
}
]]></code>
	</snippet>
	</category>


	<category title="Navegação na linha de tempo"
	    isBranch="true"
	    description="Código para controlar a reprodução de filmes">
	<snippet isBranch="false">
	  <title>Parar neste quadro</title>
	  <description>Impede que a reprodução avance para o próximo quadro na Linha de tempo.</description>
	  <ADOBE_PIP_ID>Stop_at_this_Frame</ADOBE_PIP_ID>
	  <code><![CDATA[
/* Parar neste quadro
A linha de tempo do Flash vai parar/pausar no quadro em que você inserir este código.
Também pode ser usado para parar/pausar a linha de tempo dos clipes de filme.
*/

stop();
]]></code>
	</snippet>

	<snippet isBranch="false">
	  <title>Clique para ir até o quadro e parar</title>
	  <description>Clicar no objeto faz com que o indicador de reprodução se mova até o quadro especificado e pare.</description>
	  <requiresSymbol>true</requiresSymbol>
	  <placeholders>
		<placeholder
			type="stageInstance"
			text="instance_name_here" />
		<placeholder
			text="5"
			type="hotTextNumber"
			min="1" />
	  </placeholders>
	  <minASVersion>3</minASVersion>
	  <ADOBE_PIP_ID>Click_to_Go_to_Frame_and_Stop</ADOBE_PIP_ID>
	  <code><![CDATA[
/* Clique para ir até o quadro e parar
Clicar na instância do símbolo especificado move o indicador de reprodução até o quadro especificado na linha de tempo e para o filme.
Pode ser usado na linha de tempo principal ou nas linhas de tempo do clipe de filme.

Instruções:
1. Substitua o número 5 no código abaixo pelo número de quadro para o qual você gostaria que o indicador de reprodução se movesse quando se clica na instância do símbolo.
*/

instance_name_here.addEventListener(MouseEvent.CLICK, fl_ClickToGoToAndStopAtFrame);

function fl_ClickToGoToAndStopAtFrame(event:MouseEvent):void
{
	gotoAndStop(5);
}
]]></code>
	</snippet>

	<snippet isBranch="false">
	  <title>Clique para ir até o quadro e reproduzir</title>
	  <description>Clicar no objeto move o indicador de reprodução até o quadro especificado e continua reproduzindo.</description>
	  <requiresSymbol>true</requiresSymbol>
	  <placeholders>
		<placeholder
			type="stageInstance"
			text="instance_name_here" />
		<placeholder
			text="5"
			type="hotTextNumber"
			min="1" />
	  </placeholders>
	  <minASVersion>3</minASVersion>
	  <ADOBE_PIP_ID>Click_to_Go_to_Frame_and_Play</ADOBE_PIP_ID>
	  <code><![CDATA[
/* Clique para ir até o quadro e reproduzir
Clicar na instância do símbolo especificado move o indicador de reprodução até o quadro especificado na linha de tempo e continua a reprodução daquele quadro.
Pode ser usado na linha de tempo principal ou nas linhas de tempo do clipe de filme.

Instruções:
1. Substitua o número 5 no código abaixo pelo número de quadro para o qual você gostaria que o indicador de reprodução se movesse quando se clica na instância do símbolo.
*/

instance_name_here.addEventListener(MouseEvent.CLICK, fl_ClickToGoToAndPlayFromFrame);

function fl_ClickToGoToAndPlayFromFrame(event:MouseEvent):void
{
	gotoAndPlay(5);
}
]]></code>
	</snippet>
	<snippet isBranch="false">
	  <title>Clique para ir até o próximo quadro e parar</title>
	  <description>Clicar no objeto faz com que o indicador de reprodução se mova até o próximo quadro e pare.</description>
	  <requiresSymbol>true</requiresSymbol>
	  <placeholders>
		<placeholder
			type="stageInstance"
			text="instance_name_here" />
	  </placeholders>
	  <minASVersion>3</minASVersion>
	  <ADOBE_PIP_ID>Click_to_Go_to_Next_Frame_and_Stop</ADOBE_PIP_ID>
	  <code><![CDATA[
/* Clique para ir até o próximo quadro e parar
Clicar na instância do símbolo especificado move o indicador de reprodução até o próximo quadro e para o filme.
*/

instance_name_here.addEventListener(MouseEvent.CLICK, fl_ClickToGoToNextFrame);

function fl_ClickToGoToNextFrame(event:MouseEvent):void
{
	nextFrame();
}
]]></code>
	</snippet>

	<snippet isBranch="false">
	  <title>Clique para ir até o quadro anterior e parar</title>
	  <description>Clicar no objeto faz com que o indicador de reprodução se mova até o quadro anterior e pare.</description>
	  <requiresSymbol>true</requiresSymbol>
	  <placeholders>
		<placeholder
			type="stageInstance"
			text="instance_name_here" />
	  </placeholders>
	  <minASVersion>3</minASVersion>
	  <ADOBE_PIP_ID>Click_to_Go_to_Previous_Frame_and_Stop</ADOBE_PIP_ID>
	  <code><![CDATA[
/* Clique para ir até o quadro anterior e parar
Clicar na instância do símbolo especificado move o indicador de reprodução até o quadro anterior e para o filme.
*/

instance_name_here.addEventListener(MouseEvent.CLICK, fl_ClickToGoToPreviousFrame);

function fl_ClickToGoToPreviousFrame(event:MouseEvent):void
{
	prevFrame();
}
]]></code>
	</snippet>
	<snippet isBranch="false">
	  <title>Clique para ir até a próxima cena e reproduzir</title>
	  <description>Clicar no objeto move o indicador de reprodução até a próxima cena e continua reproduzindo.</description>
	  <requiresSymbol>true</requiresSymbol>
	  <placeholders>
		<placeholder
			type="stageInstance"
			text="instance_name_here" />
	  </placeholders>
	  <minASVersion>3</minASVersion>
	  <ADOBE_PIP_ID>Click_to_Go_to_Next_Scene_and_Play</ADOBE_PIP_ID>
	  <code><![CDATA[
/* Clique para ir até a próxima cena e reproduzir
Clicar na instância do símbolo especificado move o indicador de reprodução até a próxima cena na linha de tempo e continua a reprodução daquela cena.
*/

instance_name_here.addEventListener(MouseEvent.CLICK, fl_ClickToGoToNextScene);

function fl_ClickToGoToNextScene(event:MouseEvent):void
{
	MovieClip(this.root).nextScene();
}
]]></code>
	</snippet>
	<snippet isBranch="false">
	  <title>Clique para ir até a cena anterior e reproduzir</title>
	  <description>Clicar no objeto move o indicador de reprodução até a cena anterior e continua reproduzindo.</description>
	  <requiresSymbol>true</requiresSymbol>
	  <placeholders>
		<placeholder
			type="stageInstance"
			text="instance_name_here" />
	  </placeholders>
	  <minASVersion>3</minASVersion>
	  <ADOBE_PIP_ID>Click_to_Go_to_Previous_Scene_and_Play</ADOBE_PIP_ID>
	  <code><![CDATA[
/* Clique para ir até a cena anterior e reproduzir
Clicar na instância do símbolo especificado move o indicador de reprodução até a cena anterior na linha de tempo e continua a reprodução daquela cena.
*/

instance_name_here.addEventListener(MouseEvent.CLICK, fl_ClickToGoToPreviousScene);

function fl_ClickToGoToPreviousScene(event:MouseEvent):void
{
	MovieClip(this.root).prevScene();
}
]]></code>
	</snippet>
	<snippet isBranch="false">
	  <title>Clique para ir até a cena e reproduzir</title>
	  <description>Clicar no objeto reproduz o filme da cena e do quadro especificados.</description>
	  <requiresSymbol>true</requiresSymbol>
	  <placeholders>
		<placeholder
			type="stageInstance"
			text="instance_name_here" />
		<placeholder
			text="Cena 3"
			type="editableText" />
		<placeholder
			text="1"
			type="hotTextNumber"
			min="1" />
	  </placeholders>
	  <minASVersion>3</minASVersion>
	  <ADOBE_PIP_ID>Click_to_Go_to_Scene_and_Play</ADOBE_PIP_ID>
	  <code><![CDATA[
/* Clique para ir até a cena e reproduzir
Clicar na instância de símbolo especificada reproduz o filme da cena e do quadro especificados.

Instruções:
1. Substitua "Cena 3" pelo nome da cena que você gostaria de reproduzir.
2. Substitua 1 pelo número do quadro a partir do qual você gostaria que o filme fosse reproduzido na cena especificada.
*/

instance_name_here.addEventListener(MouseEvent.CLICK, fl_ClickToGoToScene);

function fl_ClickToGoToScene(event:MouseEvent):void
{
	MovieClip(this.root).gotoAndPlay(1, "Cena 3");
}
]]></code>
	</snippet>
	</category>


	<category title="Animação"
	    isBranch="true"
	    description="Código para alterar as propriedades de um objeto com o tempo">

	<snippet isBranch="false">
	  <title>Mover com setas do teclado</title>
	  <description>Permite que o objeto seja movido com as setas do teclado.</description>
	  <requiresSymbol>true</requiresSymbol>
	  <placeholders>
		<placeholder
			type="stageInstance"
			text="instance_name_here" />
		<placeholder
			type="hotTextNumber"
			text="5"
			subType="int"
			min="1" />
	  </placeholders>
	  <minASVersion>3</minASVersion>
	  <ADOBE_PIP_ID>Move_with_Keyboard_Arrows</ADOBE_PIP_ID>
	  <code><![CDATA[
/* Mover com setas do teclado
Permite que a instância do símbolo especificada seja movida com as setas do teclado.

Instruções:
1. Para aumentar ou diminuir a quantidade de movimento, substitua o número 5 abaixo pelo número de pixels que você deseja que a instância de símbolo se mova com cada pressionamento de tecla.
Observe que o número 5 aparece quatro vezes no código abaixo.
*/

var upPressed:Boolean = false;
var downPressed:Boolean = false;
var leftPressed:Boolean = false;
var rightPressed:Boolean = false;

instance_name_here.addEventListener(Event.ENTER_FRAME, fl_MoveInDirectionOfKey);
stage.addEventListener(KeyboardEvent.KEY_DOWN, fl_SetKeyPressed);
stage.addEventListener(KeyboardEvent.KEY_UP, fl_UnsetKeyPressed);

function fl_MoveInDirectionOfKey(event:Event)
{
	if (upPressed)
	{
		instance_name_here.y -= 5;
	}
	if (downPressed)
	{
		instance_name_here.y += 5;
	}
	if (leftPressed)
	{
		instance_name_here.x -= 5;
	}
	if (rightPressed)
	{
		instance_name_here.x += 5;
	}
}

function fl_SetKeyPressed(event:KeyboardEvent):void
{
	switch (event.keyCode)
	{
		case Keyboard.UP:
		{
			upPressed = true;
			break;
		}
		case Keyboard.DOWN:
		{
			downPressed = true;
			break;
		}
		case Keyboard.LEFT:
		{
			leftPressed = true;
			break;
		}
		case Keyboard.RIGHT:
		{
			rightPressed = true;
			break;
		}
	}
}

function fl_UnsetKeyPressed(event:KeyboardEvent):void
{
	switch (event.keyCode)
	{
		case Keyboard.UP:
		{
			upPressed = false;
			break;
		}
		case Keyboard.DOWN:
		{
			downPressed = false;
			break;
		}
		case Keyboard.LEFT:
		{
			leftPressed = false;
			break;
		}
		case Keyboard.RIGHT:
		{
			rightPressed = false;
			break;
		}
	}
}
]]></code>
	</snippet>

	<snippet isBranch="false">
	  <title>Mover horizontalmente</title>
	  <description>Move o objeto especificado para a esquerda ou para a direita pelo número especificado de pixels.</description>
	  <requiresSymbol>true</requiresSymbol>
	  <placeholders>
		<placeholder
			type="stageInstance"
			text="instance_name_here" />
		<placeholder
			type="hotTextNumber"
			text="100"
			min="-500"
			max="500" />
	  </placeholders>
	  <minASVersion>3</minASVersion>
	  <ADOBE_PIP_ID>Move_Horizontally</ADOBE_PIP_ID>
	  <code><![CDATA[
/* Mover horizontalmente
Move a instância do símbolo especificada para esquerda ou para direita diminuindo ou aumentando sua propriedade x de acordo com o número especificado de pixels.

Instruções:
1. Por padrão, este código moverá a instância do símbolo para a direita.
2. Para mover a instância do símbolo para a esquerda, altere o número 100 abaixo para um valor negativo.
3. Para alterar a distância que a instância do símbolo se move, altere o número 100 abaixo para o número de pixels pelos quais você deseja que a instância do símbolo se mova.
*/

instance_name_here.x += 100;
]]></code>
	</snippet>
	<snippet isBranch="false">
	  <title>Mover verticalmente</title>
	  <description>Move o objeto especificado para cima ou para baixo pelo número de pixels que você especificar.</description>
	  <requiresSymbol>true</requiresSymbol>
	  <placeholders>
		<placeholder
			type="stageInstance"
			text="instance_name_here" />
		<placeholder
			type="hotTextNumber"
			text="100"
			min="-500"
			max="500" />
	  </placeholders>
	  <minASVersion>3</minASVersion>
	  <ADOBE_PIP_ID>Move_Vertically</ADOBE_PIP_ID>
	  <code><![CDATA[
/* Mover verticalmente
Move a instância do símbolo para cima ou para baixo diminuindo ou aumentando sua propriedade y de acordo com o número especificado de pixels.

Instruções:
1. O movimento padrão do código como foi escrito é para baixo.
2. Para mover a instância do símbolo para a cima, altere o número 100 abaixo para um valor negativo.
3. Para alterar a distância que a instância do símbolo se move, altere o número 100 abaixo para o número de pixels pelos quais você deseja que a instância do símbolo se mova.
*/

instance_name_here.y += 100;
]]></code>
	</snippet>

	<snippet isBranch="false">
	  <title>Girar uma vez</title>
	  <description>Gira o objeto especificado uma vez na direção que você especificar, atualizando a propriedade de rotação.</description>
	  <requiresSymbol>true</requiresSymbol>
	  <placeholders>
		<placeholder
			type="stageInstance"
			text="instance_name_here" />
		<placeholder
			type="hotTextNumber"
			text="45"
			min="-180"
			max="180" />
	  </placeholders>
	  <minASVersion>3</minASVersion>
	  <ADOBE_PIP_ID>Rotate_Once</ADOBE_PIP_ID>
	  <code><![CDATA[
/* Girar uma vez
Gira a instância do símbolo atualizando sua propriedade de rotação pelo número especificado de graus.

Instruções:
1. A rotação padrão do código como foi escrito é no sentido horário.
2. Para girar a instância do símbolo no sentido anti-horário, altere o número 45 abaixo para um valor negativo.
3. Para alterar a quantidade que a instância do símbolo gira, altere o valor 45 abaixo para o número de graus da rotação desejada.
*/

instance_name_here.rotation += 45;
]]></code>
	</snippet>
	<snippet isBranch="false">
	  <title>Girar continuamente</title>
	  <description>Gira o objeto continuamente atualizando sua propriedade de rotação em um evento ENTER_FRAME.</description>
	  <requiresSymbol>true</requiresSymbol>
	  <placeholders>
		<placeholder
			type="stageInstance"
			text="instance_name_here" />
		<placeholder
			type="hotTextNumber"
			text="10"
			min="-180"
			max="180" />
	  </placeholders>
	  <minASVersion>3</minASVersion>
	  <ADOBE_PIP_ID>Rotate_Continuously</ADOBE_PIP_ID>
	  <code><![CDATA[
/* Girar continuamente
Gira a instância do símbolo continuamente atualizando sua propriedade de rotação em um evento ENTER_FRAME.

Instruções:
1. A rotação padrão do código como foi escrito é no sentido horário.
2. Para alterar o sentido da rotação para anti-horário, altere o número 10 abaixo para um valor negativo.
3. Para alterar a velocidade com que a instância do símbolo gira, altere o número 10 abaixo para o número de graus que você deseja girar a instância do símbolo em cada quadro. Números maiores geram uma rotação mais rápida.
4. Como a animação usa um evento ENTER_FRAME, ela avança apenas quando o indicador de reprodução se move para um novo quadro. A velocidade da animação também é afetada pela taxa de quadros do documento.
*/

instance_name_here.addEventListener(Event.ENTER_FRAME, fl_RotateContinuously);

function fl_RotateContinuously(event:Event)
{
	instance_name_here.rotation += 10;
}
]]></code>
	</snippet>

	<snippet isBranch="false">
	  <title>Animar horizontalmente</title>
	  <description>Anima o objeto especificado horizontalmente pelo palco atualizando a propriedade X no evento ENTER_FRAME.</description>
	  <requiresSymbol>true</requiresSymbol>
	  <placeholders>
		<placeholder
			type="stageInstance"
			text="instance_name_here" />
		<placeholder
			type="hotTextNumber"
			text="10"
			min="-100"
			max="100" />
	  </placeholders>
	  <minASVersion>3</minASVersion>
	  <ADOBE_PIP_ID>Animate_Horizontally</ADOBE_PIP_ID>
	  <code><![CDATA[
/* Animar horizontalmente
Move a instância do símbolo para esquerda ou para direita no palco diminuindo ou aumentando sua propriedade x em um evento ENTER_FRAME.

Instruções:
1. A direção padrão da animação é para a direita.
2. Para alterar a direção da animação para a esquerda, altere o número 10 abaixo para um valor negativo.
3. Para alterar a velocidade com que a instância do símbolo se move, altere o número 10 abaixo para o número de pixels pelos quais você deseja girar a instância do símbolo em cada quadro.
4. Como a animação usa um evento ENTER_FRAME, ela avança apenas quando o indicador de reprodução se move para um novo quadro. A velocidade da animação também é afetada pela taxa de quadros do documento.
*/

instance_name_here.addEventListener(Event.ENTER_FRAME, fl_AnimateHorizontally);

function fl_AnimateHorizontally(event:Event)
{
	instance_name_here.x += 10;
}
]]></code>
	</snippet>
	<snippet isBranch="false">
	  <title>Animar verticalmente</title>
	  <description>Anima o objeto especificado verticalmente pelo palco atualizando a propriedade Y no evento ENTER_FRAME.</description>
	  <requiresSymbol>true</requiresSymbol>
	  <placeholders>
		<placeholder
			type="stageInstance"
			text="instance_name_here" />
		<placeholder
			type="hotTextNumber"
			text="10"
			min="-100"
			max="100" />
	  </placeholders>
	  <minASVersion>3</minASVersion>
	  <ADOBE_PIP_ID>Animate_Vertically</ADOBE_PIP_ID>
	  <code><![CDATA[
/* Animar verticalmente
Move a instância do símbolo verticalmente no palco diminuindo ou aumentando sua propriedade y em um evento ENTER_FRAME.

Instruções:
1. A direção padrão da animação é para baixo.
2. Para alterar a direção da animação para cima, altere o número 10 abaixo para um valor negativo.
3. Para alterar a velocidade com que a instância do símbolo se move, altere o número 10 abaixo para o número de pixels pelos quais você deseja girar a instância do símbolo em cada quadro.
4. Como a animação usa um evento ENTER_FRAME, ela avança apenas quando o indicador de reprodução se move para um novo quadro. A velocidade da animação também é afetada pela taxa de quadros do documento.
*/

instance_name_here.addEventListener(Event.ENTER_FRAME, fl_AnimateVertically);

function fl_AnimateVertically(event:Event)
{
	instance_name_here.y += 10;
}
]]></code>
	</snippet>

	<snippet isBranch="false">
	  <title>Aparecimento gradual em um clipe de filme</title>
	  <description>Faz o objeto especificado aparecer gradualmente atualizando a propriedade alfa no evento ENTER_FRAME.</description>
	  <requiresSymbol>true</requiresSymbol>
	  <placeholders>
		<placeholder
			type="stageInstance"
			text="instance_name_here" />
		<placeholder
			type="hotTextNumber"
			text="0.01"
			subType="Number"
			increment="0.001"
			min="0.001"
			max="1" />
	  </placeholders>
	  <minASVersion>3</minASVersion>
	  <ADOBE_PIP_ID>Fade_In_a_Movie_Clip</ADOBE_PIP_ID>
	  <code><![CDATA[
/* Aparecimento gradual em um clipe de filme
Faz a instância do símbolo aparecer gradualmente aumentando sua propriedade alfa em um evento ENTER_FRAME até que esteja totalmente visível.

Instruções:
1. Para alterar a velocidade com a qual a instância de símbolo aparece gradualmente, altere o valor 0,01 abaixo (o número precisa ser maior que 0 e menor ou igual a 1). Valores maiores geram um aparecimento mais rápido.
2. Como a animação usa um evento ENTER_FRAME, ela avança apenas quando o indicador de reprodução se move para um novo quadro. A velocidade da animação também é afetada pela taxa de quadros do documento.
*/

instance_name_here.addEventListener(Event.ENTER_FRAME, fl_FadeSymbolIn);
instance_name_here.alpha = 0;

function fl_FadeSymbolIn(event:Event)
{
	instance_name_here.alpha += 0.01;
	if(instance_name_here.alpha >= 1)
	{
		instance_name_here.removeEventListener(Event.ENTER_FRAME, fl_FadeSymbolIn);
	}
}
]]></code>
	</snippet>
	<snippet isBranch="false">
	  <title>Desaparecimento gradual em um clipe de filme</title>
	  <description>Faz o objeto especificado desaparecer gradualmente, atualizando a propriedade alfa no evento ENTER_FRAME.</description>
	  <requiresSymbol>true</requiresSymbol>
	  <placeholders>
		<placeholder
			type="stageInstance"
			text="instance_name_here" />
		<placeholder
			type="hotTextNumber"
			text="0.01"
			subType="Number"
			increment="0.001"
			min="0.001"
			max="1" />
	  </placeholders>
	  <minASVersion>3</minASVersion>
	  <ADOBE_PIP_ID>Fade_Out_a_Movie_Clip</ADOBE_PIP_ID>
	  <code><![CDATA[
/* Desaparecimento gradual em um clipe de filme
Faz a instância do símbolo desaparecer gradualmente diminuindo sua propriedade alfa em um evento ENTER_FRAME até que esteja invisível.

Instruções:
1. Para alterar a velocidade com a qual a instância de símbolo desaparece gradualmente, altere o valor 0,01 abaixo (o número precisa ser maior que 0 e menor ou igual a 1). Valores maiores geram um desaparecimento mais rápido.
2. Como a animação usa um evento ENTER_FRAME, ela avança apenas quando o indicador de reprodução se move para um novo quadro. A velocidade da animação também é afetada pela taxa de quadros do documento.
*/

instance_name_here.addEventListener(Event.ENTER_FRAME, fl_FadeSymbolOut);
instance_name_here.alpha = 1;

function fl_FadeSymbolOut(event:Event)
{
	instance_name_here.alpha -= 0.01;
	if(instance_name_here.alpha <= 0)
	{
		instance_name_here.removeEventListener(Event.ENTER_FRAME, fl_FadeSymbolOut);
	}
}
]]></code>
	</snippet>
  </category>


  <category title="Carregar e descarregar"
      isBranch="true"
      description="Código para carregar e descarregar os ativos">
	<snippet isBranch="false">
	  <title>Clique para carregar/descarregar SWF ou imagem</title>
	  <description>Clicar no objeto especificado carrega um SWF ou URL de imagem. Clicar uma segunda vez o descarrega.</description>
	  <requiresSymbol>true</requiresSymbol>
	  <placeholders>
		<placeholder
			type="stageInstance"
			text="instance_name_here" />
		<placeholder
			type="editableText"
			text="http://www.helpexamples.com/flash/images/image1.jpg" />
	  </placeholders>
	  <minASVersion>3</minASVersion>
	  <ADOBE_PIP_ID>Click_to_Load_Unload_SWF_or_Image</ADOBE_PIP_ID>
	  <code><![CDATA[
/* Clique para carregar/descarregar SWF ou imagem de um URL.
Clicar na instância do símbolo carrega e exibe o SWF especificado ou o URL da imagem. Clicar na instância do símbolo uma segunda vez descarrega o SWF ou a imagem.

Instruções:
1. Substitua "http://www.helpexamples.com/flash/images/image1.jpg" abaixo pelo endereço URL desejado do SWF ou da imagem. Mantenha as aspas ("").
2. Os arquivos de domínios da Internet separados do domínio onde está o SWF de chamada não podem ser carregados sem configuração especial.
*/

instance_name_here.addEventListener(MouseEvent.CLICK, fl_ClickToLoadUnloadSWF);

import fl.display.ProLoader;
var fl_ProLoader:ProLoader;

//Essa variável mantém o controle de se você deseja carregar ou descarregar o SWF
var fl_ToLoad:Boolean = true;

function fl_ClickToLoadUnloadSWF(event:MouseEvent):void
{
	if(fl_ToLoad)
	{
		fl_ProLoader = new ProLoader();
		fl_ProLoader.load(new URLRequest("http://www.helpexamples.com/flash/images/image1.jpg"));
		addChild(fl_ProLoader);
	}
	else
	{
		fl_ProLoader.unload();
		removeChild(fl_ProLoader);
		fl_ProLoader = null;
	}
	// Alterne se você deseja carregar ou descarregar o SWF
	fl_ToLoad = !fl_ToLoad;
}
]]></code>
	</snippet>

	<snippet isBranch="false">
	  <title>Clique para carregar a imagem da biblioteca</title>
	  <description>Clicar no objeto especificado carrega e exibe uma imagem da Biblioteca.</description>
	  <requiresSymbol>true</requiresSymbol>
	  <placeholders>
		<placeholder
			type="stageInstance"
			text="instance_name_here" />
		<placeholder
			type="editableText"
			subType="identifierName"
			text="MyImage" />
	  </placeholders>
	  <minASVersion>3</minASVersion>
	  <ADOBE_PIP_ID>Click_to_Load_Image_from_Library</ADOBE_PIP_ID>
	  <code><![CDATA[
/* Clique para carregar a imagem da biblioteca
Clicar na instância do símbolo exibe a imagem especificada da biblioteca.
Para carregar uma imagem da biblioteca, ela deve estar localizada na biblioteca com sua propriedade Exportar para ActionScript ativada e um nome de classe válido.

Instruções:
1. Clique com o botão direito em qualquer símbolo de bitmap dentro da biblioteca e selecione "Propriedades...".
2. Clique no botão "Avançado" para expandir a caixa de diálogo "Propriedades do bitmap".
3. Ative a opção "Exportar ara Actionscript".
4. Digite 'MyImage' no campo de texto Classe.
5. Clique em OK duas vezes.
*/

instance_name_here.addEventListener(MouseEvent.CLICK, fl_ClickToLoadImageFromLibrary);

function fl_ClickToLoadImageFromLibrary(event:MouseEvent):void
{
	// Se desejar adicionar uma imagem diferente da biblioteca,
	// insira um nome diferente no campo de texto Classe na etapa 4 acima e no código abaixo.
	var libImage:MyImage = new MyImage();

	var holder:Bitmap = new Bitmap(libImage);
	addChild(holder);
}
]]></code>
	</snippet>

	<snippet isBranch="false">
	  <title>Adicionar instância da biblioteca</title>
	  <description>Acrescenta uma instância do símbolo especificado da biblioteca no palco.</description>
	  <placeholders>
		<placeholder
			type="editableText"
			subType="identifierName"
			text="LibrarySymbol" />
	  </placeholders>
	  <minASVersion>3</minASVersion>
	  <ADOBE_PIP_ID>Add_Instance_from_Library</ADOBE_PIP_ID>
	  <code><![CDATA[
/* Adicionar instância da biblioteca ao palco
Acrescenta uma instância do símbolo especificado de Clipe de Filme ou Biblioteca de Botão ao palco. Se desejar acrescentar um símbolo da Biblioteca de Bitmap ao palco, use o snippet de código "Clique para carregar imagem da biblioteca".

Instruções:
1. Clique com o botão direito em qualquer símbolo dentro da bibilioteca e selecione "Propriedades...".
2. Clique no botão "Avançado" para expandir a caixa de diálogo "Propriedades do Símbolo".
3. Ative a opção "Exportar ara Actionscript".
4. Digite 'LibrarySymbol' no campo de texto Classe.
5. Clique em OK duas vezes.
*/

// Se desejar adicionar um símbolo diferente da biblioteca,
// insira um nome diferente no campo de texto Classe na etapa 4 acima e no código abaixo.
var fl_MyInstance:LibrarySymbol = new LibrarySymbol();
addChild(fl_MyInstance);
]]></code>
	</snippet>

	<snippet isBranch="false">
	  <title>Remover instância do palco</title>
	  <description>Remove do palco a instância do símbolo especificado. </description>
	  <requiresSymbol>true</requiresSymbol>
	  <placeholders>
		<placeholder
			type="stageInstance"
			text="instance_name_here" />
	  </placeholders>
	  <minASVersion>3</minASVersion>
	  <ADOBE_PIP_ID>Remove_Instance_from_Stage</ADOBE_PIP_ID>
	  <code><![CDATA[
/* Remover instância do palco
Remove do palco a instância do símbolo especificado. 
*/

removeChild(instance_name_here);
]]></code>
	</snippet>

	<snippet isBranch="false">
	  <title>Carregar texto externo</title>
	  <description>Carrega e exibe um arquivo de texto no painel Saída. </description>
	  <placeholders>
		<placeholder
			type="editableText"
			text="http://www.helpexamples.com/flash/text/loremipsum.txt" />
	  </placeholders>
	  <minASVersion>3</minASVersion>
	  <ADOBE_PIP_ID>Load_External_Text</ADOBE_PIP_ID>
	  <code><![CDATA[
/* Carregar texto externo
Carrega um arquivo de texto externo e o exibe no painel Saída. 

Instruções:
1. Substitua "http://www.helpexamples.com/flash/text/loremipsum.txt" pelo endereço URL do arquivo de texto que você gostaria de carregar.
O endereço pode ser um link relativo ou um link "http://".
O endereço deve ser colocado dentro das aspas ("").
*/

var fl_TextLoader:URLLoader = new URLLoader();
var fl_TextURLRequest:URLRequest = new URLRequest("http://www.helpexamples.com/flash/text/loremipsum.txt");

fl_TextLoader.addEventListener(Event.COMPLETE, fl_CompleteHandler);

function fl_CompleteHandler(event:Event):void
{
	var textData:String = new String(fl_TextLoader.data);
	trace(textData);
}

fl_TextLoader.load(fl_TextURLRequest);
]]></code>
	</snippet>

	</category>

	<category title="Áudio e vídeo"
	    isBranch="true"
	    description="Código para trabalhar com áudio e vídeo">
	<snippet isBranch="false">
      <title>Clique para reproduzir/parar som</title>
      <description>Clicar no objeto especificado reproduz um som. Clicar uma segunda vez para a reprodução. </description>
	  <requiresSymbol>true</requiresSymbol>
	  <placeholders>
		<placeholder
			type="stageInstance"
			text="instance_name_here" />
		<placeholder
			type="editableText"
			text="http://www.helpexamples.com/flash/sound/song1.mp3" />
	  </placeholders>
	  <minASVersion>3</minASVersion>
	  <ADOBE_PIP_ID>Click_to_Play_Stop_Sound</ADOBE_PIP_ID>
	  <code><![CDATA[
/* Clique para reproduzir/parar som
Clicar na instância do símbolo reproduz o som especificado.
Clicar na instância do símbolo uma segunda vez para o som.

Instruções:
1. Substitua "http://www.helpexamples.com/flash/sound/song1.mp3" abaixo pelo endereço URL desejado do seu arquivo de som. Mantenha as aspas ("").
*/

instance_name_here.addEventListener(MouseEvent.CLICK, fl_ClickToPlayStopSound);

var fl_SC:SoundChannel;

//Essa variável mantém o controle de se você deseja reproduzir ou parar o som
var fl_ToPlay:Boolean = true;

function fl_ClickToPlayStopSound(evt:MouseEvent):void
{
	if(fl_ToPlay)
	{
		var s:Sound = new Sound(new URLRequest("http://www.helpexamples.com/flash/sound/song1.mp3"));
		fl_SC = s.play();
	}
	else
	{
		fl_SC.stop();
	}
	fl_ToPlay = !fl_ToPlay;
}
]]></code>
	</snippet>

	<snippet isBranch="false">
	  <title>Clique para parar todos os sons</title>
	  <description>Clicar no objeto para todos os sons em reprodução no momento.</description>
	  <requiresSymbol>true</requiresSymbol>
	  <placeholders>
		<placeholder
			type="stageInstance"
			text="instance_name_here" />
	  </placeholders>
	  <minASVersion>3</minASVersion>
	  <ADOBE_PIP_ID>Click_to_Stop_All_Sounds</ADOBE_PIP_ID>
	  <code><![CDATA[
/* Clique para parar todos os sons
Clicar na instância do objeto para todos os sons atualmente em reprodução.
*/

instance_name_here.addEventListener(MouseEvent.CLICK, fl_ClickToStopAllSounds);

function fl_ClickToStopAllSounds(event:MouseEvent):void
{
	SoundMixer.stopAll();
}
]]></code>
	</snippet>

	<snippet isBranch="false">
	  <title>Evento ativado de ponto de sinalização</title>
	  <description>Atribui uma função a ser executada toda vez que se passa por um ponto de sinalização (qualquer momento significativo em um clipe de vídeo) no vídeo selecionado.</description>
	  <requiresSymbol>true</requiresSymbol>
	  <placeholders>
		<placeholder
			type="stageInstance"
			subType="FLVPlayback"
			text="instance_name_here" />
	  </placeholders>
	  <minASVersion>3</minASVersion>
	  <ADOBE_PIP_ID>On_Cue_Point_Event</ADOBE_PIP_ID>
	  <code><![CDATA[
/* Manipulador de evento ativado de ponto de sinalização
Executa a função fl_CuePointHandler definida abaixo cada vez que um ponto de sinalização é passado na instância de vídeo especificada.

Instruções:
1. Acrescente seu código personalizado em uma nova linha depois da linha que diz "//Iniciar seu código personalizado" abaixo.
O código será executado quando os pontos de sinalização são atingidos em um vídeo que está sendo reproduzido.
*/

import fl.video.MetadataEvent;

instance_name_here.addEventListener(MetadataEvent.CUE_POINT, fl_CuePointHandler);

function fl_CuePointHandler(event:MetadataEvent):void
{
	// Iniciar seu código personalizado
	// Este snippet de código exibe o nome do ponto de sinalização no painel Saída
	trace(event.info.name);
	// Encerrar seu código personalizado
}
]]></code>
	</snippet>

	<snippet isBranch="false">
	  <title>Clique para reproduzir vídeo</title>
	  <description>Clicar no objeto especificado reproduz um vídeo dentro de um componente FLVPlayback.</description>
	  <placeholders>
		<placeholder
			type="stageInstance"
			text="instance_name_here" />
		<placeholder
			type="stageInstance"
			subType="FLVPlayback"
			text="video_instance_name" />
	  </placeholders>
	  <requiresSymbol>true</requiresSymbol>
	  <minASVersion>3</minASVersion>
	  <ADOBE_PIP_ID>Click_to_Play_Video</ADOBE_PIP_ID>
	  <code><![CDATA[
/* Clique para reproduzir o vídeo (exige o componente FLVPlayback)
Clicar na instância do símbolo reproduz um vídeo na instância do componente FLVPlayback especificado.

Instruções:
1. Substitua nome_instancia_video abaixo pelo nome da instância do componente FLVPlayback em que você deseja reproduzir o vídeo.
   A instância especificada do componente de vídeo FLVPlayback no palco será reproduzida.
2. Certifique-se de atribuir um arquivo de origem de vídeo nas propriedades da instância do componente FLVPlayback.
*/

instance_name_here.addEventListener(MouseEvent.CLICK, fl_ClickToPlayVideo);

function fl_ClickToPlayVideo(event:MouseEvent):void
{
	// Substitua o nome_instancia_video_ pelo nome da instância do componente de vídeo
	video_instance_name.play();
}
]]></code>
	</snippet>

	<snippet isBranch="false">
	  <title>Clique para pausar o vídeo</title>
	  <description>Clicar no objeto especificado pausa o vídeo em um componente FLVPlayback.</description>
	  <requiresSymbol>true</requiresSymbol>
	  <placeholders>
		<placeholder
			type="stageInstance"
			text="instance_name_here" />
		<placeholder
			type="stageInstance"
			subType="FLVPlayback"
			text="video_instance_name" />
	  </placeholders>
	  <minASVersion>3</minASVersion>
	  <ADOBE_PIP_ID>Click_to_Pause_Video</ADOBE_PIP_ID>
	  <code><![CDATA[
/* Clique para pausar o vídeo (exige o componente FLVPlayback)
Clicar na instância do símbolo pausa o vídeo na instância do componente FLVPlayback especificado.

Instruções:
1. Substitua nome_instancia_video abaixo pelo nome da instância do componente FLVPlayback que você deseja pausar.
*/

instance_name_here.addEventListener(MouseEvent.CLICK, fl_ClickToPauseVideo);

function fl_ClickToPauseVideo(event:MouseEvent):void
{
	// Substitua o nome_instancia_video_ pelo nome da instância do componente de vídeo
	video_instance_name.pause();
}
]]></code>
	</snippet>

	<snippet isBranch="false">
	  <title>Clique para rebobinar o vídeo</title>
	  <description>Clicar no objeto especificado retrocede o vídeo em um componente FLVPlayback.</description>
	  <requiresSymbol>true</requiresSymbol>
	  <placeholders>
		<placeholder
			type="stageInstance"
			text="instance_name_here" />
		<placeholder
			type="stageInstance"
			subType="FLVPlayback"
			text="video_instance_name" />
	  </placeholders>
	  <minASVersion>3</minASVersion>
	  <ADOBE_PIP_ID>Click_to_Rewind_Video</ADOBE_PIP_ID>
	  <code><![CDATA[
/* Clique para rebobinar o vídeo (exige o componente FLVPlayback)
Clicar na instância do símbolo rebobina o vídeo na instância do componente FLVPlayback especificado.

Instruções:
1. Substitua nome_instancia_video abaixo pelo nome da instância do componente FLVPlayback que você deseja rebobinar.
*/

instance_name_here.addEventListener(MouseEvent.CLICK, fl_ClickToPauseVideo);

function fl_ClickToPauseVideo(event:MouseEvent):void
{
	// Substitua o nome_instancia_video_ pelo nome da instância do componente de vídeo
	video_instance_name.seek(0);
}
]]></code>
	</snippet>

	<snippet isBranch="false">
	  <title>Clique para definir origem do vídeo</title>
	  <description>Clicar no objeto especificado substitui o vídeo em um componente FLVPlayback.</description>
	  <requiresSymbol>true</requiresSymbol>
	  <placeholders>
		<placeholder
			type="stageInstance"
			text="instance_name_here" />
		<placeholder
			type="stageInstance"
			subType="FLVPlayback"
			text="video_instance_name" />
		<placeholder
			type="editableText"
			text="http://www.helpexamples.com/flash/video/water.flv" />
	  </placeholders>
	  <minASVersion>3</minASVersion>
	  <ADOBE_PIP_ID>Click_to_Set_Video_Source</ADOBE_PIP_ID>
	  <code><![CDATA[
/* Clique para definir a origem do vídeo (exige FLVPlayback)
Clicar na instância do símbolo especificada reproduz um novo arquivo de vídeo na instância do componente FLVPlayback especificado. A instância do componente FLVPlayback especificada será pausada.

Instruções:
1. Substitua nome_instancia_video abaixo pelo nome da instância do componente FLVPlayback em que você deseja reproduzir o novo arquivo de vídeo.
2. Substitua "http://www.helpexamples.com/flash/video/water.flv" abaixo pelo URL do novo arquivo de vídeo que você deseja reproduzir. Mantenha as aspas ("").
*/

instance_name_here.addEventListener(MouseEvent.CLICK, fl_ClickToSetSource);

function fl_ClickToSetSource(event:MouseEvent):void
{
	video_instance_name.source = "http://www.helpexamples.com/flash/video/water.flv";
}
]]></code>
	</snippet>

	<snippet isBranch="false">
	  <title>Clique para buscar ponto de sinalização</title>
	  <description>Clicar no objeto especificado busca um ponto de sinalização do vídeo em um componente FLVPlayback.</description>
	  <requiresSymbol>true</requiresSymbol>
	  <placeholders>
		<placeholder
			type="stageInstance"
			text="instance_name_here" />
		<placeholder
			type="stageInstance"
			subType="FLVPlayback"
			text="video_instance_name" />
		<placeholder
			type="editableText"
			text="Pontos de sinalização 1" />
	  </placeholders>
	  <minASVersion>3</minASVersion>
	  <ADOBE_PIP_ID>Click_to_Seek_to_Cue_Point</ADOBE_PIP_ID>
	  <code><![CDATA[
/* Clique para buscar ponto de sinalização (exige o componente FLVPlayback)
Clicar na instância do símbolo especificada busca um ponto de sinalização do vídeo na instância do componente FLVPlayback especificado.

Instruções:
1. Substitua nome_instancia_video abaixo pelo nome da instância do componente FLVPlayback que você deseja buscar.
2. Substitua o "Cue Point 1" abaixo pelo nome do ponto a ser buscado. Mantenha as aspas ("").
*/

instance_name_here.addEventListener(MouseEvent.CLICK, fl_ClickToSeekToCuePoint);

function fl_ClickToSeekToCuePoint(event:MouseEvent):void
{
	// Substitua o nome_instancia_video_ pelo nome da instância do componente de vídeo.
	// Substitua o "Cue Point 1"  pelo nome do ponto a ser buscado.
	var cuePointInstance:Object = video_instance_name.findCuePoint("Pontos de sinalização 1");
	video_instance_name.seek(cuePointInstance.time);
}
]]></code>
	</snippet>

	<snippet isBranch="false">
	  <title>Criar um vídeo NetStream</title>
	  <description>Começa a reproduzir um arquivo de vídeo sem usar o componente FLVPlayback.</description>
	  <requiresSymbol>false</requiresSymbol>
	  <placeholders>
		<placeholder
			type="editableText"
			text="http://www.helpexamples.com/flash/video/water.flv" />
	  </placeholders>
	  <minASVersion>3</minASVersion>
	  <ADOBE_PIP_ID>Create_a_NetStream_Video</ADOBE_PIP_ID>
	  <code><![CDATA[
/* Criar um vídeo NetStream
Exibe um vídeo no palco sem usar o componente de vídeo FLVPlayback.

Instruções:

1. Se você estiver se conectando a um arquivo de vídeo que está em um servidor de streaming, como o Adobe Flash Media Server 2, substitua "null" abaixo pelo endereço URL do arquivo de vídeo. Coloque aspas ("") antes e depois do endereço URL.
2. Se você estiver se conectando a um arquivo de vídeo local ou a um arquivo que não esteja usando um servidor de streaming, deixe "null" no local abaixo.
3. Substitua "http://www.helpexamples.com/flash/video/water.flv" pelo URL do vídeo que você deseja reproduzir. Mantenha as aspas ("").
*/

var fl_NC:NetConnection = new NetConnection();
fl_NC.connect(null);    // inicia uma conexão: é usado "null", a menos que você esteja usando o Flash Media Server

var fl_NS:NetStream = new NetStream(fl_NC);
fl_NS.client = {};

var fl_Vid:Video = new Video();
fl_Vid.attachNetStream(fl_NS);
addChild(fl_Vid);

fl_NS.play("http://www.helpexamples.com/flash/video/water.flv");
]]></code>
	</snippet>
	</category>

	<category title="Manipuladores de evento"
	    isBranch="true"
	    description="Código para manipular a entrada básica de usuário">
	<snippet isBranch="false">
	  <title>Evento de clique de mouse</title>
	  <description>Clicar no objeto especificado executa uma função que contém seu código personalizado.</description>
	  <requiresSymbol>true</requiresSymbol>
	  <placeholders>
		<placeholder
			type="stageInstance"
			text="instance_name_here" />
	  </placeholders>
	  <minASVersion>3</minASVersion>
	  <ADOBE_PIP_ID>Mouse_Click_Event</ADOBE_PIP_ID>
	  <code><![CDATA[
/* Evento de clique de mouse
Clicar na instância do símbolo especificada executa uma função na qual você pode acrescentar seu próprio código personalizado.

Instruções:
1. Acrescente seu código personalizado em uma nova linha depois da linha que diz "//Iniciar seu código personalizado" abaixo.
O código será executado quando se clica na instância do símbolo. 
*/

instance_name_here.addEventListener(MouseEvent.CLICK, fl_MouseClickHandler);

function fl_MouseClickHandler(event:MouseEvent):void
{
	// Iniciar seu código personalizado
	// Este exemplo exibe as palavras "Mouse clicado" no painel Saída.
	trace("Mouse clicado");
	// Encerrar seu código personalizado
}
]]></code>
	</snippet>

 	<snippet isBranch="false">
	  <title>Evento de passar o mouse</title>
	  <description>Passar o mouse sobre o objeto especificado executa uma função que contém seu código personalizado.</description>
	  <requiresSymbol>true</requiresSymbol>
	  <placeholders>
		<placeholder
			type="stageInstance"
			text="instance_name_here" />
	  </placeholders>
	  <minASVersion>3</minASVersion>
	  <ADOBE_PIP_ID>Mouse_Over_Event</ADOBE_PIP_ID>
	  <code><![CDATA[
/* Evento de passar o mouse
Passar o mouse sobre a instância do símbolo executa uma função na qual você pode acrescentar seu próprio código personalizado.

Instruções:
1. Acrescente seu código personalizado em uma nova linha depois da linha que diz "//Iniciar seu código personalizado" abaixo.
O código será executado quando o mouse for passado na ocorrência do símbolo.
*/

instance_name_here.addEventListener(MouseEvent.MOUSE_OVER, fl_MouseOverHandler);

function fl_MouseOverHandler(event:MouseEvent):void
{
	// Iniciar seu código personalizado
	// Este exemplo exibe as palavras "Mouse sobre" no painel Saída.
	trace("Mouse passado sobre");
	// Encerrar seu código personalizado
}
]]></code>
	</snippet>

	<snippet isBranch="false">
	  <title>Evento de retirar o mouse</title>
	  <description>Retirar o mouse do objeto executa uma função que contém seu código personalizado.</description>
	  <requiresSymbol>true</requiresSymbol>
	  <placeholders>
		<placeholder
			type="stageInstance"
			text="instance_name_here" />
	  </placeholders>
	  <minASVersion>3</minASVersion>
	  <ADOBE_PIP_ID>Mouse_Out_Event</ADOBE_PIP_ID>
	  <code><![CDATA[
/* Evento de retirar o mouse
Retirar o mouse da instância do símbolo executa uma função na qual você pode acrescentar seu próprio código personalizado.

Instruções:
1. Acrescente seu código personalizado em uma nova linha depois da linha que diz "//Iniciar seu código personalizado" abaixo.
O código será executado quando o mouse for retirado da ocorrência do símbolo. 
*/

instance_name_here.addEventListener(MouseEvent.MOUSE_OUT, fl_MouseOutHandler);

function fl_MouseOutHandler(event:MouseEvent):void
{
	// Iniciar seu código personalizado
	// Este exemplo exibe as palavras "Mouse retirado de" no painel Saída.
	trace("Mouse retirado de");
	// Encerrar seu código personalizado
}
]]></code>
	</snippet>

	<snippet isBranch="false">
	  <title>Evento de pressionamento de tecla</title>
	  <description>Atribui uma função a ser executada todas as vezes que se pressiona uma tecla.</description>
	  <minASVersion>3</minASVersion>
	  <ADOBE_PIP_ID>Key_Pressed_Event</ADOBE_PIP_ID>
	  <code><![CDATA[
/* Evento de tecla pressionada
Executa a função fl_KeyboardDownHandler definida abaixo quando qualquer tecla é pressionada no teclado.

Instruções:
1. Acrescente seu código personalizado em uma nova linha depois da linha que diz "//Iniciar seu código personalizado" abaixo.
O código será executado quando qualquer tecla for pressionada.
*/

stage.addEventListener(KeyboardEvent.KEY_DOWN, fl_KeyboardDownHandler);

function fl_KeyboardDownHandler(event:KeyboardEvent):void
{
	// Iniciar seu código personalizado
	// Este código de exemplo exibe as palavras "Código da tecla pressionado:" e o código da tecla pressionada no painel Saída.
	trace("Código da tecla pressionada: " + event.keyCode);
	// Encerrar seu código personalizado
}
]]></code>
	</snippet>

	<snippet isBranch="false">
	  <title>Inserir evento de quadro</title>
	  <description>Atribui uma função a ser executada todas as vezes que o indicador de reprodução se move para um novo quadro.</description>
	  <minASVersion>3</minASVersion>
	  <ADOBE_PIP_ID>Enter_Frame_Event</ADOBE_PIP_ID>
	  <code><![CDATA[
/* Inserir evento de quadro
Executa a função fl_EnterFrameHandler definida abaixo todas as vezes que o indicador de reprodução se move para um novo quadro na linha de tempo.

Instruções:
1. Acrescente seu código personalizado em uma nova linha depois da linha que diz "//Iniciar seu código personalizado" abaixo.
O código será executado quando o indicador de reprodução se mover para um novo quadro na linha de tempo.
*/

addEventListener(Event.ENTER_FRAME, fl_EnterFrameHandler);

function fl_EnterFrameHandler(event:Event):void
{
	//Iniciar seu código personalizado
	// Este código de exemplo exibe as palavras "Quadro inserido" no painel Saída.
	trace("Quadro inserido");
	// Encerrar seu código personalizado
}
]]></code>
	</snippet>
	</category>
	<category title="Eventos de toque móvel"
	  	isBranch="true"
	  	expanded="false"
	  	description="Código para lidar com a entrada por toque em dispositivos móveis">
    <snippet isBranch="false">
      <title>Evento de toque</title>
      <description>Tocar no objeto especificado executa uma função que contém seu código personalizado.</description>
      <requiresSymbol>true</requiresSymbol>
	  <placeholders>
		<placeholder
			type="stageInstance"
			text="instance_name_here" />
	  </placeholders>
      <minASVersion>3</minASVersion>
      <ADOBE_PIP_ID>Tap_Event</ADOBE_PIP_ID>
      <code><![CDATA[
/* Evento de toque
Tocar na instância do símbolo executa uma função na qual você pode acrescentar seu próprio código personalizado.

Instruções:
1. Adicione seu código personalizado em uma nova linha após a linha que diz "// Iniciar seu código personalizado", abaixo.
O código será executado quando você tocar na instância do símbolo.
*/

Multitouch.inputMode = MultitouchInputMode.TOUCH_POINT;

instance_name_here.addEventListener(TouchEvent.TOUCH_TAP, fl_TapHandler);

function fl_TapHandler(event:TouchEvent):void
{
	// Iniciar seu código personalizado
	// Este exemplo de código reduz a transparência do objeto pela metade a cada evento de toque
	instance_name_here.alpha *= 0.5;
	// Encerrar seu código personalizado
}
]]></code>
    </snippet>
    <snippet isBranch="false">
      <title>Evento de toque e arrasto</title>
      <description>Permite que o objeto especificado seja movido com o recurso de segurar e arrastar.</description>
      <requiresSymbol>true</requiresSymbol>
	  <placeholders>
		<placeholder
			type="stageInstance"
			text="instance_name_here" />
	  </placeholders>
      <minASVersion>3</minASVersion>
      <ADOBE_PIP_ID>Touch_and_Drag_Event</ADOBE_PIP_ID>
      <code><![CDATA[
/* Evento de toque e arrasto
Permite que o objeto seja movido com o recurso de segurar e arrastar.
*/

Multitouch.inputMode = MultitouchInputMode.TOUCH_POINT;

instance_name_here.addEventListener(TouchEvent.TOUCH_BEGIN, fl_TouchBeginHandler);
instance_name_here.addEventListener(TouchEvent.TOUCH_END, fl_TouchEndHandler);

var fl_DragBounds:Rectangle = new Rectangle(0, 0, stage.stageWidth, stage.stageHeight);

function fl_TouchBeginHandler(event:TouchEvent):void
{
	event.target.startTouchDrag(event.touchPointID, false, fl_DragBounds);
}

function fl_TouchEndHandler(event:TouchEvent):void
{
	event.target.stopTouchDrag(event.touchPointID);
}
]]></code>
    </snippet>
    <snippet isBranch="false">
      <title>Evento de pressionamento longo</title>
      <description>Pressionar o objeto especificado por um segundo executa uma função que contém seu código personalizado. Esta ação pode ser usado para exibir um menu para o objeto.</description>
      <requiresSymbol>true</requiresSymbol>
	  <placeholders>
		<placeholder
			type="stageInstance"
			text="instance_name_here" />
	  </placeholders>
      <minASVersion>3</minASVersion>
      <ADOBE_PIP_ID>Long_Press_Event</ADOBE_PIP_ID>
      <code><![CDATA[
/* Pressionamento longo
Pressionar o objeto por um segundo executa uma função que contém seu código personalizado. Você pode usar esta ação para exibir um menu de contexto para o objeto.

Instruções:
1. Adicione seu código personalizado em uma nova linha após as linhas que dizem "// Iniciar seu código personalizado", abaixo.
*/

var fl_PressTimer:Timer = new Timer(1000);
fl_PressTimer.addEventListener(TimerEvent.TIMER, fl_PressTimerHandler);

function fl_PressTimerHandler(event:TimerEvent):void
{
	// Iniciar seu código personalizado
	// Este exemplo de código duplica o tamanho do objeto
	instance_name_here.scaleX = 2;
	instance_name_here.scaleY = 2;
	// Encerrar seu código personalizado
}

Multitouch.inputMode = MultitouchInputMode.TOUCH_POINT;

instance_name_here.addEventListener(TouchEvent.TOUCH_BEGIN, fl_PressBeginHandler);
instance_name_here.addEventListener(TouchEvent.TOUCH_END, fl_PressEndHandler);
instance_name_here.addEventListener(TouchEvent.TOUCH_OUT, fl_PressEndHandler);
instance_name_here.addEventListener(TouchEvent.TOUCH_ROLL_OUT, fl_PressEndHandler);

function fl_PressBeginHandler(event:TouchEvent):void
{
	fl_PressTimer.start();
}

function fl_PressEndHandler(event:TouchEvent):void
{
	fl_PressTimer.stop();
	// Iniciar seu código personalizado
	// Este exemplo de código redefine o objeto para seu tamanho original
	instance_name_here.scaleX = 1;
	instance_name_here.scaleY = 1;
	// Encerrar seu código personalizado
}
]]></code>
    </snippet>
    </category>
   	<category title="Eventos de gestos no dispositivo móvel"
	  	isBranch="true"
	  	expanded="false"
	  	description="Código para lidar com a entrada por gestos em dispositivos móveis">
	<snippet isBranch="false">
      <title>Evento de toque com dois dedos</title>
      <description>Tocar no palco com dois dedos executa uma função que contém o código personalizado.</description>
      <requiresSymbol>true</requiresSymbol>
	  <placeholders>
		<placeholder
			type="stageInstance"
			text="instance_name_here" />
	  </placeholders>
      <minASVersion>3</minASVersion>
      <ADOBE_PIP_ID>Two_Finger_Tap_Event</ADOBE_PIP_ID>
      <code><![CDATA[
/* Evento de toque com dois dedos
Tocar no palco com dois dedos executa uma função na qual você pode adicionar seu próprio código personalizado.

Instruções:
1. Adicione seu código personalizado em uma nova linha após a linha que diz "// Iniciar seu código personalizado", abaixo.
O código será executado quando você tocar com dois dedos no palco.
*/

Multitouch.inputMode = MultitouchInputMode.GESTURE;

stage.addEventListener(GestureEvent.GESTURE_TWO_FINGER_TAP, fl_TwoFingerTapHandler);

function fl_TwoFingerTapHandler(event:GestureEvent):void
{
	// Iniciar seu código personalizado
	// Este exemplo de código aplica mais zoom ao objeto a cada evento de toque com dois dedos
	// O objeto deve ser um plano de fundo do tamanho do palco
	instance_name_here.scaleX *= 2;
	instance_name_here.scaleY *= 2;
	// Encerrar seu código personalizado
}
]]></code>
    </snippet>
	<snippet isBranch="false">
      <title>Evento de beliscão para aplicar zoom</title>
      <description>Beliscar o palco aplicará mais zoom ao objeto selecionado.</description>
      <requiresSymbol>true</requiresSymbol>
	  <placeholders>
		<placeholder
			type="stageInstance"
			text="instance_name_here" />
	  </placeholders>
      <minASVersion>3</minASVersion>
      <ADOBE_PIP_ID>Pinch_to_Zoom_Event</ADOBE_PIP_ID>
      <code><![CDATA[
/* Evento de beliscão para aplicar zoom
Beliscar o palco aplicará mais zoom ao objeto selecionado.

Instruções:
1. Os pontos de registro e de transformação do símbolo devem estar no centro.
2. O símbolo deve ser o plano de fundo do seu aplicativo e ter o tamanho do palco.
*/

Multitouch.inputMode = MultitouchInputMode.GESTURE;

stage.addEventListener(TransformGestureEvent.GESTURE_ZOOM, fl_ZoomHandler);

function fl_ZoomHandler(event:TransformGestureEvent):void
{
	instance_name_here.scaleX *= event.scaleX;
	instance_name_here.scaleY *= event.scaleY;
}
]]></code>
    </snippet>
    <snippet isBranch="false">
      <title>Evento de panorâmica</title>
      <description>Cria uma panorâmica do objeto selecionado no palco. Normalmente, o objeto ao qual aplicar a panorâmica é maior do que a área exibida.</description>
      <requiresSymbol>true</requiresSymbol>
	  <placeholders>
		<placeholder
			type="stageInstance"
			text="instance_name_here" />
	  </placeholders>
      <minASVersion>3</minASVersion>
      <ADOBE_PIP_ID>Pan_Event</ADOBE_PIP_ID>
      <code><![CDATA[
/* Evento de panorâmica
Cria uma panorâmica do objeto selecionado no palco. Normalmente, o objeto ao qual aplicar a panorâmica é maior do que a área exibida.

Instruções:
1. Para aplicar uma panorâmica em todos os objetos no palco, coloque os objetos em um clipe de filme com um único recipiente e aplique este snippet ao clipe de filme.
*/

Multitouch.inputMode = MultitouchInputMode.GESTURE;

instance_name_here.addEventListener(TransformGestureEvent.GESTURE_PAN, fl_PanHandler);

function fl_PanHandler(event:TransformGestureEvent):void
{
	event.currentTarget.x += event.offsetX;
	event.currentTarget.y += event.offsetY;
}
]]></code>
    </snippet>
	<snippet isBranch="false">
      <title>Evento de rotação</title>
      <description>Gira o objeto selecionado, geralmente movendo dois dedos no sentido horário ou anti-horário.</description>
      <requiresSymbol>true</requiresSymbol>
	  <placeholders>
		<placeholder
			type="stageInstance"
			text="instance_name_here" />
	  </placeholders>
      <minASVersion>3</minASVersion>
      <ADOBE_PIP_ID>Rotate_Event</ADOBE_PIP_ID>
      <code><![CDATA[
/* Evento de rotação
Gira o objeto selecionado, geralmente movendo dois dedos no sentido horário ou anti-horário.

Instruções:
1. Os pontos de transformação e de registro do símbolo devem estar no centro.
*/

Multitouch.inputMode = MultitouchInputMode.GESTURE;

instance_name_here.addEventListener(TransformGestureEvent.GESTURE_ROTATE, fl_RotateHandler);

function fl_RotateHandler(event:TransformGestureEvent):void
{
	event.target.rotation += event.rotation;
}
]]></code>
    </snippet>
	<snippet isBranch="false">
      <title>Evento de varredura</title>
      <description>Varrer o palco executa uma função que contém seu código personalizado. Este evento pode ser usado para rolar pelo texto em um TextField ou para alterar estados em seu aplicativo.</description>
      <requiresSymbol>true</requiresSymbol>
	  <placeholders>
		<placeholder
			type="stageInstance"
			text="instance_name_here" />
		<placeholder
			type="hotTextNumber"
			text="20"
			min="1"
			max="100" />
	  </placeholders>
      <minASVersion>3</minASVersion>
      <ADOBE_PIP_ID>Swipe_Event</ADOBE_PIP_ID>
      <code><![CDATA[
/* Evento de varredura
Varrer o palco executa uma função que contém seu código personalizado. Você pode usar este evento para rolar pelo texto em um TextField ou alterar estados em seu aplicativo.

Instruções:
1. Adicione seu código personalizado em uma nova linha após as linhas que dizem "// Iniciar seu código personalizado", abaixo.
*/

Multitouch.inputMode = MultitouchInputMode.GESTURE;

stage.addEventListener (TransformGestureEvent.GESTURE_SWIPE, fl_SwipeHandler);

function fl_SwipeHandler(event:TransformGestureEvent):void
{
	switch(event.offsetX)
	{
		// varrido para a direita
		case 1:
		{
			// Iniciar seu código personalizado
			// Este exemplo de código move o objeto selecionado 20 pixels para a direita.
			instance_name_here.x += 20;
			// Encerrar seu código personalizado
			break;
		}
		// varrido para a esquerda
		case -1:
		{
			// Iniciar seu código personalizado
			// Este exemplo de código move o objeto selecionado 20 pixels para a esquerda.
			instance_name_here.x -= 20;
			// Encerrar seu código personalizado
			break;
		}
	}

	switch(event.offsetY)
	{
		// varrido para baixo
		case 1:
		{
			// Iniciar seu código personalizado
			// Este exemplo de código move o objeto selecionado 20 pixels para baixo.
			instance_name_here.y += 20;
			// Encerrar seu código personalizado
			break;
		}
		// varrido para cima
		case -1:
		{
			// Iniciar seu código personalizado
			// Este exemplo de código move o objeto selecionado 20 pixels para cima.
			instance_name_here.y -= 20;
			// Encerrar seu código personalizado
			break;
		}
	}
}
]]></code>
    </snippet>
  </category>
    <category title="Ações de dispositivos móveis"
    			isBranch="true"
    			expanded="false"
    			description="Código para interações comuns em dispositivos móveis">
    <snippet isBranch="false">
      <title>Varrer para ir até o próximo quadro/quadro anterior e parar</title>
      <description>Varrer o palco move o indicador de reprodução para o quadro seguinte/anterior na Linha de tempo e para o indicador de reprodução.</description>
      <requiresSymbol>false</requiresSymbol>
      <minASVersion>3</minASVersion>
      <ADOBE_PIP_ID>Swipe_to_Go_to_Next_Previous_Frame_and_Stop</ADOBE_PIP_ID>
      <code><![CDATA[
/* Varrer para ir até o próximo quadro/quadro anterior e parar
Varrer o palco move o indicador de reprodução para o próximo quadro/quadro anterior e para o filme.
*/

Multitouch.inputMode = MultitouchInputMode.GESTURE;

stage.addEventListener (TransformGestureEvent.GESTURE_SWIPE, fl_SwipeToGoToNextPreviousFrame);

function fl_SwipeToGoToNextPreviousFrame(event:TransformGestureEvent):void
{
	if(event.offsetX == 1)
	{
		// varrido para a direita
		prevFrame();
	}
	else if(event.offsetX == -1)
	{
		// varrido para a esquerda
		nextFrame();
	}
}
]]></code>
    </snippet>
    <snippet isBranch="false">
      <title>Varrer para ir até a próxima cena/cena anterior e parar</title>
      <description>Varrer o palco move o indicador de reprodução para a cena seguinte/anterior na Linha do tempo e continua a reprodução nessa cena.</description>
      <requiresSymbol>false</requiresSymbol>
      <minASVersion>3</minASVersion>
      <ADOBE_PIP_ID>Swipe_to_Go_to_Next_Previous_Scene_and_Play</ADOBE_PIP_ID>
      <code><![CDATA[
/* Varrer para ir até a próxima cena/cena anterior e parar
Varrer o palco move o indicador de reprodução para a próxima cena/cena anterior na linha do tempo e continua a reprodução nessa cena.
*/

Multitouch.inputMode = MultitouchInputMode.GESTURE;

stage.addEventListener (TransformGestureEvent.GESTURE_SWIPE, fl_SwipeToGoToNextPreviousScene);

function fl_SwipeToGoToNextPreviousScene(event:TransformGestureEvent):void
{
	if(event.offsetX == 1)
	{
		// varrido para a direita
		prevScene();
	}
	else if(event.offsetX == -1)
	{
		// varrido para a esquerda
		nextScene();
	}
}
]]></code>
    </snippet>
    <snippet isBranch="false">
      <title>Mover com o acelerômetro</title>
      <description>Permite que o objeto seja movido por meio da inclinação do dispositivo móvel.</description>
      <requiresSymbol>true</requiresSymbol>
	  <placeholders>
		<placeholder
			type="stageInstance"
			text="instance_name_here" />
		<placeholder
			type="hotTextNumber"
			text="30"
			min="1"
			max="100" />
	  </placeholders>
      <minASVersion>3</minASVersion>
      <ADOBE_PIP_ID>Move_with_Accelerometer</ADOBE_PIP_ID>
      <code><![CDATA[
/* Mover com o acelerômetro
Permite que o objeto seja movido por meio da inclinação do dispositivo móvel.

Instruções:
1. Para aumentar ou diminuir a quantidade de movimento, substitua o número 30 abaixo pelo número de pixels que você deseja que a instância de símbolo se mova quando o dispositivo móvel é inclinado.
Observe que o número 30 aparece duas vezes no código abaixo.
*/

var fl_Accelerometer:Accelerometer = new Accelerometer();
fl_Accelerometer.addEventListener(AccelerometerEvent.UPDATE, fl_AccelerometerUpdateHandler);

function fl_AccelerometerUpdateHandler(event:AccelerometerEvent):void
{
	instance_name_here.x -= event.accelerationX*30;
	instance_name_here.y += event.accelerationY*30;
}
]]></code>
    </snippet>
	<snippet isBranch="false">
      <title>Evento Desativar/Ativar</title>
      <description>Conserve a CPU suspendendo o aplicativo quando ocorrer um evento Deactivate e retomando-o mediante um evento Activate.</description>
      <requiresSymbol>false</requiresSymbol>
      <minASVersion>3</minASVersion>
      <ADOBE_PIP_ID>Conserve_CPU_on_Deactivate_Activate</ADOBE_PIP_ID>
      <code><![CDATA[
/* Evento Desativar/Ativar
Prolongue a vida útil da CPU e da bateria suspendendo processos dispendiosos, como eventos ENTER_FRAME e TIMER, quando o aplicativo não tiver o foco.

Instruções:
1. Inicie timers e adicione ouvintes de eventos a "fl_Activate".
2. Pare os timers e remova os ouvintes de eventos em "fl_Deactivate".
*/

stage.addEventListener(Event.ACTIVATE, fl_Activate);
stage.addEventListener(Event.DEACTIVATE, fl_Deactivate);

function fl_Activate(event:Event):void
{
	// Iniciar timers e adicionar ouvintes de eventos aqui.
}

function fl_Deactivate(event:Event):void
{
	// Parar timers e remover ouvintes de eventos aqui.
}
]]></code>
    </snippet>
    <snippet isBranch="false">
	  <title>Evento de pressionamento de tecla de menu</title>
	  <description>Executa seu código quando a tecla Menu do dispositivo é pressionada.</description>
	  <minASVersion>3</minASVersion>
	  <ADOBE_PIP_ID>Menu_Key_Pressed_Event</ADOBE_PIP_ID>
	  <code><![CDATA[
/* Evento de pressionamento de tecla de menu
Executa seu código quando a tecla Menu do dispositivo é pressionada, o que é útil para a exibição de um menu de opções.
Consulte o exemplo de menu Opções entre os modelos.

Instruções:
1. Adicione seu código para exibir um menu de opções depois da linha que diz "// Iniciar o código personalizado" a seguir.
2. Remova o exemplo de código que exibe um retângulo cinza.
*/

stage.addEventListener(KeyboardEvent.KEY_UP, fl_OptionsMenuHandler);

function fl_OptionsMenuHandler(event:KeyboardEvent):void
{
	if( (event.keyCode == 95) || (event.keyCode == Keyboard.MENU) )
	{
		// Iniciar seu código personalizado
		// Este exemplo de código exibe um retângulo cinza.
		var grayRectangle:Sprite = new Sprite();
		grayRectangle.graphics.lineStyle(3, 0x888888, 0.95);
		grayRectangle.graphics.beginFill(0xececec, 0.95);
		grayRectangle.graphics.drawRect(1, stage.stageHeight - 100, stage.stageWidth-3, 100);
		grayRectangle.graphics.endFill();
		addChild(grayRectangle);
		// Encerrar seu código personalizado
	}
}
]]></code>
	</snippet>
  </category>
  <category title="AIR para dispositivos móveis"
	  			isBranch="true"
	  			expanded="false"
	  			description="Código para ações comuns em dispositivos móveis disponíveis via AIR.">
  	<snippet isBranch="false">
      <title>Mostrar localização geográfica</title>
      <description>Mostrar latitude e longitude em um TextField.</description>
      <requiresSymbol>false</requiresSymbol>
      <minASVersion>3</minASVersion>
      <ADOBE_PIP_ID>Show_Geolocation</ADOBE_PIP_ID>
      <code><![CDATA[
/* Mostrar localização geográfica
Mostrar latitude e longitude em um TextField.

Instruções:
1. Habilitar as permissões "ACCESS_FINE_LOCATION" e "ACCESS_COARSE_LOCATION" em Arquivo -> Configurações do AIR for Android.
*/

var fl_GeolocationDisplay:TextField = new TextField();
fl_GeolocationDisplay.autoSize = TextFieldAutoSize.LEFT;
fl_GeolocationDisplay.text = "O Geolocation não está respondendo. Verifique as configurações de local do dispositivo.";
addChild(fl_GeolocationDisplay);

if(!Geolocation.isSupported)
{
	fl_GeolocationDisplay.text = "Não há suporte a Geolocation neste dispositivo.";
}
else
{
	var fl_Geolocation:Geolocation = new Geolocation();
	fl_Geolocation.setRequestedUpdateInterval(1000);
	fl_Geolocation.addEventListener(GeolocationEvent.UPDATE, fl_UpdateGeolocation);
}

function fl_UpdateGeolocation(event:GeolocationEvent):void
{
	fl_GeolocationDisplay.text = "latitude: ";
	fl_GeolocationDisplay.appendText(event.latitude.toString() + "\n");
	fl_GeolocationDisplay.appendText("longitude: ");
	fl_GeolocationDisplay.appendText(event.longitude.toString() + "\n");
	fl_GeolocationDisplay.appendText("altitude: ");
	fl_GeolocationDisplay.appendText(event.altitude.toString() + "\n");
}
]]></code>
    </snippet>
	<snippet isBranch="false">
      <title>Reorientar o objeto quando o dispositivo é girado</title>
      <description>Reoriente o objeto especificado quando o dispositivo for girado.</description>
      <requiresSymbol>true</requiresSymbol>
	  <placeholders>
		<placeholder
			type="stageInstance"
			text="instance_name_here" />
	  </placeholders>
      <minASVersion>3</minASVersion>
      <ADOBE_PIP_ID>ReOrient_Objects_on_Device_Rotation</ADOBE_PIP_ID>
      <code><![CDATA[
/* Reorientar o objeto quando o dispositivo é girado
Reorientar objeto(s) quando o dispositivo é girado.
Objetos específicos podem ser orientados diferentemente do resto do aplicativo.
Isso pode ser usado para manter um objeto na mesma rotação ou girá-lo de modo independente do aplicativo.

Instruções:
1. Ligue a opção "Orientação automática" em Arquivo -> Configurações do AIR for Android.
*/

var fl_initialRotation = instance_name_here.rotation;	// Salvar o valor de rotação inicial

stage.addEventListener(StageOrientationEvent.ORIENTATION_CHANGE, fl_OrientationChange);

function fl_OrientationChange(event:StageOrientationEvent):void
{
	switch (stage.deviceOrientation)
	{
		case StageOrientation.DEFAULT:
		{
			// Reorientar os objetos de exibição na orientação padrão (lado direito para cima).
			instance_name_here.rotation = fl_initialRotation;	// Restaurar o valor de rotação inicial
			break;
		}
		case StageOrientation.ROTATED_RIGHT:
		{
			// Reorientar objetos de exibição com base na orientação à direita.
			instance_name_here.rotation += 90;
			break;
		}
		case StageOrientation.ROTATED_LEFT:
		{
			// Reorientar objetos de exibição com base na orientação à esquerda.
			instance_name_here.rotation -= 90;
			break;
		}
		case StageOrientation.UPSIDE_DOWN:
		{
			// Reorientar objetos de exibição com base na orientação de ponta cabeça.
			instance_name_here.rotation += 180;
			break;
		}
	}
}
]]></code>
    </snippet>
  </category>
  <category title="AIR"
	  			isBranch="true"
	  			expanded="false"
	  			description="Código para aplicativos AIR">
    <snippet isBranch="false">
      <title>Clique para fechar a janela do AIR</title>
      <description>Clique no objeto especificado para sair do aplicativo AIR.</description>
      <requiresSymbol>true</requiresSymbol>
	  <placeholders>
		<placeholder
			type="stageInstance"
			text="instance_name_here" />
	  </placeholders>
      <minASVersion>3</minASVersion>
      <ADOBE_PIP_ID>Click_to_Close_AIR_Window</ADOBE_PIP_ID>
      <code><![CDATA[
/* Clique para fechar a janela do AIR
Clique no objeto especificado para sair do aplicativo AIR.
*/
instance_name_here.addEventListener(MouseEvent.CLICK, fl_CloseWindow);

function fl_CloseWindow(event:Event):void
{
	stage.nativeWindow.close();
}
]]></code>
    </snippet>
    <snippet isBranch="false">
      <title>Clique para minimizar a janela do AIR</title>
      <description>Clique no objeto especificado para minimizar o aplicativo AIR.</description>
      <requiresSymbol>true</requiresSymbol>
	  <placeholders>
		<placeholder
			type="stageInstance"
			text="instance_name_here" />
	  </placeholders>
      <minASVersion>3</minASVersion>
      <ADOBE_PIP_ID>Click_to_Minimize_AIR_Window</ADOBE_PIP_ID>
      <code><![CDATA[
/* Clique para minimizar a janela do AIR
Clique no objeto especificado para minimizar o aplicativo AIR.
*/
instance_name_here.addEventListener(MouseEvent.CLICK, fl_MinimizeWindow);

function fl_MinimizeWindow(event:Event):void
{
	stage.nativeWindow.minimize();
}

]]></code>
    </snippet>
    <snippet isBranch="false">
      <title>Clique para minimizar ou restaurar a janela do AIR</title>
      <description>Clicar no objeto especificado maximiza o aplicativo AIR ou restaura a janela para o seu tamanho anterior se já estiver maximizada.</description>
      <requiresSymbol>true</requiresSymbol>
	  <placeholders>
		<placeholder
			type="stageInstance"
			text="instance_name_here" />
	  </placeholders>
      <minASVersion>3</minASVersion>
      <ADOBE_PIP_ID>Click_to_Maximize_or_Restore_AIR_Window</ADOBE_PIP_ID>
      <code><![CDATA[
/* Clique para minimizar ou restaurar a janela do AIR
Clicar no objeto especificado maximiza o aplicativo AIR ou restaura a janela para o seu tamanho anterior se já estiver maximizada.
*/
instance_name_here.addEventListener(MouseEvent.MOUSE_DOWN, fl_MaximizeWindow);

function fl_MaximizeWindow(event:Event):void
{
	if(stage.nativeWindow.displayState != NativeWindowDisplayState.MAXIMIZED)
	{
		stage.nativeWindow.maximize();
	}
	else
	{
		stage.nativeWindow.restore();
	}
}

]]></code>
    </snippet>
    <snippet isBranch="false">
      <title>Arraste para mover a janela do AIR</title>
      <description>Permite que toda a janela do aplicativo AIR seja movida clicando e arrastando-se o objeto especificado.</description>
      <requiresSymbol>true</requiresSymbol>
	  <placeholders>
		<placeholder
			type="stageInstance"
			text="instance_name_here" />
	  </placeholders>
      <minASVersion>3</minASVersion>
      <ADOBE_PIP_ID>Drag_to_Move_AIR_Window</ADOBE_PIP_ID>
      <code><![CDATA[
/* Arraste para mover a janela do AIR
Permite que toda a janela do aplicativo AIR seja movida clicando e arrastando-se o objeto especificado.

Instruções:
1. Normalmente o símbolo é a barra de título do aplicativo.
*/
instance_name_here.addEventListener(MouseEvent.MOUSE_DOWN, fl_MoveWindow);

function fl_MoveWindow(event:Event):void
{
	stage.nativeWindow.startMove();
}
]]></code>
    </snippet>
    <snippet isBranch="false">
      <title>Clique para ler de um arquivo de texto</title>
      <description>Clicar no objeto especificado solicita ao usuário que selecione um arquivo a ser exibido no painel de saída.</description>
      <requiresSymbol>true</requiresSymbol>
	  <placeholders>
		<placeholder
			type="stageInstance"
			text="instance_name_here" />
	  </placeholders>
      <minASVersion>3</minASVersion>
      <ADOBE_PIP_ID>Click_to_Read_from_a_Text_File</ADOBE_PIP_ID>
      <code><![CDATA[
/* Clique para ler de um arquivo de texto
Clicar na instância de símbolo especificada solicita ao usuário que selecione um arquivo a ser exibido no painel de saída.

Instruções:
1. Para usar os dados lidos do arquivo, use a variável fileData na função fl_FileReadHandler.
*/

import flash.filesystem.File;
import flash.filesystem.FileMode;
import flash.filesystem.FileStream;

instance_name_here.addEventListener(MouseEvent.CLICK, fl_OpenFile);

var fl_OpenFileStream:FileStream = new FileStream();	// FileStream usado para ler do arquivo
var fl_OpenFileChooser:File = File.documentsDirectory;	// Assume o diretório de documentos como padrão
fl_OpenFileChooser.addEventListener(Event.SELECT, fl_FileOpenSelected);

// Função principal para abertura de um arquivo
function fl_OpenFile(event:MouseEvent):void
{
	fl_OpenFileChooser.browseForOpen("Selecionar um arquivo de texto.");
}

// Abre um objeto FileStream para ler o arquivo
function fl_FileOpenSelected(event:Event):void
{
	fl_OpenFileChooser = event.target as File;
	fl_OpenFileStream = new FileStream();
	fl_OpenFileStream.addEventListener(Event.COMPLETE, fl_FileReadHandler);

	fl_OpenFileStream.openAsync(fl_OpenFileChooser, FileMode.READ);
}

// Gravar dados do arquivo no Painel de saída
function fl_FileReadHandler(event:Event):void
{
	var fileData:String = fl_OpenFileStream.readMultiByte(fl_OpenFileStream.bytesAvailable, File.systemCharset);
	// Os dados carregados do arquivo agora podem ser usados a partir da variável fileData.
	// Este exemplo de código exibe dados do arquivo no painel de saída.
	trace(fileData);
	fl_OpenFileStream.close();
}
]]></code>
    </snippet>
    <snippet isBranch="false">
      <title>Clique para gravar em um arquivo de texto</title>
      <description>Clicar no objeto especificado solicitará ao usuário que selecione um local e um nome de arquivo no qual salvará uma string de texto.</description>
      <requiresSymbol>true</requiresSymbol>
	  <placeholders>
		<placeholder
			type="stageInstance"
			text="instance_name_here" />
		<placeholder
			type="editableText"
			text="Texto a ser salvo no arquivo." />
	  </placeholders>
      <minASVersion>3</minASVersion>
      <ADOBE_PIP_ID>Click_to_Write_to_a_Text_File</ADOBE_PIP_ID>
      <code><![CDATA[
/* Clique para gravar em um arquivo de texto
Clicar no objeto especificado solicitará ao usuário que selecione um local e um nome de arquivo no qual salvará uma string de texto.

Instruções:
1. Para definir os dados a serem salvos no arquivo, altere "Texto a ser salvo no arquivo." para os dados que você deseja salvar.
*/

import flash.filesystem.File;
import flash.filesystem.FileMode;
import flash.filesystem.FileStream;

instance_name_here.addEventListener(MouseEvent.CLICK, fl_SaveFile);

var fl_FileDataToSave:String = "Texto a ser salvo no arquivo.";

var fl_SaveFileStream:FileStream = new FileStream();	// FileStream usado para gravar no arquivo

var fl_SaveFileChooser:File = File.documentsDirectory;	// Assume o diretório de documentos como padrão
fl_SaveFileChooser.addEventListener(Event.SELECT, fl_WriteFileHandler);

// Abre uma caixa de diálogo Salvar como para o usuário especificar um nome de arquivo
function fl_SaveFile(event:MouseEvent):void
{
	fl_SaveFileChooser.browseForSave("Salvar como:");
}

// Gravar dados na variável fl_FileDataToSave
function fl_WriteFileHandler(event:Event):void
{
	fl_SaveFileChooser = event.target as File;
	fl_SaveFileStream = new FileStream();

	fl_SaveFileStream.openAsync(fl_SaveFileChooser, FileMode.WRITE);

	fl_SaveFileStream.writeMultiByte(fl_FileDataToSave, File.systemCharset);

	fl_SaveFileStream.close();
}
]]></code>
    </snippet>
	<snippet isBranch="false">
      <title>Salvar e carregar preferências</title>
      <description>Salva dados no armazenamento local e os carrega na próxima iniciação.</description>
      <requiresSymbol>false</requiresSymbol>
      <minASVersion>3</minASVersion>
      <ADOBE_PIP_ID>Save_and_Load_Preferences</ADOBE_PIP_ID>
      <code><![CDATA[
/* Salvar e carregar preferências
Salva dados no armazenamento local e os carrega na próxima iniciação.

A função "fl_SavePreference" salvará as preferências.
A função "fl_LoadPreference" carregará as preferências.
As preferências neste exemplo incluem o tamanho e o local da janela do aplicativo e a string de texto "Hello World".

Instruções:
1. Aplique este snippet de código ao quadro 1 para garantir que as preferências sejam carregadas.
2. Para salvar as preferências ao sair, insira o snippet de código "Clique para fechar a janela do AIR" e insira "fl_SavePreferences();" na função "fl_CloseWindow()".
3. Valores adicionais podem ser salvos em "fl_SavePreference" por meio do uso de "fs.writeObject".
4. Valores adicionais podem ser recuperados em "fl_LoadPreferences" por meio do uso de "fs.readObject" na mesma ordem de "fs.writeObject".
*/

import flash.filesystem.File;
import flash.filesystem.FileMode;
import flash.filesystem.FileStream;

// Define o nome do arquivo no armazenamento local em que as preferências são gravadas
var fl_ConfigFile:File = new File("app-storage:/AppConfig.cfg");
// No Windows 7: C:\Usuários\<nomedousuário>\AppData\Roaming\<Nome do aplicativo Air>\Armazenamento local\AppConfig.cfg
// No Windows XP: C:\Documents and Settings\<nomedousuário>\Dados de aplicativos\<Nome do aplicativo Air>\Armazenamento local\AppConfig.cfg
// No Mac: /Usuários/<nomedousuário>/Biblioteca/Preferências/<Nome do aplicativo Air>/Armazenamento local/AppConfig.cfg

// Cria o TextField para exibição da string salva nas preferências
var fl_AppPreference = new TextField();
addChild(fl_AppPreference);

fl_LoadPreferences();	// Chamada de preferências locais
fl_SavePreferences();	// Chamada para salvar preferências (mover para onde você deseja salvar suas preferências)

// Gravar preferências no arquivo de configuração
function fl_SavePreferences():void
{
	// Abrir arquivo de preferências para gravação
	var fs:FileStream = new FileStream();
	fs.open(fl_ConfigFile, FileMode.UPDATE);


	// Salvar tamanho e local da janela
	fs.writeObject(stage.nativeWindow.bounds);

	// Salvar a string "Olá, mundo"
	fs.writeObject("Olá, mundo");

	// Você pode adicionar outros valores a serem salvos aqui

	fs.close();
}

// Ler preferências do arquivo de configuração
function fl_LoadPreferences():void
{
	if (fl_ConfigFile.exists)
	{
		// Abrir arquivo de preferências para leitura
		var fs:FileStream = new FileStream();
		fs.open(fl_ConfigFile, FileMode.READ);

		// Carrega e restaura o tamanho e o local do palco
		var savedBounds:Object = fs.readObject();
		stage.nativeWindow.bounds = new Rectangle(savedBounds.x, savedBounds.y, savedBounds.width, savedBounds.height);

		var dataString:String = String(fs.readObject());	// Carrega a string de texto do arquivo de preferências
		fl_AppPreference.text = dataString;					// Exibe o texto carregado no campo de texto

		fs.close();
	}
}
]]></code>
    </snippet>
  </category>
</snippets>
</CodeSnippets>
