File indexing completed on 2024-04-28 05:11:29
0001 /* 0002 SPDX-FileCopyrightText: 2010 Bertjan Broeksema <broeksema@kde.org> 0003 SPDX-FileCopyrightText: 2010 Klaralvdalens Datakonsult AB, a KDAB Group company <info@kdab.net> 0004 0005 SPDX-License-Identifier: LGPL-2.0-or-later 0006 */ 0007 0008 #pragma once 0009 0010 #include <KCalendarCore/Alarm> 0011 0012 #include <QStringList> 0013 0014 namespace IncidenceEditorNG 0015 { 0016 enum { 0017 // Fallback in case config is invalid 0018 DEFAULT_REMINDER_OFFSET = 15 // minutes 0019 }; 0020 0021 namespace AlarmPresets 0022 { 0023 enum When { BeforeStart, BeforeEnd }; 0024 0025 /** 0026 * Returns the available presets. 0027 */ 0028 [[nodiscard]] QStringList availablePresets(When when = BeforeStart); 0029 0030 /** 0031 * Returns a recurrence preset for given name. The name <em>must</em> be one 0032 * of availablePresets(). 0033 * 0034 * Note: The caller takes ownership over the pointer. 0035 */ 0036 [[nodiscard]] KCalendarCore::Alarm::Ptr preset(When when, const QString &name); 0037 0038 /** 0039 * Returns an Alarm configured accordingly to the default preset. 0040 * 0041 * Note: The caller takes ownership over the pointer. 0042 */ 0043 [[nodiscard]] KCalendarCore::Alarm::Ptr defaultAlarm(When when); 0044 0045 /** 0046 * Returns the index of the preset in availablePresets for the given recurrence, 0047 * or -1 if no preset is equal to the given recurrence. 0048 */ 0049 [[nodiscard]] int presetIndex(When when, const KCalendarCore::Alarm::Ptr &alarm); 0050 0051 /** 0052 Returns the index of the default preset. ( Comes from KCalPrefs ). 0053 */ 0054 [[nodiscard]] int defaultPresetIndex(); 0055 } 0056 }