• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: NSDocument -canAsynchronouslyWriteToURL::: never called
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: NSDocument -canAsynchronouslyWriteToURL::: never called


  • Subject: Re: NSDocument -canAsynchronouslyWriteToURL::: never called
  • From: Alex Zavatone <email@hidden>
  • Date: Sun, 10 Jun 2012 15:21:41 -0400

On Jun 10, 2012, at 1:45 PM, Markus Spoettl wrote:

> DeprecatedOn 6/10/12 7:21 PM, Markus Spoettl wrote:
>> Keeping the list server busy while everyone else seem to have better things to
>> do...
>>
>> Is there an magic trick to get the framework to actually call NSDocument's
>>
>> - (BOOL)canAsynchronouslyWriteToURL:(NSURL *)url ofType:(NSString *)typeName
>> forSaveOperation:(NSSaveOperationType)saveOperation
>>
>> I'd like to do as the documentation suggests and put the document writing into a
>> background tread (if you follow the little flood of NSDocument related messages
>> you know why). Documentation says:
>>
>> --------
>> The default implementation of this method returns NO. You are strongly
>> encouraged to override it and make it return YES, after making sure your
>> overrides of document writing methods can be safely invoked on a non-main
>> thread, and making sure that unblockUserInteraction is invoked at some
>> appropriate time during writing.
>> --------
>>
>> There's no precondition listed, but there seems to be one as my override is
>> never called. Why?
>
> Well, it suddenly started working and the reason is that apparently you need to have
>
> -saveToURL:ofType:forSaveOperation:completionHandler:
>
> overwritten. If you don't you just don't get to use background writing. Overwriting this method does the trick. One would think that the existence of

This is one of the "joys" of Mac development I've seen.  Class methods are called that you never know about and you have to override stuff that you never knew were parts of the class, let alone are even called.

Glad you got everything working.


_______________________________________________

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

  • Follow-Ups:
    • Re: NSDocument -canAsynchronouslyWriteToURL::: never called
      • From: Markus Spoettl <email@hidden>
References: 
 >NSDocument -canAsynchronouslyWriteToURL::: never called (From: Markus Spoettl <email@hidden>)
 >Re: NSDocument -canAsynchronouslyWriteToURL::: never called (From: Markus Spoettl <email@hidden>)

  • Prev by Date: Re: NSDocument -canAsynchronouslyWriteToURL::: never called
  • Next by Date: Re: NSDocument -canAsynchronouslyWriteToURL::: never called
  • Previous by thread: Re: NSDocument -canAsynchronouslyWriteToURL::: never called
  • Next by thread: Re: NSDocument -canAsynchronouslyWriteToURL::: never called
  • Index(es):
    • Date
    • Thread