Buenas, a partir del siguiente código en el que lo que hago es una galería de thumbnails que al ser presionada cada imagen se deslpliega en mayor proporción, lo que estoy buscando es que sea acompañada por un texto (que creo que lo más facil sería cargarlo en xml) en donde se revela cierta información de la imagen, etc. El punto es que para que este texto sea visualizado, deberá ser opción del usuario presionando un boton llamado INFO, por ejemplo que al presionarlo aparezca determinado cuadro con el texto respectivo. Se me ocurre que debería ser un mismo botón que al presionarlo haga una suerte de textomc_visible= true. Lo que se me complica, que no se como se hace es llamar un xml dentro de un mc que se corresponda cada texto con cada imagen que se elige.
Aquí el código que tengo hasta el momento:



Código :

import mx.transitions.Tween;
import mx.transitions.easing.*;


var myShadow = new flash.filters.DropShadowFilter ();
myShadow.strength = 1;
myShadow.blurX = 20;
myShadow.blurY = 15;
myShadow.angle = 45;
coco_mc.filters=[myShadow];
   


var myGalleryXML = new XML();
myGalleryXML.ignoreWhite = true;
myGalleryXML.load("gallery.xml");
myGalleryXML.onLoad = function() {
   gallery_x = myGalleryXML.firstChild.attributes.gallery_x;
   gallery_y = myGalleryXML.firstChild.attributes.gallery_y;
   gallery_width = myGalleryXML.firstChild.attributes.gallery_width;
   gallery_height = myGalleryXML.firstChild.attributes.gallery_height;
   myImages = myGalleryXML.firstChild.childNodes;
   myImagesTotal = myImages.length;
   thumb_height = myGalleryXML.firstChild.attributes.thumb_height;
   thumb_width = myGalleryXML.firstChild.attributes.thumb_width;
   full_x = myGalleryXML.firstChild.attributes.full_x;
   full_y = myGalleryXML.firstChild.attributes.full_y;
   callThumbs();
   createMask();
   scrolling();
};
function callThumbs() {
   createEmptyMovieClip("container_mc",getNextHighestDepth());
   container_mc._x = gallery_x;
   container_mc._y = gallery_y;

   var clipLoader = new MovieClipLoader();
   var preloader = new Object();
   clipLoader.addListener(preloader);

   for (i=0; i<myImagesTotal; i++) {
      thumbURL = myImages[i].attributes.thumb_url;

      myThumb_mc = container_mc.createEmptyMovieClip(i, container_mc.getNextHighestDepth());
      myThumb_mc._x = thumb_width*i;
      clipLoader.loadClip("thumbs/"+thumbURL,myThumb_mc);

      preloader.onLoadStart = function(target) {
         target.createTextField("my_txt",0,0,0,100,20);

         target.my_txt.setNewTextFormat(new TextFormat("Verdana", 12, 0xFF5B24, false));
         
            
      
      
      };

      preloader.onLoadProgress = function(target, loadedBytes, totalBytes) {
         target.my_txt.text = Math.floor((loadedBytes/totalBytes)*100);
      };

      preloader.onLoadComplete = function(target) {
         new Tween(target, "_alpha", Strong.easeOut, 0, 100, .5, true);
         target.my_txt.removeTextField();
         target.onRelease = function() {
            callFullImage(this._name);
         
         
         
         
         
         
         
         }
};
         



         target.onRollOver = function() {
            this._alpha = 50;
         };

         target.onRollOut = function() {
            this._alpha = 100;
         };


      };
   }
}
function callFullImage(myNumber) {

   myURL = myImages[myNumber].attributes.full_url;
   myTitle = myImages[myNumber].attributes.title;

   createEmptyMovieClip("fullImage_mc",getNextHighestDepth());
   fullImage_mc._x = full_x;
   fullImage_mc._y = full_y;

   var fullClipLoader = new MovieClipLoader();
   var fullPreloader = new Object();
   fullClipLoader.addListener(fullPreloader);

   
var myShadow = new flash.filters.DropShadowFilter ();
myShadow.strength = 1;
myShadow.blurX = 20;
myShadow.blurY = 20;
myShadow.angle = 45;


fullImage_mc.filters=[myShadow];


   

   
   
   
   fullPreloader.onLoadStart = function(target) {
      target.createTextField("my_txt",0,338,400,200,20);
      
      
      

   target.my_txt.setNewTextFormat(new TextFormat("Verdana", 12, 0xFF5B24, false));

   };

   fullPreloader.onLoadProgress = function(target, loadedBytes, totalBytes) {
      target.my_txt.text = Math.floor((loadedBytes/totalBytes)*100);
   };

   fullPreloader.onLoadComplete = function(target) {
      new Tween(target, "_alpha", Strong.easeOut, 0, 100, .5, true);
      target.my_txt.text = myTitle;
   };
   fullClipLoader.loadClip("full_images/"+myURL,fullImage_mc);


}
function createMask() {
   createEmptyMovieClip("mask_mc",getNextHighestDepth());
   mask_mc._x = gallery_x;
   mask_mc._y = gallery_y;
   mask_mc.beginFill(0x000000,100);
   mask_mc.lineTo(gallery_width,0);
   mask_mc.lineTo(gallery_width,gallery_height);
   mask_mc.lineTo(0,gallery_height);
   mask_mc.lineTo(0,0);
   container_mc.setMask(mask_mc);
}
function scrolling() {
   container_mc.onEnterFrame = function() {
      container_mc._x += Math.cos(((mask_mc._xmouse)/mask_mc._width)*Math.PI)*15;
      if (container_mc._x>mask_mc._x) {
         container_mc._x = mask_mc._x;
      }
      if (container_mc._x<(mask_mc._x-(container_mc._width-mask_mc._width))) {
         container_mc._x = mask_mc._x-(container_mc._width-mask_mc._width);
      }
   };
}