ICollection<ElementId> GetUnusedTextNoteTypesExcluding(
Document doc)
{
ICollection<ElementId> usedTextNotesTypeIds
= new Collection<ElementId>();
FilteredElementCollector textNotes
= new FilteredElementCollector( doc )
.OfClass( typeof( TextNote ) );
foreach( TextNote textNote in textNotes )
{
usedTextNotesTypeIds.Add(
textNote.TextNoteType.Id );
}
FilteredElementCollector unusedTypeCollector
= new FilteredElementCollector( doc )
.OfClass( typeof( TextNoteType ) );
if( 0 < usedTextNotesTypeIds.Count )
{
unusedTypeCollector.Excluding(
usedTextNotesTypeIds );
}
ICollection<ElementId> unusedTypes
= unusedTypeCollector.ToElementIds();
return unusedTypes;
}