]> git.lyx.org Git - lyx.git/blobdiff - src/TextClassList.h
Embedding: saving inzip name to .lyx file so that embedded files can always be found...
[lyx.git] / src / TextClassList.h
index 6f8f963fc530e752c742407d8725083afc47a21e..8c1b3744d6e93c8500d78997818eaf9c668aecd6 100644 (file)
@@ -9,16 +9,14 @@
  * Full author contact details are available in file CREDITS.
  */
 
-#ifndef LYXTEXTCLASSLIST_H
-#define LYXTEXTCLASSLIST_H
+#ifndef TEXTCLASSLIST_H
+#define TEXTCLASSLIST_H
 
 #include "TextClass.h"
 
+#include "support/strfwd.h"
 #include "support/types.h"
 
-#include <boost/utility.hpp>
-
-#include <string>
 #include <vector>
 
 
@@ -30,8 +28,10 @@ class Layout;
 extern bool LyXSetStyle();
 
 ///
-class TextClassList : boost::noncopyable {
+class TextClassList {
 public:
+       ///
+       TextClassList() {}
        ///
        typedef std::vector<TextClass> ClassList;
        ///
@@ -40,6 +40,8 @@ public:
        const_iterator begin() const { return classlist_.begin(); }
        ///
        const_iterator end() const { return classlist_.end(); }
+       ///
+       bool empty() const { return classlist_.empty(); }
 
        /// Gets textclass number from name, -1 if textclass name does not exist
        std::pair<bool, textclass_type> const
@@ -50,6 +52,9 @@ public:
 
        /// Read textclass list.  Returns false if this fails.
        bool read();
+       
+       /// Clears the textclass so as to force it to be reloaded
+       void reset(textclass_type const textclass);
 
        /// add a textclass from user local directory.
        /// Return ture/false, and textclass number
@@ -57,12 +62,18 @@ public:
        addTextClass(std::string const & textclass, std::string const & path);
 
 private:
+       /// noncopyable
+       TextClassList(TextClassList const &);
+       void operator=(TextClassList const &);
+
        ///
        mutable ClassList classlist_;
 };
 
 ///
 extern TextClassList textclasslist;
+///
+textclass_type defaultTextclass();
 
 
 } // namespace lyx