forked from qt-creator/qt-creator
Vcs: Move handling of settings from VcsBaseClient to VcsBaseClientImpl
... and update users of that functionality accordingly. Unexpected plus: Now every supported VCS actually saves their setting when requested. Change-Id: I02db7b2ce14e5f52d26409b2a01aea290c2a294a Reviewed-by: Orgad Shaneh <orgads@gmail.com>
This commit is contained in:
@@ -58,25 +58,20 @@ class MercurialDiffParameterWidget : public VcsBaseEditorParameterWidget
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
MercurialDiffParameterWidget(MercurialSettings *settings, QWidget *parent = 0) :
|
||||
MercurialDiffParameterWidget(VcsBaseClientSettings &settings, QWidget *parent = 0) :
|
||||
VcsBaseEditorParameterWidget(parent)
|
||||
{
|
||||
mapSetting(addToggleButton(QLatin1String("-w"), tr("Ignore Whitespace")),
|
||||
settings->boolPointer(MercurialSettings::diffIgnoreWhiteSpaceKey));
|
||||
settings.boolPointer(MercurialSettings::diffIgnoreWhiteSpaceKey));
|
||||
mapSetting(addToggleButton(QLatin1String("-B"), tr("Ignore Blank Lines")),
|
||||
settings->boolPointer(MercurialSettings::diffIgnoreBlankLinesKey));
|
||||
settings.boolPointer(MercurialSettings::diffIgnoreBlankLinesKey));
|
||||
}
|
||||
};
|
||||
|
||||
MercurialClient::MercurialClient(MercurialSettings *settings) :
|
||||
VcsBaseClient(settings)
|
||||
MercurialClient::MercurialClient() :
|
||||
VcsBaseClient(new MercurialSettings)
|
||||
{
|
||||
setDiffParameterWidgetCreator([=] { return new MercurialDiffParameterWidget(settings); });
|
||||
}
|
||||
|
||||
MercurialSettings *MercurialClient::settings() const
|
||||
{
|
||||
return dynamic_cast<MercurialSettings *>(VcsBaseClient::settings());
|
||||
setDiffParameterWidgetCreator([this] { return new MercurialDiffParameterWidget(settings()); });
|
||||
}
|
||||
|
||||
bool MercurialClient::manifestSync(const QString &repository, const QString &relativeFilename)
|
||||
|
||||
Reference in New Issue
Block a user