Make this class more portable?

Hi,

I would like to load the movie that is linked to this class into another movie using:


var newsloader:Loader = new Loader();
newsloader.load(new URLRequest("main.swf"));

addChild(newsloader);

Can someone give any suggestions on how to modify this code of it to work? (since it’s parent is now newsloader)

The error I am getting is:

TypeError: Error #1009: Cannot access a property or method of a null object reference.
at XmlNews()


package
{
    import flash.display.MovieClip;
    import flash.events.Event;
    import flash.display.StageAlign;
    import flash.display.StageScaleMode;
    import flash.display.Graphics;
    import flash.display.Bitmap;
    import flash.display.BitmapData;
    import flash.display.Loader;
    import flash.net.URLRequest;
    import flash.display.Sprite;
    import flash.display.Shape;
    import caurina.transitions.*;
    import flash.events.MouseEvent;
    
    public class XmlNews extends MovieClip
    {
        private var newsPanelsContainer1:Sprite = new Sprite();
        private var bgContainer1:Sprite = new Sprite();
        
        private var bitmap1:Bitmap = new Bitmap();
        
        private var np:News;
        
        
        public function XmlNews()
        {
            stage.scaleMode = StageScaleMode.NO_SCALE;
            stage.align = StageAlign.TOP_LEFT;
            stage.addEventListener(Event.RESIZE, ResizeHandler);
            
            bgContainer1.x = stage.stageWidth / 2;
            bgContainer1.y = stage.stageHeight / 2;
            stage.addChild(bgContainer1);
            
            var url:URLRequest = new URLRequest("./images/bg_batman.jpg");
            var loaderbg1:Loader = new Loader();
            loaderbg1.contentLoaderInfo.addEventListener(Event.COMPLETE, loaderbgComplete1);
            loaderbg1.load(url);
            
            newsPanelsContainer1.x = stage.stageWidth / 2;
            newsPanelsContainer1.y = stage.stageHeight / 2;
            stage.addChild(newsPanelsContainer1);
            
            np = new News();
            np.x = - 301;
            np.y = - 211;
            newsPanelsContainer1.addChild(np);
            
        }

        
        private function loaderbgComplete1(event:Event):void 
        {
            bitmap1.bitmapData = Bitmap(event.target.content).bitmapData;
            
            bgContainer1.graphics.clear();
            bgContainer1.graphics.beginBitmapFill(bitmap1.bitmapData);
            bgContainer1.graphics.drawRect(-stage.stageWidth/2, -200, stage.stageWidth, 400);
            bgContainer1.graphics.endFill();
        }

        
        public function ResizeHandler(event:Event):void 
        {
            Tweener.addTween(newsPanelsContainer1,{x:stage.stageWidth / 2,y:stage.stageHeight / 2,time:1,delay:0.3,transition:"easeInOutQuint"});
            bgContainer1.x = stage.stageWidth / 2;
            bgContainer1.y = stage.stageHeight / 2;
            
            if(bitmap1.bitmapData != null)
            {
                bgContainer1.graphics.clear();
                bgContainer1.graphics.beginBitmapFill(bitmap1.bitmapData);
                bgContainer1.graphics.drawRect(-stage.stageWidth/2, -200, stage.stageWidth, 400);
                bgContainer1.graphics.endFill();
            }
        }
    }
}


Thanks
Ian