[Development] Moving QWindowSystemInterface out of QPA
Stephen Kelly
stephen.kelly at kdab.com
Tue Jul 10 11:37:41 CEST 2012
Hi there,
QWindowSystemInterface is treated as a QPA header since this discussion:
http://thread.gmane.org/gmane.comp.lib.qt.devel/4178/focus=4210
http://thread.gmane.org/gmane.comp.lib.qt.devel/4178/focus=4206
QWindowSystemInterface is different to QPA API because it is just a bunch of
static methods on a class, rather that a virtual interface designed to be
subclassed.
http://thread.gmane.org/gmane.comp.lib.qt.devel/3198/focus=3210
It can be extended in its current form (adding more static methods) in the
future, and it can remain an 'internal' implementation detail, but I think it
should be made public.
If it is not made public, then all CMake based code using QtTest will have to
use private QtGui headers.
https://codereview.qt-project.org/#change,30483
It of course already breaks KDE tests. It will continue to break other tests
where qmake isn't used (which has a workaround for this problem - if qtestlib
is used then the -private modules of all Qt modules are used).
I don't think it's enough or 'good' to have a workaround for qmake and leave
the others out in the cold.
I think the best solution is to move QWindowSystemInterface headers out of
qpa, making it 'public but internal' API.
I haven't seen any reason not to do that - I have only seen 'that shouldn't be
public' without a reason why its header must be in a private directory.
I have a reason to do it - otherwise all non-qmake code using testlib gets
very ugly and has to use 'private' stuff.
https://codereview.qt-project.org/30541
Thanks,
--
Stephen Kelly <stephen.kelly at kdab.com> | Software Engineer
KDAB (Deutschland) GmbH & Co.KG, a KDAB Group Company
www.kdab.com || Germany +49-30-521325470 || Sweden (HQ) +46-563-540090
KDAB - Qt Experts - Platform-Independent Software Solutions
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 3636 bytes
Desc: not available
URL: <http://lists.qt-project.org/pipermail/development/attachments/20120710/a0c46909/attachment.bin>
More information about the Development
mailing list