﻿<?xml version="1.0" encoding="utf-8"?>
<CodeSnippets>
<!--
이 파일은 [코드 조각] 패널에 나타나는 코드 조각을 결정합니다.

isBranch 특성 – 조각에 대해 "false"로 설정합니다.
title – [코드 조각] 패널에 표시할 조각의 이름입니다.
description – 도구 설명에 표시할 조각에 대한 설명입니다.
requiresSymbol – 조각의 요구 사항에 따라 스테이지에서 객체를 선택해야 하는 경우 true로 설정합니다.
코드 – 삽입되는 코드입니다.  실제 코드는 이 예제와 같이 CDATA 블록 내에 배치되어야 합니다.
minPlayerVersion - FLA 파일이 최소 플레이어 버전을 충족해야 합니다.
maxPlayerVersion - FLA 파일이 최대 플레이어 버전보다 높거나 같아야 합니다.
minASVersion - FLA 파일이 최소 ActionScript 버전을 충족해야 합니다.
maxASVersion - FLA 파일이 최대 ActionScript 버전보다 높거나 같아야 합니다.

사용자에게 필요한 코드 조각을 만들려면 다음의 빈 코드를 복사하여 표시하려는 범주에 붙여넣습니다.

	<snippet isBranch="false">
	  <title>사용자 정의 조각</title>
	  <description>사용자 정의 코드 조각의 예제입니다.</description>
	  <requiresSymbol>true</requiresSymbol>
	  <code><![CDATA[
// 여기에 코드 삽입
trace("사용자 정의 코드 조각");
	  ]]></code>
	</snippet>
-->
<snippets>
  <category title="액션"
      isBranch="true" expanded="false"
      description="일반적인 상호 작용 코드">
	<snippet isBranch="false">
	  <title>클릭하여 웹 페이지로 이동</title>
	  <description>지정된 객체를 클릭하면 새 브라우저 창에서 URL이 로드됩니다.</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[
/* 클릭하여 웹 페이지로 이동
지정한 심볼 인스턴스를 클릭하면 새 브라우저 창에서 URL이 로드됩니다.

지침:
1. http://www.adobe.com을 원하는 URL 주소로 바꿉니다.
   따옴표("")는 그대로 유지해야 합니다.
*/

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>사용자 정의 마우스 커서</title>
	  <description>기본 마우스 커서를 스테이지에서 지정한 객체로 바꿉니다.</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[
/* 사용자 정의 마우스 커서
기본 마우스 커서를 지정한 심볼 인스턴스로 바꿉니다.
*/

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();

//기본 마우스 포인터를 복원하려면 다음 행의 주석 처리를 제거합니다.
//instance_name_here.removeEventListener(Event.ENTER_FRAME, fl_CustomMouseCursor);
//stage.removeChild(instance_name_here);
//Mouse.show();
]]></code>
	</snippet>
	<snippet isBranch="false">
	  <title>드래그 앤 드롭</title>
	  <description>드래그 앤 드롭으로 지정된 객체를 이동할 수 있습니다.</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[
/* 드래그 앤 드롭
드래그 앤 드롭으로 지정한 심볼 인스턴스를 이동할 수 있습니다.
*/

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>동영상 클립 재생</title>
	  <description>스테이지에서 현재 중지되어 있는 지정된 객체 또는 동영상 클립을 재생합니다.</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[
/* 동영상 클립 재생
스테이지에서 지정한 동영상 클립을 재생합니다.

지침:
1. 현재 중단된 동영상 클립에 이 코드를 사용합니다.
*/

instance_name_here.play();
]]></code>
	</snippet>
	<snippet isBranch="false">
	  <title>동영상 클립 중단</title>
	  <description>스테이지에서 현재 재생 중인 지정한 객체 또는 동영상 클립을 중단합니다.</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[
/* 동영상 클립 중단
스테이지에서 지정한 동영상 클립을 중단합니다.

지침:
1. 현재 재생 중인 동영상 클립에 이 코드를 사용합니다.
*/

instance_name_here.stop();
]]></code>
	</snippet>
	<snippet isBranch="false">
	  <title>클릭하여 객체 숨김</title>
	  <description>지정된 객체를 클릭하면 해당 객체가 숨겨집니다.</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[
/* 클릭하여 객체 숨김
지정한 심볼 인스턴스를 클릭하면 해당 심볼 인스턴스가 숨겨집니다.

지침:
1. 현재 표시되는 객체에 이 코드를 사용합니다.
*/

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>객체 표시</title>
	  <description>지정된 객체가 표시되도록 합니다.</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[
/* 객체 표시
지정한 심볼 인스턴스를 표시합니다.

지침:
1. 이 코드를 사용하여 현재 숨겨진 객체를 표시합니다.
*/

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

	<snippet isBranch="false">
	  <title>클릭하여 객체 배치</title>
	  <description>지정한 x 및 y 좌표로 지정된 객체를 이동합니다.</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[
/* 클릭하여 객체 배치
지정한 심볼 인스턴스를 지정한 x 좌표 및 y 좌표로 이동합니다.

지침:
1. 값 200을 x 좌표로 바꿉니다.
   객체를 배치할 위치입니다.
2. 값 100을 객체를 배치할 y 좌표로 바꿉니다.
*/

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>클릭하여 TextField 표시</title>
	  <description>지정된 객체를 클릭하면 지정한 위치에 TextField가 생성 및 표시됩니다.</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[
/* 클릭하여 TextField 표시
지정한 심볼 인스턴스를 클릭하면 지정한 x 좌표 및 y 좌표에 TextField가 표시됩니다.

지침:
1. 값 200을 TextField를 배치할 x 좌표로 바꿉니다.
2. 값 100을 TextField를 배치할 y 좌표로 바꿉니다.
3. "Lorem ipsum dolor sit amet" 문자열 값을 나타나는 TextField에 표시하려는 텍스트로 바꿉니다. 따옴표는 그대로 유지해야 합니다.
*/

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>난수 생성</title>
	  <description>0과 지정한 숫자 사이에서 난수 값을 생성합니다.</description>
	  <placeholders>
		<placeholder
			type="hotTextNumber"
			text="100"
			subType="int"
			min="2" />
	  </placeholders>
	  <ADOBE_PIP_ID>Generate_a_Random_Number</ADOBE_PIP_ID>
	  <code><![CDATA[
/* 난수 생성
0과 지정한 제한 숫자 사이에서 난수를 생성합니다.

지침:
1. 최대 난수 값을 변경하려면 이 조각의 마지막 행에 있는 숫자 100을 사용하려는 숫자로 바꿉니다.
2. 이 코드는 [출력] 패널에 난수를 출력합니다.
*/

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>맨 앞으로 객체 가져오기</title>
	  <description>어떤 객체든 클릭하면 해당 객체가 맨 앞에 표시됩니다.</description>
	  <minASVersion>3</minASVersion>
	  <ADOBE_PIP_ID>Bring_Object_to_the_Front</ADOBE_PIP_ID>
	  <code><![CDATA[
/* 어떤 객체든 클릭하면 맨 앞에 표시
스테이지에 있는 아무 심볼이나 클릭하면 다른 모든 인스턴스 앞으로 해당 심볼이 이동됩니다.
*/

// 이 코드는 스테이지의 모든 심볼 인스턴스가 클릭 이벤트를 수신하도록 설정하여 해당 인스턴스를 클릭 가능하도록 만듭니다.
for (var fl_ChildIndex:int = 0;
		fl_ChildIndex < this.numChildren;
		fl_ChildIndex++)
{
	this.getChildAt(fl_ChildIndex).addEventListener(MouseEvent.CLICK, fl_ClickToBringToFront);
}

// 클릭한 객체를 표시 목록의 맨 앞으로 이동하는 함수입니다.

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

	<snippet isBranch="false">
	  <title>단순 타이머</title>
	  <description>[출력] 패널에 지정한 기간을 세는 타이머를 표시합니다.</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[
/* 단순 타이머
30초가 경과될 때까지 [출력] 패널에 카운트다운 타이머를 표시합니다.
이 코드를 사용하면 사용자 필요에 맞는 타이머를 쉽게 작성할 수 있습니다.

지침:
1. 타이머의 시간(초)을 변경하려면 아래 첫 번째 행에서 값 30을 원하는 시간(초)으로 바꿉니다.
*/

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("경과된 시간(초): " + fl_SecondsElapsed);
	fl_SecondsElapsed++;
}
]]></code>
	</snippet>
	<snippet isBranch="false">
	  <title>카운트다운 타이머</title>
	  <description>지정한 기간부터 셉니다.</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[
/* 카운트다운 타이머
지정한 시간(초)부터 초를 셉니다.

지침:
1. 카운트다운의 길이를 변경하려면 아래 첫 번째 행에서 값 10을 원하는 초 수로 바꿉니다.
*/

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 + " 초");
	fl_SecondsToCountDown--;
}
]]></code>
	</snippet>
	</category>


	<category title="타임라인 찾아보기"
	    isBranch="true"
	    description="동영상 재생을 제어하는 코드">
	<snippet isBranch="false">
	  <title>이 프레임에서 중단</title>
	  <description>재생 헤드가 타임라인에서 다음 프레임으로 진행되지 않도록 중단합니다.</description>
	  <ADOBE_PIP_ID>Stop_at_this_Frame</ADOBE_PIP_ID>
	  <code><![CDATA[
/* 이 프레임에서 중단
이 코드를 삽입하는 프레임에서 Flash 타임라인이 중단/일시 정지됩니다.
동영상 클립의 타임라인을 중단/일시 정지하는 데 사용할 수도 있습니다.
*/

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

	<snippet isBranch="false">
	  <title>클릭하여 프레임으로 이동 및 중단</title>
	  <description>객체를 클릭하면 재생 헤드가 지정된 프레임으로 이동하고 중단됩니다.</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[
/* 클릭하여 프레임으로 이동 및 중단
지정한 심볼 인스턴스를 클릭하면 재생 헤드가 타임라인의 지정한 프레임으로 이동되고 동영상이 중단됩니다.
기본 타임라인 또는 동영상 클립 타임라인에 사용할 수 있습니다.

지침:
1. 아래 코드에서 숫자 5를 심볼 인스턴스를 클릭했을 때 재생 헤드를 이동하려는 프레임 번호로 바꿉니다.
*/

instance_name_here.addEventListener(MouseEvent.CLICK, fl_ClickToGoToAndStopAtFrame);

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

	<snippet isBranch="false">
	  <title>클릭하여 프레임으로 이동 및 재생</title>
	  <description>객체를 클릭하면 재생 헤드가 지정한 프레임으로 이동되어 계속 재생됩니다.</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[
/* 클릭하여 프레임으로 이동 및 재생
지정한 심볼 인스턴스를 클릭하면 재생 헤드가 타임라인의 지정한 프레임으로 이동되고 해당 프레임에서 계속 재생됩니다.
기본 타임라인 또는 동영상 클립 타임라인에 사용할 수 있습니다.

지침:
1. 아래 코드에서 숫자 5를 심볼 인스턴스를 클릭했을 때 재생 헤드를 이동하려는 프레임 번호로 바꿉니다.
*/

instance_name_here.addEventListener(MouseEvent.CLICK, fl_ClickToGoToAndPlayFromFrame);

function fl_ClickToGoToAndPlayFromFrame(event:MouseEvent):void
{
	gotoAndPlay(5);
}
]]></code>
	</snippet>
	<snippet isBranch="false">
	  <title>클릭하여 다음 프레임으로 이동 및 중단</title>
	  <description>객체를 클릭하면 재생 헤드가 다음 프레임으로 이동하고 중단됩니다.</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[
/* 클릭하여 다음 프레임으로 이동 및 중단
지정한 심볼 인스턴스를 클릭하면 재생 헤드가 다음 프레임으로 이동되고 동영상이 중단됩니다.
*/

instance_name_here.addEventListener(MouseEvent.CLICK, fl_ClickToGoToNextFrame);

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

	<snippet isBranch="false">
	  <title>클릭하여 이전 프레임으로 이동 및 중단</title>
	  <description>객체를 클릭하면 재생 헤드가 이전 프레임으로 이동하고 중단됩니다.</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[
/* 클릭하여 이전 프레임으로 이동 및 중단
지정한 심볼 인스턴스를 클릭하면 재생 헤드가 이전 프레임으로 이동되고 동영상이 중단됩니다.
*/

instance_name_here.addEventListener(MouseEvent.CLICK, fl_ClickToGoToPreviousFrame);

function fl_ClickToGoToPreviousFrame(event:MouseEvent):void
{
	prevFrame();
}
]]></code>
	</snippet>
	<snippet isBranch="false">
	  <title>클릭하여 다음 장면으로 이동 및 재생</title>
	  <description>객체를 클릭하면 재생 헤드가 다음 장면으로 이동되어 계속 재생됩니다.</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[
/* 클릭하여 다음 장면으로 이동 및 재생
지정한 심볼 인스턴스를 클릭하면 재생 헤드가 타임라인에서 다음 장면으로 이동되고 해당 장면에서 계속 재생됩니다.
*/

instance_name_here.addEventListener(MouseEvent.CLICK, fl_ClickToGoToNextScene);

function fl_ClickToGoToNextScene(event:MouseEvent):void
{
	MovieClip(this.root).nextScene();
}
]]></code>
	</snippet>
	<snippet isBranch="false">
	  <title>클릭하여 이전 장면으로 이동 및 재생</title>
	  <description>객체를 클릭하면 재생 헤드가 이전 장면으로 이동되어 계속 재생됩니다.</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[
/* 클릭하여 이전 장면으로 이동 및 재생
지정한 심볼 인스턴스를 클릭하면 재생 헤드가 타임라인에서 이전 장면으로 이동되고 해당 장면에서 계속 재생됩니다.
*/

instance_name_here.addEventListener(MouseEvent.CLICK, fl_ClickToGoToPreviousScene);

function fl_ClickToGoToPreviousScene(event:MouseEvent):void
{
	MovieClip(this.root).prevScene();
}
]]></code>
	</snippet>
	<snippet isBranch="false">
	  <title>클릭하여 장면으로 이동 및 재생</title>
	  <description>객체를 클릭하면 지정한 장면 및 프레임에서 동영상이 재생됩니다.</description>
	  <requiresSymbol>true</requiresSymbol>
	  <placeholders>
		<placeholder
			type="stageInstance"
			text="instance_name_here" />
		<placeholder
			text="장면 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[
/* 클릭하여 장면으로 이동 및 재생
지정한 심볼 인스턴스를 클릭하면 지정한 장면 및 프레임에서 동영상이 재생됩니다.

지침:
1. "장면 3"을 재생하려는 장면의 이름으로 바꿉니다.
2. 지정한 장면에서 1을 동영상을 재생하려는 프레임 번호로 바꿉니다.
*/

instance_name_here.addEventListener(MouseEvent.CLICK, fl_ClickToGoToScene);

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


	<category title="애니메이션"
	    isBranch="true"
	    description="시간 경과에 따라 객체의 속성을 변경하는 코드">

	<snippet isBranch="false">
	  <title>화살표 키로 이동</title>
	  <description>화살표 키로 객체를 이동할 수 있습니다.</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[
/* 화살표 키로 이동
화살표 키로 지정한 심볼 인스턴스를 이동할 수 있습니다.

지침:
1. 이동량을 늘리거나 줄이려면 아래에서 숫자 5를 키를 누를 때마다 심볼 인스턴스를 이동하려는 픽셀 수로 바꿉니다.
아래 코드에서 숫자 5는 4번 나타납니다.
*/

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>가로로 이동</title>
	  <description>지정한 픽셀 수만큼 지정한 객체를 왼쪽 또는 오른쪽으로 이동합니다.</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[
/* 가로로 이동
x 속성을 지정한 픽셀 수만큼 줄이거나 늘려서 지정한 심볼 인스턴스를 왼쪽이나 오른쪽으로 이동합니다.

지침:
1. 이 코드는 기본적으로 심볼 인스턴스를 오른쪽으로 이동합니다.
2. 심볼 인스턴스를 왼쪽으로 이동하려면 아래에서 숫자 100을 음수 값으로 변경합니다.
3. 심볼 인스턴스의 이동 거리를 변경하려면 아래에서 숫자 100을 심볼 인스턴스를 이동하려는 픽셀 수로 변경합니다.
*/

instance_name_here.x += 100;
]]></code>
	</snippet>
	<snippet isBranch="false">
	  <title>세로로 이동</title>
	  <description>지정된 객체를 지정된 픽셀 수만큼 위나 아래로 이동합니다.</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[
/* 세로로 이동
y 속성을 지정한 픽셀 수만큼 줄이거나 늘려서 심볼 인스턴스를 위나 아래로 이동합니다.

지침:
1. 작성된 코드의 기본 이동 방향은 아래쪽입니다.
2. 심볼 인스턴스를 위쪽으로 이동하려면 아래에서 숫자 100을 음수 값으로 변경합니다.
3. 심볼 인스턴스의 이동 거리를 변경하려면 아래에서 숫자 100을 심볼 인스턴스를 이동하려는 픽셀 수로 변경합니다.
*/

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

	<snippet isBranch="false">
	  <title>한 번 회전</title>
	  <description>회전 속성을 업데이트하여 지정한 객체를 지정한 방향으로 한 번 회전합니다.</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[
/* 한 번 회전
지정한 각도만큼 회전 속성을 업데이트하여 심볼 인스턴스를 회전합니다.

지침:
1. 작성된 코드의 기본 회전은 시계 방향입니다.
2. 심볼 인스턴스를 시계 반대 방향으로 회전하려면 아래에서 숫자 45를 음수 값으로 변경합니다.
3. 심볼 인스턴스의 회전량을 변경하려면 아래에서 값 45를 원하는 회전 각도로 변경합니다.
*/

instance_name_here.rotation += 45;
]]></code>
	</snippet>
	<snippet isBranch="false">
	  <title>계속 회전</title>
	  <description>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[
/* 계속 회전
ENTER_FRAME 이벤트 내의 회전 속성을 업데이트하여 심볼 인스턴스를 계속 회전합니다.

지침:
1. 작성된 코드의 기본 회전은 시계 방향입니다.
2. 회전 방향을 시계 반대 방향으로 변경하려면 아래에서 숫자 10을 음수 값으로 변경합니다.
3. 심볼 인스턴스의 회전 속도를 변경하려면 아래에서 숫자 10을 각 프레임에서 심볼 인스턴스를 회전하려는 각도로 변경합니다. 숫자가 높을수록 회전 속도가 빨라집니다.
4. 애니메이션에서는 ENTER_FRAME 이벤트를 사용하므로 재생 헤드가 새 프레임으로 이동될 경우에만 애니메이션이 진행되며 애니메이션의 속도도 문서 프레임 속도에 따라 달라집니다.
*/

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>가로로 애니메이션 적용</title>
	  <description>ENTER_FRAME 이벤트 내의 X 속성을 업데이트하여 지정된 객체가 스테이지를 가로질러 가로로 이동하도록 애니메이션을 적용합니다.</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[
/* 가로로 애니메이션 적용
ENTER_FRAME 이벤트에서 x 속성을 줄이거나 늘려 스테이지 왼쪽이나 오른쪽으로 심볼 인스턴스를 이동합니다.

지침:
1. 애니메이션의 기본 방향은 오른쪽입니다.
2. 애니메이션 방향을 왼쪽으로 변경하려면 아래에서 숫자 10을 음수 값으로 변경합니다.
3. 심볼 인스턴스가 이동하는 속도를 변경하려면 아래에서 숫자 10을 각 프레임에서 심볼 인스턴스를 이동하려는 픽셀 수로 변경합니다.
4. 애니메이션에서는 ENTER_FRAME 이벤트를 사용하므로 재생 헤드가 새 프레임으로 이동될 경우에만 애니메이션이 진행되며 애니메이션의 속도도 문서 프레임 속도에 따라 달라집니다.
*/

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>세로로 애니메이션 적용</title>
	  <description>ENTER_FRAME 이벤트 내의 Y 속성을 업데이트하여 지정된 객체가 스테이지를 가로질러 세로로 이동하도록 애니메이션을 적용합니다.</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[
/* 세로로 애니메이션 적용
ENTER_FRAME 이벤트에서 y 속성을 줄이거나 늘려 스테이지에서 심볼 인스턴스를 세로로 이동합니다.

지침:
1. 애니메이션의 기본 방향은 아래쪽입니다.
2. 애니메이션 방향을 위쪽으로 변경하려면 아래에서 숫자 10을 음수 값으로 변경합니다.
3. 심볼 인스턴스가 이동하는 속도를 변경하려면 아래에서 숫자 10을 각 프레임에서 심볼 인스턴스를 이동하려는 픽셀 수로 변경합니다.
4. 애니메이션에서는 ENTER_FRAME 이벤트를 사용하므로 재생 헤드가 새 프레임으로 이동될 경우에만 애니메이션이 진행되며 애니메이션의 속도도 문서 프레임 속도에 따라 달라집니다.
*/

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>동영상 클립 페이드 인</title>
	  <description>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[
/* 동영상 클립 페이드 인
완전하게 표시될 때까지 ENTER_FRAME 이벤트 내의 알파 속성을 늘려 심볼 인스턴스에 페이드 인 효과를 적용합니다.

지침:
1. 심볼 인스턴스가 페이드 인되는 속도를 변경하려면 아래에서 0.01 값을 변경합니다. 값은 0보다 크고 1보다 작거나 같아야 하며, 값이 높아질수록 페이드 인 속도가 빨라집니다.
2. 애니메이션에서는 ENTER_FRAME 이벤트를 사용하므로 재생 헤드가 새 프레임으로 이동될 경우에만 애니메이션이 진행되며 애니메이션의 속도도 문서 프레임 속도에 따라 달라집니다.
*/

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>동영상 클립 페이드 아웃</title>
	  <description>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[
/* 동영상 클립 페이드 아웃
보이지 않게 될 때까지 ENTER_FRAME 이벤트 내의 알파 속성을 줄여 심볼 인스턴스에 페이드 아웃 효과를 적용합니다.

지침:
1. 심볼 인스턴스가 페이드 아웃되는 속도를 변경하려면 아래에서 0.01 값을 변경합니다. 값은 0보다 크고 1보다 작거나 같아야 하며, 값이 높아질수록 페이드 아웃 속도가 빨라집니다.
2. 애니메이션에서는 ENTER_FRAME 이벤트를 사용하므로 재생 헤드가 새 프레임으로 이동될 경우에만 애니메이션이 진행되며 애니메이션의 속도도 문서 프레임 속도에 따라 달라집니다.
*/

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="로드 및 언로드"
      isBranch="true"
      description="에셋을 로드 및 언로드하는 코드">
	<snippet isBranch="false">
	  <title>클릭하여 SWF 또는 이미지 로드/언로드</title>
	  <description>지정된 객체를 클릭하면 SWF 또는 이미지 URL이 로드되고 다시 클릭하면 해당 항목이 언로드됩니다.</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[
/* 클릭하여 SWF 또는 이미지 로드/언로드
심볼 인스턴스를 클릭하면 지정한 SWF 또는 이미지 URL이 로드되고 표시됩니다. 심볼 인스턴스를 다시 클릭하면 SWF 또는 이미지가 언로드됩니다.

지침:
1. 아래에서 "http://www.helpexamples.com/flash/images/image1.jpg"를 원하는 SWF 또는 이미지의 URL 주소로 바꿉니다. 따옴표("")는 그대로 유지해야 합니다.
2. 호출 SWF가 있는 도메인과 다른 인터넷 도메인의 파일을 로드하려면 특별한 구성이 필요합니다.
*/

instance_name_here.addEventListener(MouseEvent.CLICK, fl_ClickToLoadUnloadSWF);

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

//이 변수는 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;
	}
	// SWF를 로드하려는지 또는 언로드하려는지 여부를 전환합니다.
	fl_ToLoad = !fl_ToLoad;
}
]]></code>
	</snippet>

	<snippet isBranch="false">
	  <title>클릭하여 라이브러리에서 이미지 로드</title>
	  <description>지정된 객체를 클릭하면 라이브러리에서 이미지가 로드되어 표시됩니다.</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[
/* 클릭하여 라이브러리에서 이미지 로드
심볼 인스턴스를 클릭하면 라이브러리에서 지정한 이미지가 표시됩니다.
라이브러리에서 이미지를 로드하려면 해당 이미지가 라이브러리에서 ActionScript에 내보내기 속성이 설정되어 있어야 하며 올바른 클래스 이름이 지정되어 있어야 합니다.

지침:
1. 라이브러리 내에 있는 임의의 비트맵 심볼을 마우스 오른쪽 버튼으로 클릭하고 [속성..]을 선택합니다.
2. [고급] 버튼을 클릭하여 [비트맵 속성]대화 상자를 확장합니다.
3. [Actionscript에 내보내기] 옵션을 사용하도록 설정합니다.
4. [클래스] 텍스트 필드에 'MyImage'를 입력합니다.
5. [확인]을 두 번 클릭합니다. 
*/

instance_name_here.addEventListener(MouseEvent.CLICK, fl_ClickToLoadImageFromLibrary);

function fl_ClickToLoadImageFromLibrary(event:MouseEvent):void
{
	// 라이브러리에서 다른 이미지를 추가하려면
	// 위의 4단계에서 [클래스] 텍스트 필드와 아래 코드에 다른 이름을 입력합니다.
	var libImage:MyImage = new MyImage();

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

	<snippet isBranch="false">
	  <title>라이브러리에서 인스턴스 추가</title>
	  <description>지정한 라이브러리 심볼의 인스턴스를 스테이지에 추가합니다.</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[
/* 라이브러리에서 스테이지에 인스턴스 추가
지정한 MovieClip 또는 Button 라이브러리 심볼의 인스턴스를 스테이지에 추가합니다. Bitmap 라이브러리 심볼을 스테이지에 추가하려는 경우 "클릭하여 라이브러리에서 이미지 로드" 코드 조각을 사용하십시오.

지침:
1. 라이브러리 내에 있는 임의의 심볼을 마우스 오른쪽 버튼으로 클릭하고 [속성...]을 선택합니다.
2. [고급] 버튼을 클릭하여 [심볼 속성]대화 상자를 확장합니다.
3. [Actionscript에 내보내기] 옵션을 사용하도록 설정합니다.
4. [클래스] 텍스트 필드에 'LibrarySymbol'을 입력합니다.
5. [확인]을 두 번 클릭합니다. 
*/

// 라이브러리에서 다른 심볼을 추가하려면
// 위의 4단계에서 [클래스] 텍스트 필드와 아래 코드에 다른 이름을 입력합니다.
var fl_MyInstance:LibrarySymbol = new LibrarySymbol();
addChild(fl_MyInstance);
]]></code>
	</snippet>

	<snippet isBranch="false">
	  <title>스테이지에서 인스턴스 제거</title>
	  <description>스테이지에서 지정한 심볼 인스턴스를 제거합니다.</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[
/* 스테이지에서 인스턴스 제거
스테이지에서 지정한 심볼 인스턴스를 제거합니다.
*/

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

	<snippet isBranch="false">
	  <title>외부 텍스트 로드</title>
	  <description>[출력] 패널에서 텍스트 필드를 로드하고 표시합니다.</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[
/* 외부 텍스트 로드
[출력] 패널에서 외부 텍스트 필드를 로드하고 표시합니다.

지침:
1. "http://www.helpexamples.com/flash/text/loremipsum.txt"를 로드하려는 텍스트 파일의 URL 주소로 바꿉니다.
주소는 상대 링크나 "http://" 링크가 될 수 있습니다.
주소는 따옴표("")로 묶어야 합니다.
*/

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="오디오 및 비디오"
	    isBranch="true"
	    description="오디오 및 비디오를 사용한 작업 코드">
	<snippet isBranch="false">
      <title>클릭하여 사운드 재생/중단</title>
      <description>지정된 객체를 클릭하면 사운드가 재생되고 다시 클릭하면 재생이 중단됩니다. </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[
/* 클릭하여 사운드 재생/중단
심볼 인스턴스를 클릭하면 지정한 사운드가 재생됩니다.
심볼 인스턴스를 다시 클릭하면 사운드가 중단됩니다.

지침:
1. 아래에서 "http://www.helpexamples.com/flash/sound/song1.mp3"를 원하는 사운드 파일의 URL 주소로 바꿉니다. 따옴표("")는 그대로 유지해야 합니다.
*/

instance_name_here.addEventListener(MouseEvent.CLICK, fl_ClickToPlayStopSound);

var fl_SC:SoundChannel;

//이 변수는 사운드를 재생하려는지 또는 중단하려는지 여부를 추적합니다.
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>클릭하여 모든 사운드 중단</title>
	  <description>객체를 클릭하면 현재 재생 중인 모든 사운드가 중단됩니다.</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[
/* 클릭하여 모든 사운드 중단
심볼 인스턴스를 클릭하면 현재 재생 중인 모든 사운드가 중단됩니다.
*/

instance_name_here.addEventListener(MouseEvent.CLICK, fl_ClickToStopAllSounds);

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

	<snippet isBranch="false">
	  <title>큐 포인트 이벤트 통과</title>
	  <description>선택한 비디오에서 큐 포인트(비디오 클립 내에서 발생하는 중요한 순간)를 통과할 때마다 실행될 함수를 할당합니다.</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[
/* 큐 포인트 이벤트 핸들러 통과
지정한 비디오 인스턴스에서 큐 포인트를 통과할 때마다 아래에 정의되어 있는 fl_CuePointHandler 함수를 실행합니다.

지침:
1. 아래에서 "// 사용자 정의 코드 시작" 행 다음의 새 행에 사용자 정의 코드를 추가합니다.
재생 중인 비디오에서 큐 포인트에 도달하면 이 코드가 실행됩니다.
*/

import fl.video.MetadataEvent;

instance_name_here.addEventListener(MetadataEvent.CUE_POINT, fl_CuePointHandler);

function fl_CuePointHandler(event:MetadataEvent):void
{
	// 사용자 정의 코드 시작
	// 이 조각 코드는 [출력] 패널에 큐 포인트의 이름을 표시합니다.
	trace(event.info.name);
	// 사용자 정의 코드 종료
}
]]></code>
	</snippet>

	<snippet isBranch="false">
	  <title>클릭하여 비디오 재생</title>
	  <description>지정된 객체를 클릭하면 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[
/* 클릭하여 비디오 재생(FLVPlayback 구성 요소 필요)
심볼 인스턴스를 클릭하면 지정한 FLVPlayback 구성 요소 인스턴스에서 비디오가 재생됩니다.

지침:
1. 아래에서 video_instance_name을 비디오를 재생하려는 FLVPlayback 구성 요소의 인스턴스 이름으로 바꿉니다.
   스테이지에서 지정한 FLVPlayback 비디오 구성 요소의 인스턴스가 재생됩니다.
2. FLVPlayback 구성 요소 인스턴스의 속성에서 비디오 소스 파일을 할당했는지 확인합니다.
*/

instance_name_here.addEventListener(MouseEvent.CLICK, fl_ClickToPlayVideo);

function fl_ClickToPlayVideo(event:MouseEvent):void
{
	// video_instance_name을 비디오 구성 요소의 인스턴스 이름으로 바꿉니다.
	video_instance_name.play();
}
]]></code>
	</snippet>

	<snippet isBranch="false">
	  <title>클릭하여 비디오 정지</title>
	  <description>지정된 객체를 클릭하면 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[
/* 클릭하여 비디오 정지(FLVPlayback 구성 요소 필요)
심볼 인스턴스를 클릭하면 지정한 FLVPlayback 구성 요소 인스턴스에서 비디오가 정지됩니다.

지침:
1. 아래에서 video_instance_name을 비디오를 정지하려는 FLVPlayback 구성 요소의 인스턴스 이름으로 바꿉니다.
*/

instance_name_here.addEventListener(MouseEvent.CLICK, fl_ClickToPauseVideo);

function fl_ClickToPauseVideo(event:MouseEvent):void
{
	// video_instance_name을 비디오 구성 요소의 인스턴스 이름으로 바꿉니다.
	video_instance_name.pause();
}
]]></code>
	</snippet>

	<snippet isBranch="false">
	  <title>클릭하여 비디오 되감기</title>
	  <description>지정된 객체를 클릭하면 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[
/* 클릭하여 비디오 되감기(FLVPlayback 구성 요소 필요)
심볼 인스턴스를 클릭하면 지정한 FLVPlayback 구성 요소 인스턴스에서 비디오가 되감깁니다.

지침:
1. 아래에서 video_instance_name을 되감으려는 FLVPlayback 구성 요소의 인스턴스 이름으로 바꿉니다.
*/

instance_name_here.addEventListener(MouseEvent.CLICK, fl_ClickToPauseVideo);

function fl_ClickToPauseVideo(event:MouseEvent):void
{
	// video_instance_name을 비디오 구성 요소의 인스턴스 이름으로 바꿉니다.
	video_instance_name.seek(0);
}
]]></code>
	</snippet>

	<snippet isBranch="false">
	  <title>클릭하여 비디오 소스 설정</title>
	  <description>지정된 객체를 클릭하면 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[
/* 클릭하여 비디오 소스 설정(FLVPlayback 필요)
지정한 심볼 인스턴스를 클릭하면 지정한 FLVPlayback 구성 요소 인스턴스에서 새 비디오 파일이 재생됩니다. 지정한 FLVPlayback 구성 요소 인스턴스는 일시 정지됩니다.

지침:
1. 아래에서 video_instance_name을 새 비디오 파일을 재생하려는 FLVPlayback 구성 요소의 인스턴스 이름으로 바꿉니다.
2. "http://www.helpexamples.com/flash/video/water.flv"를 재생하려는 새 비디오 파일의 URL로 바꿉니다. 따옴표("")는 그대로 유지해야 합니다.
*/

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>클릭하여 큐 포인트 검색</title>
	  <description>지정된 객체를 클릭하면 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="큐 포인트 1" />
	  </placeholders>
	  <minASVersion>3</minASVersion>
	  <ADOBE_PIP_ID>Click_to_Seek_to_Cue_Point</ADOBE_PIP_ID>
	  <code><![CDATA[
/* 클릭하여 큐 포인트 검색(FLVPlayback 구성 요소 필요)
지정한 심볼 인스턴스를 클릭하면 지정한 FLVPlayback 구성 요소 인스턴스에서 비디오의 큐 포인트가 검색됩니다.

지침:
1. 아래에서 video_instance_name을 검색하려는 FLVPlayback 구성 요소의 인스턴스 이름으로 바꿉니다.
2. 아래에서 "Cue Point 1"을 검색하려는 큐 포인트의 이름으로 바꿉니다. 따옴표("")는 그대로 유지해야 합니다.
*/

instance_name_here.addEventListener(MouseEvent.CLICK, fl_ClickToSeekToCuePoint);

function fl_ClickToSeekToCuePoint(event:MouseEvent):void
{
	// video_instance_name을 비디오 구성 요소의 인스턴스 이름으로 바꿉니다.
	// 아래에서 "Cue Point 1"을 검색하려는 큐 포인트의 이름으로 바꿉니다.
	var cuePointInstance:Object = video_instance_name.findCuePoint("큐 포인트 1");
	video_instance_name.seek(cuePointInstance.time);
}
]]></code>
	</snippet>

	<snippet isBranch="false">
	  <title>NetStream 비디오 만들기</title>
	  <description>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[
/* NetStream 비디오 만들기
FLVPlayback 비디오 구성 요소를 사용하지 않고 스테이지의 비디오 파일을 표시합니다.

지침:

1. Adobe Flash Media Server 2와 같은 스트리밍 서버에 있는 비디오 파일에 연결하는 경우 아래에서 'null'을 비디오 파일의 URL 주소로 바꿉니다. URL 주소는 따옴표("")로 묶으십시오.
2. 로컬 비디오 파일 또는 스트리밍 서버를 사용하지 않는 비디오 파일에 연결하는 경우 아래에서 'null'을 그대로 둡니다
3. "http://www.helpexamples.com/flash/video/water.flv"를 재생하려는 비디오의 URL로 바꿉니다. 따옴표("")는 그대로 유지해야 합니다.
*/

var fl_NC:NetConnection = new NetConnection();
fl_NC.connect(null);    // 연결을 시작합니다. Flash Media Server를 사용하지 않으면 null이 사용됩니다.

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="이벤트 핸들러"
	    isBranch="true"
	    description="기본 사용자 입력을 처리하는 코드">
	<snippet isBranch="false">
	  <title>마우스 클릭 이벤트</title>
	  <description>지정된 객체를 클릭하면 사용자 정의 코드가 들어 있는 함수가 실행됩니다.</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[
/* 마우스 클릭 이벤트
지정한 심볼 인스턴스를 클릭하면 사용자 정의 코드를 추가할 수 있는 함수가 실행됩니다.

지침:
1. 아래에서 "// 사용자 정의 코드 시작" 행 다음의 새 행에 사용자 정의 코드를 추가합니다.
심볼 인스턴스를 클릭하면 이 코드가 실행됩니다.
*/

instance_name_here.addEventListener(MouseEvent.CLICK, fl_MouseClickHandler);

function fl_MouseClickHandler(event:MouseEvent):void
{
	// 사용자 정의 코드 시작
	// 이 예제 코드는 [출력] 패널에 "마우스 클릭함"이라는 문자열을 표시합니다.
	trace("마우스 클릭함");
	// 사용자 정의 코드 종료
}
]]></code>
	</snippet>

 	<snippet isBranch="false">
	  <title>마우스 커서 올려놓기 이벤트</title>
	  <description>지정된 객체 위에 마우스 커서를 올려놓으면 사용자 정의 코드가 들어 있는 함수가 실행됩니다.</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[
/* 마우스 커서 올려놓기 이벤트
심볼 인스턴스 위에 마우스 커서를 올려놓으면 사용자 정의 코드를 추가할 수 있는 함수가 실행됩니다.

지침:
1. 아래에서 "// 사용자 정의 코드 시작" 행 다음의 새 행에 사용자 정의 코드를 추가합니다.
심볼 인스턴스 위에 마우스 커서를 올려놓으면 이 코드가 실행됩니다.
*/

instance_name_here.addEventListener(MouseEvent.MOUSE_OVER, fl_MouseOverHandler);

function fl_MouseOverHandler(event:MouseEvent):void
{
	// 사용자 정의 코드 시작
	// 이 예제 코드는 [출력] 패널에 "마우스 커서 올려놓음"이라는 문자열을 표시합니다.
	trace("마우스 커서 올려놓음");
	// 사용자 정의 코드 종료
}
]]></code>
	</snippet>

	<snippet isBranch="false">
	  <title>마우스 커서 벗어남 이벤트</title>
	  <description>객체 밖으로 마우스 커서를 이동하면 사용자 정의 코드가 들어 있는 함수가 실행됩니다.</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[
/* 마우스 커서 벗어남 이벤트
심볼 인스턴스 밖으로 마우스 커서를 이동하면 사용자 정의 코드를 추가할 수 있는 함수가 실행됩니다.

지침:
1. 아래에서 "// 사용자 정의 코드 시작" 행 다음의 새 행에 사용자 정의 코드를 추가합니다.
심볼 인스턴스 밖으로 마우스 커서를 이동하면 이 코드가 실행됩니다.
*/

instance_name_here.addEventListener(MouseEvent.MOUSE_OUT, fl_MouseOutHandler);

function fl_MouseOutHandler(event:MouseEvent):void
{
	// 사용자 정의 코드 시작
	// 이 예제 코드는 [출력] 패널에 "마우스 커서 벗어남"이라는 문자열을 표시합니다.
	trace("마우스 커서 벗어남");
	// 사용자 정의 코드 종료
}
]]></code>
	</snippet>

	<snippet isBranch="false">
	  <title>키 누름 이벤트</title>
	  <description>키를 누를 때마다 실행될 함수를 할당합니다.</description>
	  <minASVersion>3</minASVersion>
	  <ADOBE_PIP_ID>Key_Pressed_Event</ADOBE_PIP_ID>
	  <code><![CDATA[
/* 키 누름 이벤트
키보드에서 아무 키를 누를 때마다 아래에 정의되어 있는 fl_KeyboardDownHandler 함수가 실행됩니다.

지침:
1. 아래에서 "// 사용자 정의 코드 시작" 행 다음의 새 행에 사용자 정의 코드를 추가합니다.
아무 키를 누를 때마다 코드가 실행됩니다.
*/

stage.addEventListener(KeyboardEvent.KEY_DOWN, fl_KeyboardDownHandler);

function fl_KeyboardDownHandler(event:KeyboardEvent):void
{
	// 사용자 정의 코드 시작
	// 이 예제 코드는 [출력] 패널에 "키 코드 눌림:" 문자열과 눌린 키의 키 코드를 표시합니다.
	trace("키 코드 눌림: " + event.keyCode);
	// 사용자 정의 코드 종료
}
]]></code>
	</snippet>

	<snippet isBranch="false">
	  <title>프레임 진입 이벤트</title>
	  <description>재생 헤드가 새 프레임으로 이동할 때마다 실행될 함수를 할당합니다.</description>
	  <minASVersion>3</minASVersion>
	  <ADOBE_PIP_ID>Enter_Frame_Event</ADOBE_PIP_ID>
	  <code><![CDATA[
/* 프레임 진입 이벤트
재생 헤드가 타임라인의 새 프레임으로 이동할 때마다 아래에 정의되어 있는 fl_EnterFrameHandler 함수를 실행합니다.

지침:
1. 아래에서 "// 사용자 정의 코드 시작" 행 다음의 새 행에 사용자 정의 코드를 추가합니다.
재생 헤드가 새 타임라인 프레임으로 이동할 때마다 코드가 실행됩니다.
*/

addEventListener(Event.ENTER_FRAME, fl_EnterFrameHandler);

function fl_EnterFrameHandler(event:Event):void
{
	//사용자 정의 코드 시작
	// 이 예제 코드는 [출력] 패널에 "프레임 진입"이라는 문자열을 표시합니다.
	trace("프레임 진입");
	// 사용자 정의 코드 종료
}
]]></code>
	</snippet>
	</category>
	<category title="모바일 터치 이벤트"
	  	isBranch="true"
	  	expanded="false"
	  	description="휴대 장치의 터치 입력을 처리하는 코드">
    <snippet isBranch="false">
      <title>두드리기 이벤트</title>
      <description>지정된 객체를 두드리면 사용자 정의 코드가 들어 있는 함수가 실행됩니다.</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[
/* 두드리기 이벤트
심볼 인스턴스를 두드리면 사용자 정의 코드를 추가할 수 있는 함수가 실행됩니다.

지침:
1. 아래에서 "// 사용자 정의 코드 시작" 행 다음의 새 행에 사용자 정의 코드를 추가합니다.
심볼 인스턴스를 두드리면 이 코드가 실행됩니다.
*/

Multitouch.inputMode = MultitouchInputMode.TOUCH_POINT;

instance_name_here.addEventListener(TouchEvent.TOUCH_TAP, fl_TapHandler);

function fl_TapHandler(event:TouchEvent):void
{
	// 사용자 정의 코드 시작
	// 다음은 두드리기 이벤트가 발생할 때마다 객체의 투명도가 반으로 줄어드는 코드 예제입니다.
	instance_name_here.alpha *= 0.5;
	// 사용자 정의 코드 종료
}
]]></code>
    </snippet>
    <snippet isBranch="false">
      <title>터치 및 드래그 이벤트</title>
      <description>누르기와 드래그로 지정된 객체를 이동할 수 있도록 허용합니다.</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[
/* 터치 및 드래그 이벤트
객체를 누른 다음 드래그하여 이동할 수 있도록 허용합니다.
*/

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>길게 누르기 이벤트</title>
      <description>1초 동안 지정된 객체를 누르면 사용자 정의 코드가 들어 있는 함수가 실행됩니다. 이 작업은 해당 객체의 메뉴를 표시하는 데 사용할 수 있습니다.</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[
/* 길게 누르기
1초 동안 객체를 누르면 사용자 정의 코드가 들어 있는 함수가 실행됩니다. 해당 객체의 컨텍스트 메뉴를 표시하는 데 이 액션을 사용할 수 있습니다.

지침:
1. 아래에서 "// 사용자 정의 코드 시작" 행 다음의 새 행에 사용자 정의 코드를 추가합니다.
*/

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

function fl_PressTimerHandler(event:TimerEvent):void
{
	// 사용자 정의 코드 시작
	// 다음은 객체의 크기를 두 배로 늘리는 코드 예제입니다.
	instance_name_here.scaleX = 2;
	instance_name_here.scaleY = 2;
	// 사용자 정의 코드 종료
}

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();
	// 사용자 정의 코드 시작
	// 다음은 객체를 원래 크기로 재설정하는 코드 예제입니다.
	instance_name_here.scaleX = 1;
	instance_name_here.scaleY = 1;
	// 사용자 정의 코드 종료
}
]]></code>
    </snippet>
    </category>
   	<category title="모바일 동작 이벤트"
	  	isBranch="true"
	  	expanded="false"
	  	description="휴대 장치의 동작 입력을 처리하는 코드">
	<snippet isBranch="false">
      <title>두 손가락 두드리기 이벤트</title>
      <description>두 손가락으로 스테이지를 두드리면 사용자 정의 코드가 들어 있는 함수가 실행됩니다.</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[
/* 두 손가락 두드리기 이벤트
스테이지를 두 손가락으로 두드리면 사용자 정의 코드를 추가할 수 있는 함수가 실행됩니다.

지침:
1. 아래에서 "// 사용자 정의 코드 시작" 행 다음의 새 행에 사용자 정의 코드를 추가합니다.
두 손가락으로 스테이지를 두드리면 코드가 실행됩니다.
*/

Multitouch.inputMode = MultitouchInputMode.GESTURE;

stage.addEventListener(GestureEvent.GESTURE_TWO_FINGER_TAP, fl_TwoFingerTapHandler);

function fl_TwoFingerTapHandler(event:GestureEvent):void
{
	// 사용자 정의 코드 시작
	// 다음은 두 손가락 두드리기 이벤트가 발생할 때마다 객체가 확대되는 코드 예제입니다.
	// 객체는 스테이지 크기의 배경이어야 합니다.
	instance_name_here.scaleX *= 2;
	instance_name_here.scaleY *= 2;
	// 사용자 정의 코드 종료
}
]]></code>
    </snippet>
	<snippet isBranch="false">
      <title>꼬집어 확대 이벤트</title>
      <description>스테이지를 꼬집으면 선택한 객체가 확대됩니다.</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[
/* 꼬집어 확대 이벤트
스테이지를 꼬집으면 선택한 객체가 확대됩니다.

지침:
1. 심볼의 등록 및 변형점은 가운데여야 합니다.
2. 심볼은 응용 프로그램의 배경이면서 스테이지의 크기와 일치해야 합니다.
*/

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>팬 이벤트</title>
      <description>스테이지에서 선택한 객체를 팬(이동)합니다. 팬할 객체는 주로 표시 영역보다 넓습니다.</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[
/* 팬 이벤트
스테이지에서 선택한 객체를 팬(이동)합니다. 팬할 객체는 주로 표시 영역보다 넓습니다.

지침:
1. 스테이지에서 모든 객체를 팬(이동)하려면 단일 컨테이너 무비 클립에 객체를 배치한 다음 해당 무비 클립에 이 코드 예제를 적용합니다.
*/

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>회전 이벤트</title>
      <description>주로 두 손가락을 시계 방향이나 시계 반대 방향으로 움직여 선택한 객체를 회전합니다.</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[
/* 회전 이벤트
주로 두 손가락을 시계 방향이나 시계 반대 방향으로 움직여 선택한 객체를 회전합니다.

지침:
1. 심볼의 등록 및 변형점은 가운데여야 합니다.
*/

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>스와이프 이벤트</title>
      <description>스테이지를 스와이프하면 사용자 정의 코드가 들어 있는 함수가 실행됩니다. 이 이벤트를 사용하여 TextField의 텍스트를 스크롤하거나 응용 프로그램의 상태를 변경할 수 있습니다.</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[
/* 스와이프 이벤트
스테이지를 스와이프하면 사용자 정의 코드가 들어 있는 함수가 실행됩니다. 이 이벤트를 사용하여 TextField의 텍스트를 스크롤하거나 응용 프로그램의 상태를 변경할 수 있습니다.

지침:
1. 아래에서 "// 사용자 정의 코드 시작" 행 다음의 새 행에 사용자 정의 코드를 추가합니다.
*/

Multitouch.inputMode = MultitouchInputMode.GESTURE;

stage.addEventListener (TransformGestureEvent.GESTURE_SWIPE, fl_SwipeHandler);

function fl_SwipeHandler(event:TransformGestureEvent):void
{
	switch(event.offsetX)
	{
		// 오른쪽으로 스와이프
		case 1:
		{
			// 사용자 정의 코드 시작
			// 다음은 선택한 객체를 20픽셀만큼 오른쪽으로 이동하는 코드 예제입니다.
			instance_name_here.x += 20;
			// 사용자 정의 코드 종료
			break;
		}
		// 왼쪽으로 스와이프
		case -1:
		{
			// 사용자 정의 코드 시작
			// 다음은 선택한 객체를 20픽셀만큼 왼쪽으로 이동하는 코드 예제입니다.
			instance_name_here.x -= 20;
			// 사용자 정의 코드 종료
			break;
		}
	}

	switch(event.offsetY)
	{
		// 아래로 스와이프
		case 1:
		{
			// 사용자 정의 코드 시작
			// 다음은 선택한 객체를 20픽셀만큼 아래로 이동하는 코드 예제입니다.
			instance_name_here.y += 20;
			// 사용자 정의 코드 종료
			break;
		}
		// 위로 스와이프
		case -1:
		{
			// 사용자 정의 코드 시작
			// 다음은 선택한 객체를 20픽셀만큼 위로 이동하는 코드 예제입니다.
			instance_name_here.y -= 20;
			// 사용자 정의 코드 종료
			break;
		}
	}
}
]]></code>
    </snippet>
  </category>
    <category title="모바일 액션"
    			isBranch="true"
    			expanded="false"
    			description="휴대 장치의 일반적인 상호 작용 코드">
    <snippet isBranch="false">
      <title>스와이프하여 다음/이전 프레임으로 이동 및 중단</title>
      <description>스테이지를 스와이프하면 재생 헤드가 타임라인에서 다음/이전 프레임으로 이동하고 중단됩니다.</description>
      <requiresSymbol>false</requiresSymbol>
      <minASVersion>3</minASVersion>
      <ADOBE_PIP_ID>Swipe_to_Go_to_Next_Previous_Frame_and_Stop</ADOBE_PIP_ID>
      <code><![CDATA[
/* 스와이프하여 다음/이전 프레임으로 이동 및 중단
스테이지를 스와이프하면 재생 헤드가 다음/이전 프레임으로 이동되고 무비가 중단됩니다.
*/

Multitouch.inputMode = MultitouchInputMode.GESTURE;

stage.addEventListener (TransformGestureEvent.GESTURE_SWIPE, fl_SwipeToGoToNextPreviousFrame);

function fl_SwipeToGoToNextPreviousFrame(event:TransformGestureEvent):void
{
	if(event.offsetX == 1)
	{
		// 오른쪽으로 스와이프
		prevFrame();
	}
	else if(event.offsetX == -1)
	{
		// 왼쪽으로 스와이프
		nextFrame();
	}
}
]]></code>
    </snippet>
    <snippet isBranch="false">
      <title>스와이프하여 다음/이전 장면으로 이동 및 재생</title>
      <description>스테이지를 스와이프하면 재생 헤드가 타임라인에서 다음/이전 장면으로 이동하고 해당 장면에서 재생을 계속합니다.</description>
      <requiresSymbol>false</requiresSymbol>
      <minASVersion>3</minASVersion>
      <ADOBE_PIP_ID>Swipe_to_Go_to_Next_Previous_Scene_and_Play</ADOBE_PIP_ID>
      <code><![CDATA[
/* 스와이프하여 다음/이전 장면으로 이동 및 재생
스테이지를 스와이프하면 재생 헤드가 타임라인에서 다음/이전 장면으로 이동하고 해당 장면에서 재생을 계속합니다.
*/

Multitouch.inputMode = MultitouchInputMode.GESTURE;

stage.addEventListener (TransformGestureEvent.GESTURE_SWIPE, fl_SwipeToGoToNextPreviousScene);

function fl_SwipeToGoToNextPreviousScene(event:TransformGestureEvent):void
{
	if(event.offsetX == 1)
	{
		// 오른쪽으로 스와이프
		prevScene();
	}
	else if(event.offsetX == -1)
	{
		// 왼쪽으로 스와이프
		nextScene();
	}
}
]]></code>
    </snippet>
    <snippet isBranch="false">
      <title>Accelerometer로 이동</title>
      <description>휴대 장치를 기울여서 객체를 이동할 수 있도록 허용합니다.</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[
/* Accelerometer로 이동
휴대 장치를 기울여서 객체를 이동할 수 있도록 허용합니다.

지침:
1. 이동량을 늘리거나 줄이려면 아래 숫자 30을 수정하여 휴대 장치를 기울일 때 심볼 인스턴스가 이동하는 픽셀 수로 바꿉니다.
아래 코드에서 숫자 30은 두 번 나타납니다.
*/

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>Deactivate/Activate 이벤트</title>
      <description>Deactivate 이벤트에서 응용 프로그램을 중단했다가 Activate 이벤트에서 응용 프로그램을 다시 시작하는 방식으로 CPU를 절약합니다.</description>
      <requiresSymbol>false</requiresSymbol>
      <minASVersion>3</minASVersion>
      <ADOBE_PIP_ID>Conserve_CPU_on_Deactivate_Activate</ADOBE_PIP_ID>
      <code><![CDATA[
/* Deactivate/Activate 이벤트
응용 프로그램이 포커스에 없는 경우 ENTER_FRAME 및 TIMER 이벤트 등의 비용이 높은 프로세스를 일시 중단하여 CPU 및 배터리 수명을 절약합니다.

지침:
1. 타이머를 시작하고 "fl_Activate"에 이벤트 리스너를 추가합니다.
2. 타이머를 중지하고 "fl_Deactivate"에서 이벤트 리스너를 제거합니다.
*/

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

function fl_Activate(event:Event):void
{
	// 여기서 타이머를 시작하고 이벤트 리스너를 추가합니다.
}

function fl_Deactivate(event:Event):void
{
	// 여기서 이벤트를 중지하고 이벤트 리스너를 제거합니다.
}
]]></code>
    </snippet>
    <snippet isBranch="false">
	  <title>메뉴 키 누름 이벤트</title>
	  <description>장치의 메뉴 키를 누르면 코드를 실행합니다.</description>
	  <minASVersion>3</minASVersion>
	  <ADOBE_PIP_ID>Menu_Key_Pressed_Event</ADOBE_PIP_ID>
	  <code><![CDATA[
/* 메뉴 키 누름 이벤트
장치의 메뉴 키를 누르면 코드를 실행하며, 옵션 메뉴를 표시하는 데 유용합니다.
템플릿에서 옵션 메뉴 샘플을 참조합니다.

지침:
1. 아래에서 "// 사용자 정의 코드 시작" 행 다음에 옵션 메뉴를 표시할 코드를 추가합니다.
2. 회색 사각형을 표시하는 코드 예제를 제거합니다.
*/

stage.addEventListener(KeyboardEvent.KEY_UP, fl_OptionsMenuHandler);

function fl_OptionsMenuHandler(event:KeyboardEvent):void
{
	if( (event.keyCode == 95) || (event.keyCode == Keyboard.MENU) )
	{
		// 사용자 정의 코드 시작
		// 이 코드 예제는 회색 사각형을 표시합니다.
		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);
		// 사용자 정의 코드 종료
	}
}
]]></code>
	</snippet>
  </category>
  <category title="모바일용 AIR"
	  			isBranch="true"
	  			expanded="false"
	  			description="AIR를 통해 사용할 수 있는 일반 모바일 액션용 코드입니다.">
  	<snippet isBranch="false">
      <title>Geolocation 표시</title>
      <description>TextField에 경도와 위도를 표시합니다.</description>
      <requiresSymbol>false</requiresSymbol>
      <minASVersion>3</minASVersion>
      <ADOBE_PIP_ID>Show_Geolocation</ADOBE_PIP_ID>
      <code><![CDATA[
/* Geolocation 표시
TextField에 경도와 위도를 표시합니다.

지침:
1. [파일] -> [AIR for Android 설정]에서 "ACCESS_FINE_LOCATION" 및 "ACCESS_COARSE_LOCATION" 권한을 활성화합니다.
*/

var fl_GeolocationDisplay:TextField = new TextField();
fl_GeolocationDisplay.autoSize = TextFieldAutoSize.LEFT;
fl_GeolocationDisplay.text = "Geolocation이 응답하지 않습니다. 장치의 위치 설정을 확인하십시오.";
addChild(fl_GeolocationDisplay);

if(!Geolocation.isSupported)
{
	fl_GeolocationDisplay.text = "이 장치에서는 Geolocation이 지원되지 않습니다.";
}
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 = "위도: ";
	fl_GeolocationDisplay.appendText(event.latitude.toString() + "\n");
	fl_GeolocationDisplay.appendText("경도: ");
	fl_GeolocationDisplay.appendText(event.longitude.toString() + "\n");
	fl_GeolocationDisplay.appendText("고도: ");
	fl_GeolocationDisplay.appendText(event.altitude.toString() + "\n");
}
]]></code>
    </snippet>
	<snippet isBranch="false">
      <title>장치 회전 시 객체 방향 재조정</title>
      <description>장치가 회전될 때 지정된 객체의 방향을 재조정합니다.</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[
/* 장치 회전 시 객체 방향 재조정
장치가 회전될 때 객체의 방향을 재조정합니다.
특정 객체의 방향을 나머지 응용 프로그램과 다르게 조정할 수 있습니다.
객체가 현재 위치에 머무르거나 응용 프로그램과 다르게 회전하도록 설정하는 데 사용할 수 있습니다.

지침:
1. [파일] -> [AIR for Android 설정]에서 "자동 방향" 옵션을 설정합니다.
*/

var fl_initialRotation = instance_name_here.rotation;	// 초기 회전 값 저장

stage.addEventListener(StageOrientationEvent.ORIENTATION_CHANGE, fl_OrientationChange);

function fl_OrientationChange(event:StageOrientationEvent):void
{
	switch (stage.deviceOrientation)
	{
		case StageOrientation.DEFAULT:
		{
			// 기본 방향(정방향)을 기준으로 표시 객체의 방향을 재조정합니다.
			instance_name_here.rotation = fl_initialRotation;	// 초기 회전 값 복원
			break;
		}
		case StageOrientation.ROTATED_RIGHT:
		{
			// 오른쪽 방향을 기준으로 표시 객체의 방향을 재조정합니다.
			instance_name_here.rotation += 90;
			break;
		}
		case StageOrientation.ROTATED_LEFT:
		{
			// 왼쪽 방향을 기준으로 표시 객체의 방향을 재조정합니다.
			instance_name_here.rotation -= 90;
			break;
		}
		case StageOrientation.UPSIDE_DOWN:
		{
			// 위/아래가 뒤집힌 방향을 기준으로 표시 객체의 방향을 재조정합니다.
			instance_name_here.rotation += 180;
			break;
		}
	}
}
]]></code>
    </snippet>
  </category>
  <category title="AIR"
	  			isBranch="true"
	  			expanded="false"
	  			description="AIR 응용 프로그램용 코드">
    <snippet isBranch="false">
      <title>클릭하여 AIR 창 닫기</title>
      <description>지정된 객체를 클릭하면 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[
/* 클릭하여 AIR 창 닫기
지정된 객체를 클릭하면 AIR 응용 프로그램이 종료됩니다.
*/
instance_name_here.addEventListener(MouseEvent.CLICK, fl_CloseWindow);

function fl_CloseWindow(event:Event):void
{
	stage.nativeWindow.close();
}
]]></code>
    </snippet>
    <snippet isBranch="false">
      <title>클릭하여 AIR 창 최소화</title>
      <description>지정된 객체를 클릭하면 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[
/* 클릭하여 AIR 창 최소화
지정된 객체를 클릭하면 AIR 응용 프로그램이 최소화됩니다.
*/
instance_name_here.addEventListener(MouseEvent.CLICK, fl_MinimizeWindow);

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

]]></code>
    </snippet>
    <snippet isBranch="false">
      <title>클릭하여 AIR 창 최대화 또는 복원</title>
      <description>지정된 객체를 클릭하면 AIR 응용 프로그램이 최대화되거나, 이미 최대화된 상태이면 이전 크기로 창이 복원됩니다.</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[
/* 클릭하여 AIR 창 최대화 또는 복원
지정된 객체를 클릭하면 AIR 응용 프로그램이 최대화되거나, 이미 최대화된 상태이면 이전 크기로 창이 복원됩니다.
*/
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>드래그하여 AIR 창 이동</title>
      <description>지정된 객체를 클릭하고 드래그하여 전체 AIR 응용 프로그램 창을 이동하도록 허용합니다.</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[
/* 드래그하여 AIR 창 이동
지정된 객체를 클릭하고 드래그하여 전체 AIR 응용 프로그램 창을 이동하도록 허용합니다.

지침:
1. 심볼은 주로 응용 프로그램의 제목 표시줄입니다.
*/
instance_name_here.addEventListener(MouseEvent.MOUSE_DOWN, fl_MoveWindow);

function fl_MoveWindow(event:Event):void
{
	stage.nativeWindow.startMove();
}
]]></code>
    </snippet>
    <snippet isBranch="false">
      <title>클릭하여 텍스트 파일 읽기</title>
      <description>지정된 객체를 클릭하면 [출력] 패널에 표시할 파일을 선택하라는 메시지가 표시됩니다.</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[
/* 클릭하여 텍스트 파일 읽기
지정한 심볼 인스턴스를 클릭하면 [출력] 패널에 표시할 파일을 선택하라는 메시지가 표시됩니다.

지침:
1. 파일에서 읽은 데이터를 사용하려면 fl_FileReadHandler 함수에 fileData 변수를 사용합니다.
*/

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
var fl_OpenFileChooser:File = File.documentsDirectory;	// 문서 디렉토리에 대한 기본값
fl_OpenFileChooser.addEventListener(Event.SELECT, fl_FileOpenSelected);

// 파일 열기의 기본 함수
function fl_OpenFile(event:MouseEvent):void
{
	fl_OpenFileChooser.browseForOpen("텍스트 파일을 선택합니다.");
}

// 파일을 읽으려면 FileStream 객체를 엽니다.
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);
}

// 파일의 데이터를 [출력] 패널에 기록
function fl_FileReadHandler(event:Event):void
{
	var fileData:String = fl_OpenFileStream.readMultiByte(fl_OpenFileStream.bytesAvailable, File.systemCharset);
	// 파일에서 로드한 데이터를 이제 fileData 변수에서 사용할 수 있습니다.
	// 다음은 파일에서 읽은 데이터를 [출력] 패널에 표시하는 코드 예제입니다.
	trace(fileData);
	fl_OpenFileStream.close();
}
]]></code>
    </snippet>
    <snippet isBranch="false">
      <title>클릭하여 텍스트 파일에 기록</title>
      <description>지정된 객체를 클릭하면 텍스트 문자열을 저장할 위치와 파일 이름을 선택하라는 메시지가 표시됩니다.</description>
      <requiresSymbol>true</requiresSymbol>
	  <placeholders>
		<placeholder
			type="stageInstance"
			text="instance_name_here" />
		<placeholder
			type="editableText"
			text="파일에 저장할 텍스트" />
	  </placeholders>
      <minASVersion>3</minASVersion>
      <ADOBE_PIP_ID>Click_to_Write_to_a_Text_File</ADOBE_PIP_ID>
      <code><![CDATA[
/* 클릭하여 텍스트 파일에 기록
지정된 객체를 클릭하면 텍스트 문자열을 저장할 위치와 파일 이름을 선택하라는 메시지가 표시됩니다.

지침:
1. 파일에 저장할 내용을 설정하려면 "파일에 저장할 텍스트"를 저장하려는 데이터로 변경합니다.
*/

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

instance_name_here.addEventListener(MouseEvent.CLICK, fl_SaveFile);

var fl_FileDataToSave:String = "파일에 저장할 텍스트";

var fl_SaveFileStream:FileStream = new FileStream();	// 파일에 기록하는 데 사용되는 FileStream

var fl_SaveFileChooser:File = File.documentsDirectory;	// 문서 디렉토리에 대한 기본값
fl_SaveFileChooser.addEventListener(Event.SELECT, fl_WriteFileHandler);

// 사용자가 파일 이름을 지정할 수 있도록 [다른 이름으로 저장] 대화 상자를 엽니다.
function fl_SaveFile(event:MouseEvent):void
{
	fl_SaveFileChooser.browseForSave("다른 이름으로 저장:");
}

// 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>환경 설정 저장 및 로드</title>
      <description>데이터를 로컬 저장소에 저장했다가 다음 시작 시 로드합니다.</description>
      <requiresSymbol>false</requiresSymbol>
      <minASVersion>3</minASVersion>
      <ADOBE_PIP_ID>Save_and_Load_Preferences</ADOBE_PIP_ID>
      <code><![CDATA[
/* 환경 설정 저장 및 로드
데이터를 로컬 저장소에 저장했다가 다음 시작 시 로드합니다.

"fl_SavePreference" 함수는 환경 설정을 저장합니다.
"fl_LoadPreference" 함수는 환경 설정을 로드합니다.
이 예제의 환경 설정에는 응용 프로그램 윈도우의 크기 및 위치와 텍스트 문자열 "Hello World"가 포함되어 있습니다.

지침:
1. 이 코드 예제를 프레임 1에 적용하여 환경 설정이 로드되도록 합니다.
2. 종료 시 환경 설정을 저장하려면 코드 예제 "클릭하여 AIR 윈도우 닫기"를 삽입하고 "fl_CloseWindow()" 함수 내에 "fl_SavePreferences();"를 배치합니다
3. "fs.writeObject"를 사용하면 "fl_SavePreference"에 추가 값을 저장할 수 있습니다.
4. "fs.writeObject"와 동일한 순서로 "fs.readObject"를 사용하면 "fl_LoadPreferences"에서 추가 값을 검색할 수 있습니다.
*/

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

// 환경 설정을 기록할 로컬 저장소의 파일 이름을 정의합니다.
var fl_ConfigFile:File = new File("app-storage:/AppConfig.cfg");
// Windows 7의 경우 C:\Users\<사용자 이름>\AppData\Roaming\<Air 응용 프로그램 이름>\Local Store\AppConfig.cfg
// Windows XP의 경우 C:\Documents and Settings\<사용자 이름>\Application Data\<Air 응용 프로그램 이름>\Local Store\AppConfig.cfg
// Mac의 경우 /Users/<사용자 이름>/Library/Preferences/<Air 응용 프로그램 이름>/Local Store/AppConfig.cfg

// TextField를 만들어 환경 설정에 저장된 문자열을 표시합니다.
var fl_AppPreference = new TextField();
addChild(fl_AppPreference);

fl_LoadPreferences();	// 환경 설정을 로드하도록 호출
fl_SavePreferences();	// 환경 설정을 저장하도록 호출(환경 설정을 저장하려는 위치로 이를 이동)

// 구성 파일에 환경 설정 기록
function fl_SavePreferences():void
{
	// 기록할 수 있도록 환경 설정 파일 열기
	var fs:FileStream = new FileStream();
	fs.open(fl_ConfigFile, FileMode.UPDATE);


	// 창 크기 및 위치 저장
	fs.writeObject(stage.nativeWindow.bounds);

	// "Hello World" 문자열 저장
	fs.writeObject("Hello World");

	// 여기에 다른 값을 추가하여 저장할 수 있습니다.

	fs.close();
}

// 구성 파일에서 환경 설정 읽기
function fl_LoadPreferences():void
{
	if (fl_ConfigFile.exists)
	{
		// 읽을 수 있도록 환경 설정 파일 열기
		var fs:FileStream = new FileStream();
		fs.open(fl_ConfigFile, FileMode.READ);

		// 스테이지 크기와 위치를 로드하고 복원합니다.
		var savedBounds:Object = fs.readObject();
		stage.nativeWindow.bounds = new Rectangle(savedBounds.x, savedBounds.y, savedBounds.width, savedBounds.height);

		var dataString:String = String(fs.readObject());	// 환경 설정 파일에서 텍스트 문자열을 로드합니다.
		fl_AppPreference.text = dataString;					// 로드한 텍스트를 텍스트 필드에 표시합니다.

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