File indexing completed on 2024-04-28 15:51:55

0001 /*
0002     SPDX-FileCopyrightText: 2004 Enrico Ros <eros.kde@email.it>
0003 
0004     SPDX-License-Identifier: GPL-2.0-or-later
0005 */
0006 
0007 #ifndef _PREFERENCESDIALOG_H
0008 #define _PREFERENCESDIALOG_H
0009 
0010 #include "part.h"
0011 #include "settings.h"
0012 #include <KConfigDialog>
0013 
0014 class QWidget;
0015 class KConfigSkeleton;
0016 
0017 class DlgGeneral;
0018 class DlgPerformance;
0019 class DlgAccessibility;
0020 class DlgPresentation;
0021 class DlgAnnotations;
0022 class DlgEditor;
0023 class DlgSignatures;
0024 class DlgDebug;
0025 
0026 class PreferencesDialog : public KConfigDialog
0027 {
0028     Q_OBJECT
0029 
0030 public:
0031     PreferencesDialog(QWidget *parent, KConfigSkeleton *skeleton, Okular::EmbedMode embedMode, const QString &editCmd);
0032 
0033     void switchToAccessibilityPage();
0034     void switchToAnnotationsPage();
0035 
0036 protected:
0037     //      void updateSettings(); // Called when OK/Apply is pressed.
0038     //      void updateWidgets(); // Called upon construction or when Reset is pressed
0039     //      void updateWidgetsDefault(); // Called when Defaults button is pressed
0040     //      bool hasChanged(); // In order to correctly disable/enable Apply button
0041     //      bool isDefault(); //  In order to correctly disable/enable Defaults button
0042 
0043 private:
0044     DlgGeneral *m_general;
0045     DlgPerformance *m_performance;
0046     DlgAccessibility *m_accessibility;
0047     DlgPresentation *m_presentation;
0048     DlgAnnotations *m_annotations;
0049     DlgEditor *m_editor;
0050     DlgSignatures *m_signatures;
0051 #ifdef OKULAR_DEBUG_CONFIGPAGE
0052     DlgDebug *m_debug;
0053 #endif
0054 
0055     KPageWidgetItem *m_accessibilityPage;
0056     KPageWidgetItem *m_annotationsPage;
0057 };
0058 
0059 #endif