]> git.lyx.org Git - lyx.git/commitdiff
The default modules should be kept in order.
authorRichard Heck <rgheck@comcast.net>
Tue, 7 Oct 2008 15:53:05 +0000 (15:53 +0000)
committerRichard Heck <rgheck@comcast.net>
Tue, 7 Oct 2008 15:53:05 +0000 (15:53 +0000)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@26801 a592a061-630c-0410-9148-cb99ea01b6c8

src/BufferParams.cpp
src/LayoutFile.h
src/TextClass.cpp
src/TextClass.h
src/frontends/qt4/GuiDocument.cpp

index dfeed2c9faa1de81463e9c98213f1cf7b38386e7..438d606067057423ddc1924242ad9b25a91ea19f 100644 (file)
@@ -1483,9 +1483,9 @@ bool BufferParams::setBaseClass(string const & classname)
        pimpl_->baseClass_ = classname;
 
        // add any required modules not already in use
-       set<string> const & mods = baseClass()->defaultModules();
-       set<string>::const_iterator mit = mods.begin();
-       set<string>::const_iterator men = mods.end();
+       list<string> const & mods = baseClass()->defaultModules();
+       list<string>::const_iterator mit = mods.begin();
+       list<string>::const_iterator men = mods.end();
        for (; mit != men; mit++) {
                string const & modName = *mit;
                // see if we're already in use
index 04c4a38228c8296b42bfd25b45dae6b97ccaabd5..8d17a1c35546607bf3eca58f235fd89d92feb825 100644 (file)
@@ -64,7 +64,7 @@ public:
        /// check whether the TeX class is available
        bool isTeXClassAvailable() const { return texClassAvail_; }
        ///
-       std::set<std::string> const & defaultModules() const { return usemod_; }
+       std::list<std::string> const & defaultModules() const { return usemod_; }
 private:
        /// Construct a layout with default values. Actual values loaded later.
        explicit LayoutFile(std::string const & filename,
index 63719188f23d1ada91fc7f323b9e18c2f5992c01..c6e759dcf025d7a254273ff86f282bc47c295806 100644 (file)
@@ -492,7 +492,8 @@ TextClass::ReturnValues TextClass::read(Lexer & lexrc, ReadType rt)
                case TC_USEMODULE: {
                        lexrc.next();
                        string const module = lexrc.getString();
-                       usemod_.insert(module);
+                       if (find(usemod_.begin(), usemod_.end(), module) == usemod_.end())
+                               usemod_.push_back(module);
                        break;
                }
 
index fd2b50bb9f0292d456f5cb4d4118d690b57ae535..b9d88dbf2298f34eeea5bc5986bf23a71c135b0a 100644 (file)
@@ -252,7 +252,7 @@ protected:
        /// latex packages requested by document class.
        std::set<std::string> requires_;
        /// modules wanted by document class
-       std::set<std::string> usemod_;
+       std::list<std::string> usemod_;
        ///
        unsigned int columns_;
        ///
index ed6d550dfa036d60592132886bc970668167b2d1..6a9cdf79e4b59b379b715ed562994d8418cff108 100644 (file)
@@ -1594,9 +1594,9 @@ void GuiDocument::apply(BufferParams & params)
                params.addLayoutModule(modules_sel_model_.getIDString(i));
        // update the list of removed modules
        params.clearRemovedModules();
-       set<string> const & reqmods = params.baseClass()->defaultModules();
-       set<string>::const_iterator rit = reqmods.begin();
-       set<string>::const_iterator ren = reqmods.end();
+       list<string> const & reqmods = params.baseClass()->defaultModules();
+       list<string>::const_iterator rit = reqmods.begin();
+       list<string>::const_iterator ren = reqmods.end();
        // check each of the required modules
        for (; rit != ren; rit++) {
                vector<string>::const_iterator mit = params.getModules().begin();