Mailing Lists: Apple Mailing Lists

Image of Mac OS face in stamp
 
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Setting Custom PDE as default in "Copies & Page" drop down menu.



Re:
On Nov 28, 2007, at 8:07 PM, David Lobo wrote:

How to create an application PDE?  

If you are a Cocoa application the best approach for creating a custom PDE for your application on Leopard is to use the NSViewController class; see the NSPrintPanel.h file in Leopard. Pre-Leopard there is a less flexible way to do it using a different approach; sorry but the exact name eludes me at the moment. I'm sure others on the list will know.

If you are a Carbon application OR if you want to override a built in panel such as the Copies and Pages panel, you have to write a printing dialog extension. There is a sample of how to do that for a Carbon application in  /Developer/Examples/Printing/App/CarbonPrintingSample in a Leopard install with Developer Tools. That technique works in Tiger and Leopard.

And also how can I overwrite "Copies &Pages" PDE?

To override the Copies and Pages PDE, your substitute PDE needs to have as its kind ID the string kPMCopiesAndPagesPDEKindID as defined in PMPrintingDialogExtensions.h. This header file is part of the Print framework that is a subframework of the Carbon framework. PMPrintingDialogExtensions.h contains the unique identifiers from panels that you can override (and some that don't exist!).

Note that Apple discourages you from overriding the system built-in panels for many reasons. One important reason is that as we add functionality to the printing panels, your override panel will prevent users from accessing that functionality. In Leopard we added a "Duplex" check box so that users have easy access to the duplex feature of printers that support it. An application override of the Copies and Pages PDE doesn't automatically get that behavior and duplicating the exact behavior might be difficult.

What should be the PDE name and where to install this?

You can title the panel however you want but of course if you are replacing a standard panel you probably want to reproduce the title of the one you are replacing. If you are overriding a standard panel as a part of your application, that code doesn't live anyplace special just because it is replacing a standard panel. The key is that the kind ID of your PDE is the proper ID.

Hope this helps,
David

 _______________________________________________
Do not post admin requests to the list. They will be ignored.
Printing mailing list      (email@hidden)
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/printing/email@hidden

This email sent to email@hidden

References: 
 >Re: Setting Custom PDE as default in "Copies & Page" drop down menu. (From: Chad Hulbert <email@hidden>)
 >Re: Setting Custom PDE as default in "Copies & Page" drop down menu. (From: David Gelphman <email@hidden>)
 >Re: Setting Custom PDE as default in "Copies & Page" drop down menu. (From: David Lobo <email@hidden>)



Visit the Apple Store online or at retail locations.
1-800-MY-APPLE

Contact Apple | Terms of Use | Privacy Policy

Copyright © 2007 Apple Inc. All rights reserved.