2009년 06월 18일
Flash Extention:: 플래시 라이브러리 패널 안의 심볼의 클래스명을 지정하는 익스텐션
잘은 몬하지만 요즘 회사서 플래시보다 플렉스를 쓰는 경우가 많아졌다.
플렉스가 월등 개발하기에 편리하긴하지만 아쉬운 것은 드로잉 도구랑은 담싼 개념이다 보니
디자이너가 이쁘게 만든 UI 디자인을 입히기 위해서 플래시를 띄우고 거기서 만들어주는 경우가 많다고나 할까.
여기서 이 익스텐션의 개발 욕구는 태어나게 된 것이니..
디자인적인 요소가 많고 내부적으로 짜잘한 코드가 있는 경우에는
Flex Component Kit for Flash CS3 라는 것을 이용해서 내가 만든 UI가 포함된 콘트롤들을 플렉스용 컴포넌트로 컨버팅을 해서 사용한다.
Flex Component Kit for Flash CS3 익스텐션을 설치하게 되면 플렉스용 컴포넌트와 컨테이너로 변환하도록 설정을 변경해주는 두 가지 커맨드가 생기는데
대충 변환하는 절차는 이렇다.
1. 라이브러리에서 플렉스용 컴포넌트로 변환할 무비클립 선택
2. Command -> Convert Symbol to Flex Component
3. 컴파일해서 swc를 플렉스 프로젝트의 포함
2번 과정을 거치게 되어 라이브러리에서 선택한 심볼의 링키지 프로퍼티를 살펴보면
Class 란에는 심볼의 이름이 그대로 사용이 되고(물론 띄어쓰기는 다 제거된다)
Base Class 란에 mx.flash.UIMovieClip 이 자리잡게 된다.
플래시로 처음에 개발할 때 Class가 myControls.MySprite 라는 식으로 지정을 했어도
2번 변환 과정을 거치면서 myControls.MySprite 라는 "패키지경로.클래스네임"의 유형이 사라지고 심볼의 이름으로 변신을 하게 된다.
그래서 그것을 수정하려고 정상적은 클래스 경로를 넣게 되면 베이스 클래스가 어쩌구 저쩌구 하면서 수정이 되지 않는 골때리는 상황이 간혹 벌어지기도 한다.
그림으로 살펴보면 아래 순서인 것이다.
1. TestBox 라는 무비클립을 controls.Box 라는 외부 클래스(controls/Box.as)와 연결을 시켜두었다.


3. 2번 그림의 Class 란의 TestBox라는 클래스 경로를 controls.Box로 수정하고 OK 눌렀더니 아래와 같은 경고창이 뜨면서 바뀌지 않는다.

안되겠다 싶어서 jsfl 깨작거려서 익스텐션 하나 만들었다.
Setting Linkage Properties 라는 이름으로 만들었지만 머 별거 없고 이름바꿔주는것이다.
첨부된 익스텐션을 설치하면 Commands 메뉴에 Setting Linkage Properties 라는 명령이 추가되고. 그것을 실행하면
4. 아래 그림과 같은 창이 뜬다. 여기서 Class와 Base Class 란을 모두 수정하고 OK를 누르면


익스텐션 다운 : LinkageProperties.mxp
이 글과 관련있는 글을 자동검색한 결과입니다 [?]
- 컴포넌트의 부작용(?) by 시즈하
- 예제로 배우는 Adobe 플렉스 2.. by 미친병아리
- 2.Getting Started 동영상 강의 정리본 by 농사꾼봉팔
- RIA 세상으로의 초대 by skyforce
# by | 2009/06/18 15:35 | Flash Extention | 트랙백 | 덧글(2)







☞ 내 이글루에 이 글과 관련된 글 쓰기 (트랙백 보내기) [도움말]
옌날 플래시와는 천지차인지라..
그림판이 비쥬얼스튜디오가 되었다~~ 인거죠