internal bool ShowComboBox(string label, GUIContent[] items, ref ComboBoxLO combo, ref int idx, Action <int> func) { GUILayout.BeginHorizontal(); try { GUILayout.Label(label, uiParams.lStyle, optItemHeight); GUILayout.Space(uiParams.marginL); if (combo == null) { var selected = (idx >= 0 && idx < items.Length) ? items[idx] : GUIContent.none; combo = new ComboBoxLO(selected, items, uiParams.bStyleSC, uiParams.boxStyle, uiParams.listStyle, false); } else { combo.SelectedItemIndex = idx; } combo.Show(GUILayout.ExpandWidth(true)); //uiParams.optInsideWidth); var selectedIdx = combo.SelectedItemIndex; if (idx == selectedIdx || selectedIdx == -1) { return(false); } idx = selectedIdx; func(selectedIdx); return(true); } finally { GUILayout.EndHorizontal(); } }
// Token: 0x0600030D RID: 781 RVA: 0x00018B24 File Offset: 0x00016D24 internal bool ShowComboBox(string label, GUIContent[] items, ref ComboBoxLO combo, ref int idx, Action <int> func) { GUILayout.BeginHorizontal(new GUILayoutOption[0]); bool result; try { GUILayout.Label(label, this.uiParams.lStyle, new GUILayoutOption[] { this.optItemHeight }); GUILayout.Space((float)this.uiParams.marginL); if (combo == null) { GUIContent buttonContent = (idx >= 0 && idx < items.Length) ? items[idx] : GUIContent.none; combo = new ComboBoxLO(buttonContent, items, this.uiParams.bStyleSC, this.uiParams.boxStyle, this.uiParams.listStyle, false); } else { combo.SelectedItemIndex = idx; } combo.Show(GUILayout.ExpandWidth(true)); int selectedItemIndex = combo.SelectedItemIndex; if (idx == selectedItemIndex || selectedItemIndex == -1) { result = false; } else { idx = selectedItemIndex; func(selectedItemIndex); result = true; } } finally { GUILayout.EndHorizontal(); } return(result); }