public AnimationAnalytics(IAnalyticsStorage analyticsStorage, SkinningEvents eventBus, IAnimationAnalyticsModel model, int instanceId) { m_Model = model; m_AnalyticsStorage = analyticsStorage; m_InstanceId = instanceId; m_EventBus = eventBus; m_EventBus.selectedSpriteChanged.AddListener(OnSelectedSpriteChanged); m_EventBus.skeletonPreviewPoseChanged.AddListener(OnSkeletonPreviewPoseChanged); m_EventBus.skeletonBindPoseChanged.AddListener(OnSkeletonBindPoseChanged); m_EventBus.skeletonTopologyChanged.AddListener(OnSkeletonTopologyChanged); m_EventBus.meshChanged.AddListener(OnMeshChanged); m_EventBus.meshPreviewChanged.AddListener(OnMeshPreviewChanged); m_EventBus.skinningModeChanged.AddListener(OnSkinningModuleModeChanged); m_EventBus.boneSelectionChanged.AddListener(OnBoneSelectionChanged); m_EventBus.boneNameChanged.AddListener(OnBoneNameChanged); m_EventBus.boneDepthChanged.AddListener(OnBoneDepthChanged); m_EventBus.characterPartChanged.AddListener(OnCharacterPartChanged); m_EventBus.toolChanged.AddListener(OnToolChanged); m_EventBus.restoreBindPose.AddListener(OnRestoreBindPose); m_EventBus.copy.AddListener(OnCopy); m_EventBus.paste.AddListener(OnPaste); m_EventBus.shortcut.AddListener(OnShortcut); m_EventBus.boneVisibility.AddListener(OnBoneVisibility); OnToolChanged(model.selectedTool); }
public void Setup() { MockTools(); m_Events = new SkinningEvents(); m_Model = Substitute.For <IAnimationAnalyticsModel>(); m_Model.selectedTool.Returns(m_Tools[Tools.EditPose]); m_Model.GetTool(Arg.Any <Tools>()).Returns(x => m_Tools[x.Arg <Tools>()]); m_Model.applicationElapseTime.Returns(0); m_Storage = Substitute.For <IAnalyticsStorage>(); m_Analytics = new AnimationAnalytics(m_Storage, m_Events, m_Model, 1001); }