[Development] QtPrintSupport - Platform Support

John Layt jlayt at kde.org
Sun Apr 22 22:43:06 CEST 2012


Hi,

While starting to review the current state of QtPrintSupport for Beta 1 and 
one thing I've immediately noticed is an inconsistency in the platform 
implementations as to which plugins have which classes where.

OSX:

src/plugins/platforms/cocoa    - QMacPrintEngine
                               - QCoreGraphicsPaintEngine
                               - QCocoaPrinterSupport
src/plugins/printsupport/cocoa - QCocoaPrinterSupportPlugin

Windows:

src/plugins/platforms/windows  - none
src/plugins/printsupport/cocoa - QWindowsPrinterSupportPlugin
                               - QWindowsPrinterSupport
src/printsupport/kernel        - QWin32PrintEngine
                               - QAlphaPaintEngine


Linux:

src/platformsupport/genericunix - QGenericUnixPrinterSupport
src/printsupport/kernel         - QPdfPrintEngine
                                - QCUPSSupport
                                - qprinterinfo_unix

Can anyone explain why we have these differences, or any objections why we 
shouldn't move them around to be consistent:

src/plugins/platforms/xxx    - QxxxPaintEngine
src/plugins/printsupport/xxx - QxxxPrinterSupportPlugin
                             - QxxxPrinterSupport
                             - QxxxPrintEngine

We could then move all the CUPS specific stuff into 
src/plugins/printsupport/cups

I'm also concerned about QT_NO_CUPS and QT_NO_LPR.  I'd like to make it more 
explicit that we only support Linux printing using CUPS and remove all 
references to LPR and QT_NO_LPR altogether (including all the 
AIX/HPUX/Solaris/IRIX code still left!).  QT_NO_CUPS would then also be 
redundant as we have QT_NO_PRINTER already.

Thoughts?

John.

P.S. Please also note that the auto tests are seriously broken and shouldn't 
be relied upon when making changes. I'm working on sorting this out.




More information about the Development mailing list