X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2FBufferParams.h;h=9c558a6f5e2afaa58d15ada0b3fcf79886eaeb45;hb=d1ce71d3983608bd19d207de3744318f4f5ddfe3;hp=98f79a57fbee105397adff1ff5a28a5a57d3d849;hpb=62394258dacddc8d71a52adcecad0d7e8166db66;p=lyx.git diff --git a/src/BufferParams.h b/src/BufferParams.h index 98f79a57fb..9c558a6f5e 100644 --- a/src/BufferParams.h +++ b/src/BufferParams.h @@ -146,13 +146,15 @@ public: { return removed_modules_; } /// /// Add a module to the list of modules in use. This checks only that the - /// module is not already in the list, so use moduleIsCompatible first if - /// you want to check for compatibility. + /// module is not already in the list, so use layoutModuleCanBeAdeed first + /// if you want to check for compatibility. /// \return true if module was successfully added. bool addLayoutModule(std::string const & modName); /// checks to make sure module's requriements are satisfied, that it does /// not conflict with already-present modules, isn't already loaded, etc. - bool moduleCanBeAdded(std::string const & modName) const; + bool layoutModuleCanBeAdded(std::string const & modName) const; + /// same, but for citaton modules. + bool citationModuleCanBeAdded(std::string const & modName) const; /// void addRemovedModule(std::string const & modName) { removed_modules_.push_back(modName); } @@ -160,6 +162,10 @@ public: void clearLayoutModules() { layout_modules_.clear(); } /// Clear the removed module list void clearRemovedModules() { removed_modules_.clear(); } + /// Get the local layouts + std::string getLocalLayout(bool) const; + /// Set the local layouts + void setLocalLayout(std::string const &, bool); /// returns \c true if the buffer contains a LaTeX document bool isLatex() const; @@ -282,10 +288,10 @@ public: IndicesList & indiceslist(); IndicesList const & indiceslist() const; /** - * The input encoding for LaTeX. This can be one of + * The LyX name of the input encoding for LaTeX. This can be one of * - \c auto: find out the input encoding from the used languages * - \c default: ditto - * - any encoding supported by the inputenc package + * - any encoding defined in the file lib/encodings * The encoding of the LyX file is always utf8 and has nothing to * do with this setting. * The difference between \c auto and \c default is that \c auto also @@ -303,8 +309,6 @@ public: /// std::string preamble; /// - std::string local_layout; - /// std::string options; /// use the class options defined in the layout? bool use_default_options; @@ -359,7 +363,7 @@ public: /// Set whether to load a package such as amsmath or esint. void use_package(std::string const & p, Package u); /// All packages that can be switched on or off - static std::vector const & auto_packages(); + static std::map const & auto_packages(); /// Split bibliography? bool use_bibtopic; /// Split the index? @@ -481,7 +485,7 @@ private: /// void readPreamble(Lexer &); /// - void readLocalLayout(Lexer &); + void readLocalLayout(Lexer &, bool); /// void readLanguage(Lexer &); /// @@ -511,13 +515,17 @@ private: /// this is for modules that are required by the document class but that /// the user has chosen not to use std::list removed_modules_; + /// The local layouts without the forced ones + std::string local_layout_; + /// Forced local layouts only for reading (use getLocalLayout() instead) + std::string forced_local_layout_; /// the list of included children (for includeonly) std::list included_children_; typedef std::map PackageMap; /** Whether and how to load packages like amsmath, esint, mhchem, - * mathdots and undertilde. + * mathdots, stackrel, stmaryrd and undertilde. */ PackageMap use_packages;