File indexing completed on 2024-05-12 05:21:24
0001 /* 0002 This file is part of KOrganizer. 0003 0004 SPDX-FileCopyrightText: 2005 Reinhold Kainhofer <reinhold@kainhofer.com> 0005 0006 SPDX-License-Identifier: GPL-2.0-or-later WITH Qt-Commercial-exception-1.0 0007 */ 0008 0009 #include "kohelper.h" 0010 #include "prefs/koprefs.h" 0011 0012 #include <EventViews/Helper> 0013 0014 #include <CalendarSupport/KCalPrefs> 0015 #include <KLocalizedString> 0016 #include <KMessageBox> 0017 0018 QColor KOHelper::getTextColor(const QColor &c) 0019 { 0020 const double luminance = (c.red() * 0.299) + (c.green() * 0.587) + (c.blue() * 0.114); 0021 return (luminance > 128.0) ? QColor(0, 0, 0) : QColor(255, 255, 255); 0022 } 0023 0024 QColor KOHelper::resourceColor(const Akonadi::Collection &coll) 0025 { 0026 return EventViews::resourceColor(coll, KOPrefs::instance()->eventViewsPreferences()); 0027 } 0028 0029 QColor KOHelper::resourceColorKnown(const Akonadi::Collection &coll) 0030 { 0031 return EventViews::resourceColor(coll, KOPrefs::instance()->eventViewsPreferences()); 0032 } 0033 0034 void KOHelper::setResourceColor(const Akonadi::Collection &collection, const QColor &color) 0035 { 0036 EventViews::setResourceColor(collection, color, KOPrefs::instance()->eventViewsPreferences()); 0037 KOPrefs::instance()->eventViewsPreferences()->writeConfig(); 0038 } 0039 0040 QColor KOHelper::resourceColor(const Akonadi::Item &item) 0041 { 0042 return EventViews::resourceColor(item, KOPrefs::instance()->eventViewsPreferences()); 0043 } 0044 0045 int KOHelper::yearDiff(QDate start, QDate end) 0046 { 0047 return end.year() - start.year(); 0048 } 0049 0050 bool KOHelper::isStandardCalendar(Akonadi::Collection::Id id) 0051 { 0052 return id == CalendarSupport::KCalPrefs::instance()->defaultCalendarId(); 0053 } 0054 0055 void KOHelper::showSaveIncidenceErrorMsg(QWidget *parent, const KCalendarCore::Incidence::Ptr &incidence) 0056 { 0057 KMessageBox::error(parent, i18n("Unable to save %1 \"%2\".", i18n(incidence->typeStr().constData()), incidence->summary())); 0058 }