better handling of 'Close All'/'Close All Others'

This commit is contained in:
nemu 2009-05-19 05:01:00 +00:00
parent cca490c3a5
commit bdc1eec594

View File

@ -643,11 +643,17 @@ void PTextEdit::fileCloseAll()
if ( !currentEditor() )
return;
int result = QMessageBox::warning(this, "**WARNING**",
"Do you really want to close all files.\nChanges of unsaved files will be lost",
"Close", "Cancel");
if (result == 1) // Cancel
return;
// check if there are any unsaved tabs
for (int i=0; i<fTabWidget->count(); i++) {
if (fTabWidget->label(i).find("*") > 0) {
int result = QMessageBox::warning(this, "**WARNING**",
"Do you really want to close all files.\nChanges of unsaved files will be lost",
"Close", "Cancel");
if (result == 1) // Cancel
return;
break;
}
}
// close all editor tabs
do {
@ -667,11 +673,17 @@ void PTextEdit::fileCloseAllOthers()
if ( !currentEditor() )
return;
int result = QMessageBox::warning(this, "**WARNING**",
"Do you really want to close all files.\nChanges of unsaved files will be lost",
"Close", "Cancel");
if (result == 1) // Cancel
return;
// check if there are any unsaved tabs
for (int i=0; i<fTabWidget->count(); i++) {
if (fTabWidget->label(i).find("*") > 0) {
int result = QMessageBox::warning(this, "**WARNING**",
"Do you really want to close all files.\nChanges of unsaved files will be lost",
"Close", "Cancel");
if (result == 1) // Cancel
return;
break;
}
}
// keep label of the current editor
QString label = fTabWidget->label(fTabWidget->currentPageIndex());