void InitializeUserEntries() { if (UserSession.Instance.Users == null) { DisplayState = LoginDisplayState.Login; } else { if (UserSession.Instance.Users.Count == 1) { //UserSession.Instance.SetCurrentUser(UserSession.Instance.Users[0]); Close(); return; } foreach (Transform child in UserPanel.transform) { Destroy(child.gameObject); } var defaultIndex = 0; // UserSession.Instance.GetDefaultUserIndex(); var toggleGroup = UserPanel.GetComponent <ToggleGroup>(); var UserList = UserSession.Instance.Users; //foreach (AllUsers user in UserList) // foreach loops don't play nice with variables in delegates as UnityEvent listeners for (int u = 0; u < UserList.Count; u++) { Spaces.Core.User user = UserList[u]; GameObject userEntry = Instantiate(UserEntryPrefab); Toggle userToggle = userEntry.GetComponent <Toggle>(); Text label = userEntry.GetComponentInChildren <Text>(); userEntry.transform.SetParent(UserPanel.transform, false); if (label) { label.text = user.name; } if (userToggle) { userToggle.onValueChanged.AddListener(delegate { User_Click(userToggle, user); }); userToggle.group = toggleGroup; if (u == defaultIndex) { userToggle.isOn = true; } } } } }
public void UserRegistration() { DisplayState = LoginDisplayState.Registration; }
private void UpdateStatus() { DisplayState = LoginDisplayState.Login;//.Registration; }
void UpdateUserMode() { DisplayState = LoginDisplayState.Select; InitializeUserEntries(); }