X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Finsets%2FInsetLayout.h;h=0d6ad2ae4fd670a16a70029ac699b6038ad49834;hb=4a1be58591ea5a7431d9426abb27d8b946c634cb;hp=37ccb9d28f197c060178fcad4607db317fbc12c7;hpb=11bea5a763d695f9f537ae878fadd6aa4dd1d193;p=lyx.git diff --git a/src/insets/InsetLayout.h b/src/insets/InsetLayout.h index 37ccb9d28f..0d6ad2ae4f 100644 --- a/src/insets/InsetLayout.h +++ b/src/insets/InsetLayout.h @@ -4,6 +4,9 @@ * This file is part of LyX, the document processor. * Licence details can be found in the file COPYING. * + * \author Martin Vermeer + * \author Richard Heck + * * Full author contact details are available in file CREDITS. */ @@ -20,27 +23,99 @@ namespace lyx { +class Lexer; + /// class InsetLayout { public: - std::string name; - std::string lyxtype; - docstring labelstring; - std::string decoration; - std::string latextype; - std::string latexname; - std::string latexparam; - FontInfo font; - FontInfo labelfont; - ColorCode bgcolor; - std::string preamble; - std::set requires; - bool multipar; - bool passthru; - bool needprotect; - bool freespacing; - bool keepempty; - bool forceltr; + /// + InsetLayout(); + /// + enum InsetDecoration { + Classic, + Minimalistic, + Conglomerate, + Default + }; + /// + bool read(Lexer & lexrc); + /// + docstring name() const { return name_; }; + /// + std::string lyxtype() const { return lyxtype_; }; + /// + docstring labelstring() const { return labelstring_; }; + /// + InsetDecoration decoration() const { return decoration_; }; + /// + std::string latextype() const { return latextype_; }; + /// + std::string latexname() const { return latexname_; }; + /// + std::string latexparam() const { return latexparam_; }; + /// + FontInfo font() const { return font_; }; + /// + FontInfo labelfont() const { return labelfont_; }; + /// + ColorCode bgcolor() const { return bgcolor_; }; + /// + std::string preamble() const { return preamble_; }; + /// + std::set requires() const { return requires_; }; + /// + bool isMultiPar() const { return multipar_; }; + /// + bool isPassThru() const { return passthru_; }; + /// + bool isNeedProtect() const { return needprotect_; }; + /// + bool isFreeSpacing() const { return freespacing_; }; + /// + bool isKeepEmpty() const { return keepempty_; }; + /// + bool isForceLtr() const { return forceltr_; }; +private: + /// + docstring name_; + /** + * 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), 'element' (docbook), 'standard'. + */ + std::string lyxtype_; + /// + docstring labelstring_; + /// + InsetDecoration decoration_; + /// + std::string latextype_; + /// + std::string latexname_; + /// + std::string latexparam_; + /// + FontInfo font_; + /// + FontInfo labelfont_; + /// + ColorCode bgcolor_; + /// + std::string preamble_; + /// + std::set requires_; + /// + bool multipar_; + /// + bool passthru_; + /// + bool needprotect_; + /// + bool freespacing_; + /// + bool keepempty_; + /// + bool forceltr_; }; } // namespace lyx