forked from qt-creator/qt-creator
CVS: Aspectify settings
Change-Id: Ib5170405b33b3e521470407065e85c95dad6163b Reviewed-by: Orgad Shaneh <orgads@gmail.com>
This commit is contained in:
@@ -267,8 +267,8 @@ void VcsBaseClientImpl::saveSettings()
|
||||
m_baseSettings->writeSettings(Core::ICore::settings());
|
||||
}
|
||||
|
||||
VcsBaseClient::VcsBaseClient(VcsBaseClientSettings *settings) :
|
||||
VcsBaseClientImpl(settings)
|
||||
VcsBaseClient::VcsBaseClient(VcsBaseClientSettings *settings, VcsBaseSettings *baseSettings) :
|
||||
VcsBaseClientImpl(settings, baseSettings)
|
||||
{
|
||||
qRegisterMetaType<QVariant>();
|
||||
}
|
||||
|
||||
@@ -148,7 +148,8 @@ public:
|
||||
QString file;
|
||||
};
|
||||
|
||||
explicit VcsBaseClient(VcsBaseClientSettings *settings);
|
||||
explicit VcsBaseClient(VcsBaseClientSettings *settings,
|
||||
VcsBaseSettings *baseSettings = nullptr);
|
||||
|
||||
virtual bool synchronousCreateRepository(const QString &workingDir,
|
||||
const QStringList &extraOptions = QStringList());
|
||||
|
||||
@@ -514,12 +514,13 @@ static QString withUnusedMnemonic(QString string, const QList<QPushButton *> &ot
|
||||
|
||||
VcsBaseSubmitEditor::PromptSubmitResult
|
||||
VcsBaseSubmitEditor::promptSubmit(VcsBasePluginPrivate *plugin,
|
||||
bool *promptSetting,
|
||||
bool *promptSettingOld,
|
||||
bool forcePrompt,
|
||||
bool canCommitOnFailure)
|
||||
bool canCommitOnFailure,
|
||||
BoolAspect *promptSetting)
|
||||
{
|
||||
bool dummySetting = false;
|
||||
if (!promptSetting)
|
||||
BoolAspect dummySetting;
|
||||
if (!promptSetting && !promptSettingOld)
|
||||
promptSetting = &dummySetting;
|
||||
auto submitWidget = static_cast<SubmitEditorWidget *>(this->widget());
|
||||
|
||||
@@ -530,7 +531,8 @@ VcsBaseSubmitEditor::PromptSubmitResult
|
||||
|
||||
QString errorMessage;
|
||||
|
||||
const bool prompt = forcePrompt || *promptSetting;
|
||||
const bool value = promptSettingOld ? *promptSettingOld : promptSetting->value();
|
||||
const bool prompt = forcePrompt || value;
|
||||
|
||||
// Pop up a message depending on whether the check succeeded and the
|
||||
// user wants to be prompted
|
||||
@@ -552,9 +554,9 @@ VcsBaseSubmitEditor::PromptSubmitResult
|
||||
}
|
||||
mb.setText(message);
|
||||
mb.setCheckBoxText(tr("Prompt to %1").arg(commitName.toLower()));
|
||||
mb.setChecked(*promptSetting);
|
||||
mb.setChecked(value);
|
||||
// Provide check box to turn off prompt ONLY if it was not forced
|
||||
mb.setCheckBoxVisible(*promptSetting && !forcePrompt);
|
||||
mb.setCheckBoxVisible(value && !forcePrompt);
|
||||
QDialogButtonBox::StandardButtons buttons = QDialogButtonBox::Close | QDialogButtonBox::Cancel;
|
||||
if (canCommit || canCommitOnFailure)
|
||||
buttons |= QDialogButtonBox::Ok;
|
||||
@@ -570,8 +572,12 @@ VcsBaseSubmitEditor::PromptSubmitResult
|
||||
commitButton->setText(withUnusedMnemonic(commitName,
|
||||
{cancelButton, mb.button(QDialogButtonBox::Close)}));
|
||||
}
|
||||
if (mb.exec() == QDialog::Accepted)
|
||||
*promptSetting = mb.isChecked();
|
||||
if (mb.exec() == QDialog::Accepted) {
|
||||
if (promptSettingOld)
|
||||
*promptSettingOld = mb.isChecked();
|
||||
else
|
||||
promptSetting->setValue(mb.isChecked());
|
||||
}
|
||||
QAbstractButton *chosen = mb.clickedButton();
|
||||
if (!chosen || chosen == cancelButton)
|
||||
return SubmitCanceled;
|
||||
|
||||
@@ -29,6 +29,8 @@
|
||||
|
||||
#include <coreplugin/editormanager/ieditor.h>
|
||||
|
||||
#include <utils/aspects.h>
|
||||
|
||||
#include <QAbstractItemView>
|
||||
|
||||
QT_BEGIN_NAMESPACE
|
||||
@@ -85,9 +87,10 @@ public:
|
||||
// prompt setting. The user can uncheck it from the message box.
|
||||
enum PromptSubmitResult { SubmitConfirmed, SubmitCanceled, SubmitDiscarded };
|
||||
PromptSubmitResult promptSubmit(VcsBasePluginPrivate *plugin,
|
||||
bool *promptSetting,
|
||||
bool *promptSettingOld,
|
||||
bool forcePrompt = false,
|
||||
bool canCommitOnFailure = true);
|
||||
bool canCommitOnFailure = true,
|
||||
Utils::BoolAspect *promptSetting = nullptr);
|
||||
|
||||
QAbstractItemView::SelectionMode fileListSelectionMode() const;
|
||||
void setFileListSelectionMode(QAbstractItemView::SelectionMode sm);
|
||||
|
||||
Reference in New Issue
Block a user