mirror of
https://git.lyx.org/repos/lyx.git
synced 2024-12-22 13:18:28 +00:00
Fix singlePar update. This should result in a nice speed improvment for Mac.
* buffer.h: changed() signal now emit a singlePar boolean. * WorkArea::redraw(): acknowledge singlePar changed() boolean * LyXView.C: adapt signal connection to changed() signal change. * lyxfunc.C: transmit the singlePar flag with the Buffer::changed() signal. git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15702 a592a061-630c-0410-9148-cb99ea01b6c8
This commit is contained in:
parent
88fe6b36a9
commit
4416bb3609
@ -119,7 +119,7 @@ public:
|
|||||||
bool hasParWithID(int id) const;
|
bool hasParWithID(int id) const;
|
||||||
|
|
||||||
/// This signal is emitted when the buffer is changed.
|
/// This signal is emitted when the buffer is changed.
|
||||||
boost::signal<void()> changed;
|
boost::signal<void(bool)> changed;
|
||||||
/// This signal is emitted when some parsing error shows up.
|
/// This signal is emitted when some parsing error shows up.
|
||||||
boost::signal<void(std::string)> errors;
|
boost::signal<void(std::string)> errors;
|
||||||
/// This signal is emitted when some message shows up.
|
/// This signal is emitted when some message shows up.
|
||||||
|
@ -169,7 +169,7 @@ void LyXView::connectBuffer(Buffer & buf)
|
|||||||
|
|
||||||
bufferChangedConnection_ =
|
bufferChangedConnection_ =
|
||||||
buf.changed.connect(
|
buf.changed.connect(
|
||||||
boost::bind(&WorkArea::redraw, work_area_));
|
boost::bind(&WorkArea::redraw, work_area_, _1));
|
||||||
|
|
||||||
errorsConnection_ =
|
errorsConnection_ =
|
||||||
buf.errors.connect(
|
buf.errors.connect(
|
||||||
|
@ -138,7 +138,7 @@ void WorkArea::checkAndGreyOut()
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void WorkArea::redraw()
|
void WorkArea::redraw(bool singlePar)
|
||||||
{
|
{
|
||||||
if (!buffer_view_)
|
if (!buffer_view_)
|
||||||
return;
|
return;
|
||||||
@ -148,7 +148,7 @@ void WorkArea::redraw()
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
buffer_view_->updateMetrics(false);
|
buffer_view_->updateMetrics(singlePar);
|
||||||
|
|
||||||
updateScrollbar();
|
updateScrollbar();
|
||||||
|
|
||||||
|
@ -80,7 +80,7 @@ public:
|
|||||||
virtual void setScrollbarParams(int height, int pos, int line_height) = 0;
|
virtual void setScrollbarParams(int height, int pos, int line_height) = 0;
|
||||||
|
|
||||||
/// redraw the screen, without using existing pixmap
|
/// redraw the screen, without using existing pixmap
|
||||||
virtual void redraw();
|
virtual void redraw(bool singlePar = false);
|
||||||
///
|
///
|
||||||
void checkAndGreyOut();
|
void checkAndGreyOut();
|
||||||
///
|
///
|
||||||
|
@ -1721,7 +1721,7 @@ void LyXFunc::dispatch(FuncRequest const & cmd)
|
|||||||
needSecondUpdate = view()->fitCursor();
|
needSecondUpdate = view()->fitCursor();
|
||||||
|
|
||||||
if (needSecondUpdate || updateFlags != Update::None) {
|
if (needSecondUpdate || updateFlags != Update::None) {
|
||||||
view()->buffer()->changed();
|
view()->buffer()->changed(updateFlags & Update::SinglePar);
|
||||||
}
|
}
|
||||||
lyx_view_->updateStatusBar();
|
lyx_view_->updateStatusBar();
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user