Exemplo n.º 1
0
    protected void doneCallback(ref KeyFrameCallback curDoneCallback, ref object curDoneUserData, ComponentKeyFrame component)
    {
        // 先保存回调,然后再调用回调之前就清空回调,确保在回调函数执行时已经完全完成
        KeyFrameCallback tempCallback = curDoneCallback;
        object           tempUserData = curDoneUserData;

        clearCallback();
        if (tempCallback != null)
        {
            tempCallback(component, tempUserData, false, true);
        }
    }
Exemplo n.º 2
0
    public static void setCallback(KeyFrameCallback callback, object userData, ref KeyFrameCallback curCallback, ref object curUserData, ComponentKeyFrame component)
    {
        KeyFrameCallback tempCallback = curCallback;
        object           tempUserData = curUserData;

        curCallback = null;
        curUserData = null;
        // 如果回调函数当前不为空,则是中断了正在进行的变化
        if (tempCallback != null)
        {
            tempCallback(component, tempUserData, true, false);
        }
        curCallback = callback;
        curUserData = userData;
    }