void FillItemList() { var types = Assembly.GetExecutingAssembly().GetTypes(); foreach (var type in types) { if (type.IsSubclassOf(typeof(Tests.Test))) { TestMenuItem menuItem = new TestMenuItem(); menuItem.type = type; menuItem.name = NiceClassName(type.Name); var iconFunction = type.GetMethod("DrawIcon", BindingFlags.Static | BindingFlags.Public); if (iconFunction != null) { try { menuItem.drawIcon = Delegate.CreateDelegate(typeof(DrawIcon), iconFunction) as DrawIcon; } catch { } } items.Add(menuItem); } } items.Sort(TestMenuItem.CompareByName); }
public static int CompareByName(TestMenuItem a, TestMenuItem b) { return a.name.CompareTo(b.name); }
void FillItemList() { var types = Assembly.GetExecutingAssembly().GetTypes(); foreach(var type in types) { if(type.IsSubclassOf(typeof(Tests.Test))) { TestMenuItem menuItem = new TestMenuItem(); menuItem.type = type; menuItem.name = NiceClassName(type.Name); var iconFunction = type.GetMethod("DrawIcon", BindingFlags.Static | BindingFlags.Public); if(iconFunction != null) { try { menuItem.drawIcon = Delegate.CreateDelegate(typeof(DrawIcon), iconFunction) as DrawIcon; } catch { } } items.Add(menuItem); } } items.Sort(TestMenuItem.CompareByName); }
public static int CompareByName(TestMenuItem a, TestMenuItem b) { return(a.name.CompareTo(b.name)); }