- void startLoading(InsetGraphics const &);
-
- /** If (changed_background == true), then the background color of the
- * graphics inset has changed. Update all images.
- * Else, the preferred display type has changed.
- * Update the view of all insets whose display type is DEFAULT.
+ std::vector<std::string> const & loadableFormats() const;
+
+ /// Add a graphics file to the cache.
+ void add(support::FileName const & file, support::FileName const & doc_file) const;
+
+ /// Remove a file from the cache.
+ void remove(support::FileName const & file) const;
+
+ /// Returns \c true if the file is in the cache.
+ bool inCache(support::FileName const & file) const;
+
+ /** Get the cache item associated with file.
+ * Returns an empty container if there is no such item.
+ *
+ * IMPORTANT: whatever uses an image must make a local copy of this
+ * ItemPtr. The shared_ptr<>::use_count() function is
+ * used to ascertain whether or not to remove the item from the cache
+ * when remove(file) is called.
+ *
+ * You have been warned!