private void SortByPreviousSelected() { if (!((Object)sortToggleGroup == (Object)null) && !((Object)lastSortToggle == (Object)null)) { for (int i = 0; i < ColumnTitlesContainer.childCount; i++) { OverviewColumnIdentity component = ColumnTitlesContainer.GetChild(i).GetComponent <OverviewColumnIdentity>(); Toggle component2 = ColumnTitlesContainer.GetChild(i).GetComponent <Toggle>(); if ((Object)component2 == (Object)lastSortToggle) { if (component.columnID == "name") { SortByName(lastSortReversed); } if (component.columnID == "health") { SortByAmount("HitPoints", lastSortReversed); } if (component.columnID == "stress") { SortByAmount("Stress", lastSortReversed); } if (component.columnID == "calories") { SortByAmount("Calories", lastSortReversed); } } } } }
protected override void PositionColumnTitles() { base.PositionColumnTitles(); int childCount = ColumnTitlesContainer.childCount; for (int i = 0; i < childCount; i++) { if (i < choreGroups.Count) { Toggle sortToggle = ColumnTitlesContainer.GetChild(i).Find("Title").GetComponentInChildren <Toggle>(); ColumnTitlesContainer.GetChild(i).rectTransform().localScale = Vector3.one; ChoreGroup chore_group = choreGroups[i]; ImageToggleState toggleImage = sortToggle.GetComponentInChildren <ImageToggleState>(true); sortToggle.group = sortToggleGroup; sortToggle.onValueChanged.AddListener(delegate { bool playSound = false; if ((UnityEngine.Object)lastSortToggle == (UnityEngine.Object)sortToggle) { playSound = true; } SortByEffectiveness(chore_group, !sortToggle.isOn, playSound); lastSortToggle = sortToggle; lastSortReversed = !sortToggle.isOn; ResetSortToggles(sortToggle); if (sortToggle.isOn) { toggleImage.SetActive(); } else { toggleImage.SetInactive(); } }); } ToolTip JobTooltip = ColumnTitlesContainer.GetChild(i).GetComponent <ToolTip>(); ToolTip toolTip = JobTooltip; toolTip.OnToolTip = (Func <string>)Delegate.Combine(toolTip.OnToolTip, (Func <string>)(() => GetJobTooltip(JobTooltip.gameObject))); Button componentInChildren = ColumnTitlesContainer.GetChild(i).GetComponentInChildren <Button>(); EveryoneToggles.Add(componentInChildren, everyoneToggleState.on); } for (int j = 0; j < choreGroups.Count; j++) { ChoreGroup chore_group2 = choreGroups[j]; Button b = EveryoneToggles.Keys.ElementAt(j); EveryoneToggles.Keys.ElementAt(j).onClick.AddListener(delegate { ToggleJobEveryone(b, chore_group2); }); } Button key = EveryoneToggles.ElementAt(EveryoneToggles.Count - 1).Key; key.transform.parent.Find("Title").gameObject.GetComponentInChildren <Toggle>().gameObject.SetActive(false); key.onClick.AddListener(delegate { ToggleAllTasksEveryone(); }); EveryoneAllTaskToggle = new KeyValuePair <Button, everyoneToggleState>(key, EveryoneAllTaskToggle.Value); }
private void ResetSortToggles(Toggle exceptToggle) { for (int i = 0; i < ColumnTitlesContainer.childCount; i++) { Toggle component = ColumnTitlesContainer.GetChild(i).GetComponent <Toggle>(); ImageToggleState componentInChildren = component.GetComponentInChildren <ImageToggleState>(true); if ((Object)component != (Object)exceptToggle) { componentInChildren.SetDisabled(); } } }
private void ResetSortToggles(Toggle exceptToggle) { for (int i = 0; i < ColumnTitlesContainer.childCount; i++) { Toggle componentInChildren = ColumnTitlesContainer.GetChild(i).Find("Title").GetComponentInChildren <Toggle>(); if (!((UnityEngine.Object)componentInChildren == (UnityEngine.Object)null)) { ImageToggleState componentInChildren2 = componentInChildren.GetComponentInChildren <ImageToggleState>(true); if ((UnityEngine.Object)componentInChildren != (UnityEngine.Object)exceptToggle) { componentInChildren2.SetDisabled(); } } } ImageToggleState componentInChildren3 = SortEveryoneToggle.GetComponentInChildren <ImageToggleState>(true); if ((UnityEngine.Object)SortEveryoneToggle != (UnityEngine.Object)exceptToggle) { componentInChildren3.SetDisabled(); } }
private void SortByPreviousSelected() { if (!((UnityEngine.Object)sortToggleGroup == (UnityEngine.Object)null) && !((UnityEngine.Object)lastSortToggle == (UnityEngine.Object)null)) { int childCount = ColumnTitlesContainer.childCount; for (int i = 0; i < childCount; i++) { if (i < choreGroups.Count) { Toggle componentInChildren = ColumnTitlesContainer.GetChild(i).Find("Title").GetComponentInChildren <Toggle>(); if ((UnityEngine.Object)componentInChildren == (UnityEngine.Object)lastSortToggle) { SortByEffectiveness(choreGroups[i], lastSortReversed, false); return; } } } if ((UnityEngine.Object)SortEveryoneToggle == (UnityEngine.Object)lastSortToggle) { SortByName(lastSortReversed); } } }
protected override void PositionColumnTitles() { base.PositionColumnTitles(); for (int i = 0; i < ColumnTitlesContainer.childCount; i++) { OverviewColumnIdentity component = ColumnTitlesContainer.GetChild(i).GetComponent <OverviewColumnIdentity>(); if (component.Sortable) { Toggle toggle = ColumnTitlesContainer.GetChild(i).GetComponent <Toggle>(); toggle.group = sortToggleGroup; ImageToggleState toggleImage = toggle.GetComponentInChildren <ImageToggleState>(true); if (component.columnID == "name") { toggle.onValueChanged.AddListener(delegate { SortByName(!toggle.isOn); lastSortToggle = toggle; lastSortReversed = !toggle.isOn; ResetSortToggles(toggle); if (toggle.isOn) { toggleImage.SetActive(); } else { toggleImage.SetInactive(); } }); } if (component.columnID == "health") { toggle.onValueChanged.AddListener(delegate { SortByAmount("HitPoints", !toggle.isOn); lastSortToggle = toggle; lastSortReversed = !toggle.isOn; ResetSortToggles(toggle); if (toggle.isOn) { toggleImage.SetActive(); } else { toggleImage.SetInactive(); } }); } if (component.columnID == "stress") { toggle.onValueChanged.AddListener(delegate { SortByAmount("Stress", !toggle.isOn); lastSortToggle = toggle; lastSortReversed = !toggle.isOn; ResetSortToggles(toggle); if (toggle.isOn) { toggleImage.SetActive(); } else { toggleImage.SetInactive(); } }); } if (component.columnID == "calories") { toggle.onValueChanged.AddListener(delegate { SortByAmount("Calories", !toggle.isOn); lastSortToggle = toggle; lastSortReversed = !toggle.isOn; ResetSortToggles(toggle); if (toggle.isOn) { toggleImage.SetActive(); } else { toggleImage.SetInactive(); } }); } } } }
private void Refresh() { if (dirty) { int childCount = ColumnTitlesContainer.childCount; bool flag = false; bool flag2 = false; for (int i = 0; i < childCount; i++) { bool flag3 = false; bool flag4 = false; if (choreGroups.Count - 1 >= i) { ChoreGroup chore_group = choreGroups[i]; for (int j = 0; j < EntryObjects.Count; j++) { ChoreConsumer consumer = EntryObjects[j].GetComponent <CrewJobsEntry>().consumer; if (consumer.IsPermittedByTraits(chore_group)) { if (consumer.IsPermittedByUser(chore_group)) { flag3 = true; flag = true; } else { flag4 = true; flag2 = true; } } } if (flag3 && flag4) { EveryoneToggles[EveryoneToggles.ElementAt(i).Key] = everyoneToggleState.mixed; } else if (flag3) { EveryoneToggles[EveryoneToggles.ElementAt(i).Key] = everyoneToggleState.on; } else { EveryoneToggles[EveryoneToggles.ElementAt(i).Key] = everyoneToggleState.off; } Button componentInChildren = ColumnTitlesContainer.GetChild(i).GetComponentInChildren <Button>(); ImageToggleState component = componentInChildren.GetComponentsInChildren <Image>(true)[1].GetComponent <ImageToggleState>(); switch (EveryoneToggles[componentInChildren]) { case everyoneToggleState.off: component.SetDisabled(); break; case everyoneToggleState.mixed: component.SetInactive(); break; case everyoneToggleState.on: component.SetActive(); break; } } } if (flag && flag2) { EveryoneAllTaskToggle = new KeyValuePair <Button, everyoneToggleState>(EveryoneAllTaskToggle.Key, everyoneToggleState.mixed); } else if (flag) { EveryoneAllTaskToggle = new KeyValuePair <Button, everyoneToggleState>(EveryoneAllTaskToggle.Key, everyoneToggleState.on); } else if (flag2) { EveryoneAllTaskToggle = new KeyValuePair <Button, everyoneToggleState>(EveryoneAllTaskToggle.Key, everyoneToggleState.off); } ImageToggleState component2 = EveryoneAllTaskToggle.Key.GetComponentsInChildren <Image>(true)[1].GetComponent <ImageToggleState>(); switch (EveryoneAllTaskToggle.Value) { case everyoneToggleState.off: component2.SetDisabled(); break; case everyoneToggleState.mixed: component2.SetInactive(); break; case everyoneToggleState.on: component2.SetActive(); break; } Vector2 sizeDelta = EntriesPanelTransform.rectTransform().sizeDelta; screenWidth = sizeDelta.x; ScrollRectTransform.GetComponent <LayoutElement>().minWidth = screenWidth; float num = 31f; GetComponent <LayoutElement>().minWidth = screenWidth + num; dirty = false; } }