class FsThumbnail { var _showTitle, _photoTitleColor, _hoverPhotoTitleColor, _movieWidth, _movieHeight, _autoScroll, _thumbnailWidth, _thumbnailHeight, _thumbnailBorderSize, _thumbnailBorderColor, _curveSize, _padding, _paddingColor, _thumbnailSpace, _parentMc, _depth, _globalPath, _enableURL, _URLTarget, _thumbnailCount, thumBright, thumBox, who, hitTest; function FsThumbnail(enableURL, URLTarget, thumbnailSpace, paddingColor, padding, curveSize, thumbnailBorderColor, thumbnailBorderSize, thumbnailHeight, autoScroll, thumbnailWidth, photoUrlArray, photoTitleArray, movieWidth, movieHeight, depth, parentMc, showTitle, photoTitleColor, hoverPhotoTitleColor, photoThumbnailArray, globalPath) { function drawRoundBox(mcName, radius, mcX, mcY, mcW, mcH, borderColor, borderSize, fillColor) { mcName.lineStyle(borderSize, borderColor, 100, true); mcName.beginFill(fillColor, 100); mcName.moveTo(mcX + radius, mcY); mcName.lineTo(mcX + (mcW - radius), mcY); mcName.curveTo(mcX + mcW, mcY, mcX + mcW, mcY + radius); mcName.lineTo(mcX + mcW, mcY + (mcH - radius)); mcName.curveTo(mcX + mcW, mcY + mcH, mcX + (mcW - radius), mcY + mcH); mcName.lineTo(mcX + radius, mcY + mcH); mcName.curveTo(mcX, mcY + mcH, mcX, mcY + (mcH - radius)); mcName.lineTo(mcX, mcY + radius); mcName.curveTo(mcX, mcY, mcX + radius, mcY); mcName.endFill(); } // End of the function this._showTitle = showTitle; this._photoTitleColor = photoTitleColor; this._hoverPhotoTitleColor = hoverPhotoTitleColor; this._photoUrlArray = photoUrlArray; this._photoTitleArray = photoTitleArray; this._movieWidth = movieWidth; this._movieHeight = movieHeight; this._photoThumbnailArray = photoThumbnailArray; this._autoScroll = autoScroll; this._thumbnailWidth = thumbnailWidth; this._thumbnailHeight = thumbnailHeight; this._thumbnailBorderSize = thumbnailBorderSize; this._thumbnailBorderColor = thumbnailBorderColor; this._curveSize = curveSize; this._padding = padding; this._paddingColor = paddingColor; this._thumbnailSpace = thumbnailSpace; this._parentMc = parentMc; this._depth = depth; this._globalPath = globalPath; this._enableURL = enableURL; this._URLTarget = URLTarget; var thumbnailCount = photoThumbnailArray.length; this._thumbnailCount = thumbnailCount; var owner = this; if (autoScroll == "false") { owner._scrollSpeed = 0; } // end if owner.thumHitMovieMc = parentMc.createEmptyMovieClip("thumHitMovieMc", depth - 1); owner.thumbnailBoxMc = parentMc.createEmptyMovieClip("thumbnailBoxMc", depth); with (owner.thumHitMovieMc) { beginFill(0, 0); moveTo(0, 0); lineTo(thumbnailCount * (thumbnailWidth + thumbnailSpace + padding * 2 + thumbnailBorderSize * 2) + thumbnailSpace, 0); lineTo(thumbnailCount * (thumbnailWidth + thumbnailSpace + padding * 2 + thumbnailBorderSize * 2) + thumbnailSpace, thumbnailHeight + padding * 2 + thumbnailBorderSize * 2); lineTo(0, thumbnailHeight + padding * 2 + thumbnailBorderSize * 2); lineTo(0, 0); endFill(); } // End of with owner.thumbnailBoxMc._x = owner._thumbnailSpace; owner.thumbnailBoxMc._y = (owner._movieHeight - (owner._thumbnailHeight + owner._padding * 2 + owner._thumbnailBorderSize * 2 + 15)) / 2; var i = 0; while (i < thumbnailCount) { var thumMc = owner.thumbnailBoxMc.createEmptyMovieClip("thumsMc" + i, i + 1); thumMc.who = i; thumMc.thumBright = 0; var thumBack = thumMc.createEmptyMovieClip("thumBack", 1); var thumMask = thumMc.createEmptyMovieClip("thumMask", 3); if (owner._showTitle == "true") { var titleField = thumMc.createTextField("titleField", 4, 0, owner._thumbnailHeight + padding + thumbnailBorderSize, owner._thumbnailWidth + padding * 2 + thumbnailBorderSize * 2, 20); titleField.selectable = false; titleField.wordWrap = true; var titleFmt = new TextFormat(); titleFmt.color = owner._photoTitleColor; titleFmt.size = 12; titleFmt.font = "Verdana"; titleFmt.align = "center"; titleField.text = owner._photoTitleArray[i]; titleField.setTextFormat(titleFmt); var thumBackHeight = owner._thumbnailHeight + padding * 2 + thumbnailBorderSize * 2 + 15; } else { var thumBackHeight = owner._thumbnailHeight + padding * 2 + thumbnailBorderSize * 2; } // end else if drawRoundBox(thumMask, owner._curveSize, 0, 0, owner._thumbnailWidth, owner._thumbnailHeight, owner._thumbnailBorderColor, 0, 16777215); drawRoundBox(thumBack, owner._curveSize, 0, 0, owner._thumbnailWidth + padding * 2 + thumbnailBorderSize * 2, thumBackHeight, owner._thumbnailBorderColor, owner._thumbnailBorderSize, owner._paddingColor); thumMask._x = padding + thumbnailBorderSize; thumMask._y = padding + thumbnailBorderSize; thumMc.onRollOver = function () { function onEnterFrame() { if (thumBright < 80) { thumBright = thumBright + 5; } else { delete this.onEnterFrame; } // end else if thumBox.setBrightOffset(thumBright); } // End of the function }; thumMc.onRollOut = function () { function onEnterFrame() { if (thumBright > 0) { thumBright = thumBright - 5; } else { delete this.onEnterFrame; } // end else if thumBox.setBrightOffset(thumBright); } // End of the function }; thumMc.onReleaseOutside = function () { function onEnterFrame() { if (thumBright > 0) { thumBright = thumBright - 5; } else { delete this.onEnterFrame; } // end else if thumBox.setBrightOffset(thumBright); } // End of the function }; var targetStr; switch (owner._URLTarget[thumMc.who]) { case "0": { targetStr = "_blank"; break; } case "1": { targetStr = "_parent"; break; } case "2": { targetStr = "_self"; break; } case "3": { targetStr = "_top"; break; } default: { targetStr = "_blank"; break; } } // End of switch if (owner._enableURL == "true") { if (owner._photoUrlArray[thumMc.who] != "") { thumMc.onRelease = function () { getURL(owner._photoUrlArray[who], targetStr); }; } // end if } // end if thumMc._x = i * (thumbnailWidth + thumbnailSpace + padding * 2 + thumbnailBorderSize * 2); var thumBox = thumMc.createEmptyMovieClip("thumBox", 2); var my_mcl = new MovieClipLoader(); var myListener = new Object(); myListener.onLoadInit = function (target_mc) { target_mc._width = thumbnailWidth; target_mc._height = thumbnailHeight; target_mc.setMask(target_mc._parent.thumMask); }; my_mcl.addListener(myListener); my_mcl.loadClip(owner._globalPath + photoThumbnailArray[i], thumBox); thumBox._x = padding + thumbnailBorderSize; thumBox._y = padding + thumbnailBorderSize; ++i; } // end while if (thumbnailCount * (thumbnailWidth + thumbnailSpace + padding * 2 + thumbnailBorderSize * 2) + thumbnailSpace >= movieWidth) { owner.thumbnailBoxMc1 = parentMc.createEmptyMovieClip("thumbnailBoxMc1", depth + 1); owner.thumbnailBoxMc1._y = (owner._movieHeight - (owner._thumbnailHeight + owner._padding * 2 + owner._thumbnailBorderSize * 2 + 15)) / 2; var i = 0; while (i < thumbnailCount) { var thumMc = owner.thumbnailBoxMc1.createEmptyMovieClip("thumsMc" + i, i + 1); thumMc.who = i; thumMc.thumBright = 0; var thumBack = thumMc.createEmptyMovieClip("thumBack", 1); var thumMask = thumMc.createEmptyMovieClip("thumMask", 3); if (owner._showTitle == "true") { var titleField = thumMc.createTextField("titleField", 4, 0, owner._thumbnailHeight + padding + thumbnailBorderSize, owner._thumbnailWidth + padding * 2 + thumbnailBorderSize * 2, 20); titleField.selectable = false; titleField.wordWrap = true; var titleFmt = new TextFormat(); titleFmt.color = owner._photoTitleColor; titleFmt.size = 12; titleFmt.font = "Verdana"; titleFmt.align = "center"; titleField.text = owner._photoTitleArray[i]; titleField.setTextFormat(titleFmt); var thumBackHeight = owner._thumbnailHeight + padding * 2 + thumbnailBorderSize * 2 + 15; } else { var thumBackHeight = owner._thumbnailHeight + padding * 2 + thumbnailBorderSize * 2; } // end else if drawRoundBox(thumMask, owner._curveSize, 0, 0, owner._thumbnailWidth, owner._thumbnailHeight, owner._thumbnailBorderColor, 0, 16777215); drawRoundBox(thumBack, owner._curveSize, 0, 0, owner._thumbnailWidth + padding * 2 + thumbnailBorderSize * 2, thumBackHeight, owner._thumbnailBorderColor, owner._thumbnailBorderSize, owner._paddingColor); thumMask._x = padding + thumbnailBorderSize; thumMask._y = padding + thumbnailBorderSize; thumMc.onRollOver = function () { function onEnterFrame() { if (thumBright < 80) { thumBright = thumBright + 5; } else { delete this.onEnterFrame; } // end else if thumBox.setBrightOffset(thumBright); } // End of the function }; thumMc.onRollOut = function () { function onEnterFrame() { if (thumBright > 0) { thumBright = thumBright - 5; } else { delete this.onEnterFrame; } // end else if thumBox.setBrightOffset(thumBright); } // End of the function }; thumMc.onReleaseOutside = function () { function onEnterFrame() { if (thumBright > 0) { thumBright = thumBright - 5; } else { delete this.onEnterFrame; } // end else if thumBox.setBrightOffset(thumBright); } // End of the function }; var targetStr; switch (owner._URLTarget[thumMc.who]) { case "0": { targetStr = "_blank"; break; } case "1": { targetStr = "_parent"; break; } case "2": { targetStr = "_self"; break; } case "3": { targetStr = "_top"; break; } default: { targetStr = "_blank"; break; } } // End of switch if (owner._enableURL == "true") { if (owner._photoUrlArray[thumMc.who] != "") { thumMc.onRelease = function () { getURL(owner._photoUrlArray[who], targetStr); }; } // end if } // end if thumMc._x = i * (thumbnailWidth + thumbnailSpace + padding * 2 + thumbnailBorderSize * 2); var thumBox = thumMc.createEmptyMovieClip("thumBox", 2); var my_mcl = new MovieClipLoader(); var myListener = new Object(); myListener.onLoadInit = function (target_mc) { target_mc._width = thumbnailWidth; target_mc._height = thumbnailHeight; target_mc.setMask(target_mc._parent.thumMask); ++owner._createThumsCount; if (owner._createThumsCount == thumbnailCount - 1) { owner.autoScroll(); } // end if }; my_mcl.addListener(myListener); my_mcl.loadClip(owner._globalPath + photoThumbnailArray[i], thumBox); thumBox._x = padding + thumbnailBorderSize; thumBox._y = padding + thumbnailBorderSize; ++i; } // end while } // end if owner.thumbnailBoxMc1._x = owner._thumbnailCount * (owner._thumbnailWidth + owner._padding * 2 + owner._thumbnailBorderSize * 2 + owner._thumbnailSpace) + owner._thumbnailSpace; MovieClip.prototype.setBrightOffset = function (offset) { var This = new Color(this); var trans = This.getTransform(); with (trans) { rb = gb = bb = offset; } // End of with This.setTransform(trans); }; } // End of the function function autoScroll() { function autoScroll() { if (owner._scrollFX == "left") { owner.thumbnailBoxMc._x = owner.thumbnailBoxMc._x - owner._scrollSpeed; owner.thumbnailBoxMc1._x = owner.thumbnailBoxMc1._x - owner._scrollSpeed; if (owner.thumbnailBoxMc._x <= 0) { owner.thumbnailBoxMc1._x = owner.thumbnailBoxMc._x + owner.thumbnailBoxMc._width + owner._thumbnailSpace - 3; } // end if if (owner.thumbnailBoxMc1._x <= 0) { owner.thumbnailBoxMc._x = owner.thumbnailBoxMc1._x + owner.thumbnailBoxMc1._width + owner._thumbnailSpace - 3; } // end if } else { owner.thumbnailBoxMc._x = owner.thumbnailBoxMc._x + owner._scrollSpeed; owner.thumbnailBoxMc1._x = owner.thumbnailBoxMc1._x + owner._scrollSpeed; if (owner.thumbnailBoxMc._x >= 0) { owner.thumbnailBoxMc1._x = owner.thumbnailBoxMc._x - owner.thumbnailBoxMc1._width - owner._thumbnailSpace + 3; } // end if if (owner.thumbnailBoxMc1._x >= 0) { owner.thumbnailBoxMc._x = owner.thumbnailBoxMc1._x - owner.thumbnailBoxMc1._width - owner._thumbnailSpace + 3; } // end if } // end else if } // End of the function var owner = this; owner.autoScrollInterval = setInterval(autoScroll, 30); owner.thumHitMovieMc.onEnterFrame = function () { if (this.hitTest(_xmouse, _ymouse, false)) { owner._scrollSpeed = Math.abs((owner._parentMc._xmouse - owner._movieWidth / 2) / 50); if (owner._parentMc._xmouse < owner._movieWidth / 2) { owner._scrollFX = "right"; } else { owner._scrollFX = "left"; } // end else if } else if (owner._autoScroll == "true") { owner._scrollSpeed = 1.500000E+000; } else { owner._scrollSpeed = 0; } // end else if }; } // End of the function var _photoUrlArray = Array(); var _photoTitleArray = Array(); var _photoThumbnailArray = Array(); var _createThumsCount = 0; var _scrollSpeed = 1; var _scrollFX = "left"; } // End of Class