KCalendarCore::OccurrenceIterator

Search for usage in LXR

KCalendarCore::OccurrenceIterator Class Reference

#include <occurrenceiterator.h>

Public Member Functions

 OccurrenceIterator (const Calendar &calendar, const QDateTime &start=QDateTime(), const QDateTime &end=QDateTime())
 
 OccurrenceIterator (const Calendar &calendar, const KCalendarCore::Incidence::Ptr &incidence, const QDateTime &start=QDateTime(), const QDateTime &end=QDateTime())
 
bool hasNext () const
 
Incidence::Ptr incidence () const
 
void next ()
 
QDateTime occurrenceEndDate () const
 
QDateTime occurrenceStartDate () const
 
QDateTime recurrenceId () const
 

Detailed Description

Iterate over calendar items in a calendar.

The iterator takes recurrences and exceptions to recurrences into account

The iterator does not iterate the occurrences of all incidences chronologically.

Since
4.11

Definition at line 33 of file occurrenceiterator.h.

Constructor & Destructor Documentation

OccurrenceIterator::OccurrenceIterator ( const Calendar calendar,
const QDateTime start = QDateTime(),
const QDateTime end = QDateTime() 
)
explicit

Creates iterator that iterates over all occurrences of all incidences between.

Private class that helps to provide binary compatibility between releases.

Parameters
startand
end(inclusive)

Right now there is little point in the iterator, but: With an iterator it should be possible to solve this more memory efficiently and with immediate results at the beginning of the selected timeframe. Either all events are iterated simoulatneously, resulting in occurrences of all events in parallel in the correct time-order, or incidence after incidence, which would be even more efficient.

By making this class a friend of calendar, we could also use the internally available data structures.

Definition at line 185 of file occurrenceiterator.cpp.

OccurrenceIterator::OccurrenceIterator ( const Calendar calendar,
const KCalendarCore::Incidence::Ptr incidence,
const QDateTime start = QDateTime(),
const QDateTime end = QDateTime() 
)

Creates iterator that iterates over all occurrences of.

Parameters
incidencebetween
startand
end(inclusive)

Definition at line 218 of file occurrenceiterator.cpp.

Member Function Documentation

Incidence::Ptr OccurrenceIterator::incidence ( ) const

Returns either main incidence or exception, depending on occurrence.

Definition at line 241 of file occurrenceiterator.cpp.

void OccurrenceIterator::next ( )

Advance iterator to the next occurrence.

Definition at line 236 of file occurrenceiterator.cpp.

QDateTime OccurrenceIterator::occurrenceEndDate ( ) const

Returns the end date of the occurrence.

For incidence that supports end date (events and due date for todos), this is computed from the duration or directly the end date of the occurrence or an exception overriding that occurrence. For incidences without end date, an invalid date is returned.

Since
5.87

Definition at line 251 of file occurrenceiterator.cpp.

QDateTime OccurrenceIterator::occurrenceStartDate ( ) const

Returns the start date of the occurrence.

This is either the occurrence date, or the start date of an exception which overrides that occurrence.

Definition at line 246 of file occurrenceiterator.cpp.

QDateTime OccurrenceIterator::recurrenceId ( ) const

Returns the recurrence Id.

This is the date where the occurrence starts without exceptions, this id is used to identify one exact occurrence.

Definition at line 256 of file occurrenceiterator.cpp.


The documentation for this class was generated from the following files:
This file is part of the KDE documentation.
Documentation copyright © 1996-2021 The KDE developers.
Generated on Sun Sep 26 2021 22:51:53 by doxygen 1.8.11 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.