scaleform.minarto.com

CLIK 0 본문

CLIK

CLIK 0

미나토 2012. 2. 9. 11:54


전에 포스팅했던 Tween 성능 비교 글에서 CLIK 을 고려해봐야 한다는 말을 했습니다.


저도 사실 CLIK 을 안썼습니다.
정확히는 제가 플렉스는 경험이 없는데다가, 컴포넌트는 느려...라는 생각에 멀리하다보니 컴포넌트는 거의(한번도) 써보지를 않았습니다.

하지만 게임 업계에서 UI를 만들다보니 좀 생각이 바꼈습니다. 계속해서 UI를 엎어야 하거든요...ㅡ.,ㅡ;;;
이런 상황에서 빨리 잘(정확히는 나쁘지 않게) 만들 수 있는데 왜 안쓰나입니다.


그래서 클릭에 관한 글도 조금씩 올려보려 합니다.


클릭은 (click 이 아니랍니다) 스케일폼에서 제공하는 UI component 들을 말합니다. 3.0 대의 클릭은 gs스키너 그룹에서 만들어 제공했는데, 4.0 대도 그런지는 잘 모르겠습니다.


일단 시작하기에 앞서 해둬야 할 것들이 있습니다.

4.0 버전대의 클릭은 이녀석들이 만들다 말았어요. FDT같이 강력한 문법체크를 하는 에디터에서 열어보면 오류 메세지를 마구마구 뿜어냅니다.

일단 플젝을 하나 만들고선 소스에 UDK (현재 1월 버전) 에 있는 클릭관련 소스들(제 컴 기준으로는 C:\UDK\UDK-2012-01\Development\Flash\AS3\CLIK 이 폴더입니다) 중 scaleform.clik.* 패키지와 scaleform.gfx.* 패키지를 넣어보면요... 크게 3군데의 오타가 있습니다



1. scaleform.clik.controls.Button

[Event(name="buttonRepeat", type="scaleform.clik.event.ButtonEvent")]



위의 메타태그를 아래와 같이 고쳐야 합니다 

[Event(name="buttonRepeat", type="scaleform.clik.events.ButtonEvent")]




2. scaleform.clik.data.DataBinding

public static var createBindingImpl:Object;
public static var deleteBindingImpl:Object;

데이터 형을 다음과 같이 바꿔줍니다. 이건 오타라고는 할 수 없으나 FDT5에서 문법오류 기본값 세팅시 에러를 뿜어내기 때문에 고쳐주시는게 낫습니다. (뭐, 세팅값을 바꾼다면야...)

public static var createBindingImpl:*;
public static var deleteBindingImpl:*; 


3. scaleform.clik.managers.FocusHandler

 [Event(name="input", type="gfx.events.InputEvent")]


 
이번에도 메타태그 문제입니다. 아무래도 이녀석들 문법체크 안하나 봅니다. 다음과 같이 바꿔줍니다.

 [Event(name="input", type="scaleform.clik.events.InputEvent")]



4. scaleform.clik.constants.LayoutMode

public static const ALIGN_NONE = "none";
public static const ALIGN_LEFT = "left";
public static const ALIGN_RIGHT = "right";
public static const ALIGN_CENTER = "center";
public static const ALIGN_TOP = "top";
public static const ALIGN_BOTTOM = "bottom";


상수형 선언에 데이터형이 없네요. 다음과 같이 고쳐줍니다
 

public static const ALIGN_NONE:String = "none";
public static const ALIGN_LEFT:String = "left";
public static const ALIGN_RIGHT:String = "right";
public static const ALIGN_CENTER:String = "center";
public static const ALIGN_TOP:String = "top";
public static const ALIGN_BOTTOM:String = "bottom";




이 친구들이 왜 대충만들었냐고 말하는거냐면 UDK 11월 버전, 12월 버전, 1월 버전에도 있는 문제거든요. 안고쳐요...

일단 여기까지 해두고 나면 일단 에러메세지는 사라집니다. 에러 이외의 워닝 메세지들은 알아서들 세팅해주세요... 그건 컴파일 에러는 나질 않으니까요...

이거 말고도 swc로 컴파일해보면 엄청나게 많습니다... 다 고쳐주세요...


CLIK 첫 글이니 일단 오타 수정정도로만  시작하죠...

p.s. 자주 봐두면 좋은 곳 http://flexdocs.kr/docs/flex2/langref/langref.html 공식레퍼 사이트는 콤포넌트 쪽이 한글화가 안되있어서리...