# Problem with xml gallery

**URL:** <https://forum.kirupa.com/t/problem-with-xml-gallery/311627>\
**Category:** Uncategorized\
**Created:** [July 12, 2010, 9:33pm UTC](https://forum.kirupa.com/t/problem-with-xml-gallery/311627 "2010-07-12T21:33:44Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![mativito](https://avatars.discourse-cdn.com/v4/letter/m/3be4f8/32.png) [@mativito](https://forum.kirupa.com/u/mativito)\
**Post date:** [July 12, 2010, 9:33pm UTC](https://forum.kirupa.com/t/problem-with-xml-gallery/311627/1 "2010-07-12T21:33:44Z")

</div>

hi

i´m making a gallery with flash using xml to store my data. at the first frame i have a grid gallery with 3 range of 27 picture and at the second frame i have just one range, my problem is at the second frame the data stored in a second xml file are not read by flash correctly : i have the good number of picture (12 in 1 range ) but not the good picture

i think i have to unload the xml file but i don´t know how

that s the code at the first frame

stop();  
import caurina.transitions.\*;

var columns:Number;  
var my\_x:Number;  
var my\_y:Number;  
var my\_thumb\_width:Number;  
var my\_thumb\_height:Number;  
var my\_images:XMLList;  
var my\_total:Number;

var container\_mc:MovieClip;  
var x\_counter:Number = 0;  
var y\_counter:Number = 0;

var XMLGalleryLoader:URLLoader = new URLLoader();  
XMLGalleryLoader.load(new URLRequest(“gallery.xml”));  
XMLGalleryLoader.addEventListener(Event.COMPLETE, processXML);

function processXML (e:Event):void  
{  
var myXML:XML = new XML(e.target.data);

```
columns = myXML.@COLUMNS;
my_x = myXML.@XPOSITION;
my_y = myXML.@YPOSITION;
my_thumb_width = myXML.@WIDTH;
my_thumb_height = myXML.@HEIGHT;
my_images = myXML.IMAGE;
my_total = my_images.length();

createContainer()
callThumbs();
}

```

function createContainer():void  
{  
container\_mc = new MovieClip();  
container\_mc.x = my\_x;  
container\_mc.y = my\_y;  
photoContainer.addChild(container\_mc);  
container\_mc.addEventListener(MouseEvent.CLICK, callFull);

```
}

```

function callThumbs():void  
{  
for (var i:Number = 0; i \< my\_total; i++)  
{  
var thumb\_url = my\_images\*.@THUMB;  
var thumb\_loader = new Loader();  
thumb\_loader.load(new URLRequest(thumb\_url));  
thumb\_loader.contentLoaderInfo.addEventListener(Event.COMPLETE, thumbLoaded);

```
    thumb_loader.name = i;

    
    thumb_loader.x = (my_thumb_width+6.35)*x_counter;
    thumb_loader.y = (my_thumb_height+5)*y_counter;

    if (x_counter+1 &lt; columns)
        {
        x_counter++;
        } else {
        x_counter = 0;
        y_counter++;
        }

    }
}

```

function thumbLoaded(e:Event):void  
{  
var my\_thumb:Loader = Loader(e.target.loader);  
container\_mc.addChild(my\_thumb);  
}

function callFull(e:MouseEvent):void  
{  
var full\_loader:Loader = new Loader();  
var full\_url = my\_images[e.target.name].@FULL;  
full\_loader.load(new URLRequest(full\_url));  
full\_loader.contentLoaderInfo.addEventListener(Event.INIT, fullLoaded);  
}

function fullLoaded(e:Event):void  
{  
var my\_loader:Loader = Loader(e.target.loader);  
addChild(my\_loader);  
my\_loader.x = (stage.stageWidth - my\_loader.width)/2;  
my\_loader.y = (stage.stageHeight - my\_loader.height)/2-80;  
my\_loader.addEventListener(MouseEvent.CLICK,removeFull);  
container\_mc.removeEventListener(MouseEvent.CLICK, callFull);  
container\_mc.visible = false;  
handler.removeEventListener(MouseEvent.MOUSE\_DOWN,beginDrag);  
gotoAndPlay(2);  
}

function removeFull(e:MouseEvent):void  
{  
var my\_loader:Loader = Loader (e.currentTarget);  
my\_loader.unload();  
removeChild(my\_loader);

```
container_mc.addEventListener(MouseEvent.CLICK, callFull);

}

```

var photoContainer:Sprite = new Sprite();  
addChild(photoContainer);  
photoContainer.mask=thumb\_holder;

var minScroll:Number = 0;  
var maxScroll:Number = track.width-handler.width-5;  
var draging:Boolean = false;  
var bounds:Rectangle = new Rectangle(handler.x,handler.y,maxScroll,0);  
handler.buttonMode = true;  
handler.addEventListener(MouseEvent.MOUSE\_DOWN,beginDrag);

function beginDrag(event:MouseEvent):void {  
handler.startDrag(false,bounds);  
draging = true;  
handler.addEventListener(Event.ENTER\_FRAME,checkingProgress);  
stage.addEventListener(MouseEvent.MOUSE\_UP,endDrag);  
}  
function endDrag(event:MouseEvent):void {  
handler.stopDrag();  
draging = false;  
handler.removeEventListener(Event.ENTER\_FRAME,checkingProgress);  
stage.removeEventListener(MouseEvent.MOUSE\_UP,endDrag);

}

function checkingProgress(event:Event):void {  
var procent:Number = handler.x/maxScroll;  
if (draging) {  
Tweener.addTween(photoContainer,{x:(-procent\*(photoContainer.width-thumb\_holder.width)),time:1});  
}  
}

and the code at the second frame

stop();  
import caurina.transitions.\*;

var columns1:Number;  
var my\_x1:Number;  
var my\_y1:Number;  
var my\_thumb\_width1:Number;  
var my\_thumb\_height1:Number;  
var my\_images1:XMLList;  
var my\_total1:Number;  
var my\_x2:Number;

var container\_mc1:MovieClip;  
var x\_counter1:Number = 0;  
var y\_counter1:Number = 0;

var XMLGalleryLoader1:URLLoader = new URLLoader();  
XMLGalleryLoader1.load(new URLRequest(“gallery\_2.xml”));  
XMLGalleryLoader1.addEventListener(Event.COMPLETE, processXML1);

function processXML1 (e:Event):void  
{  
var myXML1:XML = new XML(e.target.data);

```
columns1 = myXML1.@COLUMNS;
my_x1 = myXML1.@XPOSITION;
my_y1 = myXML1.@YPOSITION;
my_thumb_width1 = myXML1.@WIDTH;
my_thumb_height1 = myXML1.@HEIGHT;
my_images1 = myXML1.IMAGE;
my_total1 = my_images.length();
createContainer1()
callThumbs1();
}

```

function createContainer1():void  
{  
container\_mc1 = new MovieClip();  
container\_mc1.x = my\_x1-99;  
container\_mc1.y = my\_y1;  
addChild(container\_mc1);  
container\_mc1.addEventListener(MouseEvent.CLICK, callFull1);

```
}

```

function callThumbs1():void  
{  
for (var i:Number = 0; i \< my\_total1; i++)  
{  
var thumb\_url1 = my\_images\*.@THUMB;  
var thumb\_loader1 = new Loader();  
thumb\_loader1.load(new URLRequest(thumb\_url1));  
thumb\_loader1.contentLoaderInfo.addEventListener(Event.COMPLETE, thumbLoaded1);

```
    thumb_loader1.name = i;

    
    thumb_loader1.x = (my_thumb_width1+6.35)*x_counter1;
    thumb_loader1.y = (my_thumb_height1+5)*y_counter1;

    if (x_counter1+1 &lt; columns1)
        {
        x_counter1++;
        } else {
        x_counter1 = 0;
        y_counter++;
        }

    }
}

```

function thumbLoaded1(e:Event):void  
{  
var my\_thumb1:Loader = Loader(e.target.loader);  
container\_mc1.addChild(my\_thumb1);  
}

function callFull1(e:MouseEvent):void  
{  
var full\_loader1:Loader = new Loader();  
var full\_url1 = my\_images[e.target.name].@FULL;  
full\_loader1.load(new URLRequest(full\_url1));  
full\_loader1.contentLoaderInfo.addEventListener(Event.INIT, fullLoaded1);  
}

function fullLoaded1(e:Event):void  
{  
var my\_loader1:Loader = Loader(e.target.loader);  
addChild(my\_loader1);  
my\_loader1.x = (stage.stageWidth - my\_loader1.width)/2;  
my\_loader1.y = (stage.stageHeight - my\_loader1.height)/2-80;  
my\_loader1.addEventListener(MouseEvent.CLICK,removeFull1);  
container\_mc1.removeEventListener(MouseEvent.CLICK, callFull);  
}

function removeFull1(e:MouseEvent):void  
{  
var my\_loader1:Loader = Loader (e.currentTarget);  
my\_loader1.unload();  
removeChild(my\_loader1);

```
container_mc1.addEventListener(MouseEvent.CLICK, callFull1);

}

```

voila!  
Could you Help me?
