private void SwapPages(KMSelectable oldPage, KMSelectable newPage, bool deactivateOldPage = true) { RootSelectable.Children = new KMSelectable[1] { TempSelectable }; RootSelectable.ChildRowLength = 1; RootSelectable.DefaultSelectableIndex = 0; foreach (KMSelectable selectable in oldPage.Children) { if (selectable != null) { selectable.Parent = oldPage; selectable.OnCancel -= OnCancel; } } RootSelectable.Reproxy(); if (deactivateOldPage) { oldPage.gameObject.SetActive(false); } if (newPage != null) { EnablePage(newPage); } else { RootSelectable.Reproxy(); } }
public static void AddPagePrefab(string name, KMSelectable pageSelectable) { if (PagePrefabs.ContainsKey(name)) { return; } PagePrefabs[name] = pageSelectable; pageSelectable.EnsureModSelectable(); pageSelectable.Reproxy(); }
public override void SetPage(int pageIndex, int pageOffset = 0) { if (_mods == null) { return; } base.SetPage(pageIndex, pageOffset); Page.HeaderText = string.Format("<b>Enabled/Disabled Mods</b>\n<size=16>{0}</size>", PageName); if (_mods.Length == 0) { KMSelectable pageSelectable = GetComponent <KMSelectable>(); pageSelectable.DefaultSelectableIndex = 1; pageSelectable.Reproxy(); return; } }