/// register a file for version control
virtual void registrer(std::string const & msg) = 0;
- /// check in the current revision
- virtual void checkIn(std::string const & msg) = 0;
+ /// check in the current revision, returns log
+ virtual std::string checkIn(std::string const & msg) = 0;
// can be this operation processed in the current RCS?
virtual bool checkInEnabled() = 0;
- /// check out for editing
- virtual void checkOut() = 0;
+ /// check out for editing, returns log
+ virtual std::string checkOut() = 0;
// can be this operation processed in the current RCS?
virtual bool checkOutEnabled() = 0;
/// revert current edits
Buffer * owner() const { return owner_; }
/// return the lock status of this file
VCStatus status() const { return vcstatus; }
+ /// do we need special handling for read-only toggling?
+ /// (also used for check-out operation)
+ virtual bool toggleReadOnlyEnabled() = 0;
protected:
/// parse information from the version file
virtual void scanMaster() = 0;
+ // GUI container for doVCCommandCall
+ int doVCCommand(std::string const & cmd, support::FileName const & path);
/**
- * doVCCommand - call out to the version control utility
+ * doVCCommandCall - call out to the version control utility
* @param cmd the command to execute
* @param path the path from which to execute
* @return exit status
*/
- static int doVCCommand(std::string const & cmd, support::FileName const & path);
+ static int doVCCommandCall(std::string const & cmd, support::FileName const & path);
/**
* The master VC file. For RCS this is *,v or RCS/ *,v. master should
virtual void registrer(std::string const & msg);
- virtual void checkIn(std::string const & msg);
+ virtual std::string checkIn(std::string const & msg);
virtual bool checkInEnabled();
- virtual void checkOut();
+ virtual std::string checkOut();
virtual bool checkOutEnabled();
return "RCS: " + version_;
}
+ virtual bool toggleReadOnlyEnabled();
+
protected:
virtual void scanMaster();
};
virtual void registrer(std::string const & msg);
- virtual void checkIn(std::string const & msg);
+ virtual std::string checkIn(std::string const & msg);
virtual bool checkInEnabled();
- virtual void checkOut();
+ virtual std::string checkOut();
virtual bool checkOutEnabled();
return "CVS: " + version_;
}
+ virtual bool toggleReadOnlyEnabled();
+
protected:
virtual void scanMaster();
virtual void registrer(std::string const & msg);
- virtual void checkIn(std::string const & msg);
+ virtual std::string checkIn(std::string const & msg);
virtual bool checkInEnabled();
- virtual void checkOut();
+ virtual std::string checkOut();
virtual bool checkOutEnabled();
return "SVN: " + version_;
}
+ virtual bool toggleReadOnlyEnabled();
+
protected:
virtual void scanMaster();
+ /// Check for messages in svn output. Returns error.
+ std::string scanLogFile(support::FileName const & f, std::string & status);
private:
support::FileName file_;