On Sunday 10 March 2002 3:41 pm, John Levon wrote: > well I have a really hacky patch to remove all the forms stuff and only > use Qt. It doesn't do anything yet but I did it to see where we need to > make changes. > > The big one turns out to be the relationships between BufferView_pimpl, > WorkArea, and lyxscreen. > > Currently a redraw looks something like this : > > 1. expose event on workarea gets sent to buffer_pimpl > 2. which then asks lyxscreen to draw what's needed > 3. which then uses lyxtext to draw using bufferview's painter > > Well this doesn't really work sensibly with qt. The workarea widget > itself has to be responsible for drawing siimply because the painter to > use is dependent upon the widget. The current scheme would require > exposing this widget/paint device as global to allow lyxtext to use it. > > Also to conveniently use QScrollView or whatever, we need to have one > long canvas of a known size, and be able to respond to draw requests of > an arbitrary row in that canvas. This looks a little painful with > the current code.
Looks like you've been busy! One quick and obvious question: how did KLyX do all this? One other quick and ignorant question: can you embed the existing xforms WorkArea widget in a qt2 one. Simply to get a qt2-ified LyX main window. GUII-fying properly the minibuffer, menubar, toolbar, (drop down), a mechanism to create multiple WorkAreas in one LyXView; all these are orthoganol to the WorkArea stuff you describe and it'd be nice if we could move gradually to the best solutions. Incidentally, I think task 11 should be task 1 but that's going to happen sooner rather than later anyway! Angus