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
> [email protected]
> http://lists.macosforge.org/mailman/listinfo.cgi/macruby-devel
_______________________________________________
MacRuby-devel mailing list
[email protected]
http://lists.macosforge.org/mailman/listinfo.cgi/macruby-devel