Messagelib

configurefiltersdialog.cpp
1/*
2 SPDX-FileCopyrightText: 2021-2024 Laurent Montel <montel@kde.org>
3
4 SPDX-License-Identifier: GPL-2.0-or-later
5*/
6#include "configurefiltersdialog.h"
7#include "configurefilterswidget.h"
8#include <KConfigGroup>
9#include <KLocalizedString>
10#include <KSharedConfig>
11#include <QDialogButtonBox>
12#include <QVBoxLayout>
13
14using namespace MessageList::Core;
15namespace
16{
17static const char myConfigureFiltersDialogConfigGroupName[] = "ConfigureFiltersDialog";
18}
19
20ConfigureFiltersDialog::ConfigureFiltersDialog(QWidget *parent)
21 : QDialog(parent)
22 , mConfigureFiltersWidget(new ConfigureFiltersWidget(this))
23{
24 setWindowTitle(i18nc("@title:window", "Configure Filter"));
25 auto mainLayout = new QVBoxLayout(this);
26 mainLayout->setObjectName(QLatin1StringView("mainLayout"));
27
28 mConfigureFiltersWidget->setObjectName(QLatin1StringView("mConfigureFiltersWidget"));
29 mainLayout->addWidget(mConfigureFiltersWidget);
30
31 auto button = new QDialogButtonBox(QDialogButtonBox::Close, this);
32 mainLayout->addWidget(button);
33 connect(button, &QDialogButtonBox::accepted, this, &ConfigureFiltersDialog::accept);
34 connect(button, &QDialogButtonBox::rejected, this, &ConfigureFiltersDialog::reject);
35 readConfig();
36}
37
38ConfigureFiltersDialog::~ConfigureFiltersDialog()
39{
40 writeConfig();
41}
42
43void ConfigureFiltersDialog::readConfig()
44{
46 const QSize size = group.readEntry("Size", QSize(600, 400));
47 if (size.isValid()) {
48 resize(size);
49 }
50}
51
52void ConfigureFiltersDialog::writeConfig()
53{
55 group.writeEntry("Size", size());
56 group.sync();
57}
58
59#include "moc_configurefiltersdialog.cpp"
static KSharedConfig::Ptr openStateConfig(const QString &fileName=QString())
QString i18nc(const char *context, const char *text, const TYPE &arg...)
The implementation independent part of the MessageList library.
Definition aggregation.h:22
T qobject_cast(QObject *object)
QFuture< ArgsType< Signal > > connect(Sender *sender, Signal signal)
This file is part of the KDE documentation.
Documentation copyright © 1996-2024 The KDE developers.
Generated on Tue Mar 26 2024 11:12:43 by doxygen 1.10.0 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.