evt.onPress = function() {
// start dragging the current clip.
this.startDrag();
/* set the _xscale and _yscale properties back to 100% so the image appears full sized.
You're also storing the original X and Y coordinates so you can return the image where you found it. */
this._xscale = 100;
this._yscale = 100;
this.origX = this._x;
this.origY = this._y;
// find the depth of the current movie clip, and store it within the movie clip.
this.origDepth = this.getDepth();
/* :TRICKY: swap the depth of the current movie clip, with the next highest movie clip of the _parent.
Effectively this makes the current movie clip the top of the "stack". */
this.swapDepths(this._parent.getNextHighestDepth());
// try and center the current movie clip on the Stage.
this._x = (_global.stageWidth-evt._width+30)/2;
this._y = (_global.stageHeight-evt._height+30)/2;
// apply a transition to the movie clip which makes the movie clip flicker for a split second.
mx.transitions.TransitionManager.start(this, {type:mx.transitions.Photo, direction:0, duration:1, easing:mx.transitions.easing.Strong.easeOut, param1:empty, param2:empty});
};
/* when the movie clip instance is released, stop dragging the movie clip.
Reset the _xscale and _yscale properties as well as the _x and _y coordinates. */
evt.onRelease = function() {
this.stopDrag();
this._xscale = this.scale;
this._yscale = this.scale;
this._x = this.origX;
this._y = this.origY;
};