[mcclim-devel] incremental redisplay slowness and local patches
Hi, As some of you know, the tablature application suffers from scaling problems in incremental redisplay because of the precision of the algorithm. While the spatial-trees stuff might solve this in the end, at the moment we are working around it by a conservative incremental-redisplay. In the interest of minimizing divergence from CVS McCLIM, we would like to have that incremental-redisplay as a different method, specialized on an application class. However, our first try (define a new output record type) was a failure, as incremental-redisplay itself is actually called on a stream, not on an output record; we could specialize redisplay, but then we would have to duplicate a whole load of stuff. We do know that the stream we want to call our own method for incremental-redisplay on is one obtained by OPEN-WINDOW-STREAM, and we control the place where this is called. Our current code, then, is (change-class (open-window-stream ...) 'tabcode-window-stream) with (defclass tabcode-window-stream (climi::window-stream) ()) This, however, uses a scary clim-internals internal symbol. That's fine up to a point, but it would be better from our point of view if there were a way of doing this in a documented way; is there a spec-blessed way of having a custom incremental-redisplay method called? Alternatively, can climi::window-stream be documented and exported? Any other ideas? Cheers, Christophe
participants (1)
-
Christophe Rhodes