Помогите найти ляп. Есть функция выводящая предупреждение о том что документ не сохранен, основывающаяся на переменной textChanged, если она равна нулю то вернуть true что должно привести к игнорированию вывода сообщения, если же там число не равное нулю должно быть выдан диалог. Функция вызывается в переопределенном обработчике события QCloseEvent. Ожидаемой функциональности не видно, диалог выводится с полной функциональностью даже при textChanged = = 0.
Код | bool MainWindow::okToContinue() { int r = QMessageBox::warning(this, tr("NFL"), tr("Документ не был сохранен.\n" "Сохранить документ?"), QMessageBox::Yes | QMessageBox::Default, QMessageBox::No, QMessageBox::Cancel | QMessageBox::Escape);
if (textChanged == 0) { return true; } else { if (r == QMessageBox::Yes) { return save(); } else { if (r == QMessageBox::Cancel) { return false; } } } }
|
Код | oid MainWindow::closeEvent(QCloseEvent *event) { if (okToContinue()) { event->accept(); } else { event->ignore(); }
|
|