Krita Source Code Documentation
Loading...
Searching...
No Matches
KisMediaEncoderFormatPreferencesDialog.cpp
Go to the documentation of this file.
1/*
2 * SPDX-License-Identifier: GPL-3.0-or-later
3 */
5
6#include <QDialogButtonBox>
7#include <QLabel>
8#include <QPushButton>
9#include <QVBoxLayout>
10
11#include <klocalizedstring.h>
12
14
16 const QVariantMap &preferences,
17 QWidget *parent)
18 : QDialog(parent)
19 , m_format(format)
20{
21 resize(400, 300);
22 QVBoxLayout *dlgLayout = new QVBoxLayout(this);
23
24 QDialogButtonBox *buttons;
26 if (m_widget) {
27 dlgLayout->addWidget(m_widget, 1);
28 buttons = new QDialogButtonBox(QDialogButtonBox::Ok | QDialogButtonBox::Cancel | QDialogButtonBox::Reset);
29 } else {
30 QLabel *noPreferencesLabel = new QLabel(i18n("This format has no preferences."));
31 noPreferencesLabel->setAlignment(Qt::AlignCenter);
32 noPreferencesLabel->setWordWrap(true);
33 dlgLayout->addWidget(noPreferencesLabel);
34 buttons = new QDialogButtonBox(QDialogButtonBox::Close);
35 }
36
37 dlgLayout->addWidget(buttons);
38 connect(buttons, &QDialogButtonBox::accepted, this, &KisMediaEncoderPreferencesDialog::accept);
39 connect(buttons, &QDialogButtonBox::rejected, this, &KisMediaEncoderPreferencesDialog::reject);
40
41 QPushButton *resetButton = buttons->button(QDialogButtonBox::Reset);
42 if (resetButton) {
43 connect(resetButton, &QPushButton::clicked, this, &KisMediaEncoderPreferencesDialog::slotReset);
44 }
45}
46
51
virtual QWidget * createPreferencesWidget(const QVariantMap &preferences) const =0
virtual QVariantMap getPreferencesFromWidget(QWidget *widget) const =0
virtual void resetPreferencesWidget(QWidget *widget) const =0
KisMediaEncoderPreferencesDialog(KisMediaEncoderFormat *format, const QVariantMap &preferences, QWidget *parent=nullptr)
QString buttons(const T &ev)