Thanks Guys !  I just created a new project and it worked..  Now I'm going to bring in my files from the other project and see if I can find where it breaks..
I'm also using the MRGraphics library at: https://github.com/mattetti/macruby_graphics 

It works great to quickly get a custom graphics view going, although I have noticed some strangeness with IB.. 
in that whenever I add new widgets to the top level (and only) nib, 
I need to delete the custom view that has the MRgraphics, and repaste it back in, and reconnect it, 
or else the newly added widgets won't show up in the build (until you mouse over to where they're supposed to be and click.. 
in which case they will appear (sometimes partially if it's a matrix, for example), and even then they won't function right).

It drove me crazy until I found out that deleting the custom view and repasting it worked..  although I don't know what I'm going to do
once I need to have more than one custom view and keep adding widgets, etc.. I just wanted to mention this in case
anyone has seen this before.

I'm running 10.6 on a Mac Pro.. which I believe it's 64-bit..  
I need to get a Github account or something so that I can post a full project if need be..

This is a great resource, I appreciate the help.. thanks !

Regards,

Tom Jordan




On Fri, Nov 26, 2010 at 3:42 PM, Laurent Sansonetti <lsansonetti@apple.com> wrote:
Hi Tom,

I just created a sample NSDocument-based project, and added a windowControllerDidLoadNib: method to the NSDocument class, calling super as you do, and everything worked as expected.

Could you try that and see if you still see the problem? Also, do you run a 32-bit machine?

Laurent 


On Nov 25, 2010, at 10:07 PM, Tom Jordan wrote:

Hello,

I'm encountering some weird behavior when trying to update a view using  
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@lists.macosforge.org
http://lists.macosforge.org/mailman/listinfo.cgi/macruby-devel


_______________________________________________
MacRuby-devel mailing list
MacRuby-devel@lists.macosforge.org
http://lists.macosforge.org/mailman/listinfo.cgi/macruby-devel