forked from qt-creator/qt-creator
vcsbase: refactor status output signal in VCSBaseClient
There is now a clear distinction between the basic status command and the status command used to emit parsed output Change-Id: Ie398a866ffcd8f4cc33b864ddbe23ce9d2e97437 Merge-request: 358 Reviewed-by: Tobias Hunger <tobias.hunger@nokia.com> Reviewed-on: http://codereview.qt.nokia.com/3337
This commit is contained in:
@@ -220,7 +220,6 @@ QStringList BazaarClient::logArguments(const QStringList &files,
|
|||||||
QStringList BazaarClient::statusArguments(const QString &file) const
|
QStringList BazaarClient::statusArguments(const QString &file) const
|
||||||
{
|
{
|
||||||
QStringList args;
|
QStringList args;
|
||||||
args.append(QLatin1String("--short"));
|
|
||||||
if (!file.isEmpty())
|
if (!file.isEmpty())
|
||||||
args.append(file);
|
args.append(file);
|
||||||
return args;
|
return args;
|
||||||
|
@@ -543,7 +543,8 @@ void BazaarPlugin::commit()
|
|||||||
|
|
||||||
connect(m_client, SIGNAL(parsedStatus(QList<VCSBase::VCSBaseClient::StatusItem>)),
|
connect(m_client, SIGNAL(parsedStatus(QList<VCSBase::VCSBaseClient::StatusItem>)),
|
||||||
this, SLOT(showCommitWidget(QList<VCSBase::VCSBaseClient::StatusItem>)));
|
this, SLOT(showCommitWidget(QList<VCSBase::VCSBaseClient::StatusItem>)));
|
||||||
m_client->statusWithSignal(m_submitRepository);
|
// The "--short" option allows to easily parse status output
|
||||||
|
m_client->emitParsedStatus(m_submitRepository, QStringList(QLatin1String("--short")));
|
||||||
}
|
}
|
||||||
|
|
||||||
void BazaarPlugin::showCommitWidget(const QList<VCSBase::VCSBaseClient::StatusItem> &status)
|
void BazaarPlugin::showCommitWidget(const QList<VCSBase::VCSBaseClient::StatusItem> &status)
|
||||||
|
@@ -568,7 +568,7 @@ void MercurialPlugin::commit()
|
|||||||
|
|
||||||
connect(m_client, SIGNAL(parsedStatus(QList<VCSBase::VCSBaseClient::StatusItem>)),
|
connect(m_client, SIGNAL(parsedStatus(QList<VCSBase::VCSBaseClient::StatusItem>)),
|
||||||
this, SLOT(showCommitWidget(QList<VCSBase::VCSBaseClient::StatusItem>)));
|
this, SLOT(showCommitWidget(QList<VCSBase::VCSBaseClient::StatusItem>)));
|
||||||
m_client->statusWithSignal(m_submitRepository);
|
m_client->emitParsedStatus(m_submitRepository);
|
||||||
}
|
}
|
||||||
|
|
||||||
void MercurialPlugin::showCommitWidget(const QList<VCSBase::VCSBaseClient::StatusItem> &status)
|
void MercurialPlugin::showCommitWidget(const QList<VCSBase::VCSBaseClient::StatusItem> &status)
|
||||||
|
@@ -396,11 +396,11 @@ void VCSBaseClient::status(const QString &workingDir, const QString &file)
|
|||||||
enqueueJob(job);
|
enqueueJob(job);
|
||||||
}
|
}
|
||||||
|
|
||||||
void VCSBaseClient::statusWithSignal(const QString &repositoryRoot)
|
void VCSBaseClient::emitParsedStatus(const QString &repository, const QStringList &extraOptions)
|
||||||
{
|
{
|
||||||
QStringList args(vcsCommandString(StatusCommand));
|
QStringList args(vcsCommandString(StatusCommand));
|
||||||
args << statusArguments(QString());
|
args << extraOptions;
|
||||||
QSharedPointer<VCSJob> job(new VCSJob(repositoryRoot, args, VCSJob::RawDataEmitMode));
|
QSharedPointer<VCSJob> job(new VCSJob(repository, args, VCSJob::RawDataEmitMode));
|
||||||
connect(job.data(), SIGNAL(rawData(QByteArray)), this, SLOT(statusParser(QByteArray)));
|
connect(job.data(), SIGNAL(rawData(QByteArray)), this, SLOT(statusParser(QByteArray)));
|
||||||
enqueueJob(job);
|
enqueueJob(job);
|
||||||
}
|
}
|
||||||
|
@@ -100,7 +100,8 @@ public:
|
|||||||
const QStringList &extraOptions = QStringList(),
|
const QStringList &extraOptions = QStringList(),
|
||||||
bool enableAnnotationContextMenu = false);
|
bool enableAnnotationContextMenu = false);
|
||||||
void status(const QString &workingDir, const QString &file = QString());
|
void status(const QString &workingDir, const QString &file = QString());
|
||||||
void statusWithSignal(const QString &repository);
|
virtual void emitParsedStatus(const QString &repository,
|
||||||
|
const QStringList &extraOptions = QStringList());
|
||||||
void revertFile(const QString &workingDir, const QString &file, const QString &revision = QString());
|
void revertFile(const QString &workingDir, const QString &file, const QString &revision = QString());
|
||||||
void revertAll(const QString &workingDir, const QString &revision = QString());
|
void revertAll(const QString &workingDir, const QString &revision = QString());
|
||||||
void import(const QString &repositoryRoot, const QStringList &files);
|
void import(const QString &repositoryRoot, const QStringList &files);
|
||||||
|
Reference in New Issue
Block a user