mirror of
https://git.lyx.org/repos/lyx.git
synced 2024-11-22 10:00:33 +00:00
Please JMarc: Make sure we always pass through LyXFunc::dispatch() even if this is a waste of CPU.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21807 a592a061-630c-0410-9148-cb99ea01b6c8
This commit is contained in:
parent
bfec9543b3
commit
1060f922f0
@ -197,7 +197,8 @@ bool import(LyXView * lv, FileName const & filename,
|
||||
: changeExtension(filename.absFilename(),
|
||||
formats.extension(loader_format));
|
||||
lv->view()->insertPlaintextFile(filename2, as_paragraphs);
|
||||
lv->dispatch(FuncRequest(LFUN_MARK_OFF), true);
|
||||
theLyXFunc().setLyXView(lv);
|
||||
lyx::dispatch(FuncRequest(LFUN_MARK_OFF));
|
||||
}
|
||||
|
||||
// we are done
|
||||
@ -1823,7 +1824,7 @@ void LyXFunc::dispatch(FuncRequest const & cmd)
|
||||
|
||||
// Let the current LyXView dispatch its own actions.
|
||||
BOOST_ASSERT(lyx_view_);
|
||||
if (lyx_view_->dispatch(cmd, false)) {
|
||||
if (lyx_view_->dispatch(cmd)) {
|
||||
if (lyx_view_->view())
|
||||
updateFlags = lyx_view_->view()->cursor().result().update();
|
||||
break;
|
||||
|
@ -78,7 +78,7 @@ public:
|
||||
/// \param propagate: indicate if the dispatch should be probagated to
|
||||
/// the main lyx::dispatch().
|
||||
/// \return true if the \c FuncRequest has been dispatched.
|
||||
virtual bool dispatch(FuncRequest const & cmd, bool propagate) = 0;
|
||||
virtual bool dispatch(FuncRequest const & cmd) = 0;
|
||||
|
||||
///
|
||||
virtual void restartCursor() = 0;
|
||||
|
@ -62,7 +62,8 @@ void Action::update()
|
||||
void Action::action()
|
||||
{
|
||||
//LYXERR(Debug::ACTION, "calling LyXFunc::dispatch: func_: ");
|
||||
lyxView_.dispatch(func_);
|
||||
theLyXFunc().setLyXView(&lyxView_);
|
||||
lyx::dispatch(func_);
|
||||
triggered(this);
|
||||
}
|
||||
|
||||
|
@ -49,7 +49,8 @@ bool Dialog::canApply() const
|
||||
|
||||
void Dialog::dispatch(FuncRequest const & fr) const
|
||||
{
|
||||
lyxview_->dispatch(fr);
|
||||
theLyXFunc().setLyXView(lyxview_);
|
||||
lyx::dispatch(fr);
|
||||
}
|
||||
|
||||
|
||||
|
@ -273,7 +273,8 @@ docstring const GuiCommandBuffer::getCurrentState() const
|
||||
void GuiCommandBuffer::hide() const
|
||||
{
|
||||
FuncRequest cmd(LFUN_COMMAND_EXECUTE, "off");
|
||||
view_->dispatch(cmd);
|
||||
theLyXFunc().setLyXView(view_);
|
||||
lyx::dispatch(cmd);
|
||||
}
|
||||
|
||||
|
||||
@ -325,7 +326,8 @@ void GuiCommandBuffer::dispatch(string const & str)
|
||||
history_pos_ = history_.end();
|
||||
FuncRequest func = lyxaction.lookupFunc(str);
|
||||
func.origin = FuncRequest::COMMANDBUFFER;
|
||||
view_->dispatch(func);
|
||||
theLyXFunc().setLyXView(view_);
|
||||
lyx::dispatch(func);
|
||||
}
|
||||
|
||||
} // namespace frontend
|
||||
|
@ -113,7 +113,7 @@ void GuiToc::goTo(int type, QModelIndex const & index)
|
||||
LYXERR(Debug::GUI, "GuiToc::goTo " << to_utf8(it->str()));
|
||||
|
||||
string const tmp = convert<string>(it->id());
|
||||
lyxview().dispatch(FuncRequest(LFUN_PARAGRAPH_GOTO, tmp));
|
||||
dispatch(FuncRequest(LFUN_PARAGRAPH_GOTO, tmp));
|
||||
}
|
||||
|
||||
|
||||
|
@ -352,7 +352,8 @@ void GuiLayoutBox::selected(const QString & str)
|
||||
if (translateIfPossible(itname) == name) {
|
||||
FuncRequest const func(LFUN_LAYOUT, itname,
|
||||
FuncRequest::TOOLBAR);
|
||||
owner_.dispatch(func);
|
||||
theLyXFunc().setLyXView(&owner_);
|
||||
lyx::dispatch(func);
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
@ -1018,7 +1018,7 @@ FuncStatus GuiView::getStatus(FuncRequest const & cmd)
|
||||
}
|
||||
|
||||
|
||||
bool GuiView::dispatch(FuncRequest const & cmd, bool propagate)
|
||||
bool GuiView::dispatch(FuncRequest const & cmd)
|
||||
{
|
||||
BufferView * bv = view();
|
||||
// By default we won't need any update.
|
||||
@ -1161,18 +1161,9 @@ bool GuiView::dispatch(FuncRequest const & cmd, bool propagate)
|
||||
}
|
||||
|
||||
default:
|
||||
if (propagate) {
|
||||
theLyXFunc().setLyXView(this);
|
||||
lyx::dispatch(cmd);
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
if (bv) {
|
||||
bv->processUpdateFlags(bv->cursor().result().update());
|
||||
// We won't need any new update.
|
||||
bv->cursor().updateFlags(Update::None);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
|
@ -76,7 +76,7 @@ public:
|
||||
void updateToolbars();
|
||||
QMenu * createPopupMenu();
|
||||
FuncStatus getStatus(FuncRequest const & cmd);
|
||||
bool dispatch(FuncRequest const & cmd, bool propagate = true);
|
||||
bool dispatch(FuncRequest const & cmd);
|
||||
|
||||
///
|
||||
void setLayoutDialog(GuiLayoutBox *);
|
||||
|
@ -108,7 +108,8 @@ void InsertTableWidget::mouseReleaseEvent(QMouseEvent * /*event*/)
|
||||
{
|
||||
if (underMouse_) {
|
||||
QString const data = QString("%1 %2").arg(bottom_).arg(right_);
|
||||
lyxView_.dispatch(FuncRequest(LFUN_TABULAR_INSERT, fromqstr(data)));
|
||||
theLyXFunc().setLyXView(&lyxView_);
|
||||
lyx::dispatch(FuncRequest(LFUN_TABULAR_INSERT, fromqstr(data)));
|
||||
}
|
||||
// emit signal
|
||||
visible(false);
|
||||
|
Loading…
Reference in New Issue
Block a user