hi again. best wishes for the new year and so (1 week late) but hey.
as i am working on this slideshow i’ve encountered a problem.
for some reason i can’t seem to get my left button to appear when there are for example 3 pages and you pressed the next page button.
maybe a strange formula to explain a problem. but i hope someone can help me. i’ve include the total code. at the bottom you find the code to show/hide
when entering the gallery, the previous button doesn’t show up. that good
but then when i press the next button, the code should show the prev. button. and hide the next button on the last page. i tried to implent an older code that worked fine. but it doesn’t with this one
plz help thanx
// SETTING VARIABLES
currentpage = 1;
_global.whichalbum = 1;
naamvanalbum = this.imageList_xml.firstChild.childNodes.attributes.albumname;
bigframew = 700;
bigframeh = 432;
//////////////////////////////////
function scalerf(w,h)
{
diffw = (w-bigframew);
diffh = (h-bigframeh);
if(diffw<=0&&diffh<=0)
{
scaler = 1 * 100;
}
else if (diffw==Math.max(diffw,diffh)) //scale to height
{
scaler = (bigframew/w) * 100;
}
else if (diffh==Math.max(diffw,diffh)) //scale to width
{
scaler = (bigframeh/h) * 100;
}
return scaler;
}
//LOADCLIP ACTIVITIES
_root.createEmptyMovieClip("looploop",-1000);
var my_mcl = new MovieClipLoader();
myListener = new Object();
myListener.onLoadStart = function (target_mc)
{
var loadProgress = my_mcl.getProgress(target_mc);
}
myListener.onLoadProgress = function (target_mc, loadedBytes, totalBytes)
{
////////////////////////////////////////////////////////
// FOR PRELOADER PURPOSES
loaded = loadedBytes;
total = totalBytes;
percentage = Math.round(100*(loaded/total));
progressbar_mc.progresser_mc._xscale = percentage;
////////////////////////////////////////////////////////
}
myListener.onLoadComplete = function (target_mc)
{
var loadProgress = my_mcl.getProgress(target_mc);
imageframe_mc.hold._alpha=0;
velo = 0;
imageframe_mc.hold.onEnterFrame = function()
{
w = imageframe_mc.hold._width;
h = imageframe_mc.hold._height;
if(w!=0&&h!=0)
{
scaler = scalerf(w,h);
if(scaler!=100)
{
imageframe_mc.hold._xscale = scaler;
imageframe_mc.hold._yscale = scaler;
}
imageframe_mc.hold._x = (bigframew - (w*(scaler/100)))/2;
imageframe_mc.hold._y = (bigframeh - (h*(scaler/100)))/2;
if(imageframe_mc.hold._alpha<100)
{
accel = 0.3;
velo = velo + accel;
imageframe_mc.hold._alpha +=velo;
}
}
}
}
myListener.onLoadInit = function (target_mc)
{
//target_mc._width = 100;
//target_mc._width = 100;
}
myListener.onLoadError = function (target_mc, errorCode)
{
}
my_mcl.addListener(myListener);
///////////////////////////////////////////////////////////////
// XML PARSING
function imageListLoaded(whichalbum) {
//clear stage
for (var rr = 0; rr < noofrow * noofcolumn; rr++)
{
rr = rr + pageindex;
this["thumbframe"+rr].removeMovieClip();
this["thumbframein_mc"+rr].removeMovieClip();
rr = rr - pageindex;
}
//parameters
param = this.imageList_xml.firstChild.firstChild;
pc = int(param.attributes.noofcolumn);
pr = int(param.attributes.noofrow);
ptx = int(param.attributes.thumbxs);
pty = int(param.attributes.thumbys);
_global.ptw = int(param.attributes.thumbwidth);
_global.ptl = int(param.attributes.thumbheight);
//////////////////////////////////////////////////////////////
var albumCountXML = this.imageList_xml.firstChild.childNodes;
albumCount = albumCountXML.length - 1;
var albumnaamke = this.firstChild.childNodes[t].attributes.albumname;
var mainNode = this.imageList_xml.firstChild.childNodes[whichalbum].firstChild;
var listBoxData = createResourceList (mainNode.childNodes,pc,pr,ptx,pty,ptw,ptl);
albumtextbox.text = "Currently viewing: " + albumCount;
albumtextbox.background = true;
albumtextbox.autoSize = true;
albumtextbox.backgroundColor = 0x999999;
for (t=1;t<=albumCount;t++)
{
/////////////////////////////////////////////////////////////
//Creating text box
this.createEmptyMovieClip("albumnames"+t,900+t);
albumname_mc = this["albumnames"+t];
albumname_mc.createTextField("albumnametxt"+t,1000+t,0,5,180,80);
var my_fmt:TextFormat = new TextFormat();
my_fmt.color = 0x253585;
my_fmt.font = "Aurora"
my_fmt.size = 8;
albumname_mc["albumnametxt"+t].text = this.imageList_xml.firstChild.childNodes[t].attributes.albumname;
albumname_mc["albumnametxt"+t].setTextFormat(my_fmt);
albumname_mc._x = 725;
albumname_mc._y = t * 20;
albumname_mc.sett = t;
albumname_mc.onRelease = function()
{
currentpage = 1;
filename.text = "";
for (var rr = 0; rr < noofrow * noofcolumn; rr++)
{
rr = rr + pageindex;
this["thumbframe"+rr].removeMovieClip();
this["thumbframein_mc"+rr].removeMovieClip();
rr = rr - pageindex;
}
imageListLoaded(this.sett)
_global.whichalbum = this.sett;
}
}
}
function createResourceList(resource_array,noofcolumn,noofrow,thumbxs,thumbys,thumbwidth,thumblength,bigimagewidth) {
_global.noofcolumn = noofcolumn;
_global.noofrow = noofrow;
var listData = new DataProviderClass ();
resourceCount = resource_array.length;
noofpage = Math.ceil(resourceCount/(noofcolumn*noofrow));
ofof.text = "page: "+currentpage+"/"+noofpage;
var resource, image, tmb;
images = new Array();
infotexts = new Array();
pageindex =((currentpage-1) * noofrow * noofcolumn);
for (var r = 0; r < noofrow; r++)
{
for (var c = 0; c < noofcolumn; c++) {
i = (r * noofcolumn) + c + pageindex;
if(i<resourceCount)
{
nodigits = new String(resourceCount);
resource = resource_array*;
images* = resource.attributes.imagename;
infotexts* = resource.attributes.infotext;
loadme = "thumbs/"+images*;
findme = images*;
whichframe = "frame"+i;
this.attachMovie("thumbframe","thumbframe"+i,i+1,10);
this["thumbframe"+i]._x = (c * thumbwidth)+thumbxs;
this["thumbframe"+i]._y = (r * thumblength)+thumbys;
createEmptyMovieClip("thumbframein_mc"+i,(i+1)*1000);
onEnterFrame = function()
{
for (var tr = 0; tr < noofrow; tr++)
{
for (var tc = 0; tc < noofcolumn; tc++) {
ti = (tr * noofcolumn) + tc + pageindex;
if(ti<resourceCount)
{
tw = this["thumbframein_mc"+ti]._width;
th = this["thumbframein_mc"+ti]._height;
this["thumbframein_mc"+ti]._x = this["thumbframe"+ti]._x+(thumbwidth - tw)/2;
this["thumbframein_mc"+ti]._y = this["thumbframe"+ti]._y+(thumblength - th)/2;
}
}
}
}
this["thumbframein_mc"+i].loadMovie(loadme);
noofthumbs = (currentpage-1) * noofcolumn * noofrow;
nom = noofthumbs;
callbig(nom);
this.filename.text = " "+images[nom];
this["thumbframe"+i].onPress = function()
{
startsubstring = 10;
endsubstring = startsubstring + nodigits.length;
largeindex=this._name.substring(startsubstring,endsubstring);
callbig(largeindex);
}
}
}
}
}
function callbig(index)
{
filename.text = " "+images[index];
info.text = infotexts[index];
imageframe_mc.createEmptyMovieClip("hold",1);
my_mcl.loadClip("largeimages/"+images[index],this.imageframe_mc.hold);
/*imageframe_mc.onPress = function()
{getURL("pics/"+images[index],"_blank");} */
}
imageList_xml = new XML ();
imageList_xml.ignoreWhite = true;
imageList_xml.onLoad = function (success) {
if (success) {
imageListLoaded(whichalbum);
}
};
//////////////////////////////////////////
//HERE IS WHERE YOU DECLARE YOUR XML FILE
imageList_xml.load ("albums.xml");
//////////////////////////////////////////
rightbt.onRelease=function()
{
if(currentpage != noofpage)
{
currentpage ++;
imageListLoaded(_global.whichalbum);
}
}
leftbt.onRelease=function()
{
if(currentpage > 1)
{
currentpage --;
imageListLoaded(_global.whichalbum);
}
}
////show/hide buttons (looking at how much pages there are from the thumbnail
whoIsOn = 0;
onEnterFrame = function (){
if (whoIsOn <= 0){
rightbt._visible = false; //next
leftbt._visible = true; //back
} else if (whoIsOn >= this.albumname.length-1){ ///here is the problem.
rightbt._visible = true; //next
leftbt._visible = false; //back
} else {
rightbt._visible = true; //next
leftbt._visible = true; //back
}
}
stop();