}
+Layout::LaTeXArgMap Layout::args() const
+{
+ LaTeXArgMap args = latexargs_;
+ if (!itemargs_.empty())
+ args.insert(itemargs_.begin(), itemargs_.end());
+ return args;
+}
+
+
int Layout::optArgs() const
{
int nr = 0;
///
typedef std::map<std::string, latexarg> LaTeXArgMap;
///
+ LaTeXArgMap args() const;
+ ///
LaTeXArgMap const & latexargs() const { return latexargs_; }
///
LaTeXArgMap const & itemargs() const { return itemargs_; }
if (change_layout)
setLayout(cur, layout);
- Layout::LaTeXArgMap args = tclass[layout].latexargs();
- Layout::LaTeXArgMap itemargs = tclass[layout].itemargs();
- if (!itemargs.empty())
- args.insert(itemargs.begin(), itemargs.end());
+ Layout::LaTeXArgMap args = tclass[layout].args();
Layout::LaTeXArgMap::const_iterator lait = args.begin();
Layout::LaTeXArgMap::const_iterator const laend = args.end();
for (; lait != laend; ++lait) {
break;
}
Layout const & lay = cur.paragraph().layout();
- Layout::LaTeXArgMap args = lay.latexargs();
- Layout::LaTeXArgMap itemargs = lay.itemargs();
- if (!itemargs.empty())
- args.insert(itemargs.begin(), itemargs.end());
+ Layout::LaTeXArgMap args = lay.args();
Layout::LaTeXArgMap::const_iterator const lait =
args.find(arg);
if (lait != args.end()) {
return;
Inset const * inset = &bv->cursor().inset();
- Layout::LaTeXArgMap args;
- if (inset && bv->cursor().paragraph().layout().latexargs().empty()
- && bv->cursor().paragraph().layout().itemargs().empty())
+ Layout::LaTeXArgMap args = bv->cursor().paragraph().layout().args();
+ if (inset && args.empty())
args = inset->getLayout().latexargs();
- else {
- args = bv->cursor().paragraph().layout().latexargs();
- Layout::LaTeXArgMap itemargs = bv->cursor().paragraph().layout().itemargs();
- if (!itemargs.empty())
- args.insert(itemargs.begin(), itemargs.end());
- }
if (args.empty() || (switcharg && args.size() == 1))
return;
Layout::LaTeXArgMap::const_iterator lait = args.begin();
void InsetArgument::updateBuffer(ParIterator const & it, UpdateType utype)
{
- Layout::LaTeXArgMap args;
- bool const insetlayout = &it.inset() && it.paragraph().layout().latexargs().empty()
- && it.paragraph().layout().itemargs().empty();
+ Layout::LaTeXArgMap args = it.paragraph().layout().args();
+ pass_thru_ = it.paragraph().layout().pass_thru;
+ bool const insetlayout = &it.inset() && args.empty();
if (insetlayout) {
args = it.inset().getLayout().latexargs();
pass_thru_ = it.inset().getLayout().isPassThru();
- } else {
- args = it.paragraph().layout().latexargs();
- Layout::LaTeXArgMap itemargs = it.paragraph().layout().itemargs();
- if (!itemargs.empty())
- args.insert(itemargs.begin(), itemargs.end());
- pass_thru_ = it.paragraph().layout().pass_thru;
}
// Handle pre 2.1 ArgInsets (lyx2lyx cannot classify them)
status.setEnabled(false);
return true;
}
- if (&buffer().inset() == this || !cur.paragraph().layout().latexargs().empty()
- || !cur.paragraph().layout().itemargs().empty())
+ if (&buffer().inset() == this || !cur.paragraph().layout().args().empty())
return text_.getStatus(cur, cmd, status);
Layout::LaTeXArgMap args = getLayout().latexargs();