diff options
author | Friedemann Kleint <Friedemann.Kleint@nokia.com> | 2010-01-08 09:44:07 +0100 |
---|---|---|
committer | Friedemann Kleint <Friedemann.Kleint@nokia.com> | 2010-01-08 09:44:07 +0100 |
commit | da6463ee2f856cea6086f8a4938a371a81f75fdf (patch) | |
tree | 2de603f6abed02adf7d3562c6f75091d6714e6b1 /src/plugins/mercurial/mercurialeditor.cpp | |
parent | e8195c0766d6b9bde3f529ff670765304f0ae104 (diff) | |
download | qt-creator-da6463ee2f856cea6086f8a4938a371a81f75fdf.tar.gz |
VCS[Mercurial]: Implement annotate previous as for git.
Task-number: QTCREATORBUG-503
Diffstat (limited to 'src/plugins/mercurial/mercurialeditor.cpp')
-rw-r--r-- | src/plugins/mercurial/mercurialeditor.cpp | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/src/plugins/mercurial/mercurialeditor.cpp b/src/plugins/mercurial/mercurialeditor.cpp index 9315c3dad2..e38d30b886 100644 --- a/src/plugins/mercurial/mercurialeditor.cpp +++ b/src/plugins/mercurial/mercurialeditor.cpp @@ -31,6 +31,7 @@ #include "annotationhighlighter.h" #include "constants.h" #include "mercurialplugin.h" +#include "mercurialclient.h" #include <coreplugin/editormanager/editormanager.h> #include <vcsbase/diffhighlighter.h> @@ -53,6 +54,7 @@ MercurialEditor::MercurialEditor(const VCSBase::VCSBaseEditorParameters *type, Q changesetIdentifier40(QLatin1String(Constants::CHANGESETID40)), diffIdentifier(QLatin1String(Constants::DIFFIDENTIFIER)) { + setAnnotateRevisionTextFormat(tr("Annotate %1")); } QSet<QString> MercurialEditor::annotationChanges() const @@ -110,3 +112,21 @@ QString MercurialEditor::fileNameFromDiffSpecification(const QTextBlock &diffFil } return QString(); } + +QStringList MercurialEditor::annotationPreviousVersions(const QString &revision) const +{ + MercurialClient *client = MercurialPlugin::instance()->client(); + QStringList parents; + const QFileInfo fi(source()); + const QString workingDirectory = fi.absolutePath(); + // Retrieve parent revisions + QStringList revisions; + if (!client->parentRevisionsSync(workingDirectory, fi.fileName(), revision, &revisions)) + return QStringList(); + // Format with short summary + QStringList descriptions; + if (!client->shortDescriptionsSync(workingDirectory, revisions, &descriptions)) + return QStringList(); + return descriptions; +} + |