mirror of
https://git.lyx.org/repos/lyx.git
synced 2024-11-22 18:08:10 +00:00
Second part of r14315 from the younes branch:
* BufferView and Bufferview::pimpl: repaintAll() methods deleted. * rowpainter.C: - refreshInside : new variable in the anonymous namespace. - use of refreshInside instead of the repaintAll() methods git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14324 a592a061-630c-0410-9148-cb99ea01b6c8
This commit is contained in:
parent
fb97c0689b
commit
752cab15d7
@ -386,18 +386,6 @@ void BufferView::putSelectionAt(DocIterator const & cur,
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
bool const BufferView::repaintAll() const
|
|
||||||
{
|
|
||||||
return pimpl_->repaintAll();
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
void const BufferView::repaintAll(bool r) const
|
|
||||||
{
|
|
||||||
pimpl_->repaintAll(r);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
LCursor & BufferView::cursor()
|
LCursor & BufferView::cursor()
|
||||||
{
|
{
|
||||||
return pimpl_->cursor_;
|
return pimpl_->cursor_;
|
||||||
|
@ -232,10 +232,6 @@ public:
|
|||||||
*/
|
*/
|
||||||
void putSelectionAt(DocIterator const & cur,
|
void putSelectionAt(DocIterator const & cur,
|
||||||
int length, bool backwards);
|
int length, bool backwards);
|
||||||
///
|
|
||||||
bool const repaintAll() const;
|
|
||||||
///
|
|
||||||
void const repaintAll(bool r) const;
|
|
||||||
|
|
||||||
private:
|
private:
|
||||||
///
|
///
|
||||||
|
@ -106,10 +106,6 @@ public:
|
|||||||
FuncStatus getStatus(FuncRequest const & cmd);
|
FuncStatus getStatus(FuncRequest const & cmd);
|
||||||
/// a function should be executed
|
/// a function should be executed
|
||||||
bool dispatch(FuncRequest const & ev);
|
bool dispatch(FuncRequest const & ev);
|
||||||
/// Flag: do a full redraw of inside text of inset
|
|
||||||
bool repaintAll() { return refresh_inside_; }
|
|
||||||
///
|
|
||||||
void repaintAll(bool r) {refresh_inside_ = r; }
|
|
||||||
|
|
||||||
/// the frontend
|
/// the frontend
|
||||||
lyx::frontend::Gui & gui() const;
|
lyx::frontend::Gui & gui() const;
|
||||||
@ -215,7 +211,5 @@ private:
|
|||||||
int offset_ref_;
|
int offset_ref_;
|
||||||
///
|
///
|
||||||
ViewMetricsInfo metrics(bool singlepar = false);
|
ViewMetricsInfo metrics(bool singlepar = false);
|
||||||
/// Working variable indicating a full screen refresh
|
|
||||||
mutable bool refresh_inside_;
|
|
||||||
};
|
};
|
||||||
#endif // BUFFERVIEW_PIMPL_H
|
#endif // BUFFERVIEW_PIMPL_H
|
||||||
|
@ -56,6 +56,10 @@ using std::string;
|
|||||||
|
|
||||||
namespace {
|
namespace {
|
||||||
|
|
||||||
|
/// Flag: do a full redraw of inside text of inset
|
||||||
|
/// Working variable indicating a full screen refresh
|
||||||
|
bool refreshInside;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* A class used for painting an individual row of text.
|
* A class used for painting an individual row of text.
|
||||||
*/
|
*/
|
||||||
@ -169,15 +173,15 @@ void RowPainter::paintInset(pos_type const pos, LyXFont const & font)
|
|||||||
theCoords.insets().add(inset, int(x_), yo_);
|
theCoords.insets().add(inset, int(x_), yo_);
|
||||||
InsetText const * const in = inset->asTextInset();
|
InsetText const * const in = inset->asTextInset();
|
||||||
// non-wide insets are painted completely. Recursive
|
// non-wide insets are painted completely. Recursive
|
||||||
bool tmp = bv_.repaintAll();
|
bool tmp = refreshInside;
|
||||||
if (!in || !in->Wide()) {
|
if (!in || !in->Wide()) {
|
||||||
bv_.repaintAll(true);
|
refreshInside = true;
|
||||||
lyxerr[Debug::PAINTING] << endl << "Paint inset fully" << endl;
|
lyxerr[Debug::PAINTING] << endl << "Paint inset fully" << endl;
|
||||||
}
|
}
|
||||||
if (bv_.repaintAll())
|
if (refreshInside)
|
||||||
inset->drawSelection(pi, int(x_), yo_);
|
inset->drawSelection(pi, int(x_), yo_);
|
||||||
inset->draw(pi, int(x_), yo_);
|
inset->draw(pi, int(x_), yo_);
|
||||||
bv_.repaintAll(tmp);
|
refreshInside = tmp;
|
||||||
x_ += inset->width();
|
x_ += inset->width();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -801,9 +805,9 @@ void paintPar
|
|||||||
lyx::size_type rowno(0);
|
lyx::size_type rowno(0);
|
||||||
for (RowList::const_iterator rit = rb; rit != re; ++rit, ++rowno) {
|
for (RowList::const_iterator rit = rb; rit != re; ++rit, ++rowno) {
|
||||||
y += rit->ascent();
|
y += rit->ascent();
|
||||||
// Allow setting of bv->repaintAll() for nested insets in
|
// Allow setting of refreshInside for nested insets in
|
||||||
// this row only
|
// this row only
|
||||||
bool tmp = pi.base.bv->repaintAll();
|
bool tmp = refreshInside;
|
||||||
|
|
||||||
// Row signature; has row changed since last paint?
|
// Row signature; has row changed since last paint?
|
||||||
lyx::size_type const row_sig = calculateRowSignature(*rit, par, x, y);
|
lyx::size_type const row_sig = calculateRowSignature(*rit, par, x, y);
|
||||||
@ -843,7 +847,7 @@ void paintPar
|
|||||||
// If outer row has changed, force nested
|
// If outer row has changed, force nested
|
||||||
// insets to repaint completely
|
// insets to repaint completely
|
||||||
if (row_has_changed)
|
if (row_has_changed)
|
||||||
pi.base.bv->repaintAll(true);
|
refreshInside = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Instrumentation for testing row cache (see also
|
// Instrumentation for testing row cache (see also
|
||||||
@ -865,7 +869,7 @@ void paintPar
|
|||||||
}
|
}
|
||||||
y += rit->descent();
|
y += rit->descent();
|
||||||
// Restore, see above
|
// Restore, see above
|
||||||
pi.base.bv->repaintAll(tmp);
|
refreshInside = tmp;
|
||||||
}
|
}
|
||||||
lyxerr[Debug::PAINTING] << "." << endl;
|
lyxerr[Debug::PAINTING] << "." << endl;
|
||||||
}
|
}
|
||||||
@ -881,7 +885,7 @@ void paintText(BufferView const & bv, ViewMetricsInfo const & vi)
|
|||||||
|
|
||||||
PainterInfo pi(const_cast<BufferView *>(&bv), pain);
|
PainterInfo pi(const_cast<BufferView *>(&bv), pain);
|
||||||
// Should the whole screen, including insets, be refreshed?
|
// Should the whole screen, including insets, be refreshed?
|
||||||
bool repaintAll(select || !vi.singlepar);
|
bool repaintAll = select || !vi.singlepar;
|
||||||
|
|
||||||
if (repaintAll) {
|
if (repaintAll) {
|
||||||
// Clear background (if not delegated to rows)
|
// Clear background (if not delegated to rows)
|
||||||
@ -895,7 +899,7 @@ void paintText(BufferView const & bv, ViewMetricsInfo const & vi)
|
|||||||
int yy = vi.y1;
|
int yy = vi.y1;
|
||||||
// draw contents
|
// draw contents
|
||||||
for (pit_type pit = vi.p1; pit <= vi.p2; ++pit) {
|
for (pit_type pit = vi.p1; pit <= vi.p2; ++pit) {
|
||||||
bv.repaintAll(repaintAll);
|
refreshInside = repaintAll;
|
||||||
Paragraph const & par = text->getPar(pit);
|
Paragraph const & par = text->getPar(pit);
|
||||||
yy += par.ascent();
|
yy += par.ascent();
|
||||||
paintPar(pi, *bv.text(), pit, 0, yy, repaintAll);
|
paintPar(pi, *bv.text(), pit, 0, yy, repaintAll);
|
||||||
@ -936,7 +940,7 @@ void paintTextInset(LyXText const & text, PainterInfo & pi, int x, int y)
|
|||||||
|
|
||||||
y -= text.getPar(0).ascent();
|
y -= text.getPar(0).ascent();
|
||||||
// This flag can not be set from within same inset:
|
// This flag can not be set from within same inset:
|
||||||
bool repaintAll = pi.base.bv->repaintAll();
|
bool repaintAll = refreshInside;
|
||||||
for (int pit = 0; pit < int(text.paragraphs().size()); ++pit) {
|
for (int pit = 0; pit < int(text.paragraphs().size()); ++pit) {
|
||||||
y += text.getPar(pit).ascent();
|
y += text.getPar(pit).ascent();
|
||||||
paintPar(pi, text, pit, x, y, repaintAll);
|
paintPar(pi, text, pit, x, y, repaintAll);
|
||||||
|
Loading…
Reference in New Issue
Block a user