Pregunta

En mi aplicación de documento subclasé un NSArrayController que a la que me hace referencia en MyDocument.xib alimitando su contenido en el propietario de File.entries .

Entradas es un NSARRAY I Exposo como un atributo de la clase MyDocument de esta manera:

@interface MyDocument : NSDocument {
    NSArray *entries;
}

-(NSArray *)entries;
-(void)setEntries:(NSArray *)newEntries;
@end

Esto funciona perfectamente bien. Bueno.

Ahora he diseñado otro .xib, csventries.xib que abro a través de un Nsmenuitem a través de un NSWINDOWController y nuevamente, esto funciona sin problemas.

No puedo averiguar cómo hacer que esta nueva ventana muestre el contenido de la instancia de MyDocument.Entries en un NStableView.

He intentado muchas cosas, pero el problema básicamente es que cualquier nsarraycontroller que pongo en csventries.xib no puede estar ligado a mydocument.entries : CVSentries.xib El propietario del archivo se refiere a otra cosa que no MyDocument (que es lógico, supongo).

También intenté agregar una copia de la instancia de Nsarray al NSWINDOWCONTROLLER QUE Abre CVSENTRIES.xib, pero dado que la ventana se instanciaba solo cuando el usuario hace clic en el menú, terminé con una matriz vacía.

Me busco en Internet, pero no pude encontrar una respuesta apropiada, me gustaría averiguar la forma correcta de abordar el problema, estoy seguro de que dos ventanas pueden comunicarse entre ellas, tal vez acceder a su padre común (instancia de NSApplication )?

Todas las preguntas de Newbie, lo sé :)

Actualización

Creo que me di cuenta de dónde mirar pero aún así, no. Creo que tengo que asegurarme de que el propietario del segundo archivo de la segunda ventana sea MyDocument, pero en el NSWINDOWCONTROLLER INITWITHWITHWITHWITHNIBNAME: Propietario: No puedo entender cómo especificar la instancia de MyDocument como propietario. Especificarlo solo en el propietario del archivo XIB del archivo parece no suficiente.

Actualización 2

uhm ... Estoy empezando a pensar que necesito tener dos instancias de NSWINDOWController, tanto instanciadas por mi subclase de NSDocument (predeterminado MyDocument). Con aquellos que están en su lugar, quizás los dos NSWINDOWControllers tendrán acceso a la MyDocument.Entries Nsarray y los dos archivos de Windows XIB podrán estar vinculados al propietario de File.Entries.

¿Puede alguien confirmar esto? Gracias.

¿Fue útil?

Solución

I reply to my own question here, basically stating that I have realized what I was asking is very much dependent on what the File's Owner is bound to. The design I implemented was not correct and I am therefore redesigning it to achieve my purpose.

Thanks everyone anyway, even no answers are an answer :)

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