Scrollbar for a Sprite?

Hello,

I’m currently having trouble on integrating a scrollbar that I downloaded from Warm Forest Flash. I built a XML gallery that is going out of the boundary of height of 466 pixels. The thumbnails that are out of the boundary are still visible. On top of that, I tried to add the scrollbar to the sprites inside and outside the for loop, but sadly it doesn’t appear. What am I doing wrong? For the height thing, can I set the size of the ULLoader? Or should I just use a mask or something?


Main.as

import flash.net.URLLoader;
import flash.net.URLRequest;
import fl.containers.UILoader;
import gs.*;
import gs.easing.*;
import caurina.transitions.*;
**import org.libspark.ui.SWFWheel;
import com.warmforestflash.ui.FullScreenScrollBar;**

**SWFWheel.initialize(stage);**

var urlRequest:URLRequest = new URLRequest("xml/pics.xml");
var urlLoader:URLLoader = new URLLoader();
var myXML:XML = new XML();
var xmlList:XMLList;
myXML.ignoreWhitespace = true;

urlLoader.addEventListener(Event.COMPLETE,fileLoaded);
urlLoader.load(urlRequest);

var arrayURL:Array = new Array();
var arrayName:Array = new Array();
var holderArray:Array = new Array();

var nrColumns:uint = 4;

var sprite:Sprite = new Sprite();
addChild(sprite);
var thumb:Thumbnail;

var thumbsHolder:Sprite = new Sprite();
sprite.addChild(thumbsHolder);

var loaderHolder:Sprite = new Sprite();
loaderHolder.graphics.beginFill(0xffffff,1);
loaderHolder.graphics.drawRect(0,0,550,330);
loaderHolder.graphics.endFill();
loaderHolder.x = 2000;
loaderHolder.y = 10;
sprite.addChild(loaderHolder);

var photoLoader:UILoader = new UILoader();
photoLoader.width = 540;
photoLoader.height = 320;
photoLoader.x = 5;
photoLoader.y = 5;
photoLoader.buttonMode = true;
photoLoader.addEventListener(MouseEvent.CLICK,onClickBack);
loaderHolder.addChild(photoLoader);

function fileLoaded(event:Event):void {
    myXML = XML(event.target.data);
    xmlList = myXML.children();
    for (var i:int=0; i<xmlList.length(); i++) {
        var picURL:String = xmlList*.url;
        var picName:String = xmlList*.big_url;
        **var _scrollBar:FullScreenScrollBar;
        _scrollBar = new FullScreenScrollBar(****thumbsHolder****, 0x000000, 0xff4400, 0x05b59a, 0xffffff, 15, 15, 4, true);**
        arrayURL.push(picURL);
        arrayName.push(picName);
        holderArray* = new Thumbnail(arrayURL*,i,arrayName*);
        holderArray*.addEventListener(MouseEvent.CLICK,onClick);
        holderArray*.name = arrayName*;
        holderArray*.buttonMode = true;
        if (i<nrColumns) {
            holderArray*.y = 116;
            holderArray*.x = i*256;
        } else {
            holderArray*.y = holderArray[i-nrColumns].y+110;
            holderArray*.x = holderArray[i-nrColumns].x;
        }
        thumbsHolder.addChild(holderArray*);
        **thumbsHolder.addChild(_scrollBar);**
    }
}

function onClick(event:MouseEvent):void {
    photoLoader.source = event.currentTarget.name;
    Tweener.addTween(thumbsHolder, {x:-650, time:1, transition:"easeOutExpo"});
    //Tweener.addTween(loaderHolder, {x:10, time:1, transition:"easeOutExpo"});
    Tweener.addTween(thumbsHolder, {alpha:0, time:1, transition:"linear"});
    //Tweener.addTween(loaderHolder, {alpha:1, time:1, transition:"linear"});
}

function onClickBack(event:MouseEvent):void {
    Tweener.addTween(thumbsHolder, {x:0, time:1, transition:"easeOutExpo"});
    //Tweener.addTween(loaderHolder, {x:1000, time:1, transition:"easeOutExpo"});
    Tweener.addTween(thumbsHolder, {alpha:1, time:2, transition:"linear"});
    //Tweener.addTween(loaderHolder, {alpha:0, time:2, transition:"linear"});
}


Thumbnail.as

package {
    
    import flash.display.Sprite;
    import flash.events.MouseEvent;
    import fl.containers.UILoader;
    import caurina.transitions.*;
    import gs.*;
    import gs.easing.*;

    public class Thumbnail extends Sprite {
        
        private var nume:String;
        private var url:String;
        private var id:int;
        private var loader:UILoader;

        function Thumbnail(source:String,itemNr:int,numeThumb:String):void {
            
            url = source;
            id = itemNr;
            this.nume = numeThumb;
            drawLoader();
            addEventListener(MouseEvent.MOUSE_OVER,onOver);
            addEventListener(MouseEvent.MOUSE_OUT,onOut);
            scaleThumb();
            
        }
        
        private function drawLoader():void {
            
            loader = new UILoader();
            loader.source = url;
            loader.mouseEnabled = false;
            //loader.x = -50;
            //loader.y = -50;
            addChild(loader);

        }
        
        private function onOver(event:MouseEvent):void {
            TweenLite.to(this, 0.5, {alpha:1, ease:Quad.easeOut});
        }
        
        private function onOut(event:MouseEvent):void {
            TweenLite.to(this, 0.5, {alpha:0.7, ease:Quad.easeOut});
        }

        private function scaleThumb():void {
            TweenLite.to(this, 0, {scaleX:0.9, scaleY:0.9, alpha:0.7});
        }
        
    }
}