forked from qt-creator/qt-creator
Mercurial: Save resources, polishing.
Start the jobrunner on demand, save options only if changed, give it the structure used elsewhere in the VCS plugins. Remove last traces of the cmd /c hack.
This commit is contained in:
@@ -30,40 +30,53 @@
|
||||
#include "mercurialsettings.h"
|
||||
#include "constants.h"
|
||||
|
||||
#include <coreplugin/icore.h>
|
||||
#include <QtCore/QSettings>
|
||||
|
||||
|
||||
using namespace Mercurial::Internal;
|
||||
|
||||
MercurialSettings::MercurialSettings()
|
||||
enum { timeOutDefaultSeconds = 30 };
|
||||
|
||||
MercurialSettings::MercurialSettings() :
|
||||
m_binary(QLatin1String(Constants::MERCURIALDEFAULT)),
|
||||
m_logCount(0),
|
||||
m_timeoutSeconds(timeOutDefaultSeconds),
|
||||
m_prompt(true)
|
||||
{
|
||||
readSettings();
|
||||
}
|
||||
|
||||
QString MercurialSettings::binary() const
|
||||
{
|
||||
return bin;
|
||||
return m_binary;
|
||||
}
|
||||
|
||||
QString MercurialSettings::application() const
|
||||
void MercurialSettings::setBinary(const QString &b)
|
||||
{
|
||||
return app;
|
||||
m_binary = b;
|
||||
}
|
||||
|
||||
QStringList MercurialSettings::standardArguments() const
|
||||
{
|
||||
return standardArgs;
|
||||
return m_standardArguments;
|
||||
}
|
||||
|
||||
QString MercurialSettings::userName() const
|
||||
{
|
||||
return user;
|
||||
return m_user;
|
||||
}
|
||||
|
||||
void MercurialSettings::setUserName(const QString &u)
|
||||
{
|
||||
m_user = u;
|
||||
}
|
||||
|
||||
QString MercurialSettings::email() const
|
||||
{
|
||||
return mail;
|
||||
return m_mail;
|
||||
}
|
||||
|
||||
void MercurialSettings::setEmail(const QString &m)
|
||||
{
|
||||
m_mail = m;
|
||||
}
|
||||
|
||||
int MercurialSettings::logCount() const
|
||||
@@ -71,16 +84,26 @@ int MercurialSettings::logCount() const
|
||||
return m_logCount;
|
||||
}
|
||||
|
||||
int MercurialSettings::timeout() const
|
||||
void MercurialSettings::setLogCount(int l)
|
||||
{
|
||||
m_logCount = l;
|
||||
}
|
||||
|
||||
int MercurialSettings::timeoutMilliSeconds() const
|
||||
{
|
||||
//return timeout is in Ms
|
||||
return m_timeout * 1000;
|
||||
return m_timeoutSeconds * 1000;
|
||||
}
|
||||
|
||||
int MercurialSettings::timeoutSeconds() const
|
||||
{
|
||||
//return timeout in seconds (as the user specifies on the options page
|
||||
return m_timeout;
|
||||
return m_timeoutSeconds;
|
||||
}
|
||||
|
||||
void MercurialSettings::setTimeoutSeconds(int s)
|
||||
{
|
||||
m_timeoutSeconds = s;
|
||||
}
|
||||
|
||||
bool MercurialSettings::prompt() const
|
||||
@@ -88,50 +111,39 @@ bool MercurialSettings::prompt() const
|
||||
return m_prompt;
|
||||
}
|
||||
|
||||
void MercurialSettings::writeSettings(const QString &application, const QString &userName,
|
||||
const QString &email, int logCount, int timeout, bool prompt)
|
||||
void MercurialSettings::setPrompt(bool b)
|
||||
{
|
||||
QSettings *settings = Core::ICore::instance()->settings();
|
||||
if (settings) {
|
||||
settings->beginGroup(QLatin1String("Mercurial"));
|
||||
settings->setValue(QLatin1String(Constants::MERCURIALPATH), application);
|
||||
settings->setValue(QLatin1String(Constants::MERCURIALUSERNAME), userName);
|
||||
settings->setValue(QLatin1String(Constants::MERCURIALEMAIL), email);
|
||||
settings->setValue(QLatin1String(Constants::MERCURIALLOGCOUNT), logCount);
|
||||
settings->setValue(QLatin1String(Constants::MERCURIALTIMEOUT), timeout);
|
||||
settings->setValue(QLatin1String(Constants::MERCURIALPROMPTSUBMIT), prompt);
|
||||
settings->endGroup();
|
||||
}
|
||||
|
||||
app = application;
|
||||
user = userName;
|
||||
mail = email;
|
||||
m_logCount = logCount;
|
||||
m_timeout = timeout;
|
||||
m_prompt = prompt;
|
||||
setBinAndArgs();
|
||||
m_prompt = b;
|
||||
}
|
||||
|
||||
void MercurialSettings::readSettings()
|
||||
void MercurialSettings::writeSettings(QSettings *settings) const
|
||||
{
|
||||
QSettings *settings = Core::ICore::instance()->settings();
|
||||
if (settings) {
|
||||
settings->beginGroup(QLatin1String("Mercurial"));
|
||||
app = settings->value(QLatin1String(Constants::MERCURIALPATH),
|
||||
QLatin1String(Constants::MERCURIALDEFAULT)).toString();
|
||||
user = settings->value(QLatin1String(Constants::MERCURIALUSERNAME), QString()).toString();
|
||||
mail = settings->value(QLatin1String(Constants::MERCURIALEMAIL), QString()).toString();
|
||||
m_logCount = settings->value(QLatin1String(Constants::MERCURIALLOGCOUNT), 0).toInt();
|
||||
m_timeout = settings->value(QLatin1String(Constants::MERCURIALTIMEOUT), 30).toInt();
|
||||
m_prompt = settings->value(QLatin1String(Constants::MERCURIALPROMPTSUBMIT), true).toBool();
|
||||
settings->endGroup();
|
||||
}
|
||||
|
||||
setBinAndArgs();
|
||||
settings->beginGroup(QLatin1String("Mercurial"));
|
||||
settings->setValue(QLatin1String(Constants::MERCURIALPATH), m_binary);
|
||||
settings->setValue(QLatin1String(Constants::MERCURIALUSERNAME), m_user);
|
||||
settings->setValue(QLatin1String(Constants::MERCURIALEMAIL), m_mail);
|
||||
settings->setValue(QLatin1String(Constants::MERCURIALLOGCOUNT), m_logCount);
|
||||
settings->setValue(QLatin1String(Constants::MERCURIALTIMEOUT), m_timeoutSeconds);
|
||||
settings->setValue(QLatin1String(Constants::MERCURIALPROMPTSUBMIT), m_prompt);
|
||||
settings->endGroup();
|
||||
}
|
||||
|
||||
void MercurialSettings::setBinAndArgs()
|
||||
void MercurialSettings::readSettings(const QSettings *settings)
|
||||
{
|
||||
standardArgs.clear();
|
||||
bin = app;
|
||||
const QString keyRoot = QLatin1String("Mercurial/");
|
||||
m_binary = settings->value(keyRoot + QLatin1String(Constants::MERCURIALPATH),
|
||||
QLatin1String(Constants::MERCURIALDEFAULT)).toString();
|
||||
m_user = settings->value(keyRoot + QLatin1String(Constants::MERCURIALUSERNAME), QString()).toString();
|
||||
m_mail = settings->value(keyRoot + QLatin1String(Constants::MERCURIALEMAIL), QString()).toString();
|
||||
m_logCount = settings->value(keyRoot + QLatin1String(Constants::MERCURIALLOGCOUNT), 0).toInt();
|
||||
m_timeoutSeconds = settings->value(keyRoot + QLatin1String(Constants::MERCURIALTIMEOUT), timeOutDefaultSeconds).toInt();
|
||||
m_prompt = settings->value(keyRoot + QLatin1String(Constants::MERCURIALPROMPTSUBMIT), true).toBool();
|
||||
}
|
||||
|
||||
bool MercurialSettings::equals(const MercurialSettings &rhs) const
|
||||
{
|
||||
return m_binary == rhs.m_binary && m_standardArguments == rhs.m_standardArguments
|
||||
&& m_user == rhs.m_user && m_mail == rhs.m_mail
|
||||
&& m_logCount == rhs.m_logCount && m_timeoutSeconds == rhs.m_timeoutSeconds
|
||||
&& m_prompt == rhs.m_prompt;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user