NSPreferencePane предоставляет вам несколько методов, которые вы можете переопределить, чтобы реагировать на изменения. В частности, mainViewDidLoad:
дает вам возможность выполнить инициализацию, когда ваша панель настроек становится активной впервые.
Если вы действительно хотели отслеживать, когда окно системных настроек становится основным или ключевым, вы можете подписаться на уведомления NSWindow для этих событий.
// These messages get sent to the a preference panel just before and
// just after it becomes the currently selected preference panel.
- (void) willSelect;
- (void) didSelect;
// The willUnselect message gets sent to the currently selected preference panel
// just before and just after it gets swapped out for another preference panel
- (void) willUnselect;
- (void) didUnselect;