Per contesto, sto costruendo un'applicazione GTK + in C, dove una sottoclasse di GtkApplicationWindow crea e visualizza una sottoclasse di GtkToolbar e un GtkNotebook (un widget con più pagine che può essere visualizzato alternativamente da una funzione membro). Ci sono dei pulsanti radio sulla barra degli strumenti per passare da una pagina all'altra.
Se la barra degli strumenti contiene un riferimento (duplicato) al taccuino (fornito dalla finestra durante la costruzione), o dovrebbe contenere solo un riferimento al suo proprietario (la finestra) e chiamare una funzione del suo proprietario che a sua volta chiama il funzione del notebook per cambiare pagina? Un'altra alternativa, la barra degli strumenti potrebbe mantenere solo un riferimento alla finestra e accedere al riferimento della finestra del notebook ogni volta che si desidera alternare le pagine? Ho la sensazione che questo sia un caso affrontato dalla Legge di Demetra , ma non sono sicuro di cosa imponga.