[MacRuby-devel] windowControllerDidLoadNib strangeness
Thibault Martin-Lagardette
thibault.ml at gmail.com
Fri Nov 26 01:04:28 PST 2010
Hi Tom,
I can't seem to understand what is wrong, I guess, since you said everything else works, that you did call the necessary `framework "Foundation"`?
Could you maybe provide us some test project, so that we can reproduce and maybe trace the error better? :-)
Thank you!
--
Thibault Martin-Lagardette
On Nov 26, 2010, at 07:07, Tom Jordan wrote:
> Hello,
>
> I'm encountering some weird behavior when trying to update a view using windowControllerDidLoadNib after loading in a persistent document.
> When I provide windowControllerDidLoadNib a single argument, as shown below (and required by the NSDocument class definition and in every example I've seen),
> Xcode says: `windowControllerDidLoadNib:': wrong number of arguments (1 for 0) (ArgumentError)
> If I don't provide any argument, it says: undefined method `windowControllerDidLoadNib' for #<MyDocument:0x200646660> (NoMethodError)
> I've tried every combination of one or no args for both the method signature and "super" call on the next line, and I can't seem to get any different results.
> This is my first time trying to get persistence going, but I've read a lot about it, and everything else is working well.. it saves and loads, but I can't seem to get this hook
> working to update the GUI upon loading.
>
>
> class MyDocument < NSDocument
>
> attr_accessor :loadedmodel, :root #outlet to model field of controller
>
> # Name of nib containing document window
> def windowNibName
> 'MyDocument'
> end
>
> # Document data representation for saving (return NSData)
> def dataOfType(type, error:outError)
> outError.assign(NSError.errorWithDomain(NSOSStatusErrorDomain, code:-4, userInfo:nil))
> NSKeyedArchiver.archivedDataWithRootObject(@root.model)
> end
>
> # Read document from data (return non-nil on success)
> def readFromData(data, ofType:type, error:outError)
> outError.assign(NSError.errorWithDomain(NSOSStatusErrorDomain, code:-4, userInfo:nil))
> @loadedmodel = NSKeyedUnarchiver.unarchiveObjectWithData(data)
> end
>
> # Return lowercase 'untitled', to comply with HIG
> def displayName
> fileURL ? super : super.sub(/^[[:upper:]]/) {|s| s.downcase}
> end
>
> def windowControllerDidLoadNib(aController)
> super(aController)
> @root.model = @loadedmodel
> NSLog("model loaded")
> end
>
> end
>
> Regards,
>
> Tom Jordan
>
> _______________________________________________
> MacRuby-devel mailing list
> MacRuby-devel at lists.macosforge.org
> http://lists.macosforge.org/mailman/listinfo.cgi/macruby-devel
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/macruby-devel/attachments/20101126/c7fb5cae/attachment-0001.html>
More information about the MacRuby-devel
mailing list