Improve wording in askSaveChanges()

Don't Save/Cancel/Save is less ambiguous than OK/Cancel/Save. Also
being slightly more verbose when creating the QMessageBox.

Signed-off-by: Henrik Brautaset Aronsen <subsurface@henrik.synth.no>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This commit is contained in:
Henrik Brautaset Aronsen 2013-05-24 09:28:48 +02:00 committed by Dirk Hohndel
parent 6fa670e612
commit 57e7c3f5d0

View file

@ -289,19 +289,26 @@ QString MainWindow::filter()
bool MainWindow::askSaveChanges()
{
QString message;
QMessageBox::StandardButton response;
QMessageBox response;
if (existing_filename)
message = tr("You have unsaved changes to file: %1\nDo you really want to close the file without saving?").arg(existing_filename);
message = tr("Do you want to save the changes you made in the file %1?").arg(existing_filename);
else
message = tr("You have unsaved changes\nDo you really want to close the datafile without saving?");
message = tr("Do you want to save the changes you made in the datafile?");
response = QMessageBox::question(this, tr("Save Changes?"), message,
QMessageBox::Save | QMessageBox::Cancel | QMessageBox::Ok, QMessageBox::Save);
if (response == QMessageBox::Save) {
response.setStandardButtons(QMessageBox::Save | QMessageBox::Discard | QMessageBox::Cancel);
response.setDefaultButton(QMessageBox::Save);
response.setText(message);
response.setWindowTitle(tr("Save Changes?")); // Not displayed on MacOSX as described in Qt API
response.setInformativeText(tr("Changes will be lost if you don't save them."));
response.setIcon(QMessageBox::Warning);
int ret = response.exec();
switch (ret) {
case QMessageBox::Save:
file_save();
return true;
} else if (response == QMessageBox::Ok) {
case QMessageBox::Discard:
return true;
}
return false;