]> git.lyx.org Git - lyx.git/blobdiff - src/vc-backend.C
rename Inset to InsetOld
[lyx.git] / src / vc-backend.C
index 65f0a79806fa468575dcd5a7e048947a2a818775..4b9218348e4d26d78f5ee36c457250cf04e4d1cd 100644 (file)
@@ -1,13 +1,8 @@
 #include <config.h>
 
-#ifdef __GNUG__
-#pragma implementation
-#endif
-
 #include "vc-backend.h"
 #include "debug.h"
 #include "buffer.h"
-#include "BufferView.h"
 #include "frontends/LyXView.h"
 #include "funcrequest.h"
 
@@ -21,6 +16,8 @@
 
 #include <fstream>
 
+using namespace lyx::support;
+
 #ifndef CXX_GLOBAL_CSTD
 using std::asctime;
 using std::gmtime;
@@ -31,7 +28,13 @@ using std::ifstream;
 using std::getline;
 using boost::regex;
 using boost::regex_match;
+
+#ifndef USE_INCLUDED_STRING
 using boost::smatch;
+#else
+using boost::cmatch;
+#endif
+
 
 int VCS::doVCCommand(string const & cmd, string const & path)
 {
@@ -82,7 +85,7 @@ void RCS::retrieve(string const & file)
 {
        lyxerr[Debug::LYXVC] << "LyXVC::RCS: retrieve.\n\t" << file << endl;
        VCS::doVCCommand("co -q -r \""
-                        + file + "\"",
+                        + file + '"',
                         string());
 }
 
@@ -99,7 +102,7 @@ void RCS::scanMaster()
        while (!read_enough && ifs >> token) {
                lyxerr[Debug::LYXVC]
                        << "LyXVC::scanMaster: current lex text: `"
-                       << token << "'" << endl;
+                       << token << '\'' << endl;
 
                if (token.empty())
                        continue;
@@ -157,17 +160,16 @@ void RCS::registrer(string const & msg)
        cmd += msg;
        cmd += "\" \"";
        cmd += OnlyFilename(owner_->fileName());
-       cmd += "\"";
+       cmd += '"';
        doVCCommand(cmd, owner_->filePath());
-       owner_->getUser()->owner()->dispatch(FuncRequest(LFUN_MENURELOAD));
 }
 
 
 void RCS::checkIn(string const & msg)
 {
        doVCCommand("ci -q -u -m\"" + msg + "\" \""
-                   + OnlyFilename(owner_->fileName()) + "\"", owner_->filePath());
-       owner_->getUser()->owner()->dispatch(FuncRequest(LFUN_MENURELOAD));
+                   + OnlyFilename(owner_->fileName()) + '"',
+                   owner_->filePath());
 }
 
 
@@ -175,18 +177,18 @@ void RCS::checkOut()
 {
        owner_->markClean();
        doVCCommand("co -q -l \""
-                   + OnlyFilename(owner_->fileName()) + "\"", owner_->filePath());
-       owner_->getUser()->owner()->dispatch(FuncRequest(LFUN_MENURELOAD));
+                   + OnlyFilename(owner_->fileName()) + '"',
+                   owner_->filePath());
 }
 
 
 void RCS::revert()
 {
        doVCCommand("co -f -u" + version() + " \""
-                   + OnlyFilename(owner_->fileName()) + "\"", owner_->filePath());
+                   + OnlyFilename(owner_->fileName()) + '"',
+                   owner_->filePath());
        // We ignore changes and just reload!
        owner_->markClean();
-       owner_->getUser()->owner()->dispatch(FuncRequest(LFUN_MENURELOAD));
 }
 
 
@@ -194,7 +196,7 @@ void RCS::undoLast()
 {
        lyxerr[Debug::LYXVC] << "LyXVC: undoLast" << endl;
        doVCCommand("rcs -o" + version() + " \""
-                   + OnlyFilename(owner_->fileName()) + "\"",
+                   + OnlyFilename(owner_->fileName()) + '"',
                    owner_->filePath());
 }
 
@@ -202,7 +204,8 @@ void RCS::undoLast()
 void RCS::getLog(string const & tmpf)
 {
        doVCCommand("rlog \""
-                   + OnlyFilename(owner_->fileName()) + "\" > " + tmpf, owner_->filePath());
+                   + OnlyFilename(owner_->fileName()) + "\" > "
+                   + tmpf, owner_->filePath());
 }
 
 
@@ -221,7 +224,7 @@ string const CVS::find_file(string const & file)
        string const dir = OnlyPath(file) + "/CVS/Entries";
        string const tmpf = "/" + OnlyFilename(file) + "/";
        lyxerr[Debug::LYXVC] << "LyXVC: checking in `" << dir
-                            << "' for `" << tmpf << "'" << endl;
+                            << "' for `" << tmpf << '\'' << endl;
        FileInfo const f(dir);
        if (f.readable()) {
                // Ok we are at least in a CVS dir. Parse the CVS/Entries
@@ -245,20 +248,25 @@ void CVS::scanMaster()
        // Ok now we do the real scan...
        ifstream ifs(master_.c_str());
        string tmpf = "/" + OnlyFilename(file_) + "/";
-       lyxerr[Debug::LYXVC] << "\tlooking for `" << tmpf << "'" << endl;
+       lyxerr[Debug::LYXVC] << "\tlooking for `" << tmpf << '\'' << endl;
        string line;
        regex reg("/(.*)/(.*)/(.*)/(.*)/(.*)");
        while (getline(ifs, line)) {
                lyxerr[Debug::LYXVC] << "\t  line: " << line << endl;
                if (contains(line, tmpf)) {
                        // Ok extract the fields.
+#ifndef USE_INCLUDED_STRING
                        smatch sm;
-                       regex_match(line, sm, reg);
+#else
+                       cmatch sm;
+#endif
+                       regex_match(STRCONV(line), sm, reg);
 
                        //sm[0]; // whole matched string
                        //sm[1]; // filename
-                       version_ = sm[2];
-                       string file_date = sm[3];
+                       version_ = STRCONV(sm.str(2));
+                       string const file_date = STRCONV(sm.str(3));
+
                        //sm[4]; // options
                        //sm[5]; // tag or tagdate
                        FileInfo fi(file_);
@@ -268,7 +276,7 @@ void CVS::scanMaster()
                        lyxerr[Debug::LYXVC]
                                <<  "Date in Entries: `" << file_date
                                << "'\nModification date of file: `"
-                               << mod_date << "'" << endl;
+                               << mod_date << '\'' << endl;
                        if (file_date == mod_date) {
                                locker_ = "Unlocked";
                                vcstatus = UNLOCKED;
@@ -287,17 +295,16 @@ void CVS::scanMaster()
 void CVS::registrer(string const & msg)
 {
        doVCCommand("cvs -q add -m \"" + msg + "\" \""
-                   + OnlyFilename(owner_->fileName()) + "\"", owner_->filePath());
-       owner_->getUser()->owner()->dispatch(FuncRequest(LFUN_MENURELOAD));
+                   + OnlyFilename(owner_->fileName()) + '"',
+                   owner_->filePath());
 }
 
 
 void CVS::checkIn(string const & msg)
 {
        doVCCommand("cvs -q commit -m \"" + msg + "\" \""
-                   + OnlyFilename(owner_->fileName()) + "\"",
+                   + OnlyFilename(owner_->fileName()) + '"',
                    owner_->filePath());
-       owner_->getUser()->owner()->dispatch(FuncRequest(LFUN_MENURELOAD));
 }
 
 
@@ -314,10 +321,9 @@ void CVS::revert()
        // gets the updated version from the repository.
        string const fil = OnlyFilename(owner_->fileName());
 
-       doVCCommand("rm -f \"" + fil + "\"; cvs update \"" + fil + "\"",
+       doVCCommand("rm -f \"" + fil + "\"; cvs update \"" + fil + '"',
                    owner_->filePath());
        owner_->markClean();
-       owner_->getUser()->owner()->dispatch(FuncRequest(LFUN_MENURELOAD));
 }