diff options
Diffstat (limited to 'comm/calendar/base/public/calIWeekInfoService.idl')
-rw-r--r-- | comm/calendar/base/public/calIWeekInfoService.idl | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/comm/calendar/base/public/calIWeekInfoService.idl b/comm/calendar/base/public/calIWeekInfoService.idl new file mode 100644 index 0000000000..c688579418 --- /dev/null +++ b/comm/calendar/base/public/calIWeekInfoService.idl @@ -0,0 +1,50 @@ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + +#include "nsISupports.idl" + +interface calIDateTime; + +/** + * This interface will calculate a week title from a given datetime. This + * will depends on the users preferences. + * Extensions might override the default implementation, in order to + * generate week titles aimed at special cases (like weeknumbers for a + * schoolyear) + */ +[scriptable, uuid(650fd33b-ebf4-46fa-b9ca-dd80b2451498)] +interface calIWeekInfoService: nsISupports +{ + /** + * Return the week title. It's meant to be displayed. + * (Usually, will return a weeknumber, but might return a string like Q1W4) + * + * @param dateTime + * The dateTime to get the weektitle for + * @returns + * A string, representing the week title. Will usually be the + * week number. Every week (7 days) should get a different string, + * but the switch from one week to the next isn't necessarily + * on sunday. + */ + AString getWeekTitle(in calIDateTime dateTime); + + /** + * Gets the first day of a week of a passed day under consideration + * of the preference setting "calendar.week.start" + * + * @param aDate The dateTime to get get the start of the week for + * @return A dateTime-object denoting the first day of the week + */ + calIDateTime getStartOfWeek(in calIDateTime dateTime); + + /** + * Gets the last day of a week of a passed day under consideration + * of the preference setting "calendar.week.start" + * + * @param aDate The dateTime to get get the last day of the week for + * @return A dateTime-object denoting the last day of the week + */ + calIDateTime getEndOfWeek(in calIDateTime dateTime); +}; |