извините за поздний комментарий,
Я использую этот хитрый трюк.
Например, ваш класс называется «MyClass», вы хотите, чтобы он имел протокол NSTableDataSource. Что вы делаете, это пишите
@interface MyClass : NSObject <NSTableDataSource>
{
... usual stuff here ...
@end
затем щелкните правой кнопкой мыши на NSTableDataSource, нажмите « Перейти к определению » .... и вы можете скопировать его оттуда.
Если вы хотите, чтобы он был делегатом, скажем еще раз, NSTableView, просто назовите протокол NSTableViewDelegate (это фактическое имя протокола!), Щелкните по нему правой кнопкой мыши, выберите « Перейти к определению"- и у вас это есть, вы просто должны игнорировать эти отметки препроцессора везде.
Возможно, это не так просто, как, например, с интерфейсами Java и NetBeans, но это не намного медленнее.