Changeset View
Changeset View
Standalone View
Standalone View
src/widgets/executablefileopendialog.cpp
Show All 21 Lines | |||||
22 | #include <QCheckBox> | 22 | #include <QCheckBox> | ||
23 | #include <QLabel> | 23 | #include <QLabel> | ||
24 | #include <QPushButton> | 24 | #include <QPushButton> | ||
25 | #include <QDialogButtonBox> | 25 | #include <QDialogButtonBox> | ||
26 | #include <QVBoxLayout> | 26 | #include <QVBoxLayout> | ||
27 | 27 | | |||
28 | #include <KLocalizedString> | 28 | #include <KLocalizedString> | ||
29 | 29 | | |||
30 | ExecutableFileOpenDialog::ExecutableFileOpenDialog(QWidget *parent) : | 30 | ExecutableFileOpenDialog::ExecutableFileOpenDialog(ExecutableFileOpenDialog::Mode mode, QWidget *parent) : | ||
31 | QDialog(parent) | 31 | QDialog(parent) | ||
32 | { | 32 | { | ||
33 | QLabel *label = new QLabel(i18n("What do you wish to do with this executable file?"), this); | 33 | QLabel *label = new QLabel(i18n("What do you wish to do with this executable file?"), this); | ||
34 | 34 | | |||
35 | m_dontAskAgain = new QCheckBox(this); | 35 | m_dontAskAgain = new QCheckBox(this); | ||
36 | m_dontAskAgain->setText(i18n("Do not ask again")); | 36 | m_dontAskAgain->setText(i18n("Do not ask again")); | ||
37 | 37 | | |||
38 | QPushButton *openButton = new QPushButton(i18n("&Open"), this); | 38 | QDialogButtonBox *buttonBox = new QDialogButtonBox(QDialogButtonBox::Cancel, this); | ||
39 | QPushButton *executeButton = new QPushButton(i18n("&Execute"), this); | | |||
40 | 39 | | |||
40 | QPushButton *openButton; | ||||
41 | if (mode == OpenOrExecute) { | ||||
42 | openButton = new QPushButton(i18n("&Open"), this); | ||||
41 | openButton->setIcon(QIcon::fromTheme(QStringLiteral("document-preview"))); | 43 | openButton->setIcon(QIcon::fromTheme(QStringLiteral("document-preview"))); | ||
42 | executeButton->setIcon(QIcon::fromTheme(QStringLiteral("system-run"))); | | |||
43 | | ||||
44 | QDialogButtonBox *buttonBox = new QDialogButtonBox(QDialogButtonBox::Cancel, this); | | |||
45 | buttonBox->addButton(openButton, QDialogButtonBox::AcceptRole); | 44 | buttonBox->addButton(openButton, QDialogButtonBox::AcceptRole); | ||
45 | } | ||||
46 | | ||||
47 | QPushButton *executeButton = new QPushButton(i18n("&Execute"), this); | ||||
48 | executeButton->setIcon(QIcon::fromTheme(QStringLiteral("system-run"))); | ||||
46 | buttonBox->addButton(executeButton, QDialogButtonBox::AcceptRole); | 49 | buttonBox->addButton(executeButton, QDialogButtonBox::AcceptRole); | ||
47 | 50 | | |||
48 | QVBoxLayout *layout = new QVBoxLayout(this); | 51 | QVBoxLayout *layout = new QVBoxLayout(this); | ||
49 | layout->addWidget(label); | 52 | layout->addWidget(label); | ||
50 | layout->addWidget(m_dontAskAgain); | 53 | layout->addWidget(m_dontAskAgain); | ||
51 | layout->addWidget(buttonBox); | 54 | layout->addWidget(buttonBox); | ||
52 | setLayout(layout); | 55 | setLayout(layout); | ||
53 | 56 | | |||
57 | | ||||
58 | if (mode == OnlyExecute) { | ||||
ppeter: ```
if (mode == OnlyExecute)
connect(executeButton, ...)
else if (mode == OpenAsExecute)
... | |||||
That would be against the common KDE coding style: https://community.kde.org/Policies/Kdelibs_Coding_Style#Braces GB_2: That would be against the common KDE coding style: https://community.kde. | |||||
59 | connect(executeButton, &QPushButton::clicked, [=]{done(ExecuteFile);}); | ||||
60 | } else if (mode == OpenAsExecute) { | ||||
61 | connect(executeButton, &QPushButton::clicked, [=]{done(OpenFile);}); | ||||
62 | } else { | ||||
54 | connect(openButton, &QPushButton::clicked, [=]{done(OpenFile);}); | 63 | connect(openButton, &QPushButton::clicked, [=]{done(OpenFile);}); | ||
55 | connect(executeButton, &QPushButton::clicked, [=]{done(ExecuteFile);}); | 64 | connect(executeButton, &QPushButton::clicked, [=]{done(ExecuteFile);}); | ||
65 | } | ||||
56 | connect(buttonBox, &QDialogButtonBox::rejected, this, &ExecutableFileOpenDialog::reject); | 66 | connect(buttonBox, &QDialogButtonBox::rejected, this, &ExecutableFileOpenDialog::reject); | ||
57 | } | 67 | } | ||
58 | 68 | | |||
69 | ExecutableFileOpenDialog::ExecutableFileOpenDialog(QWidget *parent) : | ||||
70 | ExecutableFileOpenDialog(ExecutableFileOpenDialog::OpenOrExecute, parent) { } | ||||
71 | | ||||
59 | bool ExecutableFileOpenDialog::isDontAskAgainChecked() const | 72 | bool ExecutableFileOpenDialog::isDontAskAgainChecked() const | ||
60 | { | 73 | { | ||
61 | return m_dontAskAgain->isChecked(); | 74 | return m_dontAskAgain->isChecked(); | ||
62 | } | 75 | } | ||
63 | 76 | |
looks better :)