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); }
public override void Init() { try { serializer = new AtomAnimationSerializer(base.containingAtom); _ui = new ScreensManager(this); InitStorables(); _ui.Init(); StartCoroutine(DeferredInit()); } catch (Exception exc) { SuperController.LogError($"VamTimeline.{nameof(AtomPlugin)}.{nameof(Init)}: " + exc); } }
private ScreensManager InitScreensManager(GameObject panel) { var go = new GameObject(); go.transform.SetParent(panel.transform, false); var layout = go.AddComponent <LayoutElement>(); layout.preferredHeight = 1138f; layout.flexibleWidth = 1; var screensManager = ScreensManager.Configure(go); screensManager.popupParent = popupParent; return(screensManager); }