KConfigWidgets
kconfigdialog.cpp
34 const QString dialogName = !name.isEmpty() ? name : QString::asprintf("SettingsDialog-%p", static_cast<void *>(q));
42 buttonBox->setStandardButtons(QDialogButtonBox::RestoreDefaults | QDialogButtonBox::Ok | QDialogButtonBox::Apply | QDialogButtonBox::Cancel
44 QObject::connect(buttonBox->button(QDialogButtonBox::Ok), &QAbstractButton::clicked, q, &KConfigDialog::updateSettings);
45 QObject::connect(buttonBox->button(QDialogButtonBox::Apply), &QAbstractButton::clicked, q, &KConfigDialog::updateSettings);
46 QObject::connect(buttonBox->button(QDialogButtonBox::Apply), &QAbstractButton::clicked, q, [this]() {
49 QObject::connect(buttonBox->button(QDialogButtonBox::Cancel), &QAbstractButton::clicked, q, &KConfigDialog::updateWidgets);
50 QObject::connect(buttonBox->button(QDialogButtonBox::RestoreDefaults), &QAbstractButton::clicked, q, &KConfigDialog::updateWidgetsDefault);
51 QObject::connect(buttonBox->button(QDialogButtonBox::RestoreDefaults), &QAbstractButton::clicked, q, [this]() {
54 QObject::connect(buttonBox->button(QDialogButtonBox::Help), &QAbstractButton::clicked, q, &KConfigDialog::showHelp);
66 KPageWidgetItem *addPageInternal(QWidget *page, const QString &itemName, const QString &pixmapName, const QString &header);
109 auto it = std::find_if(openDlgs.cbegin(), openDlgs.cend(), [=](const KConfigDialogPrivate::OpenDialogInfo &info) {
118 KPageWidgetItem *KConfigDialog::addPage(QWidget *page, const QString &itemName, const QString &pixmapName, const QString &header, bool manage)
141 KPageWidgetItem *KConfigDialog::addPage(QWidget *page, KCoreConfigSkeleton *config, const QString &itemName, const QString &pixmapName, const QString &header)
164 KPageWidgetItem *KConfigDialogPrivate::addPageInternal(QWidget *page, const QString &itemName, const QString &pixmapName, const QString &header)
184 // We can only set the minimumSize(), so this approach relies on QStackedWidget size calculation.
185 scroll->setMinimumWidth(scroll->sizeHint().width() + qBound(0, scroll->verticalScrollBar()->sizeHint().width(), 200) + 4);
210 q->connect(buttonBox->button(QDialogButtonBox::Ok), &QPushButton::clicked, manager, &KConfigDialogManager::updateSettings);
211 q->connect(buttonBox->button(QDialogButtonBox::Apply), &QPushButton::clicked, manager, &KConfigDialogManager::updateSettings);
212 q->connect(buttonBox->button(QDialogButtonBox::Cancel), &QPushButton::clicked, manager, &KConfigDialogManager::updateWidgets);
213 q->connect(buttonBox->button(QDialogButtonBox::RestoreDefaults), &QPushButton::clicked, manager, &KConfigDialogManager::updateWidgetsDefault);
223 const bool hasManagerChanged = std::any_of(m_managerForPage.cbegin(), m_managerForPage.cend(), [](const WidgetManager &widgetManager) {
237 const bool isManagerDefaulted = std::all_of(m_managerForPage.cbegin(), m_managerForPage.cend(), [](const WidgetManager &widgetManager) {
241 restoreDefaultsButton->setDisabled(manager->isDefault() && q->isDefault() && isManagerDefaulted);
246 auto it = std::find_if(d->m_managerForPage.cbegin(), d->m_managerForPage.cend(), [item](const KConfigDialogPrivate::WidgetManager &wm) {
QScrollBar * verticalScrollBar() const const
void setHelp(const QString &anchor, const QString &appname=QString())
Sets the help path and topic.
Definition: kconfigdialog.cpp:347
void setSizePolicy(QSizePolicy)
void setDisabled(bool disable)
virtual QSize sizeHint() const const override
KConfigDialog(QWidget *parent, const QString &name, KCoreConfigSkeleton *config)
Definition: kconfigdialog.cpp:99
void clicked(bool checked)
QIcon fromTheme(const QString &name)
ScrollBarAsNeeded
static bool showDialog(const QString &name)
Attempts to show the dialog with the name 'name'.
Definition: kconfigdialog.cpp:267
int width() const const
void setFrameShape(QFrame::Shape)
virtual QSize sizeHint() const const override
QMetaObject::Connection connect(const QObject *sender, const char *signal, const QObject *receiver, const char *method, Qt::ConnectionType type)
void setStandardButtons(QDialogButtonBox::StandardButtons buttons)
void addWidget(QWidget *widget, int stretch, Qt::Alignment alignment)
void setIcon(const QIcon &icon)
void setHorizontalScrollBarPolicy(Qt::ScrollBarPolicy)
void widgetModified()
If retrieveSettings() was told to track changes then if any known setting was changed this signal wil...
int height() const const
virtual bool hasChanged()
Returns whether the current state of the dialog is different from the current configuration.
Definition: kconfigdialog.cpp:327
KPageWidgetItem * addPage(QWidget *page, const QString &itemName, const QString &pixmapName=QString(), const QString &header=QString(), bool manage=true)
Adds page to the dialog and to KConfigDialogManager.
Definition: kconfigdialog.cpp:118
void updateWidgets()
Traverse the specified widgets, sets the state of all known widgets according to the state in the set...
Definition: kconfigdialogmanager.cpp:323
~KConfigDialog() override
Deconstructor, removes name from the list of open dialogs.
Definition: kconfigdialog.cpp:105
bool isEmpty() const const
void updateWidgetsDefault()
Traverse the specified widgets, sets the state of all known widgets according to the default state in...
Definition: kconfigdialogmanager.cpp:362
virtual bool isDefault()
Returns whether the current state of the dialog is the same as the default configuration.
Definition: kconfigdialog.cpp:332
virtual void showEvent(QShowEvent *event) override
static KConfigDialog * exists(const QString &name)
See if a dialog with the name 'name' already exists.
Definition: kconfigdialog.cpp:257
virtual void updateWidgets()
Update the dialog based on the settings.
Definition: kconfigdialog.cpp:319
KSharedConfigPtr config()
bool isEnabled() const const
RestoreDefaults
void show()
minimumSizeHint
void settingsChanged()
One or more of the settings have been saved (such as when the user clicks on the Apply button).
Provides a means of automatically retrieving, saving and resetting KConfigSkeleton based settings in ...
Definition: kconfigdialogmanager.h:199
NoFrame
void setWidgetResizable(bool resizable)
void updateSettings()
Traverse the specified widgets, saving the settings of all known widgets in the settings object.
Definition: kconfigdialogmanager.cpp:375
QPushButton * button(QDialogButtonBox::StandardButton which) const const
objectName
QString name(StandardShortcut id)
sizeHint
void setContentsMargins(int left, int top, int right, int bottom)
QString i18nc(const char *context, const char *text, const TYPE &arg...)
void setMinimumWidth(int minw)
void invokeHelp(const QString &anchor=QString(), const QString &appname=QString())
Invokes the KHelpCenter HTML help viewer from docbook sources.
Definition: khelpclient.cpp:17
MinimumExpanding
QString asprintf(const char *cformat,...)
void setHeader(const QString &header)
virtual void updateWidgetsDefault()
Update the dialog based on the default settings.
Definition: kconfigdialog.cpp:323
QDialogButtonBox * buttonBox()
void setVerticalScrollBarPolicy(Qt::ScrollBarPolicy)
void setWidget(QWidget *widget)
void pageRemoved(KPageWidgetItem *page)
This file is part of the KDE documentation.
Documentation copyright © 1996-2023 The KDE developers.
Generated on Tue Sep 26 2023 03:47:13 by doxygen 1.8.17 written by Dimitri van Heesch, © 1997-2006
Documentation copyright © 1996-2023 The KDE developers.
Generated on Tue Sep 26 2023 03:47:13 by doxygen 1.8.17 written by Dimitri van Heesch, © 1997-2006
KDE's Doxygen guidelines are available online.