[pim/kalarm] src/kalarmcalendar: Remove kaeventformatter.*

David Jarvie <[email protected]>
Newsgroups gmane.comp.kde.cvs
Message-ID <[email protected]>
Git commit 2dcac17a86af2d41b40d1fe1001680f8fcb90408 by David Jarvie, on behalf of Volker Krause.
Committed on 31/07/2026 at 12:19.
Pushed by vkrause into branch 'master'.

Remove kaeventformatter.*

Those files aren't even built, but still cause 80+ messages to get
translated.

D  +0    -450  src/kalarmcalendar/kaeventformatter.cpp
D  +0    -103  src/kalarmcalendar/kaeventformatter.h

https://invent.kde.org/pim/kalarm/-/commit/2dcac17a86af2d41b40d1fe1001680f8fcb90408

diff --git a/src/kalarmcalendar/kaeventformatter.cpp b/src/kalarmcalendar/kaeventformatter.cpp
deleted file mode 100644
index ee9b88c68..000000000
--- a/src/kalarmcalendar/kaeventformatter.cpp
+++ /dev/null
@@ -1,450 +0,0 @@
-/*
- *  kaeventformatter.cpp  -  converts KAlarmCal::KAEvent properties to text
- *  SPDX-FileCopyrightText: 2010-2023 David Jarvie <[email protected]>
- *
- *  SPDX-License-Identifier: LGPL-2.0-or-later
- */
-
-#include "kaeventformatter.h"
-
-#include "kacalendar.h"
-#include "kaevent.h"
-#include "datetime.h"
-
-#include <KCalUtils/IncidenceFormatter>
-
-#include <KLocalizedString>
-
-#include <QLocale>
-using namespace Qt::Literals::StringLiterals;
-
-static QString trueFalse(bool value);
-static QString minutes(int n);
-static QString minutesHoursDays(int minutes);
-static QString dateTime(const KAlarmCal::KADateTime&);
-
-KAEventFormatter::KAEventFormatter(const KAEvent& e, bool falseForUnspecified)
-    : mEvent(e)
-{
-    if (falseForUnspecified)
-        mUnspecifiedValue = trueFalse(false);
-}
-
-QString KAEventFormatter::label(Parameter param)
-{
-    switch (param)
-    {
-        case Id:
-            return i18nc("@label Unique identifier", "UID");
-        case AlarmType:
-            return i18nc("@label", "Alarm type");
-        case AlarmCategory:
-            return i18nc("@label", "Alarm status");
-        case Name:
-            return i18nc("@label", "Alarm name");
-        case TemplateName:
-            return i18nc("@label", "Template name");
-        case CreatedTime:
-            return i18nc("@label", "Creation time");
-        case StartTime:
-            return i18nc("@label", "Start time");
-        case TemplateAfterTime:
-            return i18nc("@label Start delay configured in an alarm template", "Template after time");
-        case Recurs:
-            return i18nc("@label", "Recurs");
-        case Recurrence:
-            return i18nc("@label", "Recurrence");
-        case SubRepetition:
-            return i18nc("@label", "Sub-repetition");
-        case RepeatInterval:
-            return i18nc("@label", "Sub-repetition interval");
-        case RepeatCount:
-            return i18nc("@label", "Sub-repetition count");
-        case NextRepetition:
-            return i18nc("@label", "Next sub-repetition");
-        case WorkTimeOnly:
-            return i18nc("@label", "Work time only");
-        case HolidaysExcluded:
-            return i18nc("@label", "Holidays excluded");
-        case NextRecurrence:
-            return i18nc("@label", "Next recurrence");
-        case LateCancel:
-            return i18nc("@label", "Late cancel");
-        case AutoClose:
-            return i18nc("@label Automatically close window", "Auto close");
-        case CopyKOrganizer:
-            return i18nc("@label", "Copy to KOrganizer");
-        case Enabled:
-            return i18nc("@label", "Enabled");
-        case ReadOnly:
-            return i18nc("@label", "Read-only");
-        case Archive:
-            return i18nc("@label Whether alarm should be archived", "Archive");
-        case Revision:
-            return i18nc("@label", "Revision");
-        case CustomProperties:
-            return i18nc("@label", "Custom properties");
-
-        case MessageText:
-            return i18nc("@label", "Message text");
-        case MessageFile:
-            return i18nc("@label File to provide text for message", "Message file");
-        case FgColour:
-            return i18nc("@label", "Foreground color");
-        case BgColour:
-            return i18nc("@label", "Background color");
-        case Font:
-            return i18nc("@label", "Font");
-        case PreAction:
-            return i18nc("@label Shell command to execute before alarm", "Pre-alarm action");
-        case PreActionCancel:
-            return i18nc("@label", "Pre-alarm action cancel");
-        case PreActionNoError:
-            return i18nc("@label", "Pre-alarm action no error");
-        case PostAction:
-            return i18nc("@label Shell command to execute after alarm", "Post-alarm action");
-        case ConfirmAck:
-            return i18nc("@label", "Confirm acknowledgement");
-        case AkonadiItem:
-            return i18nc("@label", "Akonadi Item ID");
-        case Sound:
-            return i18nc("@label Audio method", "Sound");
-        case SoundRepeat:
-            return i18nc("@label Whether audio should repeat", "Sound repeat");
-        case SoundVolume:
-            return i18nc("@label", "Sound volume");
-        case SoundFadeVolume:
-            return i18nc("@label", "Sound fade volume");
-        case SoundFadeTime:
-            return i18nc("@label", "Sound fade time");
-        case Reminder:
-            return i18nc("@label Whether the alarm has a reminder", "Reminder");
-        case ReminderOnce:
-            return i18nc("@label Whether reminder is on first recurrence only", "Reminder once only");
-        case Notify:
-            return i18nc("@label Whether to use standard notification system", "Notify");
-        case DeferralType:
-            return i18nc("@label Deferral type", "Deferral");
-        case DeferralTime:
-            return i18nc("@label", "Deferral time");
-        case DeferDefault:
-            return i18nc("@label Default deferral delay", "Deferral default");
-        case DeferDefaultDate:
-            return i18nc("@label Whether deferral time is date-only by default", "Deferral default date only");
-
-        case Command:
-            return i18nc("@label A shell command", "Command");
-        case LogFile:
-            return i18nc("@label", "Log file");
-        case CommandXTerm:
-            return i18nc("@label Execute in terminal window", "Execute in terminal");
-        case CommandHideError:
-            return i18nc("@label", "Hide command error");
-
-        case EmailSubject:
-            return i18nc("@label", "Email subject");
-        case EmailFromId:
-            return i18nc("@label Email address", "Email sender ID");
-        case EmailTo:
-            return i18nc("@label Email address", "Email to");
-        case EmailBcc:
-            return i18nc("@label true/false", "Email bcc");
-        case EmailBody:
-            return i18nc("@label", "Email body");
-        case EmailAttachments:
-            return i18nc("@label", "Email attachments");
-    }
-    return {};
-}
-
-bool KAEventFormatter::isApplicable(Parameter param) const
-{
-    switch (param)
-    {
-        case Id:
-        case AlarmType:
-        case AlarmCategory:
-        case Name:
-        case CreatedTime:
-        case StartTime:
-        case Recurs:
-        case LateCancel:
-        case Enabled:
-        case ReadOnly:
-        case Archive:
-        case Revision:
-        case CustomProperties:
-        case CopyKOrganizer:
-            return true;
-        case TemplateName:
-        case TemplateAfterTime:
-            return mEvent.isTemplate();
-        case Recurrence:
-        case RepeatCount:
-        case SubRepetition:
-        case WorkTimeOnly:
-        case HolidaysExcluded:
-        case NextRecurrence:
-            return mEvent.recurs();
-        case RepeatInterval:
-        case NextRepetition:
-            return mEvent.repetition();
-        case AutoClose:
-            return mEvent.lateCancel();
-
-        case MessageText:
-            return mEvent.actionSubType() == KAEvent::SubAction::Message;
-        case MessageFile:
-            return mEvent.actionSubType() == KAEvent::SubAction::File;
-        case FgColour:
-        case BgColour:
-        case Font:
-        case PreAction:
-        case PostAction:
-        case ConfirmAck:
-        case AkonadiItem:
-        case Reminder:
-        case Notify:
-        case DeferralType:
-        case DeferDefault:
-            return mEvent.actionTypes() & KAEvent::ACT_DISPLAY;
-        case ReminderOnce:
-            return mEvent.reminderMinutes() && mEvent.recurs();
-        case DeferralTime:
-            return mEvent.deferred();
-        case DeferDefaultDate:
-            return mEvent.deferDefaultMinutes() > 0;
-        case PreActionCancel:
-        case PreActionNoError:
-            return !mEvent.preAction().isEmpty();
-        case Sound:
-            return mEvent.actionSubType() == KAEvent::SubAction::Message || mEvent.actionSubType() == KAEvent::SubAction::Audio;
-        case SoundRepeat:
-            return !mEvent.audioFile().isEmpty();
-        case SoundVolume:
-            return mEvent.soundVolume() >= 0;
-        case SoundFadeVolume:
-        case SoundFadeTime:
-            return mEvent.fadeVolume() >= 0;
-
-        case Command:
-        case LogFile:
-        case CommandXTerm:
-        case CommandHideError:
-            return mEvent.actionSubType() == KAEvent::SubAction::Command;
-
-        case EmailSubject:
-        case EmailFromId:
-        case EmailTo:
-        case EmailBcc:
-        case EmailBody:
-        case EmailAttachments:
-            return mEvent.actionSubType() == KAEvent::SubAction::Email;
-    }
-    return false;
-}
-
-QString KAEventFormatter::value(Parameter param) const
-{
-    switch (param)
-    {
-        case Id:
-            return mEvent.id();
-        case AlarmType:
-            switch (mEvent.actionSubType())
-            {
-                case KAEvent::SubAction::Message:
-                    return i18nc("@info Alarm type", "Display (text)");
-                case KAEvent::SubAction::File:
-                    return i18nc("@info Alarm type", "Display (file)");
-                case KAEvent::SubAction::Command:
-                    return mEvent.commandDisplay()
-                           ? i18nc("@info Alarm type", "Display (command)")
-                           : i18nc("@info Alarm type", "Command");
-                case KAEvent::SubAction::Email:
-                    return i18nc("@info Alarm type", "Email");
-                case KAEvent::SubAction::Audio:
-                    return i18nc("@info Alarm type", "Audio");
-            }
-            break;
-        case AlarmCategory:
-            switch (mEvent.category())
-            {
-                case CalEvent::ACTIVE:
-                    return i18nc("@info Alarm type", "Active");
-                case CalEvent::ARCHIVED:
-                    return i18nc("@info Alarm type", "Archived");
-                case CalEvent::TEMPLATE:
-                    return i18nc("@info Alarm type", "Template");
-                default:
-                    break;
-            }
-            break;
-        case Name:
-        case TemplateName:
-            return mEvent.name();
-        case CreatedTime:
-            return mEvent.createdDateTime().toUtc().toString(QStringLiteral("%Y-%m-%d %H:%M:%SZ"));
-        case StartTime:
-            return dateTime(mEvent.startDateTime().kDateTime());
-        case TemplateAfterTime:
-            return (mEvent.templateAfterTime() >= 0) ? QLocale().toString(mEvent.templateAfterTime()) : trueFalse(false);
-        case Recurs:
-            return trueFalse(mEvent.recurs());
-        case Recurrence:
-        {
-            if (mEvent.repeatAtLogin(true))
-                return i18nc("@info Repeat at login", "At login until %1", dateTime(mEvent.mainDateTime().kDateTime()));
-            KCalendarCore::Event::Ptr eptr(new KCalendarCore::Event);
-            mEvent.updateKCalEvent(eptr, KAEvent::UidAction::Set);
-            return KCalUtils::IncidenceFormatter::recurrenceString(eptr);
-        }
-        case NextRecurrence:
-            return dateTime(mEvent.mainDateTime().kDateTime());
-        case SubRepetition:
-            return trueFalse(mEvent.repetition());
-        case RepeatInterval:
-            return mEvent.repetitionText(true);
-        case RepeatCount:
-            return mEvent.repetition() ? QLocale().toString(mEvent.repetition().count()) : QString();
-        case NextRepetition:
-            return mEvent.repetition() ? QLocale().toString(mEvent.nextRepetition()) : QString();
-        case WorkTimeOnly:
-            return trueFalse(mEvent.workTimeOnly());
-        case HolidaysExcluded:
-            return trueFalse(mEvent.holidaysExcluded());
-        case LateCancel:
-            return mEvent.lateCancel() ? minutesHoursDays(mEvent.lateCancel()) : trueFalse(false);
-        case AutoClose:
-            return trueFalse(mEvent.lateCancel() ? mEvent.autoClose() : false);
-        case CopyKOrganizer:
-            return trueFalse(mEvent.copyToKOrganizer());
-        case Enabled:
-            return trueFalse(mEvent.enabled());
-        case ReadOnly:
-            return trueFalse(mEvent.isReadOnly());
-        case Archive:
-            return trueFalse(mEvent.toBeArchived());
-        case Revision:
-            return QLocale().toString(mEvent.revision());
-        case CustomProperties:
-        {
-            if (mEvent.customProperties().isEmpty())
-                return {};
-            QString value;
-            const auto customProperties = mEvent.customProperties();
-            for (auto it = customProperties.cbegin(), end = customProperties.cend(); it != end; ++it)
-                value += QString::fromLatin1(it.key()) + ":"_L1 + it.value() + "<nl/>"_L1;
-            return i18nc("@info", "%1", value);
-        }
-
-        case MessageText:
-            return (mEvent.actionSubType() == KAEvent::SubAction::Message) ? mEvent.cleanText() : QString();
-        case MessageFile:
-            return (mEvent.actionSubType() == KAEvent::SubAction::File) ? mEvent.cleanText() : QString();
-        case FgColour:
-            return mEvent.fgColour().name();
-        case BgColour:
-            return mEvent.bgColour().name();
-        case Font:
-            return mEvent.useDefaultFont() ? i18nc("@info Using default font", "Default") : mEvent.font().toString();
-        case PreActionCancel:
-            return trueFalse(mEvent.extraActionOptions() & KAEvent::CancelOnPreActError);
-        case PreActionNoError:
-            return trueFalse(mEvent.extraActionOptions() & KAEvent::CancelOnPreActError);
-        case PreAction:
-            return mEvent.preAction();
-        case PostAction:
-            return mEvent.postAction();
-        case Reminder:
-            return mEvent.reminderMinutes() ? minutesHoursDays(mEvent.reminderMinutes()) : trueFalse(false);
-        case ReminderOnce:
-            return trueFalse(mEvent.reminderOnceOnly());
-        case Notify:
-            return trueFalse(mEvent.notify());
-        case DeferralType:
-            return mEvent.reminderDeferral() ? i18nc("@info", "Reminder") : trueFalse(mEvent.deferred());
-        case DeferralTime:
-            return mEvent.deferred() ? dateTime(mEvent.deferDateTime().kDateTime()) : trueFalse(false);
-        case DeferDefault:
-            return (mEvent.deferDefaultMinutes() > 0) ? minutes(mEvent.deferDefaultMinutes()) : trueFalse(false);
-        case DeferDefaultDate:
-            return trueFalse(mEvent.deferDefaultDateOnly());
-        case ConfirmAck:
-            return trueFalse(mEvent.confirmAck());
-        case AkonadiItem:
-            return (mEvent.emailId() >= 0) ? QLocale().toString(mEvent.emailId()) : trueFalse(false);
-        case Sound:
-            return !mEvent.audioFile().isEmpty() ? mEvent.audioFile()
-                   : mEvent.speak() ? i18nc("@info", "Speak")
-                   : mEvent.beep() ? i18nc("@info", "Beep") : trueFalse(false);
-        case SoundRepeat:
-            return trueFalse(mEvent.repeatSound());
-        case SoundVolume:
-            return mEvent.soundVolume() >= 0
-                   ? i18nc("@info Percentage", "%1%%", static_cast<int>(mEvent.soundVolume() * 100))
-                   : mUnspecifiedValue;
-        case SoundFadeVolume:
-            return mEvent.fadeVolume() >= 0
-                   ? i18nc("@info Percentage", "%1%%", static_cast<int>(mEvent.fadeVolume() * 100))
-                   : mUnspecifiedValue;
-        case SoundFadeTime:
-            return mEvent.fadeSeconds()
-                   ? i18ncp("@info", "1 Second", "%1 Seconds", mEvent.fadeSeconds())
-                   : mUnspecifiedValue;
-
-        case Command:
-            return (mEvent.actionSubType() == KAEvent::SubAction::Command) ? mEvent.cleanText() : QString();
-        case LogFile:
-            return mEvent.logFile();
-        case CommandXTerm:
-            return trueFalse(mEvent.commandXterm());
-        case CommandHideError:
-            return trueFalse(mEvent.commandHideError());
-
-        case EmailSubject:
-            return mEvent.emailSubject();
-        case EmailFromId:
-            return (mEvent.actionSubType() == KAEvent::SubAction::Email) ? QLocale().toString(mEvent.emailFromId()) : QString();
-        case EmailTo:
-            return mEvent.emailAddresses(QStringLiteral(", "));
-        case EmailBcc:
-            return trueFalse(mEvent.emailBcc());
-        case EmailBody:
-            return mEvent.emailMessage();
-        case EmailAttachments:
-            return mEvent.emailAttachments(QStringLiteral(", "));
-    }
-    return i18nc("@info Error indication", "error!");
-}
-
-QString trueFalse(bool value)
-{
-    return value ? i18nc("@info General purpose status indication: yes or no", "Yes")
-           : i18nc("@info General purpose status indication: yes or no", "No");
-}
-
-QString minutes(int n)
-{
-    return i18ncp("@info", "1 Minute", "%1 Minutes", n);
-}
-
-QString dateTime(const KAlarmCal::KADateTime& dt)
-{
-    if (dt.isDateOnly())
-        return dt.toString(QStringLiteral("%Y-%m-%d %:Z"));
-    else
-        return dt.toString(QStringLiteral("%Y-%m-%d %H:%M %:Z"));
-}
-
-QString minutesHoursDays(int minutes)
-{
-    if (minutes % 60)
-        return i18ncp("@info", "1 Minute", "%1 Minutes", minutes);
-    else if (minutes % 1440)
-        return i18ncp("@info", "1 Hour", "%1 Hours", minutes / 60);
-    else
-        return i18ncp("@info", "1 Day", "%1 Days", minutes / 1440);
-}
-
-// vim: et sw=4:
diff --git a/src/kalarmcalendar/kaeventformatter.h b/src/kalarmcalendar/kaeventformatter.h
deleted file mode 100644
index 18a63ed98..000000000
--- a/src/kalarmcalendar/kaeventformatter.h
+++ /dev/null
@@ -1,103 +0,0 @@
-/*
- *  kaeventformatter.h  -  converts KAlarmCal::KAEvent properties to text
- *  SPDX-FileCopyrightText: 2010-2022 David Jarvie <[email protected]>
- *
- *  SPDX-License-Identifier: LGPL-2.0-or-later
- */
-
-#pragma once
-
-#include <kalarmcal/kaevent.h>
-
-#include <QString>
-
-using namespace KAlarmCal;
-
-class KAEventFormatter
-{
-public:
-    // KAEvent parameter identifiers.
-    // Note that parameters stored in Akonadi attributes are not included.
-    enum Parameter
-    {
-        Id,
-        AlarmType,
-        AlarmCategory,
-        Name,
-        TemplateName,
-        CreatedTime,
-        StartTime,
-        TemplateAfterTime,
-        Recurs,             // does the event recur?
-        Recurrence,
-        NextRecurrence,     // next alarm time excluding repetitions, including reminder/deferral
-        SubRepetition,      // is there a sub-repetition?
-        RepeatInterval,
-        RepeatCount,
-        NextRepetition,     // next repetition count
-        LateCancel,
-        AutoClose,
-        WorkTimeOnly,
-        HolidaysExcluded,
-        CopyKOrganizer,
-        Enabled,
-        ReadOnly,
-        Archive,
-        Revision,
-        CustomProperties,
-
-        MessageText,
-        MessageFile,
-        FgColour,
-        BgColour,
-        Font,
-        PreAction,
-        PreActionCancel,
-        PreActionNoError,
-        PostAction,
-        ConfirmAck,
-        AkonadiItem,
-        Sound,
-        SoundRepeat,
-        SoundVolume,
-        SoundFadeVolume,
-        SoundFadeTime,
-        Reminder,
-        ReminderOnce,
-        Notify,
-        DeferralType,
-        DeferralTime,
-        DeferDefault,
-        DeferDefaultDate,
-
-        Command,
-        LogFile,
-        CommandXTerm,
-        CommandHideError,
-
-        EmailSubject,
-        EmailFromId,
-        EmailTo,
-        EmailBcc,
-        EmailBody,
-        EmailAttachments
-    };
-
-    KAEventFormatter() = default;
-
-    KAEventFormatter(const KAEvent& e, bool falseForUnspecified);
-    bool isApplicable(Parameter) const;
-    QString value(Parameter) const;
-    const KAEvent& event() const
-    {
-        return mEvent;
-    }
-
-    static QString label(Parameter);
-
-private:
-    KAEvent mEvent;
-    QString mUnspecifiedValue;
-};
-
-// vim: et sw=4:
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.