[Development] Fixing connecting to private signals
Olivier Goffart
olivier at woboq.com
Wed Jul 11 19:10:59 CEST 2012
On Wednesday 11 July 2012 18:50:15 Stephen Kelly wrote:
> On Wednesday, July 11, 2012 18:40:10 Thiago Macieira wrote:
> > I don't see the point of a private signal.
> >
> > QAbstractitemModel is abusing it. Just make them regular signals.
Do you see the point of the private or protected keyword in C++?
It is just in order to catch a common mistake people do while implementing
models. (As if it was not already hard enough)
> I'm opposed to making those public because users will use
>
> emit rowsInserted(...);
>
> in subclasses of QAIM, which might happen to appear to work the first time,
> and therefore will breaking things silently.
>
> I'm sure the situation is similar for users emitting entered() or exited()
> in QAbstractState subclasses.
>
> So, either the code should stay as is - leaving the signals private and
> making function pointer connects not work, or the patches should be
> applied, making function pointer connects work.
>
> Making the signals public is not an option for me.
I personally beleive allowing the new syntax is more important than keeping
those signal private.
Anyway, i'm quite happy with the current implementation in moc.
Then it looks ugly because of the qdoc hack... but that can be fixed later.
--
Olivier
Woboq - Qt services and support - http://woboq.com
More information about the Development
mailing list