QOrganizerRecurrenceRule ClassThe QOrganizerRecurrenceRule class describes the a rule by which a QOrganizerItem repeats. More... #include <QOrganizerRecurrenceRule>
Public Types
Public Functions
Related Non-Members
Detailed DescriptionThe QOrganizerRecurrenceRule class describes the a rule by which a QOrganizerItem repeats. This class is a mapping of a subset of the iCalendar RRULE property value, and each field in this class corresponds to a fragment of iCalendar's RRULE. This class supports the same fragments as those supported by RRULE, except for describing recurrences on a higher frequency than Daily. That is, this class doesn't support hourly, minutely or secondly recurrences, nor does it support specifying which hour, minute or second of a day to recur on. These types of rules are unsupported because most calendaring backends don't support them, and it simplifies recurrences by enforcing that there can be at most one occurrence of an item per day. The general rules for interaction between the fields when generating the occurence dates is as follows:
A recurrence rule may be limited by either count or date, or it may be unlimited. If limited by count, the series generated by the rule will have at most count occurrences. If limited by date, the series generated by the rule may have occurrences up to (and including) the limit date. See setLimit() for more information on this topic. Member Type Documentation
|
Constant | Value | Description |
---|---|---|
QOrganizerRecurrenceRule::Invalid | 0 | The entire recurrence rule is invalid. |
QOrganizerRecurrenceRule::Daily | 1 | The item recurs every day. |
QOrganizerRecurrenceRule::Weekly | 2 | The item recurs every week. |
QOrganizerRecurrenceRule::Monthly | 3 | The item recurs every month. |
QOrganizerRecurrenceRule::Yearly | 4 | The item recurs every year. |
This enumeration describes the limitation of this recurrence rule.
Constant | Value | Description |
---|---|---|
QOrganizerRecurrenceRule::NoLimit | 0 | The recurrence rule has no limit specified. |
QOrganizerRecurrenceRule::CountLimit | 1 | The recurrence rule specifies a certain count of repetitions in the series. |
QOrganizerRecurrenceRule::DateLimit | 2 | The recurrence rule specifies that the series ends after a particular date. |
This enumeration describes which month an item recurs on.
Constant | Value |
---|---|
QOrganizerRecurrenceRule::January | 1 |
QOrganizerRecurrenceRule::February | 2 |
QOrganizerRecurrenceRule::March | 3 |
QOrganizerRecurrenceRule::April | 4 |
QOrganizerRecurrenceRule::May | 5 |
QOrganizerRecurrenceRule::June | 6 |
QOrganizerRecurrenceRule::July | 7 |
QOrganizerRecurrenceRule::August | 8 |
QOrganizerRecurrenceRule::September | 9 |
QOrganizerRecurrenceRule::October | 10 |
QOrganizerRecurrenceRule::November | 11 |
QOrganizerRecurrenceRule::December | 12 |
Constructs a QOrganizerRecurrenceRule object describing a weekly recurrence.
Constructs a QOrganizerRecurrenceRule object as a copy of other.
Destroys the QOrganizerRecurrenceRule object.
Clear any recurrence rule limitation conditions.
Returns a set of the days of the month that the item should recur on, or an empty set if not specified.
See also setDaysOfMonth().
Returns a set of the days of week that the item should recur on, or an empty set if not specified.
See also setDaysOfWeek().
Returns a set of the days of the year that the item should recur on, or an empty set if not specified.
See also setDaysOfYear().
Returns the day that the week starts on.
See also setFirstDayOfWeek().
Returns the frequency with which the item recurs. The default frequency is Invalid.
See also setFrequency().
Returns the interval of recurrence. The default interval is 1.
See also setInterval().
Returns the "count" condition specified by the recurrence rule. -1 is returned if the "count" condition is not set or an end-date condition is currently set.
Returns the end-date condition specified by the recurrence rule. An invalid date is returned if the end-date condition is not set or a "count" condition is currently set.
Returns the type of limitation specified by the recurrence rule. The default limit type is NoLimit (i.e. unlimited).
Returns a set of the months of the year that the item should recur on, or an empty set if not specified.
See also setMonthsOfYear().
Returns the position-set of the recurrence rule, or an empty set if not specified.
See also setPositions().
Sets the days of the month on which the item should recur to days. Negative values in the set represent the number of days from the end of the month. e.g. 1 represents the first day of the month and -1 represents the last day of the month.
This corresponds to the BYMONTHDAY fragment in iCalendar's RRULE.
See also daysOfMonth().
Sets the days of week on which the item should recur to days.
This corresponds to the BYDAY fragment in iCalendar's RRULE.
See also daysOfWeek().
Sets the days of the year on which the item should recur to days. Negative values in the set represent the number of days from the end of the year. e.g. 1 represents the first day of the year and -1 represents the last day of the year.
This corresponds to the BYYEARDAY fragment in iCalendar's RRULE.
See also daysOfYear().
Sets the day that the week starts on to day, for the purposes of calculating recurrences. This is significant when the frequency is Weekly and the interval is greater than 1, or when weekOfYear is set. See the iCalendar spec for examples of its significance.
If not set, Monday is the first day of a week.
This corresponds to the BYWKST fragment in iCalendar's RRULE.
See also firstDayOfWeek().
Sets the frequency with which the item recurs to freq.
This corresponds to the FREQ fragment in iCalendar's RRULE.
See also frequency().
Sets the interval, between cycles of length given by frequency(), in which the item should recur to interval.
For example, if the frequency() is QOrganizerRecurrenceRule::Daily and the interval is set to 2, the item should recur every second day.
This corresponds to the INTERVAL fragment in iCalendar's RRULE.
See also interval().
Sets the "count" condition of the recurrence rule to count. If an end-date was previously set, it is removed as count and endDate are mutually exclusive.
The "count" condition is the maximum number of times the item should recur. Calling clearLimit() or setting this to a negative value removes the count condition.
This corresponds to the COUNT fragment in iCalendar's RRULE.
Sets the end-date condition of the recurrence rule to date. If a "count" condition was previously set, it is removed as count and endDate are mutually exclusive.
The end-date condition is the date after which the item should not recur. Calling clearLimit() or setting this to an invalid date removes the end-date condition.
This corresponds to the UNTIL fragment in iCalendar's RRULE.
Sets the months on which the item should recur to months.
This corresponds to the BYMONTHDAY fragment in iCalendar's RRULE.
See also monthsOfYear().
Sets the set of positions that the item should recur on to pos. This specifies that the item should only recur on the nth occurrence within the set of events otherwise specified by the rule, for the values of n in pos.
Negative values in the list represnet a position counting from the end of the set.
For example, if frequency() == Monthly and months() is the list Monday, Tuesday, Wednesday, Thursday, Friday, and positions() == -1, this specifies that the item should recur on the last weekday of each month.
This corresponds to the BYSETPOS fragment in iCalendar's RRULE.
See also positions().
Sets the weeks of the year on which the item should recur to weeks. Negative values in the set represent the number of weeks from the end of the year. e.g. 1 represents the first week of the year and -1 represents the last week of the year.
This corresponds to the BYWEEK fragment in iCalendar's RRULE.
See also weeksOfYear().
Returns a set of the weeks of the year that the item should recur on, or an empty set if not specified.
See also setWeeksOfYear().
Assigns this detail to be equal to other.
Returns true if this recurrence rule is equal to the other; otherwise returns false.
Outputs rule to the debug stream dbg.