File indexing completed on 2024-04-14 03:50:48
0001 /* 0002 This file is part of the kcalcore library. 0003 0004 SPDX-FileCopyrightText: 2009 Nokia Corporation and/or its subsidiary(-ies). All rights reserved. 0005 SPDX-FileContributor: Alvaro Manera <alvaro.manera@nokia.com> 0006 0007 SPDX-License-Identifier: LGPL-2.0-or-later 0008 */ 0009 #ifndef KCALCORE_SORTING_H 0010 #define KCALCORE_SORTING_H 0011 0012 #include "event.h" 0013 #include "freebusy.h" 0014 #include "journal.h" 0015 #include "person.h" 0016 #include "todo.h" 0017 0018 #include "kcalendarcore_export.h" 0019 0020 namespace KCalendarCore 0021 { 0022 namespace Events 0023 { 0024 KCALENDARCORE_EXPORT bool startDateLessThan(const Event::Ptr &e1, const Event::Ptr &e2); 0025 0026 KCALENDARCORE_EXPORT bool summaryLessThan(const Event::Ptr &e1, const Event::Ptr &e2); 0027 0028 KCALENDARCORE_EXPORT bool summaryMoreThan(const Event::Ptr &e1, const Event::Ptr &e2); 0029 0030 KCALENDARCORE_EXPORT bool startDateMoreThan(const Event::Ptr &e1, const Event::Ptr &e2); 0031 0032 KCALENDARCORE_EXPORT bool endDateLessThan(const Event::Ptr &e1, const Event::Ptr &e2); 0033 0034 KCALENDARCORE_EXPORT bool endDateMoreThan(const Event::Ptr &e1, const Event::Ptr &e2); 0035 } 0036 0037 namespace Todos 0038 { 0039 KCALENDARCORE_EXPORT bool startDateLessThan(const Todo::Ptr &t1, const Todo::Ptr &t2); 0040 0041 KCALENDARCORE_EXPORT bool startDateMoreThan(const Todo::Ptr &t1, const Todo::Ptr &t2); 0042 0043 KCALENDARCORE_EXPORT bool dueDateLessThan(const Todo::Ptr &t1, const Todo::Ptr &t2); 0044 0045 KCALENDARCORE_EXPORT bool dueDateMoreThan(const Todo::Ptr &t1, const Todo::Ptr &t2); 0046 0047 KCALENDARCORE_EXPORT bool priorityLessThan(const Todo::Ptr &t1, const Todo::Ptr &t2); 0048 0049 KCALENDARCORE_EXPORT bool priorityMoreThan(const Todo::Ptr &t1, const Todo::Ptr &t2); 0050 0051 KCALENDARCORE_EXPORT bool percentLessThan(const Todo::Ptr &t1, const Todo::Ptr &t2); 0052 0053 KCALENDARCORE_EXPORT bool percentMoreThan(const Todo::Ptr &t1, const Todo::Ptr &t2); 0054 0055 KCALENDARCORE_EXPORT bool summaryLessThan(const Todo::Ptr &t1, const Todo::Ptr &t2); 0056 0057 KCALENDARCORE_EXPORT bool summaryMoreThan(const Todo::Ptr &t1, const Todo::Ptr &t2); 0058 0059 KCALENDARCORE_EXPORT bool createdLessThan(const Todo::Ptr &t1, const Todo::Ptr &t2); 0060 0061 KCALENDARCORE_EXPORT bool createdMoreThan(const Todo::Ptr &t1, const Todo::Ptr &t2); 0062 } 0063 0064 namespace Journals 0065 { 0066 KCALENDARCORE_EXPORT bool dateLessThan(const Journal::Ptr &j1, const Journal::Ptr &j2); 0067 0068 KCALENDARCORE_EXPORT bool dateMoreThan(const Journal::Ptr &j1, const Journal::Ptr &j2); 0069 0070 KCALENDARCORE_EXPORT bool summaryLessThan(const Journal::Ptr &j1, const Journal::Ptr &j2); 0071 0072 KCALENDARCORE_EXPORT bool summaryMoreThan(const Journal::Ptr &j1, const Journal::Ptr &j2); 0073 } 0074 0075 namespace Incidences 0076 { 0077 KCALENDARCORE_EXPORT bool dateLessThan(const Incidence::Ptr &i1, const Incidence::Ptr &i2); 0078 0079 KCALENDARCORE_EXPORT bool dateMoreThan(const Incidence::Ptr &i1, const Incidence::Ptr &i2); 0080 0081 KCALENDARCORE_EXPORT bool createdLessThan(const Incidence::Ptr &i1, const Incidence::Ptr &i2); 0082 0083 KCALENDARCORE_EXPORT bool createdMoreThan(const Incidence::Ptr &i1, const Incidence::Ptr &i2); 0084 0085 KCALENDARCORE_EXPORT bool summaryLessThan(const Incidence::Ptr &i1, const Incidence::Ptr &i2); 0086 0087 KCALENDARCORE_EXPORT bool summaryMoreThan(const Incidence::Ptr &i1, const Incidence::Ptr &i2); 0088 0089 /** 0090 * Compare the categories (tags) of two incidences, as returned by categoriesStr(). 0091 * If they are equal, return summaryLessThan(). 0092 * @since 5.83 0093 */ 0094 KCALENDARCORE_EXPORT bool categoriesLessThan(const Incidence::Ptr &i1, const Incidence::Ptr &i2); 0095 0096 /** 0097 * Compare the categories (tags) of two incidences, as returned by categoriesStr(). 0098 * If they are equal, return summaryMoreThan(). 0099 * @since 5.83 0100 */ 0101 KCALENDARCORE_EXPORT bool categoriesMoreThan(const Incidence::Ptr &i1, const Incidence::Ptr &i2); 0102 } 0103 0104 } 0105 0106 #endif