📄 externalcontent.as
字号:
class mx.core.ExternalContent
{
var createObject, numChildren, prepList, doLater, loadList, dispatchEvent, loadedList, childLoaded;
function ExternalContent()
{
} // End of the function
function loadExternal(url, placeholderClassName, instanceName, depth, initProps)
{
var _loc2;
_loc2 = this.createObject(placeholderClassName, instanceName, depth, initProps);
set(mx.core.View.childNameBase + numChildren, _loc2);
if (prepList == undefined)
{
prepList = new Object();
} // end if
prepList[instanceName] = {obj: _loc2, url: url, complete: false, initProps: initProps};
this.prepareToLoadMovie(_loc2);
return (_loc2);
} // End of the function
function prepareToLoadMovie(obj)
{
obj.unloadMovie();
this.doLater(this, "waitForUnload");
} // End of the function
function waitForUnload()
{
var _loc3;
for (var _loc3 in prepList)
{
var _loc2 = prepList[_loc3];
if (_loc2.obj.getBytesTotal() == 0)
{
if (loadList == undefined)
{
loadList = new Object();
} // end if
loadList[_loc3] = _loc2;
_loc2.obj.loadMovie(_loc2.url);
delete prepList[_loc3];
this.doLater(this, "checkLoadProgress");
continue;
} // end if
this.doLater(this, "waitForUnload");
} // end of for...in
} // End of the function
function checkLoadProgress()
{
var _loc3;
for (var _loc3 in loadList)
{
var _loc2 = loadList[_loc3];
_loc2.loaded = _loc2.obj.getBytesLoaded();
_loc2.total = _loc2.obj.getBytesTotal();
if (_loc2.total > 0)
{
_loc2.obj._visible = false;
this.dispatchEvent({type: "progress", target: _loc2.obj, current: _loc2.loaded, total: _loc2.total});
if (_loc2.loaded == _loc2.total)
{
if (loadedList == undefined)
{
loadedList = new Object();
} // end if
loadedList[_loc3] = _loc2;
delete loadList[_loc3];
this.doLater(this, "contentLoaded");
} // end if
}
else if (_loc2.total == -1)
{
if (_loc2.failedOnce != undefined)
{
++_loc2.failedOnce;
if (_loc2.failedOnce > 3)
{
this.dispatchEvent({type: "complete", target: _loc2.obj, current: _loc2.loaded, total: _loc2.total});
delete loadList[_loc3];
false;
} // end if
}
else
{
_loc2.failedOnce = 0;
} // end else if
} // end else if
this.doLater(this, "checkLoadProgress");
} // end of for...in
} // End of the function
function contentLoaded()
{
var _loc4;
for (var _loc4 in loadedList)
{
var _loc2 = loadedList[_loc4];
_loc2.obj._visible = true;
_loc2.obj._complete = true;
var _loc3;
for (var _loc3 in _loc2.initProps)
{
_loc2.obj[_loc3] = _loc2.initProps[_loc3];
} // end of for...in
this.childLoaded(_loc2.obj);
this.dispatchEvent({type: "complete", target: _loc2.obj, current: _loc2.loaded, total: _loc2.total});
delete loadedList[_loc4];
false;
} // end of for...in
} // End of the function
function convertToUIObject(obj)
{
if (obj.setSize == undefined)
{
var _loc2 = mx.core.UIObject.prototype;
obj.addProperty("width", _loc2.__get__width, null);
obj.addProperty("height", _loc2.__get__height, null);
obj.addProperty("left", _loc2.__get__left, null);
obj.addProperty("x", _loc2.__get__x, null);
obj.addProperty("top", _loc2.__get__top, null);
obj.addProperty("y", _loc2.__get__y, null);
obj.addProperty("right", _loc2.__get__right, null);
obj.addProperty("bottom", _loc2.__get__bottom, null);
obj.addProperty("visible", _loc2.__get__visible, _loc2.__set__visible);
obj.move = mx.core.UIObject.prototype.move;
obj.setSize = mx.core.UIObject.prototype.setSize;
obj.size = mx.core.UIObject.prototype.size;
mx.events.UIEventDispatcher.initialize(obj);
} // end if
} // End of the function
static function enableExternalContent()
{
} // End of the function
static function classConstruct()
{
var _loc1 = mx.core.View.prototype;
var _loc2 = mx.core.ExternalContent.prototype;
_loc1.loadExternal = _loc2.loadExternal;
_loc1.prepareToLoadMovie = _loc2.prepareToLoadMovie;
_loc1.waitForUnload = _loc2.waitForUnload;
_loc1.checkLoadProgress = _loc2.checkLoadProgress;
_loc1.contentLoaded = _loc2.contentLoaded;
_loc1.convertToUIObject = _loc2.convertToUIObject;
return (true);
} // End of the function
static var classConstructed = mx.core.ExternalContent.classConstruct();
static var ViewDependency = mx.core.View;
} // End of Class
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -