Как настроить контекстное меню NSToolbar? - PullRequest
0 голосов
/ 07 декабря 2011

Мне нужно удалить некоторые элементы из контекстного меню, вызываемого правой кнопкой мыши, но панель инструментов не содержит общедоступного API для доступа к «toolbarView».

Можно ли настроить меню без использования частного API?

1 Ответ

1 голос
/ 07 мая 2012

Вы можете получить доступ и изменить контекстное меню панели инструментов при создании панели инструментов, т. Е. В -[awakeFromNib]:

- (NSMenu *)toolbarMenuInWindow:(NSWindow *)window
{
    NSView *contentView = window.contentView;
    NSView *toolbarView = contentView.superview.subviews.lastObject;
    NSMenu *toolbarMenu = toolbarView.menu;
    return toolbarMenu;
}

Теперь вы можете напрямую редактировать элементы меню и скрывать или отключать их.

...