* Licence details can be found in the file COPYING.
*
* \author Martin Vermeer
- * \author Richard Heck
+ * \author Richard Kimberly Heck
*
* Full author contact details are available in file CREDITS.
*/
class Lexer;
class TextClass;
+
+enum class InsetDecoration : int {
+ CLASSIC,
+ MINIMALISTIC,
+ CONGLOMERATE,
+ DEFAULT
+};
+
+enum class InsetLyXType : int {
+ NOLYXTYPE,
+ CHARSTYLE,
+ CUSTOM,
+ END,
+ STANDARD
+};
+
+enum class InsetLaTeXType : int {
+ NOLATEXTYPE,
+ COMMAND,
+ ENVIRONMENT,
+ ILT_ERROR
+};
+
+
///
class InsetLayout {
public:
///
- InsetLayout();
- ///
- enum InsetDecoration {
- CLASSIC,
- MINIMALISTIC,
- CONGLOMERATE,
- DEFAULT
- };
- ///
- enum InsetLyXType {
- NOLYXTYPE,
- CHARSTYLE,
- CUSTOM,
- END,
- STANDARD
- };
- ///
- enum InsetLaTeXType {
- NOLATEXTYPE,
- COMMAND,
- ENVIRONMENT,
- ILT_ERROR
- };
+ InsetLayout() { labelfont_.setColor(Color_error); }
///
bool read(Lexer & lexrc, TextClass const & tclass,
bool validating = false);
/// Those are iterators for different containers.
Layout::LaTeXArgMap args() const;
///
- unsigned int optArgs() const;
+ int optArgs() const;
///
- unsigned int requiredArgs() const;
+ int requiredArgs() const;
///
docstring preamble() const { return preamble_; }
/// Get language dependent macro definitions needed for this inset
///
std::string docbooktag() const { return docbooktag_; }
///
- std::string docbooktagtype() const { return docbooktagtype_; }
+ std::string docbooktagtype() const;
///
std::string docbookattr() const { return docbookattr_; }
///
+ std::string docbookinnertag() const { return docbookinnertag_; }
+ ///
+ std::string docbookinnertagtype() const;
+ ///
+ std::string docbookinnerattr() const { return docbookinnerattr_; }
+ ///
+ std::string const & docbookininfo() const;
+ ///
+ bool docbooksection() const { return docbooksection_; }
+ ///
+ bool docbooknotinpara() const { return docbooknotinpara_; }
+ ///
+ bool docbookargumentbeforemaintag() const { return docbookargumentbeforemaintag_; }
+ ///
+ bool docbookargumentaftermaintag() const { return docbookargumentaftermaintag_; }
+ ///
std::string docbookwrappertag() const { return docbookwrappertag_; }
///
- std::string docbookwrappertagtype() const { return docbookwrappertagtype_; }
+ std::string docbookwrappertagtype() const;
///
std::string docbookwrapperattr() const { return docbookwrapperattr_; }
///
+ std::string docbookitemwrappertag() const { return docbookitemwrappertag_; }
+ ///
+ std::string docbookitemwrappertagtype() const;
+ ///
+ std::string docbookitemwrapperattr() const { return docbookitemwrapperattr_; }
+ ///
+ std::string docbookitemtag() const { return docbookitemtag_; }
+ ///
+ std::string docbookitemtagtype() const;
+ ///
+ std::string docbookitemattr() const { return docbookitemattr_; }
+ ///
+ bool docbooknofontinside() const { return docbooknofontinside_; }
+ ///
+ bool docbookrenderasimage() const { return docbookrenderasimage_; }
+ ///
std::set<std::string> required() const { return required_; }
///
bool isMultiPar() const { return multipar_; }
///
bool isDisplay() const { return display_; }
///
- bool forcelocalfontswitch() const { return forcelocalfontswitch_; }
+ bool forceLocalFontSwitch() const { return forcelocalfontswitch_; }
///
docstring const & obsoleted_by() const { return obsoleted_by_; }
///
///
void readArgument(Lexer &);
///
- docstring name_;
+ docstring name_ = from_ascii("undefined");
/**
* This is only used (at present) to decide where to put them on the menus.
* Values are 'charstyle', 'custom' (things that by default look like a
* footnote), 'standard'.
*/
- InsetLyXType lyxtype_;
+ InsetLyXType lyxtype_ = InsetLyXType::STANDARD;
///
- docstring labelstring_;
+ docstring labelstring_ = from_ascii("UNDEFINED");
///
docstring menustring_;
///
- bool contentaslabel_;
+ bool contentaslabel_ = false;
///
- InsetDecoration decoration_;
+ InsetDecoration decoration_ = InsetDecoration::DEFAULT;
///
- InsetLaTeXType latextype_;
+ InsetLaTeXType latextype_ = InsetLaTeXType::NOLATEXTYPE;
///
std::string latexname_;
///
///
docstring rightdelim_;
///
- FontInfo font_;
+ FontInfo font_ = inherit_font;
///
- FontInfo labelfont_;
+ FontInfo labelfont_ = sane_font;
///
- ColorCode bgcolor_;
+ ColorCode bgcolor_ = Color_error;
///
docstring counter_;
///
/// Language and babel dependent macro definitions needed for this inset
docstring babelpreamble_;
///
- bool fixedwidthpreambleencoding_;
+ bool fixedwidthpreambleencoding_ = false;
///
docstring refprefix_;
///
mutable std::string defaultcssclass_;
/// Whether to force generation of default CSS even if some is given.
/// False by default.
- bool htmlforcecss_;
+ bool htmlforcecss_ = false;
///
docstring htmlpreamble_;
///
- bool htmlisblock_;
+ bool htmlisblock_ = true;
///
std::string docbooktag_;
///
- std::string docbooktagtype_;
+ mutable std::string docbooktagtype_;
///
std::string docbookattr_;
///
+ std::string docbookinnertag_;
+ ///
+ mutable std::string docbookinnertagtype_;
+ ///
+ std::string docbookinnerattr_;
+ ///
+ mutable std::string docbookininfo_;
+ ///
+ bool docbooknotinpara_ = false;
+ ///
+ bool docbookargumentbeforemaintag_ = false;
+ ///
+ bool docbookargumentaftermaintag_ = false;
+ ///
+ bool docbooksection_ = false;
+ ///
std::string docbookwrappertag_;
///
- std::string docbookwrappertagtype_;
+ mutable std::string docbookwrappertagtype_;
///
std::string docbookwrapperattr_;
///
+ std::string docbookitemtag_;
+ ///
+ mutable std::string docbookitemtagtype_;
+ ///
+ std::string docbookitemattr_;
+ ///
+ std::string docbookitemwrappertag_;
+ ///
+ mutable std::string docbookitemwrappertagtype_;
+ ///
+ std::string docbookitemwrapperattr_;
+ ///
+ bool docbooknofontinside_ = false;
+ ///
+ bool docbookrenderasimage_ = false;
+ ///
std::set<std::string> required_;
///
- bool multipar_;
+ bool multipar_ = true;
///
- bool custompars_;
+ bool custompars_ = true;
///
- bool forceplain_;
+ bool forceplain_ = false;
///
- bool passthru_;
+ bool passthru_ = false;
///
docstring passthru_chars_;
///
std::string newline_cmd_;
///
- bool parbreakisnewline_;
+ bool parbreakisnewline_ = false;
///
- bool parbreakignored_;
+ bool parbreakignored_ = false;
///
- bool freespacing_;
+ bool freespacing_ = false;
///
- bool keepempty_;
+ bool keepempty_ = false;
///
- bool forceltr_;
+ bool forceltr_ = false;
///
- bool forceownlines_;
+ bool forceownlines_ = false;
///
- bool needprotect_;
+ bool needprotect_ = false;
///
- bool needcprotect_;
+ bool needcprotect_ = false;
///
- bool needmboxprotect_;
+ bool needmboxprotect_ = false;
/// should the contents be written to TOC strings?
- bool intoc_;
+ bool intoc_ = false;
/// check spelling of this inset?
- bool spellcheck_;
+ bool spellcheck_ = true;
///
- bool resetsfont_;
+ bool resetsfont_ = false;
///
- bool display_;
+ bool display_ = true;
///
- bool forcelocalfontswitch_;
+ bool forcelocalfontswitch_ = false;
/** Name of an insetlayout that has replaced this insetlayout.
This is used to rename an insetlayout, while keeping backward
compatibility
///
Layout::LaTeXArgMap postcommandargs_;
///
- bool add_to_toc_;
+ bool add_to_toc_ = false;
///
std::string toc_type_;
///
- bool is_toc_caption_;
+ bool is_toc_caption_ = false;
///
- bool edit_external_;
+ bool edit_external_ = false;
};
///
-InsetLayout::InsetLyXType translateLyXType(std::string const & str);
-InsetLayout::InsetDecoration translateDecoration(std::string const & str);
+InsetLyXType translateLyXType(std::string const & str);
+InsetDecoration translateDecoration(std::string const & str);
} // namespace lyx