On Thu, Jan 05, 2012 at 02:17:29PM +0100, Pavel Sanda wrote: > Jean-Marc Lasgouttes wrote: > > Le 05/01/2012 02:40, André Pönitz a écrit : > >> The main performance problems I have seesn so far are due to an abuse of > >> the toolkit, not caused _by_ the toolkit (except for the remote raster > > please... there were many cases we have no clue where the problem is. > it can be lyx, qt, X, card drivers. to summarize the whole thing by saying > that all is abuse of qt smells like problem with your affiliation ;)
[Sure, we can go ad hominem if you think that helps...] LyX is the _only_ application I know that e.g. still pretends to be able to draw outside of paint events by adding another level of buffering (GuiWorkArea::Private::screen_). And note, that's not a "problem originating from Qt", but imposed by some platforms, most notably MacOS_X_. This approach causes otherwise completely unnessary copies of all screen data when scrolling. Also, the core text drawing functionality is "abstracted", i.e. LyX does it (deteminining positioning, spacing etc), spoon-feeds the results to Qt's drawText() which does the same again. Similar for the handling of fonts, colors etc. I just stepped a bit through the code and there were tons of instances where single characters were passed to drawText, each setting up the text drawing machinery mostly from scratch. I do understand that this might be needed for math, but it should not happen often for regular test. Andre'