X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Ffrontends%2FLyXView.C;h=8c6059bf75b9419b0055af0382edd4d3247ec4a4;hb=25079a83c2c4efd877a735e6571f149f703d4a16;hp=fee535079d7d5328a21d6532f56c83ccfb9d4326;hpb=7b2cce9d5d19fd6e05cf0373b51807da19d4e82b;p=lyx.git diff --git a/src/frontends/LyXView.C b/src/frontends/LyXView.C index fee535079d..8c6059bf75 100644 --- a/src/frontends/LyXView.C +++ b/src/frontends/LyXView.C @@ -86,20 +86,37 @@ LyXView::LyXView(int id) LyXView::~LyXView() { + disconnectBuffer(); } // FIXME, there's only one WorkArea per LyXView possible for now. void LyXView::setWorkArea(WorkArea * work_area) { + BOOST_ASSERT(work_area); work_area_ = work_area; work_area_ids_.clear(); work_area_ids_.push_back(work_area_->id()); } +// FIXME, there's only one WorkArea per LyXView possible for now. +WorkArea const * LyXView::currentWorkArea() const +{ + return work_area_; +} + + +// FIXME, there's only one WorkArea per LyXView possible for now. +WorkArea * LyXView::currentWorkArea() +{ + return work_area_; +} + + Buffer * LyXView::buffer() const { + BOOST_ASSERT(work_area_); return work_area_->bufferView().buffer(); } @@ -108,6 +125,7 @@ void LyXView::setBuffer(Buffer * b) { busy(true); + BOOST_ASSERT(work_area_); if (work_area_->bufferView().buffer()) disconnectBuffer(); @@ -142,6 +160,7 @@ bool LyXView::loadLyXFile(FileName const & filename, bool tolastfiles) { busy(true); + BOOST_ASSERT(work_area_); if (work_area_->bufferView().buffer()) disconnectBuffer(); @@ -168,6 +187,7 @@ void LyXView::connectBuffer(Buffer & buf) if (errorsConnection_.connected()) disconnectBuffer(); + BOOST_ASSERT(work_area_); bufferChangedConnection_ = buf.changed.connect( boost::bind(&WorkArea::redraw, work_area_)); @@ -284,12 +304,14 @@ void LyXView::showReadonly(bool) BufferView * LyXView::view() const { + BOOST_ASSERT(work_area_); return &work_area_->bufferView(); } void LyXView::updateToolbars() { + BOOST_ASSERT(work_area_); bool const math = work_area_->bufferView().cursor().inMathed(); bool const table = @@ -361,6 +383,7 @@ void LyXView::updateLayoutChoice() current_layout = buffer()->params().getLyXTextClass().defaultLayoutName(); } + BOOST_ASSERT(work_area_); if (work_area_->bufferView().cursor().inMathed()) return; @@ -408,10 +431,10 @@ Buffer const * const LyXView::updateInset(InsetBase const * inset) const { Buffer const * buffer_ptr = 0; if (inset) { + BOOST_ASSERT(work_area_); + work_area_->scheduleRedraw(); + buffer_ptr = work_area_->bufferView().buffer(); - // No FitCursor: - work_area_->bufferView().update(Update::Force); - work_area_->redraw(); } return buffer_ptr; }