⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 depthmanager.as

📁 flash 视频聊天室源码,非常好的源码
💻 AS
📖 第 1 页 / 共 2 页
字号:
class mx.managers.DepthManager
{
    var _childCounter, createClassObject, createObject, _parent, swapDepths, _topmost, getDepth;
    function DepthManager()
    {
        MovieClip.prototype.createClassChildAtDepth = createClassChildAtDepth;
        MovieClip.prototype.createChildAtDepth = createChildAtDepth;
        MovieClip.prototype.setDepthTo = setDepthTo;
        MovieClip.prototype.setDepthAbove = setDepthAbove;
        MovieClip.prototype.setDepthBelow = setDepthBelow;
        MovieClip.prototype.findNextAvailableDepth = findNextAvailableDepth;
        MovieClip.prototype.shuffleDepths = shuffleDepths;
        MovieClip.prototype.getDepthByFlag = getDepthByFlag;
        MovieClip.prototype.buildDepthTable = buildDepthTable;
        _global.ASSetPropFlags(MovieClip.prototype, "createClassChildAtDepth", 1);
        _global.ASSetPropFlags(MovieClip.prototype, "createChildAtDepth", 1);
        _global.ASSetPropFlags(MovieClip.prototype, "setDepthTo", 1);
        _global.ASSetPropFlags(MovieClip.prototype, "setDepthAbove", 1);
        _global.ASSetPropFlags(MovieClip.prototype, "setDepthBelow", 1);
        _global.ASSetPropFlags(MovieClip.prototype, "findNextAvailableDepth", 1);
        _global.ASSetPropFlags(MovieClip.prototype, "shuffleDepths", 1);
        _global.ASSetPropFlags(MovieClip.prototype, "getDepthByFlag", 1);
        _global.ASSetPropFlags(MovieClip.prototype, "buildDepthTable", 1);
    } // End of the function
    static function sortFunction(a, b)
    {
        if (a.getDepth() > b.getDepth())
        {
            return (1);
        } // end if
        return (-1);
    } // End of the function
    static function test(depth)
    {
        if (depth == mx.managers.DepthManager.reservedDepth)
        {
            return (false);
        }
        else
        {
            return (true);
        } // end else if
    } // End of the function
    static function createClassObjectAtDepth(className, depthSpace, initObj)
    {
        var _loc1;
        switch (depthSpace)
        {
            case mx.managers.DepthManager.kCursor:
            {
                _loc1 = mx.managers.DepthManager.holder.createClassChildAtDepth(className, mx.managers.DepthManager.kTopmost, initObj);
                break;
            } 
            case mx.managers.DepthManager.kTooltip:
            {
                _loc1 = mx.managers.DepthManager.holder.createClassChildAtDepth(className, mx.managers.DepthManager.kTop, initObj);
                break;
            } 
            default:
            {
                break;
            } 
        } // End of switch
        return (_loc1);
    } // End of the function
    static function createObjectAtDepth(linkageName, depthSpace, initObj)
    {
        var _loc1;
        switch (depthSpace)
        {
            case mx.managers.DepthManager.kCursor:
            {
                _loc1 = mx.managers.DepthManager.holder.createChildAtDepth(linkageName, mx.managers.DepthManager.kTopmost, initObj);
                break;
            } 
            case mx.managers.DepthManager.kTooltip:
            {
                _loc1 = mx.managers.DepthManager.holder.createChildAtDepth(linkageName, mx.managers.DepthManager.kTop, initObj);
                break;
            } 
            default:
            {
                break;
            } 
        } // End of switch
        return (_loc1);
    } // End of the function
    function createClassChildAtDepth(className, depthFlag, initObj)
    {
        if (_childCounter == undefined)
        {
            _childCounter = 0;
        } // end if
        var _loc3 = this.buildDepthTable();
        var _loc2 = this.getDepthByFlag(depthFlag, _loc3);
        var _loc6 = "down";
        if (depthFlag == mx.managers.DepthManager.kBottom)
        {
            _loc6 = "up";
        } // end if
        var _loc5;
        if (_loc3[_loc2] != undefined)
        {
            _loc5 = _loc2;
            _loc2 = this.findNextAvailableDepth(_loc2, _loc3, _loc6);
        } // end if
        var _loc4 = this.createClassObject(className, "depthChild" + _childCounter++, _loc2, initObj);
        if (_loc5 != undefined)
        {
            _loc3[_loc2] = _loc4;
            this.shuffleDepths(_loc4, _loc5, _loc3, _loc6);
        } // end if
        if (depthFlag == mx.managers.DepthManager.kTopmost)
        {
            _loc4._topmost = true;
        } // end if
        return (_loc4);
    } // End of the function
    function createChildAtDepth(linkageName, depthFlag, initObj)
    {
        if (_childCounter == undefined)
        {
            _childCounter = 0;
        } // end if
        var _loc3 = this.buildDepthTable();
        var _loc2 = this.getDepthByFlag(depthFlag, _loc3);
        var _loc6 = "down";
        if (depthFlag == mx.managers.DepthManager.kBottom)
        {
            _loc6 = "up";
        } // end if
        var _loc5;
        if (_loc3[_loc2] != undefined)
        {
            _loc5 = _loc2;
            _loc2 = this.findNextAvailableDepth(_loc2, _loc3, _loc6);
        } // end if
        var _loc4 = this.createObject(linkageName, "depthChild" + _childCounter++, _loc2, initObj);
        if (_loc5 != undefined)
        {
            _loc3[_loc2] = _loc4;
            this.shuffleDepths(_loc4, _loc5, _loc3, _loc6);
        } // end if
        if (depthFlag == mx.managers.DepthManager.kTopmost)
        {
            _loc4._topmost = true;
        } // end if
        return (_loc4);
    } // End of the function
    function setDepthTo(depthFlag)
    {
        var _loc2 = _parent.buildDepthTable();
        var _loc3 = _parent.getDepthByFlag(depthFlag, _loc2);
        if (_loc2[_loc3] != undefined)
        {
            this.shuffleDepths(this, _loc3, _loc2, undefined);
        }
        else
        {
            this.swapDepths(_loc3);
        } // end else if
        if (depthFlag == mx.managers.DepthManager.kTopmost)
        {
            _topmost = true;
        }
        else
        {
            delete this._topmost;
        } // end else if
    } // End of the function
    function setDepthAbove(targetInstance)
    {
        if (targetInstance._parent != _parent)
        {
            return;
        } // end if
        var _loc2 = targetInstance.getDepth() + 1;
        var _loc3 = _parent.buildDepthTable();
        if (_loc3[_loc2] != undefined && this.getDepth() < _loc2)
        {
            _loc2 = _loc2 - 1;
        } // end if
        if (_loc2 > mx.managers.DepthManager.highestDepth)
        {
            _loc2 = mx.managers.DepthManager.highestDepth;
        } // end if
        if (_loc2 == mx.managers.DepthManager.highestDepth)
        {
            _parent.shuffleDepths(this, _loc2, _loc3, "down");
        }
        else if (_loc3[_loc2] != undefined)
        {
            _parent.shuffleDepths(this, _loc2, _loc3, undefined);
        }
        else
        {
            this.swapDepths(_loc2);
        } // end else if
    } // End of the function
    function setDepthBelow(targetInstance)
    {
        if (targetInstance._parent != _parent)
        {
            return;
        } // end if
        var _loc6 = targetInstance.getDepth() - 1;
        var _loc3 = _parent.buildDepthTable();
        if (_loc3[_loc6] != undefined && this.getDepth() > _loc6)
        {
            _loc6 = _loc6 + 1;
        } // end if
        var _loc4 = mx.managers.DepthManager.lowestDepth + mx.managers.DepthManager.numberOfAuthortimeLayers;
        var _loc5;
        for (var _loc5 in _loc3)
        {
            var _loc2 = _loc3[_loc5];
            if (_loc2._parent != undefined)
            {
                _loc4 = Math.min(_loc4, _loc2.getDepth());
            } // end if
        } // end of for...in
        if (_loc6 < _loc4)
        {
            _loc6 = _loc4;
        } // end if
        if (_loc6 == _loc4)
        {
            _parent.shuffleDepths(this, _loc6, _loc3, "up");
        }
        else if (_loc3[_loc6] != undefined)
        {
            _parent.shuffleDepths(this, _loc6, _loc3, undefined);
        }
        else
        {
            this.swapDepths(_loc6);
        } // end else if
    } // End of the function
    function findNextAvailableDepth(targetDepth, depthTable, direction)
    {
        var _loc5 = mx.managers.DepthManager.lowestDepth + mx.managers.DepthManager.numberOfAuthortimeLayers;
        if (targetDepth < _loc5)

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -