forked from qt-creator/qt-creator
Add Close button to window asking what to do with changed documents
Add a close button to window asking what to do with documents that were changed outside Creator. Finally a simple way to get rid of open moc-files that trigger this window over and over again:-) Task-number: QTCREATORBUG-7360 Change-Id: I7a373ed60d85d810caf6604bc7dae7bb7fa186a9 Reviewed-by: Daniel Teske <daniel.teske@digia.com> Reviewed-by: Eike Ziller <eike.ziller@digia.com>
This commit is contained in:
@@ -59,7 +59,7 @@ QTCREATOR_UTILS_EXPORT Utils::ReloadPromptAnswer
|
||||
Utils::reloadPrompt(const QString &title, const QString &prompt, const QString &details, QWidget *parent)
|
||||
{
|
||||
QMessageBox msg(parent);
|
||||
msg.setStandardButtons(QMessageBox::Yes|QMessageBox::YesToAll|QMessageBox::No|QMessageBox::NoToAll);
|
||||
msg.setStandardButtons(QMessageBox::Yes|QMessageBox::YesToAll|QMessageBox::Close|QMessageBox::No|QMessageBox::NoToAll);
|
||||
msg.setDefaultButton(QMessageBox::YesToAll);
|
||||
msg.setWindowTitle(title);
|
||||
msg.setText(prompt);
|
||||
@@ -72,6 +72,8 @@ QTCREATOR_UTILS_EXPORT Utils::ReloadPromptAnswer
|
||||
return ReloadAll;
|
||||
case QMessageBox::No:
|
||||
return ReloadSkipCurrent;
|
||||
case QMessageBox::Close:
|
||||
return CloseCurrent;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
@@ -40,7 +40,7 @@ QT_END_NAMESPACE
|
||||
|
||||
namespace Utils {
|
||||
|
||||
enum ReloadPromptAnswer { ReloadCurrent, ReloadAll, ReloadSkipCurrent, ReloadNone };
|
||||
enum ReloadPromptAnswer { ReloadCurrent, ReloadAll, ReloadSkipCurrent, ReloadNone, CloseCurrent };
|
||||
|
||||
QTCREATOR_UTILS_EXPORT ReloadPromptAnswer reloadPrompt(const QString &fileName, bool modified, QWidget *parent);
|
||||
QTCREATOR_UTILS_EXPORT ReloadPromptAnswer reloadPrompt(const QString &title, const QString &prompt, const QString &details, QWidget *parent);
|
||||
|
@@ -1034,6 +1034,9 @@ void DocumentManager::checkForReload()
|
||||
case Utils::ReloadNone:
|
||||
success = document->reload(&errorString, IDocument::FlagIgnore, IDocument::TypeContents);
|
||||
break;
|
||||
case Utils::CloseCurrent:
|
||||
editorsToClose << EditorManager::instance()->editorsForDocument(document);
|
||||
break;
|
||||
}
|
||||
}
|
||||
// IDocument wants us to ask, and it's the TypeRemoved case
|
||||
|
Reference in New Issue
Block a user