¿Dónde se deben implementar acciones relacionadas con documentos para una aplicación Cocoa?

StackOverflow https://stackoverflow.com/questions/2483556

Pregunta

Estoy escribiendo una aplicación Cocoa basado en documentos que es básicamente un programa de edición gráfica. Quiero que el usuario sea capaz de mostrar / ocultar las ventanas no modales (como una ventana de inspección). Dado que se muestran estas ventanas / oculto a los elementos de menú, donde es el "mejor" lugar para poner en práctica las acciones, como - (IBAction)toggleInspector:(id)sender?

He visto que en el código de ejemplo Boceto éstos se implementan en el delegado de la aplicación, y las instancias del controlador ventana se mantienen allí también, pero que se siente como más de un lugar conveniente para ponerlo que el más "elegante" sitio. Además, dado que este inspector sólo sería relevante cuando se abre un documento que se siente como que debería estar asociada más con NSWindowController principal del documento de la aplicación.

¿Fue útil?

Solución

  

Además, dado que este inspector sólo sería relevante cuando se abre un documento que se siente como que debería estar asociada más con NSWindowController principal del documento de la aplicación.

No, porque el inspector se comparte entre todos los documentos; no hay un inspector por cada documento.

Recuerde que un solo proceso puede tener varios documentos abiertos; no se trata de múltiples procesos, uno por cada documento, como en Windows, pero varios documentos en un único proceso. Hay un inspector por cada proceso, compartida entre todos los documentos, y se aplica a cualquiera de esos documentos es más adelantada en el tiempo.

I daría el Inspector su propio controlador, instanciado en la punta MainMenu.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top