6/18/2009

QueueLoader In As3.0

Description QueueLoader is an actionscript library for sequential asset loading and monitoring. QueueLoader is designed to be used with Actionscript 3.0 and has become an open source project. If you are interested in contributing please contact the project leader.
MAJOR UPDATE!
QueueLoader 3.1.0 now has a number of dependancies. Only the QueueLoader specific source can be found on the SVN as well as the Download Section. Click the link below to download the complete source with example files and assets to get up and running. Also a comprehensive list of example source code can be found as well.
QueueLoader 3.1.0 Source and Example Files
Class Documentation
Wiki Info
Guide
Change Log
Source Downloads
QueueLoader @ hydrotik

Current Features:


Individual monitoring
Overall queue monitoring
Image loading
SWF loading
MP3 loading
XML loading
CSS loading
FLV loading
WAV Audio loading
ZIP Archive loading
URL Variable support
Direct access to loaded items by name
Global QLManager for multiple QueueLoaders
Addition of items to the queue on the fly
Access of loaded SWF class references using application domain/loader context
Disposing of loaded references for Garbage Collection
Removal of items in the queue
Queue sorting using shuffle() functions
Stopping and resuming of a queue in progress
Drawing of external SWF frames to a Bitmap Array

Example:

// Most Basic Example

import com.hydrotik.queueloader.QueueLoader;
import com.hydrotik.queueloader.QueueLoaderEvent;
var _oLoader:QueueLoader = new QueueLoader();
var img:Sprite = new Sprite();
img.name = "image_1";
img.x = 20;
img.y = 20;
img.scaleX = img.scaleY = .075;addChild(img);
_oLoader.addItem("../flashassets/images/slideshow/1.jpg", img);
_oLoader.addEventListener(QueueLoaderEvent.QUEUE_PROGRESS, onQueueProgress, false, 0, true);
_oLoader.addEventListener(QueueLoaderEvent.QUEUE_COMPLETE, onQueueComplete,false, 0, true);
_oLoader.execute();function onQueueProgress(event:QueueLoaderEvent):void
{
trace("\t>>onQueueProgress: "+event.queuepercentage);
}

function onQueueComplete(event:QueueLoaderEvent):void
{
trace("** "+event.type);
}