File indexing completed on 2024-05-12 05:13:14

0001 /*
0002   SPDX-FileCopyrightText: 2000, 2001 Cornelius Schumacher <schumacher@kde.org>
0003   SPDX-FileCopyrightText: 2003-2004 Reinhold Kainhofer <reinhold@kainhofer.com>
0004 
0005   SPDX-License-Identifier: GPL-2.0-or-later WITH Qt-Commercial-exception-1.0
0006 */
0007 #pragma once
0008 
0009 #include "calendarsupport_export.h"
0010 
0011 #include <Akonadi/ETMCalendar>
0012 #include <QDialog>
0013 
0014 class QComboBox;
0015 class KDateComboBox;
0016 class QSpinBox;
0017 class KUrlRequester;
0018 
0019 class QCheckBox;
0020 class QRadioButton;
0021 class QPushButton;
0022 
0023 namespace Akonadi
0024 {
0025 class IncidenceChanger;
0026 class ETMCalendar;
0027 }
0028 
0029 namespace CalendarSupport
0030 {
0031 class CALENDARSUPPORT_EXPORT ArchiveDialog : public QDialog
0032 {
0033     Q_OBJECT
0034 public:
0035     ArchiveDialog(const Akonadi::ETMCalendar::Ptr &calendar, Akonadi::IncidenceChanger *changer, QWidget *parent = nullptr);
0036     ~ArchiveDialog() override;
0037 
0038 Q_SIGNALS:
0039     // connected by KODialogManager to CalendarView
0040     void eventsDeleted();
0041     void autoArchivingSettingsModified();
0042 
0043 private:
0044     CALENDARSUPPORT_NO_EXPORT void slotEventsDeleted();
0045     CALENDARSUPPORT_NO_EXPORT void slotUser1();
0046     CALENDARSUPPORT_NO_EXPORT void slotEnableUser1();
0047     CALENDARSUPPORT_NO_EXPORT void slotActionChanged();
0048     CALENDARSUPPORT_NO_EXPORT void showWhatsThis();
0049     KUrlRequester *mArchiveFile = nullptr;
0050     KDateComboBox *mDateEdit = nullptr;
0051     QCheckBox *mDeleteCb = nullptr;
0052     QRadioButton *mArchiveOnceRB = nullptr;
0053     QRadioButton *mAutoArchiveRB = nullptr;
0054     QSpinBox *mExpiryTimeNumInput = nullptr;
0055     QComboBox *mExpiryUnitsComboBox = nullptr;
0056     QCheckBox *mEvents = nullptr;
0057     QCheckBox *mTodos = nullptr;
0058     Akonadi::IncidenceChanger *mChanger = nullptr;
0059     Akonadi::ETMCalendar::Ptr mCalendar;
0060     QPushButton *const mUser1Button;
0061 };
0062 }