private void PopulateSubjectsList()
{
SubjectInfo[] subjects = GetSubjects();
// Sort: groups first, users second
Array.Sort(subjects, delegate(SubjectInfo x, SubjectInfo y) {
if(x.Type == y.Type) return x.Name.CompareTo(y.Name);
else {
if(x.Type == SubjectType.Group) return -1;
else return 1;
}
});
lstSubjects.Items.Clear();
foreach(SubjectInfo subject in subjects) {
bool isGroup = subject.Type == SubjectType.Group;
lstSubjects.Items.Add(
new ListItem((isGroup ? Properties.Messages.Group : Properties.Messages.User) +
": " + subject.Name, (isGroup ? "G." : "U.") + subject.Name));
}
ClearPermissions();
}