> The problem is in my code that uses the MRGraphics library.. > I removed that, but kept in all of the MRGraphics files, and required it, > and windowControllerDidLoadNib is still working. > So the MPGraphics files are compiling alright, but the code that uses it is > somehow triggering an error. > I'm just providing it here in case someone has used it before. I'm thinking that the problem is still with the graphics library, since I just copied one of their examples and changed it to use my variables and objects to draw.
> Probably by calling into the library it somehow breaks > windowControllerDidLoadNib > although I did a search for windowControllerDidLoadNib in the MRgraphics > folder and it's not there.. > > > def drawRect(rect) > > @theSteps ? @theSteps : @theSteps = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, > 13, 14, 15, 16] # initial setup / default view values > > @theStartstep ? @theStartstep : @theStartstep = 1 > > @theNumsteps ? @theNumsteps : @theNumsteps = 16 > > dimensions = [CGRectGetWidth(rect), CGRectGetHeight(rect)] # > MRGraphics setup code > > Canvas.for_current_context(:size => dimensions) do |c| > > > > stepboxes = Path.new # declare objects to be drawn > > highlightedRange = Path.new > > cursor = Path.new > > > > start = (@theStartstep-1)%16 # calculate highlighted range > > length = @theNumsteps > > if (start+length > 16) > > highlightedRange.rect( start*29, 0, ((16-start)*29)+4, 162 ) > > highlightedRange.rect( 0, 0, (start+length-16)*29, 162 ) > > else > > highlightedRange.rect( start*29, 0, length*29, 162 ) > > end > > > > cursor.rect( (start*29)-1, 0, 1, 162) # calculate location of the > vertical cursor > > > > @theSteps.each_with_index do |k, i| # calculate locations of the > 16 step-boxes > > stepboxes.rect( i*29, k*9, 29, 9 ) > > end > > > > c.background(Color.gray) # paint background > > > > c.fill(Color.blue) # paint highlighted range > > c.draw(highlightedRange) > > > > c.fill(Color.yellow) # draw step-boxes > > c.stroke(0) > > c.stroke_width(1) > > c.draw(stepboxes) > > > > c.fill(Color.black) # draw cursor > > c.stroke_width(0) > > c.draw(cursor) > > > > end > > end > > > > > > > > On Fri, Nov 26, 2010 at 5:14 PM, Tom Jordan <vires...@gmail.com> wrote: > >> I'm having some trouble bringing in the old nib to the newly working >> project, >> so I went back to the old project and removed the MRGraphics code.. >> windowControllerDidLoadNib is now working right in the original project.. >> I hope there is a way to still use the MRGraphics library.. >> I'm going to submit an issue at its Github site.. >> >> >> >> >> On Fri, Nov 26, 2010 at 4:46 PM, Tom Jordan <vires...@gmail.com> wrote: >> >>> 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 < >>> lsansone...@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 >>>> >>>> >>> >> >
_______________________________________________ MacRuby-devel mailing list MacRuby-devel@lists.macosforge.org http://lists.macosforge.org/mailman/listinfo.cgi/macruby-devel