]> git.lyx.org Git - lyx.git/blobdiff - src/graphics/GraphicsCache.h
Add context menu for outline operations. Choice of words might not be best.
[lyx.git] / src / graphics / GraphicsCache.h
index dbd3d6286d2a909545881ae7cdc2b5e830670136..a422623933912edaefce642221a39b47a5a4f2d3 100644 (file)
 #ifndef GRAPHICSCACHE_H
 #define GRAPHICSCACHE_H
 
-#include <boost/utility.hpp>
-#include <boost/scoped_ptr.hpp>
 #include <boost/shared_ptr.hpp>
 
 #include <vector>
+#include <string>
 
 
 namespace lyx {
+
+namespace support { class FileName; }
+
 namespace graphics {
 
 class CacheItem;
 
-class Cache : boost::noncopyable {
+class Cache {
 public:
 
        /// This is a singleton class. Get the instance.
@@ -45,13 +47,13 @@ public:
        std::vector<std::string> loadableFormats() const;
 
        /// Add a graphics file to the cache.
-       void add(std::string const & file) const;
+       void add(support::FileName const & file) const;
 
        /// Remove a file from the cache.
-       void remove(std::string const & file) const;
+       void remove(support::FileName const & file) const;
 
        /// Returns \c true if the file is in the cache.
-       bool inCache(std::string const & file) const;
+       bool inCache(support::FileName const & file) const;
 
        /** Get the cache item associated with file.
         *  Returns an empty container if there is no such item.
@@ -65,9 +67,13 @@ public:
         */
        typedef boost::shared_ptr<CacheItem> ItemPtr;
        ///
-       ItemPtr const item(std::string const & file) const;
+       ItemPtr const item(support::FileName const & file) const;
 
 private:
+       /// noncopyable
+       Cache(Cache const &);
+       void operator=(Cache const &);
+
        /** Make the c-tor, d-tor private so we can control how many objects
         *  are instantiated.
         */
@@ -78,7 +84,7 @@ private:
        /// Use the Pimpl idiom to hide the internals.
        class Impl;
        /// The pointer never changes although *pimpl_'s contents may.
-       boost::scoped_ptr<Impl> const pimpl_;
+       Impl * const pimpl_;
 };
 
 } // namespace graphics