Come si rileva quando un utente fa clic sul pulsante di ingrandimento o zoom (+) verde sulla NSWindow senza utilizzare lo NSWindowDidResizeNotification
?Come rilevare l'evento NSWindow Maximize o Zoom?
Il motivo per cui non desidero utilizzare NSWindowDidResizeNotification
è perché viene attivato anche ripetutamente mentre l'utente fa clic e trascina per ridimensionare manualmente la finestra. Ho un codice che voglio eseguire e dovrebbe sparare solo quando l'utente ingrandisce o de-zoom la finestra utilizzando il pulsante verde nell'angolo in alto a sinistra e non molte volte quando ridimensiona manualmente la finestra.
Questo è tutto! La soluzione del mio povero uomo era di creare un flag BOOL "windowIsResizing" e impostarlo su "YES" su NSWindowWillStartLiveResizeNotification e tornare a "NO" su NSWindowWillEndLiveResizeNotification. Quindi nella notifica WindowDidResize ho fatto "if (! WindowIsResizing) ..." e quando la finestra veniva ridimensionata manualmente questo avrebbe impedito l'attivazione multipla del codice che avrei voluto eseguire solo una volta, si accenderebbe solo quando l'utente ha premuto il tasto pulsante zoom. Ma è molto meglio, grazie! – EagleOfToledo