This is probably rather Cocoa-centric, so I'll probably be boring anybody that doesn't know any of Apple's frameworks with the following...
I've been looking at the Beagle back end again recently looking to complete the remaining functionality and speed it up somewhat. One of the things I want to do to hopefully speed things up is move to a delayed drawing implementation (which is the way Apple recommend doing things anyway; all drawing is done in a 'drawRect' method which is invoked as part of the main event loop by the underlying windowing system). In order to make this work I've migrated the text drawing to append glyphs to an NSBezierPath subclass; in order to implement the delayed drawing I just stack all bezier path objects up in an array and stroke or fill them at the appropriate time.
The problem I have is that Cocoa and McCLIM have different coordinate systems (the y-axes are reversed) by 'default'. Previously I dealt with this by setting the view up to be 'flipped' which is standard Cocoa functionality. This works in general but text is rendered upside down. What I'd *like* to do is to be able to set a transform which would automatically take care of this within McCLIM (rather than within Cocoa). What I'm hoping is that there's an easy solution to this (such as applying an inverting transform the the graft and having this by default apply to anything grafted onto it).
So my question boils down to "does using a :graphics oriented graft rather than a :default orientation make any difference at all to anything attached to that graft"? An additional question might be "if not, should it?" (I'd like to have a CLIM solution to this but if there appears not to be one I'll hack something into the back end to do it via Cocoa - it seems to me that if I apply the appropriate transform to the graft things should 'just work' but maybe I'm misunderstanding how things fit together).
Also, who do I need to see to get CVS commit privs again or should I just be submitting patches?
Thanks,
-Duncan