public void Bind(IAtomPlugin plugin, string defaultScreen = null) { _plugin = plugin; _leftPanelPrefabFactory = leftPanel.AddComponent <VamPrefabFactory>(); _leftPanelPrefabFactory.plugin = plugin; _controlPanel = CreateControlPanel(leftPanel); _controlPanel.Bind(plugin); InitClipboardUI(); InitChangeCurveTypeUI(); _curves = InitCurvesUI(); tabs.Add(AnimationsScreen.ScreenName); tabs.Add(TargetsScreen.ScreenName); tabs.Add(EditAnimationScreen.ScreenName); tabs.Add(MoreScreen.ScreenName); _expandButton = tabs.Add("Collapse >"); InitToggleRightPanelButton(_expandButton); tabs.onTabSelected.AddListener(screenName => { screensManager.ChangeScreen(screenName); Expand(true); }); screensManager = InitScreensManager(rightPanel); screensManager.onScreenChanged.AddListener(screenName => tabs.Select(screenName)); screensManager.Bind(plugin, defaultScreen); }
private void BindAnimation() { animation.TimeChanged.AddListener(OnTimeChanged); animation.AnimationRebuildRequested.AddListener(OnAnimationRebuildRequested); animation.AnimationSettingsChanged.AddListener(OnAnimationParametersChanged); animation.CurrentAnimationChanged.AddListener(OnCurrentAnimationChanged); animation.ClipsListChanged.AddListener(OnAnimationParametersChanged); OnAnimationParametersChanged(); SampleAfterRebuild(); _ui.Bind(animation); SendToControllers(nameof(IAnimationController.OnTimelineAnimationReady)); }