-
import as.utils.Delegate;
-
import as.utils.DoLater;
-
class XmlData extends MovieClip
-
{
-
private var stage:MovieClip
-
private var xml_data:XML
-
-
-
function XmlData(mc:MovieClip)
-
{
-
trace("[XmlData.as] - XmlData() :: ")
-
stage = mc
-
}
-
public function loadData(xml_file:String, fnc:Function, scope:Object):Void
-
{
-
trace("[XmlData.as] - loadData() :: xml_file: " + xml_file)
-
trace("[XmlData.as] - loadData() :: scope: " + scope)
-
xml_data = new XML()
-
xml_data.ignoreWhite = true
-
xml_data.onLoad = Delegate.create(this, _onLoad, fnc, scope)
-
xml_data.load(xml_file)
-
}
-
-
private function _onLoad(success:Boolean, callback:Function, scope:Object)
-
{
-
trace("[XmlData.as] - _onLoad() :: " + scope)
-
if (success)
-
{
-
callback.apply(scope)
-
}
-
else
-
{
-
trace("[XmlData.as] - _onLoad() :: Error loading xml")
-
}
-
}
-
-
public function getData()
-
{
-
trace("[XmlData.as] - getData() :: " + this)
-
return xml_data
-
}
-
-
public function toString():String
-
{
-
return "[Class XmlData]"
-
}
-
}
-
-
// ===============================================
-
class Test
-
{
-
private var myData:XmlData
-
-
function Test(stage)
-
{
-
trace("[Test.as] - Test() :: Constructed.")
-
myData = new XmlData(stage)
-
myData.loadData("hiroik_menu_.xml", draw, this)
-
}
-
-
private function draw()
-
{
-
trace("[Test.as] - draw() :: " + this)
-
trace(myData.getData())
-
}
-
-
public function toString():String
-
{
-
return "[Class Test]"
-
}
-
}