package
{
import com.aditall.external.PluginFactory;
import com.aditall.interfaces.IPlugin;
import flash.display.DisplayObject;
import flash.display.Sprite;
import flash.events.Event;
import flash.events.MouseEvent;
/**
* ...
* @author wvxvw
*/
public class PlugInTest extends Sprite
{
public var testPlugin:IPlugin;
public var pluginFactory:PluginFactory;
public var testXML:XML =
sometext
;
public function PlugInTest()
{
var re:RegExp = /foo\d+?$/g;
pluginFactory = new PluginFactory();
pluginFactory.addEventListener(Event.COMPLETE, handleFactoryComplete);
pluginFactory.loadPlugin(pluginFactory.getAvailablePlugins()[0]);
}
/**
* Handles download complete event.
* @param evt - the complete event.
*/
private function handleFactoryComplete(evt:Event):void
{
testPlugin = evt.target.data as IPlugin;
addChild(testPlugin as DisplayObject);
testPlugin.addEventListener(MouseEvent.CLICK, handlePluginClick);
}
private function handlePluginClick(evt:MouseEvent):void
{
//trace(testPlugin.customFunction("foo"));
trace(testPlugin.customFunction("abcd"));
}
}
}