/**
* ImageViewer
* An on-screen rectangular region for displaying a loaded image.
* Updates at:
http://www.oops4u.com/blog/as2/imageviewer5/
*
* @author: Oops4u.com
* @version: 5.0.0
*/
/**
* 화면 영역의 위치와 크기를 재설정 할 수 있는 ImageViewer의 서브클래스
*/
// ImageViewer 클래스의 인스턴스 생성방법 유지
class ImageViewerDeluxe extends ImageViewer {
public function ImageViewerDeluxe ( target:MovieClip, depth:Number, x:Number, y:Number, w:Number, h:Number, borderThickness:Number, borderColor:Number ) {
// ImageViewer 클래스의 생성자를 실행
super ( target, depth, x, y, w, h, borderThickness, borderColor );
}
// 이미지 크기를 자동으로 조정할지 여부를 결정하는 속성
private var showFullImage:Boolean = false;
/**
* 화면 영역의 위치를 설정
*
* @param x: 화면의 가로 위치
* @param y: 화면의 세로 위치
*/
public function setPosition ( x:Number, y:Number ) {
container_mc._x = x;
container_mc._y = y;
}
/**
* 화면 영역의 크기를 설정 (즉, 마스크와 경계선 재설정)
*
* @param w: 새로운 화면의 가로 길이, 픽셀
* @param h: 새로운 화면의 세로 길이, 픽셀
*/
public function setSize ( w:Number, h:Number ) {
createImageClipMask ( w, h );
createBorder ( w, h );
container_mc.image_mc.setMask ( container_mc.mask_mc );
}
/**
* 로드된 이미지의 가로 길이를 구하는 메소드
*/
public function getImageWidth ( ):Number {
return container_mc.image_mc._width;
}
/**
* 로드된 이미지의 세로 길이를 구하는 메소드
*/
public function getImageHeight ( ):Number {
return container_mc.image_mc._height;
}
/**
* 전체/일부 이미지 표시 여부를 결정하는 속성을 변경하는 메소드
*
* @param show: 화면 영역의 크기를 재설정할지 여부를 나타내는 속성
*/
public function setShowFullImage ( show:Boolean ):Void {
showFullImage = show;
}
/**
* 전체/일부 이미지 표시 여부를 결정하는 속성을 알아내는 메소드
*/
public function getShowFullImage ( ):Boolean {
return showFullImage;
}
/**
* 전체 이미지가 보이도록 화면 영역을 조정하는 메소드
*/
public function scaleViewerToImage ( ):Void {
setSize ( getImageWidth ( ), getImageHeight ( ) );
}
/**
* MovieClipLoader 핸들러. 로딩이 완료되면 동작
* 자동크기 조정 기능을 추가하여 ImageViewer.onLoadInit() 메소드를 오버라이드 함
*/
public function onLoadInit ( target:MovieClip ):Void {
super.onLoadInit ( target );
if ( showFullImage ) {
scaleViewerToImage ( );
}
}
}
var viewer:ImageViewerDeluxe = new ImageViewerDeluxe ( this, 1, 50, 50, 350, 250, 2, 0xFF0000 );
viewer.setShowFullImage ( true );
viewer.loadImage ( "picture.jpg" );
loadmsg_txt.removeTextField ( );