]> git.sven.stormbind.net Git - sven/vym.git/blob - src/warningdialog.cpp
Replace Pierre as the maintainer
[sven/vym.git] / src / warningdialog.cpp
1 #include "warningdialog.h"
2 #include "settings.h"
3
4 extern Settings settings;
5
6 WarningDialog::WarningDialog(QWidget *parent) : QDialog(parent)
7 {
8     ui.setupUi(this);
9     // TODO proper icon for proceed needed
10     ui.okButton->setText(tr("Proceed"));
11     // ui.warningSign->setPixmap (QPixmap(":/vym.png"));
12     ui.showAgainBox->setText(tr("Show this message again"));
13     useShowAgain = false;
14     ui.showAgainBox->hide();
15     QDialog::setWindowTitle(
16         "VYM - " + tr("Warning", "Warning dialog default window name"));
17 }
18
19 int WarningDialog::exec()
20 {
21     int result;
22     if (settings.value("/warningDialog/" + showAgainName + "/showAgain", true)
23             .toBool()) {
24         // Really show dialog
25         result = QDialog::exec();
26         if (result == QDialog::Accepted) {
27             if (useShowAgain) {
28                 settings.setValue("/warningDialog/" + showAgainName + "/value",
29                                   result);
30                 settings.setValue("/warningDialog/" + showAgainName +
31                                       "/showAgain",
32                                   ui.showAgainBox->isChecked());
33                 settings.setValue("/warningDialog/" + showAgainName +
34                                       "/showAgain",
35                                   ui.showAgainBox->isChecked());
36             }
37         }
38     }
39     else {
40         // Surpress dialog and use result from last shown dialog
41         result = settings.value("/warningDialog/" + showAgainName + "/value", 0)
42                      .toInt();
43     }
44     return result;
45 }
46
47 void WarningDialog::showCancelButton(bool b)
48 {
49     if (b) {
50         ui.cancelButton->show();
51         ui.cancelButton->setText(tr("Cancel"));
52     }
53     else
54         ui.cancelButton->hide();
55 }
56
57 void WarningDialog::setShowAgainName(const QString &s)
58 {
59     showAgainName = s;
60     useShowAgain = true;
61     ui.showAgainBox->show();
62 }
63
64 void WarningDialog::setText(const QString &s) { ui.warningTE->setText(s); }
65
66 void WarningDialog::setCaption(const QString &s)
67 {
68     QDialog::setWindowTitle("VYM - " + s);
69 }
70 void WarningDialog::setAcceptedText(const QString &s)
71 {
72     ui.okButton->setText(s);
73 }