void OnProjectTabButtonClicked(ProjectServerType projectServerType) { var data = UIStateManager.current.stateData.landingScreenFilterData; data.projectServerType = projectServerType; Dispatcher.Dispatch(Payload <ActionTypes> .From(ActionTypes.SetLandingScreenFilter, data)); }
public void SelectButtonType(ProjectServerType projectServerType) { foreach (var projectTabButton in m_ProjectTabs) { projectTabButton.SelectButton(projectTabButton.type == projectServerType); } }
public void InitProjectItem(Project project) { m_project = project; m_TitleText.text = project.name; m_DescriptionText.text = project.description; if (project.description == "Local") { m_ProjectServerType = ProjectServerType.Local; } else if (project.description == "Cloud") { m_ProjectServerType = ProjectServerType.Cloud; } else if (project.description == "Network") { m_ProjectServerType = ProjectServerType.Network; } m_DateText.text = project.lastPublished.ToShortDateString(); bool isConnected = project.isAvailableOnline; m_ConnectedImage.gameObject.SetActive(isConnected); m_DisconnectedImage.gameObject.SetActive(!isConnected); }
void OnStateDataChanged(UIStateData data) { if (data.selectedProjectOption != m_CurrentSelectedProject) { if (m_LastHighlightedItem != null) { m_LastHighlightedItem.SetHighlight(false); m_LastHighlightedItem = null; } if (data.selectedProjectOption != Project.Empty) { var projectListItem = m_ProjectListItems.SingleOrDefault(e => e.room.project == data.selectedProjectOption); if (projectListItem != null) { projectListItem.SetHighlight(true); m_LastHighlightedItem = projectListItem; } m_ProjectOption.transform.SetParent(m_ScrollRect.transform); m_ProjectOption.transform.localPosition = GetOptionPosition(projectListItem); m_ProjectOption.transform.SetParent(m_ScrollRect.transform.parent); m_ScrollRect.StopMovement(); m_ProjectOption.InitProjectOption(data.selectedProjectOption); m_ProjectOption.gameObject.SetActive(true); m_TapDetector.SetActive(true); } else { m_ProjectOption.gameObject.SetActive(false); m_TapDetector.SetActive(false); } m_CurrentSelectedProject = data.selectedProjectOption; m_CurrentOptionIndex = data.projectOptionIndex; } else if (data.projectOptionIndex != m_CurrentOptionIndex) { m_ProjectOption.InitProjectOption(data.selectedProjectOption); m_CurrentOptionIndex = data.projectOptionIndex; } if (data.landingScreenFilterData != m_CurrentFilterData) { m_ScrollRect.verticalNormalizedPosition = 1; FilterProjectList(data.landingScreenFilterData); m_CurrentFilterData = data.landingScreenFilterData; if (data.landingScreenFilterData.projectServerType != m_CurrentServerType) { m_ProjectTabController.SelectButtonType(data.landingScreenFilterData.projectServerType); m_CurrentServerType = data.landingScreenFilterData.projectServerType; } } UpdateLayout(data); }
void OnProjectTabButtonClicked(ProjectServerType projectServerType) { projectTabButtonClicked?.Invoke(projectServerType); }