]> git.lyx.org Git - lyx.git/blobdiff - src/lyxvc.h
Fix encoding of converters path and arguments
[lyx.git] / src / lyxvc.h
index 706a5639f1a713fe7f0b9f1fa8c9ac3697fd9f0b..6ce52cbb23dd7d8c04b0041f5c74d6c703c23d3f 100644 (file)
@@ -1,14 +1,25 @@
 // -*- C++ -*-
+/**
+ * \file lyxvc.h
+ * This file is part of LyX, the document processor.
+ * Licence details can be found in the file COPYING.
+ *
+ * \author Lars Gullik Bjønnes
+ *
+ * Full author contact details are available in file CREDITS.
+ */
 
 #ifndef LYX_VC_H
 #define LYX_VC_H
 
-#ifdef __GNUG__
-#pragma interface
-#endif
+#include <boost/scoped_ptr.hpp>
+
+#include <string>
+
+
+namespace lyx {
 
-#include "LString.h"
-#include "log_form.h"
+namespace support { class FileName; }
 
 class VCS;
 class Buffer;
@@ -20,7 +31,7 @@ class Buffer;
     The support in LyX is based loosely upon the version control in GNU Emacs,
     but is not as extensive as that one. See examples/VC.lyx for a simple
     tutorial and manual for the use of the version control system in LyX.
-    
+
     LyXVC use this algorithm when it searches for VC files:
     for RCS it searches for <filename>,v and RCS/<filename>,v similar
     should be done for CVS. By doing this there doesn't need to be any
@@ -40,8 +51,8 @@ public:
          the appropiate actions is taken. Returns true if the file is under
          control by a VCS.
          */
-       bool file_found_hook(string const & fn);
-       
+       bool file_found_hook(support::FileName const & fn);
+
        /** This function should be run when a file is requested for loading,
          but it does not exist. This function will then check for a VC master
          file with the same name (see above function). If this exists the
@@ -49,7 +60,7 @@ public:
          viewing/editing. Returns true if the file is under control by a VCS
          and the user wants to view/edit it.
          */
-       static bool file_not_found_hook(string const & fn);
+       static bool file_not_found_hook(support::FileName const & fn);
 
        ///
        void buffer(Buffer *);
@@ -69,39 +80,36 @@ public:
        /// Undo last check-in.
        void undoLast();
 
-       ///
-       void viewLog(string const &);
+       /**
+        * Generate a log file and return the filename.
+        * It is the caller's responsibility to unlink the
+        * file after use.
+        */
+       const std::string getLogFile() const;
 
        ///
-       void showLog();
-
-       /// 
        void toggleReadOnly();
-       
+
        /// Is the document under administration by RCS?
        bool inUse();
 
        /// Returns the version number.
-       string const & version() const;
+       //std::string const & version() const;
+       /// Returns the version number.
+       std::string const versionString() const;
 
        /// Returns the userid of the person who has locked the doc.
-       string const & locker() const;
+       std::string const & locker() const;
 
-       ///
-       static void logClose(FL_OBJECT *, long);
-       ///
-       static void logUpdate(FL_OBJECT *, long);
-protected:
 private:
        ///
        Buffer * owner_;
-       
-       ///
-       VCS * vcs;
 
        ///
-       FD_LaTeXLog * browser; // FD_LaTeXLog is just a browser with a
-       // close button. Unfortunately we can not use the standard callbacks.
+       boost::scoped_ptr<VCS> vcs;
 };
 
+
+} // namespace lyx
+
 #endif