4 * This file is part of LyX, the document processor.
5 * Licence details can be found in the file COPYING.
7 * \author Angus Leeming
8 * \author Martin Vermeer
10 * Full author contact details are available in file CREDITS.
16 #include "InsetCollapsable.h"
20 /** The Flex inset, e.g., CharStyle, Custom inset or XML short element
23 class InsetFlex : public InsetCollapsable {
26 InsetFlex(Buffer const &, std::string const & layoutName);
28 docstring name() const { return from_utf8(name_); }
31 docstring editMessage() const;
33 InsetCode lyxCode() const { return FLEX_CODE; }
35 void write(std::ostream &) const;
37 void read(Lexer & lex);
39 virtual bool allowParagraphCustomization(idx_type = 0) const { return false; }
42 int plaintext(odocstream &, OutputParams const &) const;
44 int docbook(odocstream &, OutputParams const &) const;
45 /// the string that is passed to the TOC
46 void textString(odocstream &) const;
48 void validate(LaTeXFeatures &) const;
50 /// should paragraph indendation be ommitted in any case?
51 bool neverIndent() const { return true; }
54 InsetFlex(InsetFlex const &);
57 Inset * clone() const { return new InsetFlex(*this); }
62 std::set<std::string> packages_;
64 std::string preamble_;