public static GenericMenu DoFsmEnumTypeMenu(SkillEnum fsmEnum) { VariableEditor.editingFsmEnumType = fsmEnum; GenericMenu genericMenu = new GenericMenu(); using (List <Type> .Enumerator enumerator = TypeHelpers.EnumTypeList.GetEnumerator()) { while (enumerator.MoveNext()) { Type current = enumerator.get_Current(); string fullName = current.get_FullName(); string text = fullName.Replace('.', '/'); genericMenu.AddItem(new GUIContent(text), fullName == fsmEnum.get_EnumName(), new GenericMenu.MenuFunction2(VariableEditor.SetFsmEnumType), fullName); } } genericMenu.ShowAsContext(); return(genericMenu); }
public static void EnumTypeSelector(SkillEnum fsmEnum) { GUILayout.BeginHorizontal(new GUILayoutOption[0]); EditorGUILayout.PrefixLabel(Strings.get_Label_Enum_Type()); if (GUILayout.Button(SkillEditorContent.TempContent(Labels.GetShortTypeName(fsmEnum.get_EnumType()), fsmEnum.get_EnumName()), EditorStyles.get_popup(), new GUILayoutOption[0])) { VariableEditor.DoFsmEnumTypeMenu(fsmEnum); } GUILayout.EndHorizontal(); }