forked from qt-creator/qt-creator
Git: Only show note about perl if perl is not found in PATH
Task-number: QTCREATORBUG-17154 Change-Id: I4602084204a3b26ead8d4e3e8108d6d4642c829a Reviewed-by: Orgad Shaneh <orgads@gmail.com>
This commit is contained in:
@@ -29,9 +29,11 @@
|
|||||||
#include "gitclient.h"
|
#include "gitclient.h"
|
||||||
|
|
||||||
#include <coreplugin/icore.h>
|
#include <coreplugin/icore.h>
|
||||||
#include <vcsbase/vcsbaseconstants.h>
|
|
||||||
#include <utils/hostosinfo.h>
|
|
||||||
#include <coreplugin/messagebox.h>
|
#include <coreplugin/messagebox.h>
|
||||||
|
#include <vcsbase/vcsbaseconstants.h>
|
||||||
|
|
||||||
|
#include <utils/environment.h>
|
||||||
|
#include <utils/hostosinfo.h>
|
||||||
|
|
||||||
#include <QDir>
|
#include <QDir>
|
||||||
#include <QDebug>
|
#include <QDebug>
|
||||||
@@ -58,9 +60,13 @@ SettingsPageWidget::SettingsPageWidget(QWidget *parent) : VcsClientOptionsPageWi
|
|||||||
} else {
|
} else {
|
||||||
m_ui.winHomeCheckBox->setVisible(false);
|
m_ui.winHomeCheckBox->setVisible(false);
|
||||||
}
|
}
|
||||||
|
updateNoteField();
|
||||||
|
|
||||||
m_ui.repBrowserCommandPathChooser->setExpectedKind(Utils::PathChooser::ExistingCommand);
|
m_ui.repBrowserCommandPathChooser->setExpectedKind(Utils::PathChooser::ExistingCommand);
|
||||||
m_ui.repBrowserCommandPathChooser->setHistoryCompleter("Git.RepoCommand.History");
|
m_ui.repBrowserCommandPathChooser->setHistoryCompleter("Git.RepoCommand.History");
|
||||||
m_ui.repBrowserCommandPathChooser->setPromptDialogTitle(tr("Git Repository Browser Command"));
|
m_ui.repBrowserCommandPathChooser->setPromptDialogTitle(tr("Git Repository Browser Command"));
|
||||||
|
|
||||||
|
connect(m_ui.pathLineEdit, &QLineEdit::textChanged, this, &SettingsPageWidget::updateNoteField);
|
||||||
}
|
}
|
||||||
|
|
||||||
VcsBaseClientSettings SettingsPageWidget::settings() const
|
VcsBaseClientSettings SettingsPageWidget::settings() const
|
||||||
@@ -90,6 +96,17 @@ void SettingsPageWidget::setSettings(const VcsBaseClientSettings &s)
|
|||||||
m_ui.repBrowserCommandPathChooser->setPath(s.stringValue(GitSettings::repositoryBrowserCmd));
|
m_ui.repBrowserCommandPathChooser->setPath(s.stringValue(GitSettings::repositoryBrowserCmd));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void SettingsPageWidget::updateNoteField()
|
||||||
|
{
|
||||||
|
Utils::Environment env = Utils::Environment::systemEnvironment();
|
||||||
|
env.prependOrSetPath(m_ui.pathLineEdit->text());
|
||||||
|
|
||||||
|
bool showNote = env.searchInPath("perl").isEmpty();
|
||||||
|
|
||||||
|
m_ui.noteFieldlabel->setVisible(showNote);
|
||||||
|
m_ui.noteLabel->setVisible(showNote);
|
||||||
|
}
|
||||||
|
|
||||||
// -------- SettingsPage
|
// -------- SettingsPage
|
||||||
SettingsPage::SettingsPage(Core::IVersionControl *control) :
|
SettingsPage::SettingsPage(Core::IVersionControl *control) :
|
||||||
VcsClientOptionsPage(control, GitPlugin::client())
|
VcsClientOptionsPage(control, GitPlugin::client())
|
||||||
|
@@ -53,6 +53,8 @@ public:
|
|||||||
void setSettings(const VcsBase::VcsBaseClientSettings &s) override;
|
void setSettings(const VcsBase::VcsBaseClientSettings &s) override;
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
void updateNoteField();
|
||||||
|
|
||||||
Ui::SettingsPage m_ui;
|
Ui::SettingsPage m_ui;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user