* BufferView::buffer() returns a reference instead of a pointer.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19691 a592a061-630c-0410-9148-cb99ea01b6c8
This commit is contained in:
Abdelrazak Younes 2007-08-21 13:03:55 +00:00
parent c1b155fbe8
commit 0fcae6cc10
36 changed files with 169 additions and 186 deletions

View File

@ -227,14 +227,14 @@ bool reverseDirectionNeeded(Cursor const & cur)
* cursor gets stuck.
*/
return cur.bottom().paragraph().isRightToLeftPar(
cur.bv().buffer()->params());
cur.bv().buffer().params());
}
bool isWithinRtlParagraph(Cursor const & cur)
{
return cur.innerParagraph().isRightToLeftPar(
cur.bv().buffer()->params());
cur.bv().buffer().params());
}
} // namespace lyx

View File

@ -145,15 +145,15 @@ BufferView::~BufferView()
}
Buffer * BufferView::buffer()
Buffer & BufferView::buffer()
{
return &buffer_;
return buffer_;
}
Buffer const * BufferView::buffer() const
Buffer const & BufferView::buffer() const
{
return &buffer_;
return buffer_;
}

View File

@ -85,8 +85,8 @@ public:
~BufferView();
/// return the buffer being viewed.
Buffer * buffer();
Buffer const * buffer() const;
Buffer & buffer();
Buffer const & buffer() const;
/// perform pending metrics updates.
/** \c Update::FitCursor means first to do a FitCursor, and to

View File

@ -206,7 +206,7 @@ namespace {
// << " xlow: " << xlow << " xhigh: " << xhigh
// << " ylow: " << ylow << " yhigh: " << yhigh
// << endl;
Inset & inset = bv.buffer()->inset();
Inset & inset = bv.buffer().inset();
DocIterator it = doc_iterator_begin(inset);
it.pit() = from;
DocIterator et = doc_iterator_end(inset);
@ -351,8 +351,7 @@ BufferView & Cursor::bv() const
Buffer & Cursor::buffer() const
{
BOOST_ASSERT(bv_);
BOOST_ASSERT(bv_->buffer());
return *bv_->buffer();
return bv_->buffer();
}
@ -1336,7 +1335,7 @@ docstring Cursor::selectionAsString(bool label) const
return docstring();
if (inTexted()) {
Buffer const & buffer = *bv().buffer();
Buffer const & buffer = bv().buffer();
ParagraphList const & pars = text()->paragraphs();
// should be const ...
@ -1398,8 +1397,6 @@ Encoding const * Cursor::getEncoding() const
{
if (empty())
return 0;
if (!bv().buffer())
return 0;
int s = 0;
// go up until first non-0 text is hit
// (innermost text is 0 in mathed)
@ -1409,7 +1406,7 @@ Encoding const * Cursor::getEncoding() const
CursorSlice const & sl = operator[](s);
Text const & text = *sl.text();
Font font = text.getPar(sl.pit()).getFont(
bv().buffer()->params(), sl.pos(), outerFont(sl.pit(), text.paragraphs()));
bv().buffer().params(), sl.pos(), outerFont(sl.pit(), text.paragraphs()));
return font.language()->encoding();
}
@ -1469,7 +1466,7 @@ Font Cursor::getFont() const
}
// get font at the position
Font font = par.getFont(bv().buffer()->params(), pos,
Font font = par.getFont(bv().buffer().params(), pos,
outerFont(sl.pit(), text.paragraphs()));
return font;

View File

@ -764,7 +764,7 @@ FuncStatus LyXFunc::getStatus(FuncRequest const & cmd) const
bool LyXFunc::ensureBufferClean(BufferView * bv)
{
Buffer & buf = *bv->buffer();
Buffer & buf = bv->buffer();
if (buf.isClean())
return true;

View File

@ -1313,7 +1313,7 @@ bool Text::backspace(Cursor & cur)
bool Text::dissolveInset(Cursor & cur) {
BOOST_ASSERT(this == cur.text());
if (isMainText(*cur.bv().buffer()) || cur.inset().nargs() != 1)
if (isMainText(cur.bv().buffer()) || cur.inset().nargs() != 1)
return false;
recordUndoInset(cur);
@ -1449,7 +1449,7 @@ void Text::drawRowSelection(PainterInfo & pi, int x, Row const & row,
bool drawOnBegMargin, bool drawOnEndMargin) const
{
BufferView & bv = *pi.base.bv;
Buffer & buffer = *bv.buffer();
Buffer & buffer = bv.buffer();
TextMetrics const & tm = bv.textMetrics(this);
DocIterator cur = beg;
int x1 = cursorX(bv, beg.top(), beg.boundary());
@ -1662,7 +1662,7 @@ int Text::cursorX(BufferView const & bv, CursorSlice const & sl,
pos_type cursor_vpos = 0;
Buffer const & buffer = *bv.buffer();
Buffer const & buffer = bv.buffer();
RowMetrics const m = tm.computeRowMetrics(pit, row);
double x = m.x;
Bidi bidi;

View File

@ -371,7 +371,7 @@ void Text::setLayout(Cursor & cur, docstring const & layout)
BOOST_ASSERT(this == cur.text());
// special handling of new environment insets
BufferView & bv = cur.bv();
BufferParams const & params = bv.buffer()->params();
BufferParams const & params = bv.buffer().params();
Layout_ptr const & lyxlayout = params.getTextClass()[layout];
if (lyxlayout->is_environment) {
// move everything in a new environment inset

View File

@ -820,15 +820,15 @@ void Text::dispatch(Cursor & cur, FuncRequest & cmd)
cur.message(_("Paste"));
cap::replaceSelection(cur);
if (cmd.argument().empty() && !theClipboard().isInternal())
pasteClipboard(cur, bv->buffer()->errorList("Paste"));
pasteClipboard(cur, bv->buffer().errorList("Paste"));
else {
string const arg(to_utf8(cmd.argument()));
pasteFromStack(cur, bv->buffer()->errorList("Paste"),
pasteFromStack(cur, bv->buffer().errorList("Paste"),
isStrUnsignedInt(arg) ?
convert<unsigned int>(arg) :
0);
}
bv->buffer()->errors("Paste");
bv->buffer().errors("Paste");
cur.clearSelection(); // bug 393
finishUndo();
break;
@ -881,7 +881,7 @@ void Text::dispatch(Cursor & cur, FuncRequest & cmd)
// Derive layout number from given argument (string)
// and current buffer's textclass (number)
TextClass const & tclass = bv->buffer()->params().getTextClass();
TextClass const & tclass = bv->buffer().params().getTextClass();
if (layout.empty())
layout = tclass.defaultLayoutName();
bool hasLayout = tclass.hasLayout(layout);
@ -925,9 +925,9 @@ void Text::dispatch(Cursor & cur, FuncRequest & cmd)
case LFUN_CLIPBOARD_PASTE:
cur.clearSelection();
pasteClipboard(cur, bv->buffer()->errorList("Paste"),
pasteClipboard(cur, bv->buffer().errorList("Paste"),
cmd.argument() == "paragraph");
bv->buffer()->errors("Paste");
bv->buffer().errors("Paste");
break;
case LFUN_PRIMARY_SELECTION_PASTE:
@ -953,7 +953,7 @@ void Text::dispatch(Cursor & cur, FuncRequest & cmd)
case LFUN_QUOTE_INSERT: {
Paragraph & par = cur.paragraph();
pos_type pos = cur.pos();
BufferParams const & bufparams = bv->buffer()->params();
BufferParams const & bufparams = bv->buffer().params();
Layout_ptr const & style = par.layout();
if (!style->pass_thru
&& par.getFontSettings(bufparams, pos).language()->lang() != "hebrew") {
@ -1031,9 +1031,9 @@ void Text::dispatch(Cursor & cur, FuncRequest & cmd)
cap::copySelectionToStack();
cap::pasteSelection(bv->cursor(),
bv->buffer()->errorList("Paste"));
bv->buffer()->errors("Paste");
bv->buffer()->markDirty();
bv->buffer().errorList("Paste"));
bv->buffer().errors("Paste");
bv->buffer().markDirty();
finishUndo();
} else {
lyx::dispatch(FuncRequest(LFUN_PRIMARY_SELECTION_PASTE, "paragraph"));
@ -1212,7 +1212,7 @@ void Text::dispatch(Cursor & cur, FuncRequest & cmd)
// inside it.
doInsertInset(cur, this, cmd, true, true);
cur.posRight();
updateLabels(*bv->buffer());
updateLabels(bv->buffer());
break;
case LFUN_NOTE_INSERT:
case LFUN_CHARSTYLE_INSERT:
@ -1249,7 +1249,7 @@ void Text::dispatch(Cursor & cur, FuncRequest & cmd)
cur.posRight();
ParagraphList & pars = cur.text()->paragraphs();
TextClass const & tclass = bv->buffer()->params().getTextClass();
TextClass const & tclass = bv->buffer().params().getTextClass();
// add a separate paragraph for the caption inset
pars.push_back(Paragraph());
@ -1516,7 +1516,7 @@ void Text::dispatch(Cursor & cur, FuncRequest & cmd)
break;
case LFUN_FLOAT_LIST: {
TextClass const & tclass = bv->buffer()->params().getTextClass();
TextClass const & tclass = bv->buffer().params().getTextClass();
if (tclass.floats().typeExist(to_utf8(cmd.argument()))) {
recordUndo(cur);
if (cur.selection())
@ -1896,7 +1896,7 @@ bool Text::getStatus(Cursor & cur, FuncRequest const & cmd,
break;
case LFUN_INSET_DISSOLVE:
enable = !isMainText(*cur.bv().buffer()) && cur.inset().nargs() == 1;
enable = !isMainText(cur.bv().buffer()) && cur.inset().nargs() == 1;
break;
case LFUN_CHANGE_ACCEPT:

View File

@ -115,7 +115,7 @@ TextMetrics::TextMetrics(BufferView * bv, Text * text)
dim_.asc = 10;
dim_.des = 10;
//text_->updateLabels(*bv->buffer());
//text_->updateLabels(bv->buffer());
}
@ -172,13 +172,13 @@ bool TextMetrics::metrics(MetricsInfo & mi, Dimension & dim)
int TextMetrics::rightMargin(ParagraphMetrics const & pm) const
{
return main_text_? pm.rightMargin(*bv_->buffer()) : 0;
return main_text_? pm.rightMargin(bv_->buffer()) : 0;
}
int TextMetrics::rightMargin(pit_type const pit) const
{
return main_text_? par_metrics_[pit].rightMargin(*bv_->buffer()) : 0;
return main_text_? par_metrics_[pit].rightMargin(bv_->buffer()) : 0;
}
@ -191,7 +191,7 @@ bool TextMetrics::redoParagraph(pit_type const pit)
// reinitialize paragraph dimension.
pm.dim() = Dimension();
Paragraph & par = text_->getPar(pit);
Buffer & buffer = *bv_->buffer();
Buffer & buffer = bv_->buffer();
main_text_ = (text_ == &buffer.text());
bool changed = false;
@ -275,7 +275,7 @@ RowMetrics TextMetrics::computeRowMetrics(pit_type const pit,
Row const & row) const
{
RowMetrics result;
Buffer & buffer = *bv_->buffer();
Buffer & buffer = bv_->buffer();
Paragraph const & par = text_->getPar(pit);
double w = dim_.wid - row.width();
@ -397,7 +397,7 @@ RowMetrics TextMetrics::computeRowMetrics(pit_type const pit,
int TextMetrics::labelFill(pit_type const pit, Row const & row) const
{
Buffer & buffer = *bv_->buffer();
Buffer & buffer = bv_->buffer();
Paragraph const & par = text_->getPar(pit);
pos_type last = par.beginOfBody();
@ -448,14 +448,14 @@ int TextMetrics::labelEnd(pit_type const pit) const
if (text_->getPar(pit).layout()->margintype != MARGIN_MANUAL)
return 0;
// return the beginning of the body
return text_->leftMargin(*bv_->buffer(), max_width_, pit);
return text_->leftMargin(bv_->buffer(), max_width_, pit);
}
void TextMetrics::rowBreakPoint(int width, pit_type const pit,
Row & row) const
{
Buffer & buffer = *bv_->buffer();
Buffer & buffer = bv_->buffer();
ParagraphMetrics const & pm = par_metrics_[pit];
Paragraph const & par = text_->getPar(pit);
pos_type const end = par.size();
@ -571,7 +571,7 @@ void TextMetrics::rowBreakPoint(int width, pit_type const pit,
void TextMetrics::setRowWidth(int right_margin,
pit_type const pit, Row & row) const
{
Buffer & buffer = *bv_->buffer();
Buffer & buffer = bv_->buffer();
// get the pure distance
pos_type const end = row.endpos();
ParagraphMetrics const & pm = par_metrics_[pit];
@ -628,7 +628,7 @@ void TextMetrics::setHeightOfRow(pit_type const pit,
// increase but not decrease the height. Just some point to
// start with so we don't have to do the assignment below too
// often.
Buffer const & buffer = *bv_->buffer();
Buffer const & buffer = bv_->buffer();
Font font = text_->getFont(buffer, par, row.pos());
Font::FONT_SIZE const tmpsize = font.size();
font = text_->getLayoutFont(buffer, pit);
@ -808,7 +808,7 @@ void TextMetrics::setHeightOfRow(pit_type const pit,
pos_type TextMetrics::getColumnNearX(pit_type const pit,
Row const & row, int & x, bool & boundary) const
{
Buffer const & buffer = *bv_->buffer();
Buffer const & buffer = bv_->buffer();
/// For the main Text, it is possible that this pit is not
/// yet in the CoordCache when moving cursor up.
@ -957,7 +957,7 @@ pos_type TextMetrics::x2pos(pit_type pit, int row, int x) const
int TextMetrics::singleWidth(pit_type pit, pos_type pos) const
{
Buffer const & buffer = *bv_->buffer();
Buffer const & buffer = bv_->buffer();
ParagraphMetrics const & pm = par_metrics_[pit];
return pm.singleWidth(pos, text_->getFont(buffer, text_->getPar(pit), pos));

View File

@ -133,7 +133,7 @@ void recordUndo(Undo::undo_kind kind,
BOOST_ASSERT(last_pit <= cur.lastpit());
doRecordUndo(kind, cur, first_pit, last_pit, cur,
cur.bv().buffer()->params(), false, stack);
cur.bv().buffer().params(), false, stack);
}
@ -154,8 +154,8 @@ bool textUndoOrRedo(BufferView & bv,
stack.pop();
// We will store in otherstack the part of the document under 'undo'
Buffer * buf = bv.buffer();
DocIterator cell_dit = undo.cell.asDocIterator(&buf->inset());
Buffer & buf = bv.buffer();
DocIterator cell_dit = undo.cell.asDocIterator(&buf.inset());
doRecordUndo(Undo::ATOMIC, cell_dit,
undo.from, cell_dit.lastpit() - undo.end, bv.cursor(),
@ -165,13 +165,13 @@ bool textUndoOrRedo(BufferView & bv,
// This does the actual undo/redo.
//lyxerr << "undo, performing: " << undo << std::endl;
bool labelsUpdateNeeded = false;
DocIterator dit = undo.cell.asDocIterator(&buf->inset());
DocIterator dit = undo.cell.asDocIterator(&buf.inset());
if (undo.isFullBuffer) {
BOOST_ASSERT(undo.pars);
// This is a full document
otherstack.top().bparams = buf->params();
buf->params() = undo.bparams;
std::swap(buf->paragraphs(), *undo.pars);
otherstack.top().bparams = buf.params();
buf.params() = undo.bparams;
std::swap(buf.paragraphs(), *undo.pars);
delete undo.pars;
undo.pars = 0;
} else if (dit.inMathed()) {
@ -217,13 +217,13 @@ bool textUndoOrRedo(BufferView & bv,
// Set cursor
Cursor & cur = bv.cursor();
cur.setCursor(undo.cursor.asDocIterator(&buf->inset()));
cur.setCursor(undo.cursor.asDocIterator(&buf.inset()));
cur.selection() = false;
cur.resetAnchor();
cur.fixIfBroken();
if (labelsUpdateNeeded)
updateLabels(*buf);
updateLabels(buf);
finishUndo();
return true;
}
@ -240,27 +240,27 @@ void finishUndo()
bool textUndo(BufferView & bv)
{
return textUndoOrRedo(bv, bv.buffer()->undostack(),
bv.buffer()->redostack());
return textUndoOrRedo(bv, bv.buffer().undostack(),
bv.buffer().redostack());
}
bool textRedo(BufferView & bv)
{
return textUndoOrRedo(bv, bv.buffer()->redostack(),
bv.buffer()->undostack());
return textUndoOrRedo(bv, bv.buffer().redostack(),
bv.buffer().undostack());
}
void recordUndo(Undo::undo_kind kind,
Cursor & cur, pit_type first, pit_type last)
{
Buffer * buf = cur.bv().buffer();
recordUndo(kind, cur, first, last, buf->undostack());
buf->redostack().clear();
Buffer & buf = cur.bv().buffer();
recordUndo(kind, cur, first, last, buf.undostack());
buf.redostack().clear();
//lyxerr << "undostack:\n";
//for (size_t i = 0, n = buf->undostack().size(); i != n && i < 6; ++i)
// lyxerr << " " << i << ": " << buf->undostack()[i] << std::endl;
//for (size_t i = 0, n = buf.undostack().size(); i != n && i < 6; ++i)
// lyxerr << " " << i << ": " << buf.undostack()[i] << std::endl;
}
@ -274,9 +274,9 @@ void recordUndoInset(Cursor & cur, Undo::undo_kind kind)
{
Cursor c = cur;
c.pop();
Buffer * buf = cur.bv().buffer();
Buffer & buf = cur.bv().buffer();
doRecordUndo(kind, c, c.pit(), c.pit(), cur,
buf->params(), false, buf->undostack());
buf.params(), false, buf.undostack());
}
@ -301,15 +301,15 @@ void recordUndo(Cursor & cur, Undo::undo_kind kind,
void recordUndoFullDocument(BufferView * bv)
{
Buffer * buf = bv->buffer();
Buffer & buf = bv->buffer();
doRecordUndo(
Undo::ATOMIC,
doc_iterator_begin(buf->inset()),
0, buf->paragraphs().size() - 1,
doc_iterator_begin(buf.inset()),
0, buf.paragraphs().size() - 1,
bv->cursor(),
buf->params(),
buf.params(),
true,
buf->undostack()
buf.undostack()
);
undo_finished = false;
}

View File

@ -519,7 +519,7 @@ int VSpace::inPixels(BufferView const & bv) const
switch (kind_) {
case DEFSKIP:
return bv.buffer()->params().getDefSkip().inPixels(bv);
return bv.buffer().params().getDefSkip().inPixels(bv);
// This is how the skips are normally defined by LateX.
// But there should be some way to change this per document.

View File

@ -175,7 +175,7 @@ Point coordOffset(BufferView const & bv, DocIterator const & dit,
// of xx:yy
if (sl.text()) {
bool boundary_i = boundary && i + 1 == dit.depth();
bool rtl = sl.text()->isRTL(*bv.buffer(), sl, boundary_i);
bool rtl = sl.text()->isRTL(bv.buffer(), sl, boundary_i);
if (rtl)
x -= lastw;
}
@ -217,7 +217,7 @@ Point coordOffset(BufferView const & bv, DocIterator const & dit,
// In the RTL case place the nested inset at the left of the cursor in
// the outer paragraph
bool boundary_1 = boundary && 1 == dit.depth();
bool rtl = dit.bottom().text()->isRTL(*bv.buffer(), dit.bottom(), boundary_1);
bool rtl = dit.bottom().text()->isRTL(bv.buffer(), dit.bottom(), boundary_1);
if (rtl)
x -= lastw;

View File

@ -253,7 +253,7 @@ int AutoSaveBuffer::generateChild()
FileName const tmp_ret(tempName(FileName(), "lyxauto"));
if (!tmp_ret.empty()) {
bv_.buffer()->writeFile(tmp_ret);
bv_.buffer().writeFile(tmp_ret);
// assume successful write of tmp_ret
if (!rename(tmp_ret, fname_)) {
failed = true;
@ -269,12 +269,11 @@ int AutoSaveBuffer::generateChild()
if (failed) {
// failed to write/rename tmp_ret so try writing direct
if (!bv_.buffer()->writeFile(fname_)) {
if (!bv_.buffer().writeFile(fname_)) {
// It is dangerous to do this in the child,
// but safe in the parent, so...
if (pid == -1) // emit message signal.
bv_.buffer()
->message(_("Autosave failed!"));
bv_.buffer().message(_("Autosave failed!"));
}
}
if (pid == 0) { // we are the child so...
@ -291,29 +290,26 @@ void autoSave(BufferView * bv)
// should probably be moved into BufferList (Lgb)
// Perfect target for a thread...
{
if (!bv->buffer())
return;
if (bv->buffer()->isBakClean() || bv->buffer()->isReadonly()) {
if (bv->buffer().isBakClean() || bv->buffer().isReadonly()) {
// We don't save now, but we'll try again later
bv->buffer()->resetAutosaveTimers();
bv->buffer().resetAutosaveTimers();
return;
}
// emit message signal.
bv->buffer()->message(_("Autosaving current document..."));
bv->buffer().message(_("Autosaving current document..."));
// create autosave filename
string fname = bv->buffer()->filePath();
string fname = bv->buffer().filePath();
fname += '#';
fname += onlyFilename(bv->buffer()->fileName());
fname += onlyFilename(bv->buffer().fileName());
fname += '#';
AutoSaveBuffer autosave(*bv, FileName(fname));
autosave.start();
bv->buffer()->markBakClean();
bv->buffer()->resetAutosaveTimers();
bv->buffer().markBakClean();
bv->buffer().resetAutosaveTimers();
}
@ -342,9 +338,6 @@ void newFile(LyXView & lv, string const & filename)
// Insert plain text file (if filename is empty, prompt for one)
void insertPlaintextFile(BufferView * bv, string const & f, bool asParagraph)
{
if (!bv->buffer())
return;
docstring const tmpstr =
getContentsOfPlaintextFile(bv, f, asParagraph);
@ -373,7 +366,7 @@ docstring const getContentsOfPlaintextFile(BufferView * bv, string const & f,
: LFUN_FILE_INSERT_PLAINTEXT) );
FileDialog::Result result =
fileDlg.open(from_utf8(bv->buffer()->filePath()),
fileDlg.open(from_utf8(bv->buffer().filePath()),
FileFilterList(), docstring());
if (result.first == FileDialog::Later)

View File

@ -82,7 +82,7 @@ using support::compare_ascii_no_case;
Inset * createInset(BufferView * bv, FuncRequest const & cmd)
{
BufferParams const & params = bv->buffer()->params();
BufferParams const & params = bv->buffer().params();
try {
@ -207,7 +207,7 @@ Inset * createInset(BufferView * bv, FuncRequest const & cmd)
r = 2;
if (c <= 0)
c = 2;
return new InsetTabular(*bv->buffer(), r, c);
return new InsetTabular(bv->buffer(), r, c);
}
case LFUN_CAPTION_INSERT: {
@ -270,7 +270,7 @@ Inset * createInset(BufferView * bv, FuncRequest const & cmd)
return new InsetListings(params, par);
} else if (name == "external") {
Buffer const & buffer = *bv->buffer();
Buffer const & buffer = bv->buffer();
InsetExternalParams iep;
InsetExternalMailer::string2params(to_utf8(cmd.argument()),
buffer, iep);
@ -279,7 +279,7 @@ Inset * createInset(BufferView * bv, FuncRequest const & cmd)
return inset.release();
} else if (name == "graphics") {
Buffer const & buffer = *bv->buffer();
Buffer const & buffer = bv->buffer();
InsetGraphicsParams igp;
InsetGraphicsMailer::string2params(to_utf8(cmd.argument()),
buffer, igp);
@ -314,7 +314,7 @@ Inset * createInset(BufferView * bv, FuncRequest const & cmd)
InsetCommandParams icp(name);
InsetCommandMailer::string2params(name, to_utf8(cmd.argument()),
icp);
return new InsetRef(icp, *bv->buffer());
return new InsetRef(icp, bv->buffer());
} else if (name == "toc") {
InsetCommandParams icp("tableofcontents");

View File

@ -95,7 +95,7 @@ Buffer * LyXView::buffer()
{
WorkArea * work_area = currentWorkArea();
if (work_area)
return work_area->bufferView().buffer();
return &work_area->bufferView().buffer();
return 0;
}
@ -104,7 +104,7 @@ Buffer const * LyXView::buffer() const
{
WorkArea const * work_area = currentWorkArea();
if (work_area)
return work_area->bufferView().buffer();
return &work_area->bufferView().buffer();
return 0;
}
@ -445,7 +445,7 @@ Buffer const * const LyXView::updateInset(Inset const * inset)
BOOST_ASSERT(work_area);
work_area->scheduleRedraw();
}
return work_area->bufferView().buffer();
return &work_area->bufferView().buffer();
}
} // namespace frontend

View File

@ -97,7 +97,7 @@ WorkArea::~WorkArea()
// restore to the left of the top level inset.
Cursor & cur = buffer_view_->cursor();
LyX::ref().session().lastFilePos().save(
support::FileName(buffer_view_->buffer()->fileName()),
support::FileName(buffer_view_->buffer().fileName()),
boost::tie(cur.bottom().pit(), cur.bottom().pos()) );
delete buffer_view_;
@ -291,7 +291,7 @@ void WorkArea::showCursor()
Text const & text = *buffer_view_->cursor().innerText();
Font const & realfont = text.real_current_font;
BufferParams const & bp = buffer_view_->buffer()->params();
BufferParams const & bp = buffer_view_->buffer().params();
bool const samelang = realfont.language() == bp.language;
bool const isrtl = realfont.isVisibleRightToLeft();

View File

@ -44,18 +44,18 @@ void ControlErrorList::clearParams()
ErrorList const & ControlErrorList::errorList() const
{
return kernel().bufferview()->buffer()->errorList(error_type_);
return kernel().bufferview()->buffer().errorList(error_type_);
}
bool ControlErrorList::initialiseParams(string const & error_type)
{
error_type_ = error_type;
Buffer * buf = kernel().bufferview()->buffer();
Buffer const & buf = kernel().bufferview()->buffer();
// FIXME UNICODE
docstring const title = bformat(_("%1$s Errors (%2$s)"),
_(error_type),
lyx::from_utf8(buf->fileName()));
lyx::from_utf8(buf.fileName()));
name_ = lyx::to_utf8(title);
return true;
}

View File

@ -148,7 +148,7 @@ bool isLetter(DocIterator const & dit)
WordLangTuple nextWord(Cursor & cur, ptrdiff_t & progress)
{
BufferParams const & bp = cur.bv().buffer()->params();
BufferParams const & bp = cur.bv().buffer().params();
bool inword = false;
bool ignoreword = false;
cur.resetAnchor();

View File

@ -54,7 +54,7 @@ docstring const ControlViewSource::updateContent(bool fullSource)
if (par_begin > par_end)
std::swap(par_begin, par_end);
lyx::odocstringstream ostr;
view->buffer()->getSourceCode(ostr, par_begin, par_end + 1, fullSource);
view->buffer().getSourceCode(ostr, par_begin, par_end + 1, fullSource);
return ostr.str();
}
@ -65,11 +65,11 @@ std::pair<int, int> ControlViewSource::getRows() const
CursorSlice beg = view->cursor().selectionBegin().bottom();
CursorSlice end = view->cursor().selectionEnd().bottom();
int begrow = view->buffer()->texrow().
int begrow = view->buffer().texrow().
getRowFromIdPos(beg.paragraph().id(), beg.pos());
int endrow = view->buffer()->texrow().
int endrow = view->buffer().texrow().
getRowFromIdPos(end.paragraph().id(), end.pos());
int nextendrow = view->buffer()->texrow().
int nextendrow = view->buffer().texrow().
getRowFromIdPos(end.paragraph().id(), end.pos() + 1);
return std::make_pair(begrow, endrow == nextendrow ? endrow : (nextendrow - 1));
}

View File

@ -49,9 +49,7 @@ void Kernel::disconnect(string const & name) const
bool Kernel::isBufferAvailable() const
{
if (!lyxview_.view())
return false;
return lyxview_.view()->buffer() != 0;
return lyxview_.buffer() != 0;
}

View File

@ -647,7 +647,7 @@ void GuiView::currentTabChanged(int i)
BOOST_ASSERT(wa);
BufferView & bv = wa->bufferView();
connectBufferView(bv);
connectBuffer(*bv.buffer());
connectBuffer(bv.buffer());
bv.updateMetrics(false);
bv.cursor().fixIfBroken();
wa->setUpdatesEnabled(true);
@ -666,7 +666,7 @@ void GuiView::currentTabChanged(int i)
updateStatusBar();
lyxerr << "currentTabChanged " << i
<< "File" << wa->bufferView().buffer()->fileName() << endl;
<< "File" << bv.buffer().fileName() << endl;
}
@ -846,7 +846,7 @@ WorkArea * GuiView::workArea(Buffer & buffer)
for (int i = 0; i != d.tab_widget_->count(); ++i) {
GuiWorkArea * wa = dynamic_cast<GuiWorkArea *>(d.tab_widget_->widget(i));
BOOST_ASSERT(wa);
if (wa->bufferView().buffer() == &buffer)
if (&wa->bufferView().buffer() == &buffer)
return wa;
}
return 0;

View File

@ -69,7 +69,7 @@ void InsetBibitem::doDispatch(Cursor & cur, FuncRequest & cmd)
break;
}
if (p["key"] != params()["key"])
cur.bv().buffer()->changeRefsIfUnique(params()["key"],
cur.bv().buffer().changeRefsIfUnique(params()["key"],
p["key"], Inset::CITE_CODE);
setParams(p);
}

View File

@ -600,7 +600,7 @@ void InsetCollapsable::setStatus(Cursor & cur, CollapseStatus status)
// Because the collapse status is part of the inset and thus an
// integral part of the Buffer contents a changed status must be
// signaled to all views of current buffer.
cur.bv().buffer()->changed();
cur.bv().buffer().changed();
}

View File

@ -53,7 +53,7 @@ bool InsetCommand::metrics(MetricsInfo & mi, Dimension & dim) const
{
if (updateButtonLabel_) {
updateButtonLabel_ = false;
button_.update(getScreenLabel(*mi.base.bv->buffer()),
button_.update(getScreenLabel(mi.base.bv->buffer()),
editable() != NOT_EDITABLE);
}
button_.metrics(mi, dim);

View File

@ -32,7 +32,7 @@ InsetFootlike::InsetFootlike(InsetFootlike const & in)
bool InsetFootlike::metrics(MetricsInfo & mi, Dimension & dim) const
{
Font tmpfont = mi.base.font;
mi.base.font = mi.base.bv->buffer()->params().getFont();
mi.base.font = mi.base.bv->buffer().params().getFont();
InsetCollapsable::metrics(mi, dim);
mi.base.font = tmpfont;
bool const changed = dim_ != dim;
@ -44,7 +44,7 @@ bool InsetFootlike::metrics(MetricsInfo & mi, Dimension & dim) const
void InsetFootlike::draw(PainterInfo & pi, int x, int y) const
{
Font tmpfont = pi.base.font;
pi.base.font = pi.base.bv->buffer()->params().getFont();
pi.base.font = pi.base.bv->buffer().params().getFont();
InsetCollapsable::draw(pi, x, y);
pi.base.font = tmpfont;
}

View File

@ -181,7 +181,7 @@ void InsetGraphics::doDispatch(Cursor & cur, FuncRequest & cmd)
{
switch (cmd.action) {
case LFUN_GRAPHICS_EDIT: {
Buffer const & buffer = *cur.bv().buffer();
Buffer const & buffer = cur.bv().buffer();
InsetGraphicsParams p;
InsetGraphicsMailer::string2params(to_utf8(cmd.argument()), buffer, p);
editGraphics(p, buffer);

View File

@ -148,7 +148,7 @@ void InsetInclude::doDispatch(Cursor & cur, FuncRequest & cmd)
if (par_old.getParamValue("label") !=
par_new.getParamValue("label")
&& !par_new.getParamValue("label").empty())
cur.bv().buffer()->changeRefsIfUnique(
cur.bv().buffer().changeRefsIfUnique(
from_utf8(par_old.getParamValue("label")),
from_utf8(par_new.getParamValue("label")),
Inset::REF_CODE);
@ -770,7 +770,7 @@ bool InsetInclude::metrics(MetricsInfo & mi, Dimension & dim) const
bool use_preview = false;
if (RenderPreview::status() != LyXRC::PREVIEW_OFF) {
graphics::PreviewImage const * pimage =
preview_->getPreviewImage(*mi.base.bv->buffer());
preview_->getPreviewImage(mi.base.bv->buffer());
use_preview = pimage && pimage->image();
}
@ -779,7 +779,7 @@ bool InsetInclude::metrics(MetricsInfo & mi, Dimension & dim) const
} else {
if (!set_label_) {
set_label_ = true;
button_.update(getScreenLabel(*mi.base.bv->buffer()),
button_.update(getScreenLabel(mi.base.bv->buffer()),
true);
}
button_.metrics(mi, dim);
@ -803,7 +803,7 @@ void InsetInclude::draw(PainterInfo & pi, int x, int y) const
bool use_preview = false;
if (RenderPreview::status() != LyXRC::PREVIEW_OFF) {
graphics::PreviewImage const * pimage =
preview_->getPreviewImage(*pi.base.bv->buffer());
preview_->getPreviewImage(pi.base.bv->buffer());
use_preview = pimage && pimage->image();
}

View File

@ -67,7 +67,7 @@ void InsetLabel::doDispatch(Cursor & cur, FuncRequest & cmd)
break;
}
if (p["name"] != params()["name"])
cur.bv().buffer()->changeRefsIfUnique(params()["name"],
cur.bv().buffer().changeRefsIfUnique(params()["name"],
p["name"], Inset::REF_CODE);
setParams(p);
break;

View File

@ -1098,14 +1098,14 @@ void toggleFixedWidth(Cursor & cur, InsetText * inset, bool fixedWidth)
return;
// merge all paragraphs to one
BufferParams const & bp = cur.bv().buffer()->params();
BufferParams const & bp = cur.bv().buffer().params();
while (inset->paragraphs().size() > 1)
mergeParagraph(bp, inset->paragraphs(), 0);
// reset layout
cur.push(*inset);
// undo information has already been recorded
inset->getText(0)->setLayout(*cur.bv().buffer(), 0, cur.lastpit() + 1,
inset->getText(0)->setLayout(cur.bv().buffer(), 0, cur.lastpit() + 1,
bp.getTextClass().defaultLayoutName());
cur.pop();
}
@ -4167,12 +4167,12 @@ void InsetTabular::tabularFeatures(Cursor & cur,
case Tabular::APPEND_ROW:
// append the row into the tabular
tabular.appendRow(bv.buffer()->params(), cur.idx());
tabular.appendRow(bv.buffer().params(), cur.idx());
break;
case Tabular::APPEND_COLUMN:
// append the column into the tabular
tabular.appendColumn(bv.buffer()->params(), cur.idx());
tabular.appendColumn(bv.buffer().params(), cur.idx());
cur.idx() = tabular.getCellNumber(row, column);
break;
@ -4199,11 +4199,11 @@ void InsetTabular::tabularFeatures(Cursor & cur,
break;
case Tabular::COPY_ROW:
tabular.copyRow(bv.buffer()->params(), row);
tabular.copyRow(bv.buffer().params(), row);
break;
case Tabular::COPY_COLUMN:
tabular.copyColumn(bv.buffer()->params(), column);
tabular.copyColumn(bv.buffer().params(), column);
cur.idx() = tabular.getCellNumber(row, column);
break;
@ -4302,14 +4302,14 @@ void InsetTabular::tabularFeatures(Cursor & cur,
if (tabular.isMultiColumn(cur.idx()))
tabular.unsetMultiColumn(cur.idx());
else
tabular.setMultiColumn(bv.buffer(), cur.idx(), 1);
tabular.setMultiColumn(&bv.buffer(), cur.idx(), 1);
break;
}
// we have a selection so this means we just add all this
// cells to form a multicolumn cell
idx_type const s_start = cur.selBegin().idx();
idx_type const s_end = cur.selEnd().idx();
tabular.setMultiColumn(bv.buffer(), s_start, s_end - s_start + 1);
tabular.setMultiColumn(&bv.buffer(), s_start, s_end - s_start + 1);
cur.idx() = s_start;
cur.pit() = 0;
cur.pos() = 0;
@ -4619,7 +4619,7 @@ bool InsetTabular::isRightToLeft(Cursor & cur) const
BOOST_ASSERT(cur.depth() > 1);
Paragraph const & parentpar = cur[cur.depth() - 2].paragraph();
pos_type const parentpos = cur[cur.depth() - 2].pos();
return parentpar.getFontSettings(cur.bv().buffer()->params(),
return parentpar.getFontSettings(cur.bv().buffer().params(),
parentpos).language()->rightToLeft();
}
@ -4684,7 +4684,7 @@ bool InsetTabular::insertPlaintextString(BufferView & bv, docstring const & buf,
if (buf.length() <= 0)
return true;
Buffer const & buffer = *bv.buffer();
Buffer const & buffer = bv.buffer();
col_type cols = 1;
row_type rows = 1;

View File

@ -25,7 +25,7 @@ using std::string;
void MailInset::showDialog(BufferView * bv) const
{
BOOST_ASSERT(bv);
bv->showInsetDialog(name(), inset2string(*bv->buffer()),
bv->showInsetDialog(name(), inset2string(bv->buffer()),
&inset());
}
@ -33,7 +33,7 @@ void MailInset::showDialog(BufferView * bv) const
void MailInset::updateDialog(BufferView * bv) const
{
BOOST_ASSERT(bv);
bv->updateDialog(name(), inset2string(*bv->buffer()));
bv->updateDialog(name(), inset2string(bv->buffer()));
}

View File

@ -86,9 +86,9 @@ graphics::PreviewLoader & getPreviewLoader(Buffer const & buffer)
docstring const statusMessage(BufferView const * bv, string const & snippet)
{
BOOST_ASSERT(bv && bv->buffer());
BOOST_ASSERT(bv);
Buffer const & buffer = *bv->buffer();
Buffer const & buffer = bv->buffer();
graphics::PreviewLoader const & loader = getPreviewLoader(buffer);
graphics::PreviewLoader::Status const status = loader.status(snippet);
@ -122,10 +122,10 @@ RenderPreview::getPreviewImage(Buffer const & buffer) const
bool RenderPreview::metrics(MetricsInfo & mi, Dimension & dim) const
{
BOOST_ASSERT(mi.base.bv && mi.base.bv->buffer());
BOOST_ASSERT(mi.base.bv);
graphics::PreviewImage const * const pimage =
getPreviewImage(*mi.base.bv->buffer());
getPreviewImage(mi.base.bv->buffer());
if (pimage) {
dim.asc = pimage->ascent();
@ -150,10 +150,10 @@ bool RenderPreview::metrics(MetricsInfo & mi, Dimension & dim) const
void RenderPreview::draw(PainterInfo & pi, int x, int y) const
{
BOOST_ASSERT(pi.base.bv && pi.base.bv->buffer());
BOOST_ASSERT(pi.base.bv);
graphics::PreviewImage const * const pimage =
getPreviewImage(*pi.base.bv->buffer());
getPreviewImage(pi.base.bv->buffer());
graphics::Image const * const image = pimage ? pimage->image() : 0;
if (image) {

View File

@ -144,7 +144,7 @@ bool searchAllowed(BufferView * bv, docstring const & str)
_("Search string is empty"));
return false;
}
return bv->buffer();
return true;
}
@ -172,7 +172,7 @@ int replaceAll(BufferView * bv,
docstring const & searchstr, docstring const & replacestr,
bool cs, bool mw)
{
Buffer & buf = *bv->buffer();
Buffer & buf = bv->buffer();
if (!searchAllowed(bv, searchstr) || buf.isReadonly())
return 0;
@ -227,7 +227,7 @@ bool stringSelected(BufferView * bv, docstring const & searchstr,
int replace(BufferView * bv, docstring const & searchstr,
docstring const & replacestr, bool cs, bool mw, bool fw)
{
if (!searchAllowed(bv, searchstr) || bv->buffer()->isReadonly())
if (!searchAllowed(bv, searchstr) || bv->buffer().isReadonly())
return 0;
if (!stringSelected(bv, searchstr, cs, mw, fw))
@ -235,7 +235,7 @@ int replace(BufferView * bv, docstring const & searchstr,
Cursor & cur = bv->cursor();
cap::replaceSelectionWithString(cur, replacestr, fw);
bv->buffer()->markDirty();
bv->buffer().markDirty();
find(bv, searchstr, cs, mw, fw, false);
bv->update();
@ -317,25 +317,24 @@ void replace(BufferView * bv, FuncRequest const & ev, bool has_deleted)
bool all = parse_bool(howto);
bool forward = parse_bool(howto);
Buffer * buf = bv->buffer();
if (!has_deleted) {
int const replace_count = all
? replaceAll(bv, search, rplc, casesensitive, matchword)
: replace(bv, search, rplc, casesensitive, matchword, forward);
Buffer & buf = bv->buffer();
if (replace_count == 0) {
// emit message signal.
buf->message(_("String not found!"));
buf.message(_("String not found!"));
} else {
if (replace_count == 1) {
// emit message signal.
buf->message(_("String has been replaced."));
buf.message(_("String has been replaced."));
} else {
docstring str = convert<docstring>(replace_count);
str += _(" strings have been replaced.");
// emit message signal.
buf->message(str);
buf.message(str);
}
}
} else {
@ -353,9 +352,6 @@ void replace(BufferView * bv, FuncRequest const & ev, bool has_deleted)
bool findNextChange(BufferView * bv)
{
if (!bv->buffer())
return false;
DocIterator cur = bv->cursor();
if (!findChange(cur))

View File

@ -277,7 +277,7 @@ bool InsetMathHull::previewState(BufferView * bv) const
{
if (!editing(bv) && RenderPreview::status() == LyXRC::PREVIEW_ON) {
graphics::PreviewImage const * pimage =
preview_->getPreviewImage(*bv->buffer());
preview_->getPreviewImage(bv->buffer());
return pimage && pimage->image();
}
return false;
@ -1060,7 +1060,7 @@ void InsetMathHull::doDispatch(Cursor & cur, FuncRequest & cmd)
if (type_ == hullSimple || type_ == hullEquation) {
recordUndoInset(cur);
bool const align =
cur.bv().buffer()->params().use_amsmath == BufferParams::package_on;
cur.bv().buffer().params().use_amsmath == BufferParams::package_on;
mutate(align ? hullAlign : hullEqnArray);
cur.idx() = 0;
cur.pos() = cur.lastpos();
@ -1129,7 +1129,7 @@ void InsetMathHull::doDispatch(Cursor & cur, FuncRequest & cmd)
numbered(r, true);
docstring old = label(r);
if (str != old) {
cur.bv().buffer()->changeRefsIfUnique(old, str,
cur.bv().buffer().changeRefsIfUnique(old, str,
Inset::REF_CODE);
label(r, str);
}

View File

@ -258,7 +258,7 @@ void MathData::metrics(MetricsInfo & mi) const
dim_.wid = 0;
Dimension d;
//BufferView & bv = *mi.base.bv;
//Buffer const & buf = *bv.buffer();
//Buffer const & buf = bv.buffer();
for (size_t i = 0, n = size(); i != n; ++i) {
MathAtom const & at = operator[](i);
#if 0

View File

@ -145,7 +145,7 @@ RowPainter::RowPainter(PainterInfo & pi,
xo_(x), yo_(y), width_(text_metrics_.width())
{
RowMetrics m = text_metrics_.computeRowMetrics(pit_, row_);
bidi_.computeTables(par_, *bv_.buffer(), row_);
bidi_.computeTables(par_, bv_.buffer(), row_);
x_ = m.x + xo_;
//lyxerr << "RowPainter: x: " << x_ << " xo: " << xo_ << " yo: " << yo_ << endl;
@ -162,13 +162,13 @@ RowPainter::RowPainter(PainterInfo & pi,
Font const RowPainter::getLabelFont() const
{
return text_.getLabelFont(*bv_.buffer(), par_);
return text_.getLabelFont(bv_.buffer(), par_);
}
int RowPainter::leftMargin() const
{
return text_.leftMargin(*bv_.buffer(), max_width_, pit_, row_.pos());
return text_.leftMargin(bv_.buffer(), max_width_, pit_, row_.pos());
}
@ -185,7 +185,7 @@ void RowPainter::paintInset(pos_type const pos, Font const & font)
// FIXME: We should always use font, see documentation of
// noFontChange() in Inset.h.
pi.base.font = inset->noFontChange() ?
bv_.buffer()->params().getFont() :
bv_.buffer().params().getFont() :
font;
pi.ltr_pos = (bidi_.level(pos) % 2 == 0);
pi.erased_ = erased_ || par_.isDeleted(pos);
@ -257,7 +257,7 @@ void RowPainter::paintHebrewComposeChar(pos_type & vpos, Font const & font)
if (!Encodings::isComposeChar_hebrew(c)) {
if (isPrintableNonspace(c)) {
int const width2 = pm_.singleWidth(i,
text_.getFont(*bv_.buffer(), par_, i));
text_.getFont(bv_.buffer(), par_, i));
dx = (c == 0x05e8 || // resh
c == 0x05d3) // dalet
? width2 - width
@ -291,7 +291,7 @@ void RowPainter::paintArabicComposeChar(pos_type & vpos, Font const & font)
if (!Encodings::isComposeChar_arabic(c)) {
if (isPrintableNonspace(c)) {
int const width2 = pm_.singleWidth(i,
text_.getFont(*bv_.buffer(), par_, i));
text_.getFont(bv_.buffer(), par_, i));
dx = (width2 - width) / 2;
}
break;
@ -400,7 +400,7 @@ void RowPainter::paintForeignMark(double orig_x, Font const & font, int desc)
return;
if (font.language() == latex_language)
return;
if (font.language() == bv_.buffer()->params().language)
if (font.language() == bv_.buffer().params().language)
return;
int const y = yo_ + 1 + desc;
@ -411,7 +411,7 @@ void RowPainter::paintForeignMark(double orig_x, Font const & font, int desc)
void RowPainter::paintFromPos(pos_type & vpos)
{
pos_type const pos = bidi_.vis2log(vpos);
Font orig_font = text_.getFont(*bv_.buffer(), par_, pos);
Font orig_font = text_.getFont(bv_.buffer(), par_, pos);
double const orig_x = x_;
@ -472,7 +472,7 @@ void RowPainter::paintChangeBar()
void RowPainter::paintAppendix()
{
// only draw the appendix frame once (for the main text)
if (!par_.params().appendix() || !text_.isMainText(*bv_.buffer()))
if (!par_.params().appendix() || !text_.isMainText(bv_.buffer()))
return;
int y = yo_ - row_.ascent();
@ -512,7 +512,7 @@ void RowPainter::paintDepthBar()
int const w = nestMargin() / 5;
int x = int(xo_) + w * i;
// only consider the changebar space if we're drawing outermost text
if (text_.isMainText(*bv_.buffer()))
if (text_.isMainText(bv_.buffer()))
x += changebarMargin();
int const starty = yo_ - row_.ascent();
@ -563,7 +563,7 @@ void RowPainter::paintFirst()
if (parparams.startOfAppendix())
y_top += paintAppendixStart(yo_ - row_.ascent() + 2 * defaultRowHeight());
Buffer const & buffer = *bv_.buffer();
Buffer const & buffer = bv_.buffer();
Layout_ptr const & layout = par_.layout();
@ -676,13 +676,13 @@ void RowPainter::paintFirst()
void RowPainter::paintLast()
{
bool const is_rtl = text_.isRTL(*bv_.buffer(), par_);
bool const is_rtl = text_.isRTL(bv_.buffer(), par_);
int const endlabel = getEndLabel(pit_, text_.paragraphs());
// paint imaginary end-of-paragraph character
if (par_.isInserted(par_.size()) || par_.isDeleted(par_.size())) {
FontMetrics const & fm = theFontMetrics(bv_.buffer()->params().getFont());
FontMetrics const & fm = theFontMetrics(bv_.buffer().params().getFont());
int const length = fm.maxAscent() / 2;
Color::color col = par_.isInserted(par_.size()) ? Color::addedtext : Color::deletedtext;
@ -754,7 +754,7 @@ void RowPainter::paintText()
// Use font span to speed things up, see below
FontSpan font_span;
Font font;
Buffer const & buffer = *bv_.buffer();
Buffer const & buffer = bv_.buffer();
// If the last logical character is a separator, don't paint it, unless
// it's in the last row of a paragraph; see skipped_sep_vpos declaration
@ -807,7 +807,7 @@ void RowPainter::paintText()
if (running_strikeout && (highly_editable_inset || !is_struckout)) {
// Calculate 1/3 height of the buffer's default font
FontMetrics const & fm
= theFontMetrics(bv_.buffer()->params().getFont());
= theFontMetrics(bv_.buffer().params().getFont());
int const middle = yo_ - fm.maxAscent() / 3;
pain_.line(last_strikeout_x, middle, int(x_), middle,
Color::deletedtext, Painter::line_solid, Painter::line_thin);
@ -848,7 +848,7 @@ void RowPainter::paintText()
x_ += 2;
++vpos;
} else if (par_.isSeparator(pos)) {
Font orig_font = text_.getFont(*bv_.buffer(), par_, pos);
Font orig_font = text_.getFont(bv_.buffer(), par_, pos);
double const orig_x = x_;
x_ += width_pos;
if (pos >= body_pos)
@ -864,7 +864,7 @@ void RowPainter::paintText()
if (running_strikeout) {
// calculate 1/3 height of the buffer's default font
FontMetrics const & fm
= theFontMetrics(bv_.buffer()->params().getFont());
= theFontMetrics(bv_.buffer().params().getFont());
int const middle = yo_ - fm.maxAscent() / 3;
pain_.line(last_strikeout_x, middle, int(x_), middle,
Color::deletedtext, Painter::line_solid, Painter::line_thin);
@ -1018,7 +1018,7 @@ void paintPar
// Instrumentation for testing row cache (see also
// 12 lines lower):
if (lyxerr.debugging(Debug::PAINTING)) {
if (text.isMainText(*pi.base.bv->buffer()))
if (text.isMainText(pi.base.bv->buffer()))
LYXERR(Debug::PAINTING) << "#";
else
LYXERR(Debug::PAINTING) << "[" <<
@ -1050,8 +1050,7 @@ void paintPar
void paintText(BufferView & bv,
Painter & pain)
{
BOOST_ASSERT(bv.buffer());
Buffer const & buffer = *bv.buffer();
Buffer const & buffer = bv.buffer();
Text & text = buffer.text();
bool const select = bv.cursor().selection();
ViewMetricsInfo const & vi = bv.viewMetricsInfo();

View File

@ -31,9 +31,9 @@ namespace toc {
void outline(OutlineOp mode, Cursor & cur)
{
Buffer * buf = & cur.buffer();
Buffer & buf = cur.buffer();
pit_type & pit = cur.pit();
ParagraphList & pars = buf->text().paragraphs();
ParagraphList & pars = buf.text().paragraphs();
ParagraphList::iterator bgn = pars.begin();
// The first paragraph of the area to be copied:
ParagraphList::iterator start = boost::next(bgn, pit);
@ -42,9 +42,9 @@ void outline(OutlineOp mode, Cursor & cur)
ParagraphList::iterator end = pars.end();
TextClass::const_iterator lit =
buf->params().getTextClass().begin();
buf.params().getTextClass().begin();
TextClass::const_iterator const lend =
buf->params().getTextClass().end();
buf.params().getTextClass().end();
int const thistoclevel = start->layout()->toclevel;
int toclevel;