private void NextComposite()
        {
            MxMPreProcessData preProcessData = m_spTargetPreProcessData.objectReferenceValue as MxMPreProcessData;
            AnimationModule   animModule     = m_spTargetAnimModule.objectReferenceValue as AnimationModule;

            List <MxMAnimationClipComposite> compList = null;

            if (preProcessData != null)
            {
                compList = preProcessData.GetCompositeCategoryList(m_data.CategoryId);
            }
            else if (animModule != null)
            {
                compList = animModule.GetCompositeCategoryList(m_data.CategoryId);
            }

            if (compList != null)
            {
                for (int i = 0; i < compList.Count; ++i)
                {
                    if (compList[i] == m_data)
                    {
                        if (i < compList.Count - 1)
                        {
                            compList[i + 1].ValidateBaseData();
                            SetData(compList[i + 1]);
                        }
                        else
                        {
                            compList[0].ValidateBaseData();
                            SetData(compList[0]);
                        }

                        if (MxMTaggingWindow.Exists())
                        {
                            MxMTaggingWindow.Inst().ClipChanged();
                        }

                        break;
                    }
                }
            }
        }
        private void LastComposite()
        {
            MxMPreProcessData preProcessData = m_spTargetPreProcessData.objectReferenceValue as MxMPreProcessData;
            AnimationModule   animModule     = m_spTargetAnimModule.objectReferenceValue as AnimationModule;

            List <MxMAnimationClipComposite> compList = null;

            if (preProcessData != null)
            {
                compList = preProcessData.GetCompositeCategoryList(m_data.CategoryId);
            }
            else if (animModule != null)
            {
                compList = animModule.GetCompositeCategoryList(m_data.CategoryId);
            }

            if (compList != null)
            {
                for (int i = 0; i < compList.Count; ++i)
                {
                    if (compList[i] == m_data)
                    {
                        if (i == 0)
                        {
                            compList[compList.Count - 1].ValidateBaseData();
                            SetData(compList[compList.Count - 1]);
                        }
                        else
                        {
                            compList[i - 1].ValidateBaseData();
                            SetData(compList[i - 1]);
                        }

                        break;
                    }
                }
            }
        }