X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Fvc-backend.C;h=e81ed01b2c38f30a61e55919b431013b6a80bd64;hb=ac103f15a7cead429a7b2ee1f75d67cc988ec81d;hp=671afdd36ce28df069c27aa8270ee5480802449f;hpb=9548351ef8ceaa1c779267e4eeccd3a0d83a0374;p=lyx.git diff --git a/src/vc-backend.C b/src/vc-backend.C index 671afdd36c..e81ed01b2c 100644 --- a/src/vc-backend.C +++ b/src/vc-backend.C @@ -9,7 +9,7 @@ #include "buffer.h" #include "BufferView.h" #include "frontends/LyXView.h" -#include "lyxfunc.h" +#include "funcrequest.h" #include "support/FileInfo.h" #include "support/path.h" @@ -31,7 +31,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) { @@ -107,7 +113,7 @@ void RCS::scanMaster() // get version here string tmv; ifs >> tmv; - tmv = strip(tmv, ';'); + tmv = rtrim(tmv, ";"); version_ = tmv; lyxerr[Debug::LYXVC] << "LyXVC: version found to be " << tmv << endl; @@ -127,7 +133,7 @@ void RCS::scanMaster() string s2; do { ifs >> tmpt; - s1 = strip(tmpt, ';'); + s1 = rtrim(tmpt, ";"); // tmp is now in the format : s1 = split(s1, s2, ':'); // s2 is user, and s1 is version @@ -159,7 +165,7 @@ void RCS::registrer(string const & msg) cmd += OnlyFilename(owner_->fileName()); cmd += "\""; doVCCommand(cmd, owner_->filePath()); - owner_->getUser()->owner()->getLyXFunc()->dispatch(LFUN_MENURELOAD); + owner_->getUser()->owner()->dispatch(FuncRequest(LFUN_MENURELOAD)); } @@ -167,16 +173,16 @@ void RCS::checkIn(string const & msg) { doVCCommand("ci -q -u -m\"" + msg + "\" \"" + OnlyFilename(owner_->fileName()) + "\"", owner_->filePath()); - owner_->getUser()->owner()->getLyXFunc()->dispatch(LFUN_MENURELOAD); + owner_->getUser()->owner()->dispatch(FuncRequest(LFUN_MENURELOAD)); } void RCS::checkOut() { - owner_->markLyxClean(); + owner_->markClean(); doVCCommand("co -q -l \"" + OnlyFilename(owner_->fileName()) + "\"", owner_->filePath()); - owner_->getUser()->owner()->getLyXFunc()->dispatch(LFUN_MENURELOAD); + owner_->getUser()->owner()->dispatch(FuncRequest(LFUN_MENURELOAD)); } @@ -185,9 +191,8 @@ void RCS::revert() doVCCommand("co -f -u" + version() + " \"" + OnlyFilename(owner_->fileName()) + "\"", owner_->filePath()); // We ignore changes and just reload! - owner_->markLyxClean(); - owner_->getUser()->owner() - ->getLyXFunc()->dispatch(LFUN_MENURELOAD); + owner_->markClean(); + owner_->getUser()->owner()->dispatch(FuncRequest(LFUN_MENURELOAD)); } @@ -253,19 +258,24 @@ void CVS::scanMaster() 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_); // FIXME: must double check file is stattable/existing time_t mod = fi.getModificationTime(); - string mod_date = strip(asctime(gmtime(&mod)), '\n'); + string mod_date = rtrim(asctime(gmtime(&mod)), "\n"); lyxerr[Debug::LYXVC] << "Date in Entries: `" << file_date << "'\nModification date of file: `" @@ -289,7 +299,7 @@ void CVS::registrer(string const & msg) { doVCCommand("cvs -q add -m \"" + msg + "\" \"" + OnlyFilename(owner_->fileName()) + "\"", owner_->filePath()); - owner_->getUser()->owner()->getLyXFunc()->dispatch(LFUN_MENURELOAD); + owner_->getUser()->owner()->dispatch(FuncRequest(LFUN_MENURELOAD)); } @@ -298,7 +308,7 @@ void CVS::checkIn(string const & msg) doVCCommand("cvs -q commit -m \"" + msg + "\" \"" + OnlyFilename(owner_->fileName()) + "\"", owner_->filePath()); - owner_->getUser()->owner()->getLyXFunc()->dispatch(LFUN_MENURELOAD); + owner_->getUser()->owner()->dispatch(FuncRequest(LFUN_MENURELOAD)); } @@ -317,9 +327,8 @@ void CVS::revert() doVCCommand("rm -f \"" + fil + "\"; cvs update \"" + fil + "\"", owner_->filePath()); - owner_->markLyxClean(); - owner_->getUser()->owner() - ->getLyXFunc()->dispatch(LFUN_MENURELOAD); + owner_->markClean(); + owner_->getUser()->owner()->dispatch(FuncRequest(LFUN_MENURELOAD)); }