>>>>> "Lars" == Lars Gullik Bjønnes <[EMAIL PROTECTED]> writes:

Lars> I like it. We should reduce these up-calls as much as possible.

OK. So here is an expanded version, where I replaced all the easy
things. 

Lars> Would be brilliant if we came to the point where the pimpl owner
Lars> did not have to be present at all.

We cannot really do that, since we use bv_ as an opaque object in many
places.

However, there are not many things that look into bv_ anymore:

fantomas[ssh]: grep 'bv_->' BufferView_pimpl.C
        bv_->showErrorList(_("Parse"));
                // require bv_->text.
        LyXText * text = bv_->text();
        if (!bv_->text()) {
        LyXText & t = *bv_->text();
        LyXText & t = *bv_->text();
//      LyXText const * t = bv_->text();
        return buffer_ && bv_->text();
        LyXText * text = bv_->getLyXText();
        bv_->text()->setCursor(cursor_, par.pit(),
        if (bv_->getLyXText()->real_current_font.isRightToLeft()) {
        bv_->getLyXText()->breakParagraph(cursor_);
                bv_->text()->setCursor(cursor_, 0, 0);
        InsetBase * inset = bv_->text()->editXY(cur, cmd.x, cmd.y);
                        bv_->gotoLabel(label);
                        bv_->getLyXText()->acceptChange(cursor_);
                        bv_->getLyXText()->rejectChange(cursor_);


I guess text() and getLyXText() could be moved into BufferView::Pimpl.
Then the only remaining methods are showErrorList (I am not sure why
loadLyXFile is not in BufferView anyway) and gotoLabel.

Lars, I'd appreciate if you could take a look at the patch and check I
did not do anything wrong.

JMarc



Reply via email to