[Development] QtPrintSupport - Platform Support

John Layt jlayt at kde.org
Sat Apr 28 17:38:49 CEST 2012


On Monday 23 Apr 2012 22:17:15 John Layt wrote:

> For Mac I propose moving QCocoaPrinterSupport into
> plugins/printsupport/cocoa and moving the private methods from
> QCocoaNativeInterface to
> QCocoaPrinterSupportPlugin.  I'll do a patch.
> 
> A harder question is where QMacPrintEngine should be, should it go to
> plugins/printsupport/cocoa, or to printsupport/kernel like the current
> Windows and Cups implementations?  The QMacPrintDialog could have the same
> question, does it belong in plugins/printsupport/cocoa, or to
> printsupport/dialogs?  I'm inclined to have all the platform specific code
> in the plugin if possible, and change Windows and Cups to match.

Hi,

Well I've tried doing this and ended up moving QCocoaPrinterSupport, 
QQMacPrintEngine and QCoreGraphicPaintEngine all into the the printsupport 
plugin as they are all only used by QtPrintSupport, and as the plugin returns 
the native QPrintEngine as its main purpose so it seems logical.

Unfortunately, QCoreGraphicsPaintEngine needs to link against the Cocoa 
platform plugin to use classes/methods in QCocoaAutoReleasePool and 
QCocoaHelpers, but I can't figure out how to do that in qmake.  QtGui and 
QtWidget both use these classes/methods as well, but I can't figure out how 
they are linking against the Cocoa plugin.  Any hints on linking qtcocoa into 
cocoaprintersupport, or is that just not possible?

Cheers!

John.




More information about the Development mailing list