mirror of
https://git.lyx.org/repos/lyx.git
synced 2024-11-22 18:08:10 +00:00
Add layout-reload LFUN. This is useful for people creating and editing layouts.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20215 a592a061-630c-0410-9148-cb99ea01b6c8
This commit is contained in:
parent
6ce171eec8
commit
63a190ef49
@ -374,6 +374,7 @@ void LyXAction::init()
|
|||||||
{ LFUN_LISTING_INSERT, "listing-insert", Noop },
|
{ LFUN_LISTING_INSERT, "listing-insert", Noop },
|
||||||
{ LFUN_LAYOUT_MODULES_CLEAR, "layout-modules-clear", Noop },
|
{ LFUN_LAYOUT_MODULES_CLEAR, "layout-modules-clear", Noop },
|
||||||
{ LFUN_LAYOUT_MODULE_ADD, "layout-module-add", Noop },
|
{ LFUN_LAYOUT_MODULE_ADD, "layout-module-add", Noop },
|
||||||
|
{ LFUN_LAYOUT_RELOAD, "layout-reload", Noop },
|
||||||
|
|
||||||
{ LFUN_NOACTION, "", Noop }
|
{ LFUN_NOACTION, "", Noop }
|
||||||
};
|
};
|
||||||
|
@ -731,6 +731,7 @@ FuncStatus LyXFunc::getStatus(FuncRequest const & cmd) const
|
|||||||
case LFUN_BUFFER_PARAMS_APPLY:
|
case LFUN_BUFFER_PARAMS_APPLY:
|
||||||
case LFUN_LAYOUT_MODULES_CLEAR:
|
case LFUN_LAYOUT_MODULES_CLEAR:
|
||||||
case LFUN_LAYOUT_MODULE_ADD:
|
case LFUN_LAYOUT_MODULE_ADD:
|
||||||
|
case LFUN_LAYOUT_RELOAD:
|
||||||
case LFUN_LYXRC_APPLY:
|
case LFUN_LYXRC_APPLY:
|
||||||
case LFUN_BUFFER_NEXT:
|
case LFUN_BUFFER_NEXT:
|
||||||
case LFUN_BUFFER_PREVIOUS:
|
case LFUN_BUFFER_PREVIOUS:
|
||||||
@ -1836,6 +1837,18 @@ void LyXFunc::dispatch(FuncRequest const & cmd)
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
case LFUN_LAYOUT_RELOAD: {
|
||||||
|
BOOST_ASSERT(lyx_view_);
|
||||||
|
Buffer * buffer = lyx_view_->buffer();
|
||||||
|
TextClass_ptr oldClass = buffer->params().getTextClass_ptr();
|
||||||
|
textclass_type const tc = buffer->params().getBaseClass();
|
||||||
|
textclasslist.reset(tc);
|
||||||
|
buffer->params().setBaseClass(tc);
|
||||||
|
updateLayout(oldClass, buffer);
|
||||||
|
updateFlags = Update::Force | Update::FitCursor;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
case LFUN_TEXTCLASS_LOAD:
|
case LFUN_TEXTCLASS_LOAD:
|
||||||
loadTextclass(argument);
|
loadTextclass(argument);
|
||||||
break;
|
break;
|
||||||
|
@ -66,11 +66,12 @@ TextClassList::numberOfClass(string const & textclass) const
|
|||||||
TextClass const &
|
TextClass const &
|
||||||
TextClassList::operator[](textclass_type textclass) const
|
TextClassList::operator[](textclass_type textclass) const
|
||||||
{
|
{
|
||||||
classlist_[textclass].load();
|
if (textclass >= classlist_.size())
|
||||||
if (textclass < classlist_.size())
|
|
||||||
return classlist_[textclass];
|
|
||||||
else
|
|
||||||
return classlist_[0];
|
return classlist_[0];
|
||||||
|
|
||||||
|
//FIXME I don't believe the following line is actually necessary (rgh)
|
||||||
|
classlist_[textclass].load();
|
||||||
|
return classlist_[textclass];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -175,6 +176,16 @@ bool TextClassList::read()
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void TextClassList::reset(textclass_type const textclass) {
|
||||||
|
if (textclass >= classlist_.size())
|
||||||
|
return;
|
||||||
|
TextClass const & tc = classlist_[textclass];
|
||||||
|
TextClass tmpl(tc.name(), tc.latexname(), tc.description(),
|
||||||
|
tc.isTeXClassAvailable());
|
||||||
|
classlist_[textclass] = tmpl;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
std::pair<bool, textclass_type> const
|
std::pair<bool, textclass_type> const
|
||||||
TextClassList::addTextClass(std::string const & textclass, std::string const & path)
|
TextClassList::addTextClass(std::string const & textclass, std::string const & path)
|
||||||
{
|
{
|
||||||
|
@ -51,6 +51,9 @@ public:
|
|||||||
/// Read textclass list. Returns false if this fails.
|
/// Read textclass list. Returns false if this fails.
|
||||||
bool read();
|
bool read();
|
||||||
|
|
||||||
|
/// Clears the textclass so as to force it to be reloaded
|
||||||
|
void reset(textclass_type const textclass);
|
||||||
|
|
||||||
/// add a textclass from user local directory.
|
/// add a textclass from user local directory.
|
||||||
/// Return ture/false, and textclass number
|
/// Return ture/false, and textclass number
|
||||||
std::pair<bool, textclass_type> const
|
std::pair<bool, textclass_type> const
|
||||||
|
@ -402,6 +402,7 @@ enum kb_action {
|
|||||||
LFUN_PARAGRAPH_PARAMS, // rgh, 200708XX
|
LFUN_PARAGRAPH_PARAMS, // rgh, 200708XX
|
||||||
LFUN_LAYOUT_MODULES_CLEAR, // rgh, 20070825
|
LFUN_LAYOUT_MODULES_CLEAR, // rgh, 20070825
|
||||||
LFUN_LAYOUT_MODULE_ADD, // rgh, 20070825
|
LFUN_LAYOUT_MODULE_ADD, // rgh, 20070825
|
||||||
|
LFUN_LAYOUT_RELOAD, // rgh, 20070903
|
||||||
|
|
||||||
LFUN_LASTACTION // end of the table
|
LFUN_LASTACTION // end of the table
|
||||||
};
|
};
|
||||||
|
Loading…
Reference in New Issue
Block a user