В Mac OS X v10.7 и новее:
- (void)setDisplayName:(NSString *)displayNameOrNil
v10.6, переопределение в вашем подклассе NSDocument:
- (BOOL)prepareSavePanel:(NSSavePanel *)savePanel
{
if( [savePanel.nameFieldStringValue isEqualToString:@"Untitled"] )
[savePanel setNameFieldStringValue:@"hello"];
return [super prepareSavePanel:savePanel];
}
Фактически реализация по умолчанию пуста и возвращаетДА, так можно просто сделать это.
Не уверен насчет проверки на "Без названия", хотя, не будет работать, если они уже сохранены как "Без названия" и хотят сохранить это имя, и, возможно, он не будет локализовантак что, возможно, установите флаг в
- (id)initWithType:(NSString *)type error:(NSError **)error
или он уже есть?