///
typedef std::map<std::string, latexarg> LaTeXArgMap;
///
- LaTeXArgMap args() const;
- ///
LaTeXArgMap const & latexargs() const { return latexargs_; }
///
LaTeXArgMap const & postcommandargs() const { return postcommandargs_; }
///
LaTeXArgMap const & itemargs() const { return itemargs_; }
+ /// Returns latexargs() + postcommandargs() + itemargs().
+ /// But note that it returns a *copy*, not a reference, so do not do
+ /// anything like:
+ /// Layout::LaTeXArgMap::iterator it = args().begin();
+ /// Layout::LaTeXArgMap::iterator en = args().end();
+ /// Those are iterators for different containers.
+ LaTeXArgMap args() const;
///
int optArgs() const;
///
/// Is this spellchecked?
bool spellcheck;
+ /**
+ * Should this layout definition always be written to the document preamble?
+ * Possible values are:
+ * 0: Do not enforce local layout
+ * >=1: Enforce local layout with version forcelocal
+ * -1: Enforce local layout with infinite version
+ * On reading, the forced local layout is only used if its version
+ * number is greater than the version number of the same layout in the
+ * document class. Otherwise, it is ignored.
+ */
+ int forcelocal;
private:
+ /// Reads a layout definition from file
+ /// \return true on success.
+ bool readIgnoreForcelocal(Lexer &, TextClass const &);
/// generates the default CSS for this layout
void makeDefaultCSS() const;
///