![Antiguo](http://static.forosdelweb.com/fdwtheme/images/statusicon/post_old.gif)
11/04/2010, 07:21
|
| | Fecha de Ingreso: marzo-2010 Ubicación: Córdoba, Argentina
Mensajes: 21
Antigüedad: 14 años, 10 meses Puntos: 0 | |
Respuesta: Necesito ayuda de un experto en ActionScript Archivo Thumbnail.as
Código:
import flash.display.BitmapData;
class oxylus.carousel.Thumbnail extends MovieClip {
private var Brd:MovieClip;
private var Msk:MovieClip;
private var Img:MovieClip;
private var Rfl:MovieClip;
private var RMsk:MovieClip;
private var Tip:MovieClip;
private var w:Number;
private var h:Number;
private var _reflections:Boolean = true;
private var _showBorder:Boolean = true;
private var _showTooltip:Boolean = true;
private var node:XMLNode;
private var mcl:MovieClipLoader;
public var onMouseOver:Function;
public var onMouseOut:Function;
public function Thumbnail() {
Brd = this["mc0"];
Msk = this["mc1"];
Tip = this["mc2"];
Tip._alpha = 0;
Img = this.createEmptyMovieClip("_img_", this.getNextHighestDepth());
Img._x = Msk._x;
Img._y = Msk._y;
Img._alpha = 0;
w = Msk._width;
h = Msk._height;
Msk._alpha = 0;
this.hitArea = Msk;
Brd._alpha = 0;
this._visible = false;
mcl = new MovieClipLoader();
}
private function fadeTo(mc:MovieClip, al:Number) {
var p:Number = 10;
mc.onEnterFrame = function() {
if (Math.abs(this._alpha-al)<=p) {
this._alpha = al;
delete this.onEnterFrame;
return;
}
if (this._alpha>al) {
this._alpha -= p;
} else {
this._alpha += p;
}
};
}
private function onRollOver() {
if (_showBorder) {
fadeTo(Brd, 100);
}
if (_showTooltip) {
fadeTo(Tip, 100);
}
onMouseOver.call(this);
}
private function onRollOut() {
if (_showBorder) {
fadeTo(Brd, 0);
}
if (_showTooltip) {
fadeTo(Tip, 0);
}
onMouseOut.call(this);
}
private function onRelease() {
getURL(node.attributes.link, node.attributes.target);
}
private function onReleaseOutside() {
onRollOut();
}
public function setData(n:XMLNode, s:XMLNode) {
node = n;
_reflections = s.attributes.reflections == "yes";
_showBorder = s.attributes.showBorder == "yes";
_showTooltip = s.attributes.showTooltip == "yes";
if (_showTooltip) {
var TipBody:MovieClip = Tip["mc0"];
var TipText:TextField = Tip["mc1"];
TipText.autoSize = "center";
TipText.text = node.attributes.tooltip;
TipBody._width = Math.round(TipText._width);
TipBody._x = -Math.round(TipBody._width/2);
} else {
Tip.swapDepths(this.getNextHighestDepth());
Tip.removeMovieClip();
}
var buf:MovieClip = this.createEmptyMovieClip("_buf_", this.getNextHighestDepth());
buf._visible = false;
mcl.addListener(this);
mcl.loadClip(node.attributes.src, buf);
}
private function onLoadInit(buf) {
var bd:BitmapData = new BitmapData(w, h, true, 0);
bd.draw(buf);
buf.removeMovieClip();
Img.attachBitmap(bd, Img.getNextHighestDepth(), "auto", true);
fadeTo(Img, 100);
if (_reflections) {
Rfl = this.createEmptyMovieClip("_ref_", this.getNextHighestDepth());
Rfl.attachBitmap(bd, Rfl.getNextHighestDepth());
Rfl._alpha = 0;
Rfl._yscale = -100;
Rfl._x = Img._x;
Rfl._y = Img._y+2*h;
Rfl.cacheAsBitmap = true;
RMsk = this.attachMovie("TransparencyMask", "_ref_msk_", this.getNextHighestDepth());
RMsk.cacheAsBitmap = true;
RMsk._alpha = 20;
RMsk._width = w;
RMsk._height = h/3;
RMsk._x = Img._x;
RMsk._y = Img._y+h;
Rfl.setMask(RMsk);
fadeTo(Rfl, 100);
}
this._visible = true;
}
public function get width() {
return w;
}
public function get height() {
return h;
}
}
|