Warning, file /plasma/plasma-workspace/kcms/style/styleconfdialog.cpp was not indexed or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).

0001 /*
0002     KCMStyle's container dialog for custom style setup dialogs
0003 
0004     SPDX-FileCopyrightText: 2003 Maksim Orlovich <maksim.orlovich@kdemail.net>
0005 
0006     SPDX-License-Identifier: GPL-2.0-only
0007 */
0008 
0009 #include "styleconfdialog.h"
0010 #include <KConfigGroup>
0011 #include <KLocalizedString>
0012 #include <QDialogButtonBox>
0013 #include <QPushButton>
0014 #include <QVBoxLayout>
0015 
0016 StyleConfigDialog::StyleConfigDialog(QWidget *parent, const QString &styleName)
0017     : QDialog(parent)
0018 {
0019     setObjectName(QStringLiteral("StyleConfigDialog"));
0020     setModal(true);
0021     setWindowTitle(i18n("Configure %1", styleName));
0022     QVBoxLayout *mainLayout = new QVBoxLayout(this);
0023 
0024     QWidget *mainWidget = new QWidget(this);
0025     QDialogButtonBox *buttonBox = new QDialogButtonBox(QDialogButtonBox::Ok | QDialogButtonBox::Cancel | QDialogButtonBox::RestoreDefaults, this);
0026     mainLayout->addWidget(mainWidget);
0027 
0028     mMainLayout = new QHBoxLayout(mainWidget);
0029     mMainLayout->setContentsMargins(0, 0, 0, 0);
0030 
0031     QPushButton *okButton = buttonBox->button(QDialogButtonBox::Ok);
0032     okButton->setDefault(true);
0033     okButton->setShortcut(Qt::CTRL | Qt::Key_Return);
0034     connect(buttonBox, &QDialogButtonBox::accepted, this, &StyleConfigDialog::slotAccept);
0035     connect(buttonBox, &QDialogButtonBox::rejected, this, &QDialog::reject);
0036     connect(buttonBox->button(QDialogButtonBox::RestoreDefaults), &QPushButton::clicked, this, &StyleConfigDialog::defaults);
0037     mainLayout->addWidget(buttonBox);
0038 
0039     buttonBox->button(QDialogButtonBox::Cancel)->setDefault(true);
0040     m_dirty = false;
0041 }
0042 
0043 bool StyleConfigDialog::isDirty() const
0044 {
0045     return m_dirty;
0046 }
0047 
0048 void StyleConfigDialog::setDirty(bool dirty)
0049 {
0050     m_dirty = dirty;
0051 }
0052 
0053 void StyleConfigDialog::slotAccept()
0054 {
0055     Q_EMIT save();
0056     QDialog::accept();
0057 }
0058 
0059 void StyleConfigDialog::setMainWidget(QWidget *w)
0060 {
0061     mMainLayout->addWidget(w);
0062 }