Grazie denis76 per l'interessamento.
Mentre davo un occhio a quanto da te consigliato, mi e' venuto in mente quanto segue, che pare funzionare nel senso che non ricevo alcun messaggio durante la compilazione ed effettivamente ottengo cio' che voglio.
Faccio un breve riepilogo.
La mia situazione e' aver creato una classe che chiamo AbstractWidget (ho dei metodi astratti in questa classe) derivata 'public' da QWidget.
Da AbstractWidget derivo sempre 'public' Una piccola serie di Widget, che chiamo Widget1, Widget2, Widget3, ecc.
Questi Widget_i emettono il signal miosegnale.
Ho poi creato un'altra classe, che chiamo MyWidget, derivata sempre 'public' da QWidget, che tra le altre cose, ha come child un QStackedWidget che viene popolato dai Widget_i col costruttore di MyWidget.
Quando uno dei Widget_i emette il signal miosegnale, MyWidget deve far partire lo slot myslot
Ho quindi pensato, che una volta creati tutti gli oggetti, posso far scorrere tutti i child del QStackedWidget, ad esempio mediante ciclo for, e fare effettivamente connect, sotto uno stalcio di pseudocodice
codice:
MyWidget::MyWidget(/*parametri necessari*/)
{
//quello che serve
//...
//in base ai parametri passati
//popolo mStackedWidget->insertWidget(/*...*/);
//a questo punto posso far scorrere tutti i child di mStackedWidget e fare, ad esempio mediante un ciclo for
//connect(static_cast<MyWidget*>(mStackedWidget->widget(i)),SIGNAL(miosegnale),this,SLOT(myslot));
//eventuali altre cose
}
Spero che funzioni perche' sia veramente corretto e non per una serie fortuita di coincidenze, grazie