vcsbase: simplify init of the diff editor in VCSBaseClient

Bazaar and Mercurial plugins are impacted, they benefit auto load/save
of the diff settings

Change-Id: I67327b231fd80eeb61bb859879f9eabdc56739e8
Merge-request: 345
Reviewed-by: Tobias Hunger <tobias.hunger@nokia.com>
Reviewed-on: http://codereview.qt.nokia.com/463
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
This commit is contained in:
cerf
2011-06-10 15:27:57 +00:00
committed by Tobias Hunger
parent 21c048363e
commit 83566c3c3a
10 changed files with 205 additions and 124 deletions

View File

@@ -33,6 +33,7 @@
#ifndef MERCURIALCLIENT_H
#define MERCURIALCLIENT_H
#include "mercurialsettings.h"
#include <vcsbase/vcsbaseclient.h>
namespace Mercurial {
@@ -43,7 +44,10 @@ class MercurialClient : public VCSBase::VCSBaseClient
{
Q_OBJECT
public:
MercurialClient(VCSBase::VCSBaseClientSettings *settings);
MercurialClient(MercurialSettings *settings);
MercurialSettings *settings() const;
virtual bool synchronousClone(const QString &workingDir,
const QString &srcLocation,
const QString &dstLocation,
@@ -64,9 +68,6 @@ public:
void outgoing(const QString &repositoryRoot);
QString vcsGetRepositoryURL(const QString &directory);
private slots:
void mercurialDiff(const Mercurial::Internal::MercurialDiffParameters &);
public:
QString findTopLevelForFile(const QFileInfo &file) const;
@@ -91,9 +92,9 @@ protected:
const QString &revision, int lineNumber) const;
QStringList diffArguments(const QStringList &files,
const QStringList &extraOptions) const;
void initializeDiffEditor(const QString &workingDir, const QStringList &files,
const QStringList &extraOptions,
VCSBase::VCSBaseEditorWidget *ed);
VCSBase::VCSBaseEditorParameterWidget *createDiffEditor(const QString &workingDir,
const QStringList &files,
const QStringList &extraOptions);
QStringList logArguments(const QStringList &files,
const QStringList &extraOptions) const;
QStringList statusArguments(const QString &file) const;