Мне нужно иметь возможность динамически изменять иерархию NSMenu каждый раз, когда она отображается (добавлять / удалять элементы и т. д.). Например:
Для этого у меня есть объект, реализующий протокол NSMenuDelegate . Метод menuNeedsUpdate работает в первый раз (2), но не работает во второй раз, когда открывается подменю. (Вызывается только один раз за сеанс отслеживания)
Метод menuWillOpen вызывается каждый раз, но в документах есть следующее предупреждение, которое, похоже, не позволяет использовать этот подход:
Не изменяйте структуру меню или пунктов меню во время этого метод.
Есть ли способ сделать это?