Re: didPrint selector not called
Re: didPrint selector not called
- Subject: Re: didPrint selector not called
- From: Jeremy Hughes <email@hidden>
- Date: Fri, 16 Dec 2016 20:17:30 +0000
> On 16 Dec 2016, at 20:01, Jeremy Hughes <email@hidden> wrote:
>
>>> OK - I misunderstood what Quincey was saying.
>>>
>>> The passed-in delegate and selector are nil, but I obviously can’t be sure that they will always be nil.
>>>
>>> All I’m actually trying to do is to clean up some objects that need to exist during the print operation. Is this the best way for me to be doing that?
>>
>> I'm not an expert in this part of Cocoa. Are there implicit system *callers* of this method, or is it more of a system *utility* that you're expected to call from your own code? If it's the latter, then maybe instead of overriding it you should just provide a different method that calls it, doing whatever set up you need first and then passing in the appropriate delegate and selector to do cleanup.
>
> It’s just an application method, which overrides the method that the system calls from printDocument when a user chooses Print.
I could override printDocument, but I’m not sure how to get the printSettings that I need to pass through to printDocumentWithSettings. Looking at Apple's documentation, I think I can get these by calling dictionary() on an NSPrintInfo object. That returns an NSMutableDictionary, but the compiler won’t let me use this as a printSettings argument:
"Cannot convert value of type 'NSMutableDictionary' to expected argument type '[String : AnyObject]’"
Do I need to iterate through the NSMutableDictionary and create a Swift Dictionary from it?
Maybe I’ve missed an easier way of doing this. All I want to happen is to be notified when the print operation is completed.
Jeremy
_______________________________________________
Cocoa-dev mailing list (email@hidden)
Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden