File indexing completed on 2025-03-09 04:54:45
0001 /* 0002 SPDX-FileCopyrightText: 2013-2024 Laurent Montel <montel@kde.org> 0003 0004 SPDX-License-Identifier: GPL-2.0-or-later 0005 */ 0006 0007 #include "printingsettings.h" 0008 #include "settings/messageviewersettings.h" 0009 #include "ui_printingsettings.h" 0010 #include <PimCommon/ConfigureImmutableWidgetUtils> 0011 using namespace PimCommon::ConfigureImmutableWidgetUtils; 0012 0013 using namespace MessageViewer; 0014 0015 class MessageViewer::PrintingSettingsPrivate 0016 { 0017 public: 0018 PrintingSettingsPrivate() 0019 : mPrintingUi(new Ui_PrintingSettings) 0020 { 0021 } 0022 0023 ~PrintingSettingsPrivate() 0024 { 0025 delete mPrintingUi; 0026 } 0027 0028 Ui_PrintingSettings *const mPrintingUi; 0029 }; 0030 0031 PrintingSettings::PrintingSettings(QWidget *parent) 0032 : QWidget(parent) 0033 , d(new MessageViewer::PrintingSettingsPrivate) 0034 { 0035 d->mPrintingUi->setupUi(this); 0036 connect(d->mPrintingUi->mPrintEmptySelectedText, &QCheckBox::toggled, this, &PrintingSettings::changed); 0037 connect(d->mPrintingUi->respectExpandCollapseSettings, &QCheckBox::toggled, this, &PrintingSettings::changed); 0038 connect(d->mPrintingUi->printBackgroundColorAndImages, &QCheckBox::toggled, this, &PrintingSettings::changed); 0039 connect(d->mPrintingUi->alwaysShowEncryptionSignatureDetail, &QCheckBox::toggled, this, &PrintingSettings::changed); 0040 } 0041 0042 PrintingSettings::~PrintingSettings() = default; 0043 0044 void PrintingSettings::save() 0045 { 0046 saveCheckBox(d->mPrintingUi->mPrintEmptySelectedText, MessageViewer::MessageViewerSettings::self()->printSelectedTextItem()); 0047 saveCheckBox(d->mPrintingUi->respectExpandCollapseSettings, MessageViewer::MessageViewerSettings::self()->respectExpandCollapseSettingsItem()); 0048 saveCheckBox(d->mPrintingUi->printBackgroundColorAndImages, MessageViewer::MessageViewerSettings::self()->printBackgroundColorImagesItem()); 0049 saveCheckBox(d->mPrintingUi->alwaysShowEncryptionSignatureDetail, MessageViewer::MessageViewerSettings::self()->alwaysShowEncryptionSignatureDetailsItem()); 0050 } 0051 0052 void PrintingSettings::doLoadFromGlobalSettings() 0053 { 0054 loadWidget(d->mPrintingUi->mPrintEmptySelectedText, MessageViewer::MessageViewerSettings::self()->printSelectedTextItem()); 0055 loadWidget(d->mPrintingUi->respectExpandCollapseSettings, MessageViewer::MessageViewerSettings::self()->respectExpandCollapseSettingsItem()); 0056 loadWidget(d->mPrintingUi->printBackgroundColorAndImages, MessageViewer::MessageViewerSettings::self()->printBackgroundColorImagesItem()); 0057 loadWidget(d->mPrintingUi->alwaysShowEncryptionSignatureDetail, MessageViewer::MessageViewerSettings::self()->alwaysShowEncryptionSignatureDetailsItem()); 0058 } 0059 0060 void PrintingSettings::doResetToDefaultsOther() 0061 { 0062 const bool bUseDefaults = MessageViewer::MessageViewerSettings::self()->useDefaults(true); 0063 doLoadFromGlobalSettings(); 0064 MessageViewer::MessageViewerSettings::self()->useDefaults(bUseDefaults); 0065 } 0066 0067 #include "moc_printingsettings.cpp"