]> git.lyx.org Git - lyx.git/blobdiff - src/Layout.h
Remove black box around GuiWorkarea? which is visible with Qt4.5.
[lyx.git] / src / Layout.h
index ea10b58fe8887939663041ff8d766a32b3a6c09e..d251d292c2ec6e7f51e3093cfa488bda955fdfea 100644 (file)
@@ -4,9 +4,9 @@
  * This file is part of LyX, the document processor.
  * Licence details can be found in the file COPYING.
  *
- * \author Lars Gullik Bjønnes
+ * \author Lars Gullik Bjønnes
  * \author Jean-Marc Lasgouttes
- * \author André Pönitz
+ * \author André Pönitz
  *
  * Full author contact details are available in file CREDITS.
  */
@@ -24,6 +24,7 @@
 
 namespace lyx {
 
+class Language;
 class Lexer;
 class TextClass;
 
@@ -51,6 +52,9 @@ class Layout {
 public:
        ///
        Layout();
+       /// is this layout a default layout created for an unknown layout
+       bool isUnknown() const { return unknown_; }
+       void setUnknown(bool unknown) { unknown_ = unknown; }
        /// Reads a layout definition from file
        /// \return true on success.
        bool read(Lexer &, TextClass const &);
@@ -86,6 +90,12 @@ public:
        docstring const & category() const { return category_; }
        ///
        docstring const & preamble() const { return preamble_; }
+       /// Get language dependent macro definitions needed for this layout
+       /// for language \p lang
+       docstring const langpreamble(Language const * lang) const;
+       /// Get language and babel dependent macro definitions needed for
+       /// this layout for language \p lang
+       docstring const babelpreamble(Language const * lang) const;
        ///
        std::set<std::string> const & requires() const { return requires_; }
        ///
@@ -121,6 +131,11 @@ public:
        ////////////////////////////////////////////////////////////////
        // members
        ////////////////////////////////////////////////////////////////
+       /** Is this layout the default layout for an unknown layout? If
+        * so, its name will be displayed as xxx (unknown).
+        */
+       bool unknown_;
+
        /** Default font for this layout/environment.
            The main font for this kind of environment. If an attribute has
            INHERITED_*, it means that the value is specified by
@@ -194,24 +209,10 @@ public:
        bool free_spacing;
        ///
        bool pass_thru;
-       /**
-        * Whether this layout was declared with "Environment xxx" as opposed
-        * to "Style xxx". This is part of some unfinished generic environment
-        * handling (see also InsetEnvironment) started by Andre. No layout
-        * that is shipped with LyX has this flag set.
-        * Don't confuse this with isEnvironment()!
-        */
-       bool is_environment;
        /// show this in toc
        int toclevel;
        /// special value of toclevel for non-section layouts
        static const int NOT_IN_TOC;
-       /// for new environment insets
-       std::string latexheader;
-       /// for new environment insets
-       std::string latexfooter;
-       /// for new environment insets
-       std::string latexparagraph;
 
        /** true when the fragile commands in the paragraph need to be
            \protect'ed. */
@@ -272,6 +273,10 @@ private:
        docstring category_;
        /// Macro definitions needed for this layout
        docstring preamble_;
+       /// Language dependent macro definitions needed for this layout
+       docstring langpreamble_;
+       /// Language and babel dependent macro definitions needed for this layout
+       docstring babelpreamble_;
        /// Packages needed for this layout
        std::set<std::string> requires_;
 };