X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2FLyXVC.h;h=3036a396e3a8d4bb448cf7cfc044e986fdaee043;hb=937a52b64d184c4d9ac69a842fc9a6ed0dcee40b;hp=860a880051a56c707f556c6def7242d4983e42fe;hpb=e82cc5d498244b0d0f0571249f12480e1f514355;p=lyx.git diff --git a/src/LyXVC.h b/src/LyXVC.h index 860a880051..3036a396e3 100644 --- a/src/LyXVC.h +++ b/src/LyXVC.h @@ -39,6 +39,13 @@ class Buffer; */ class LyXVC { public: + /// Return status of a command + enum CommandResult { + Cancelled, ///< command was cancelled + ErrorBefore, ///< error before executing command + ErrorCommand, ///< error while executing command + VCSuccess ///< command was executed successfully + }; /// LyXVC(); /// @@ -77,10 +84,22 @@ public: // by the next multiple messages on the top of the processed dispatch // machinery. - /// Unlock and commit changes. Returns log. - std::string checkIn(); + /// + std::string rename(support::FileName const &); + /// Does the current VC support this operation? + bool renameEnabled() const; + /// + std::string copy(support::FileName const &); + /// Does the current VC support this operation? + bool copyEnabled() const; + + /// Unlock and commit changes. + /// \p log is non-empty on success and may be empty on failure. + CommandResult checkIn(std::string & log); /// Does the current VC support this operation? bool checkInEnabled() const; + /// Should a log message be provided for next checkin? + bool isCheckInWithConfirmation() const; /// Lock/update and prepare to edit document. Returns log. std::string checkOut(); @@ -135,9 +154,10 @@ public: * keep things in synchro once we would allow user to toggle * read-only flags. */ - void toggleReadOnly(); + std::string toggleReadOnly(); /// Is the document under administration by VCS? + /// returns false for unregistered documents in a path managed by VCS bool inUse() const; /// Returns the RCS + version number for messages