Init Tizen 2.2.1
[framework/osp/social.git] / inc / FSclCalEvent.h
index 1ebc450..e436b0d 100644 (file)
@@ -99,6 +99,36 @@ namespace Tizen { namespace Social
  *
  * @endcode
  *
+ *     The following example demonstrates how to use the %CalEvent class to add calendarbook all day event.
+ *     @code
+ *
+       #include <FBase.h>
+       #include <FSocial.h>
+
+       using namespace Tizen::Base;
+       using namespace Tizen::Social;
+
+       void
+       CreateAlldayEvent(void)
+       {
+
+               DateTime startWallTime;
+               DateTime endWallTime;
+
+               // Sets the start/end time for an all day event on 2013/7/17
+               // The end time for all day event must be later than the start date(RFC 5545)
+               startWallTime.SetValue(2013, 7, 17, 0, 0, 0);
+               endWallTime.SetValue(2013, 7, 18, 0, 0, 0);
+
+               // Creates an all day event
+               CalEvent event;
+               event.SetSubject(L"All day event");
+
+               event.SetAllDayEvent(true);
+               event.SetStartAndEndTime(startWallTime, endWallTime);
+       }
+ *
+ * @endcode
  */
 class _OSP_EXPORT_ CalEvent
        : public Record
@@ -117,7 +147,7 @@ public:
         *
         * @since       2.0
         *
-        * @param[in]   rhs             An instance of %CalEvent
+        * @param[in]   rhs             An instance of %CalEvent to copy
         */
        CalEvent(const CalEvent& rhs);
 
@@ -129,13 +159,13 @@ public:
        virtual ~CalEvent(void);
 
        /**
-        * Compares the input Tizen::Base::Object with the calling %CalEvent instance.
+        * Compares the specified Tizen::Base::Object with the current %CalEvent instance.
         *
         * @since       2.0
         *
-        * @return              @c true if the input object equals the calling %CalEvent instance, @n
+        * @return              @c true if the specified object equals the current %CalEvent instance, @n
         *                              else @c false
-        * @param[in]   rhs     The object instance to compare with the calling object
+        * @param[in]   rhs     The object instance to compare with the current object
         * @see                 GetHashCode()
         */
        virtual bool Equals(const Tizen::Base::Object& rhs) const;
@@ -156,8 +186,8 @@ public:
         * Each instance of %CalEvent has its own recurrence ID.
         *
         * @brief <i> [Deprecated] </i>
-        * @deprecated  This method is deprecated because %CalEvent class is not used for event instance any more. @n
-        * Instead of using the %CalEvent class, it is recommended to use the CalEventInstance class for event instance.
+        * @deprecated  This method is deprecated because %CalEvent class is not used for an event instance any more. @n
+        * Instead of using the %CalEvent class, it is recommended to use the CalEventInstance class for an event instance.
         * @since       2.0
         *
         * @return              @c true if this instance is a %CalEvent instance, @n
@@ -171,8 +201,8 @@ public:
         * Checks whether the calendar event has a recurring pattern.
         *
         * @brief <i> [Deprecated] </i>
-        * @deprecated  This method is deprecated because %CalEvent class is not used for event instance any more. @n
-        * Instead of using the %CalEvent class, it is recommended to use the CalEventInstance class for event instance.
+        * @deprecated  This method is deprecated because %CalEvent class is not used for an event instance any more. @n
+        * Instead of using the %CalEvent class, it is recommended to use the CalEventInstance class for an event instance.
         * @since       2.0
         *
         * @return              @c true if the calendar event has a recurring pattern, @n
@@ -187,8 +217,8 @@ public:
         * The %CalEvent instance has an original @c CalEventId, that is a record ID of its entry.
         *
         * @brief <i> [Deprecated] </i>
-        * @deprecated  This method is deprecated because %CalEvent class is not used for event instance any more. @n
-        * Instead of using the %CalEvent class, it is recommended to use the CalEventInstance class for event instance.
+        * @deprecated  This method is deprecated because %CalEvent class is not used for an event instance any more. @n
+        * Instead of using the %CalEvent class, it is recommended to use the CalEventInstance class for an event instance.
         * @since       2.0
         *
         * @return      The original calendar event ID, @n
@@ -202,7 +232,7 @@ public:
         *
         * @since       2.0
         *
-        * @return              @c true if calendar event is an all day event, @n
+        * @return              @c true if the calendar event is an all day event, @n
         *                              else @c false
         */
        bool IsAllDayEvent(void) const;
@@ -223,7 +253,7 @@ public:
         * UID: globally Unique Identifier (vCalendar 1.0)
         *
         * @brief <i> [Deprecated] </i>
-        * @deprecated  This method is deprecated because string value cannot be handled. @n
+        * @deprecated  This method is deprecated because string value cannot be handled. @n
         * Instead of using this method, it is recommended to use GetUid().
         * @since       2.0
         *
@@ -241,7 +271,7 @@ public:
         * UID: globally Unique Identifier (vCalendar 1.0)
         *
         * @brief <i> [Deprecated] </i>
-        * @deprecated  This method is deprecated because string value cannot be handled. @n
+        * @deprecated  This method is deprecated because string value cannot be handled. @n
         * Instead of using this method, it is recommended to use SetUid().
         * @since       2.0
         *
@@ -357,11 +387,11 @@ public:
         * @page        CompCalEventAddAttendeePage Compatibility for AddAttendee()
         * @section     CompCalEventAddAttendeePageIssueSection Issues
         *                      Implementation of this method in %Tizen API versions prior to 2.1 has the following issue: @n
-        *                      - If the email of @c attendee is empty, the @c E_OBJ_ALREADY_EXIST is returned.
+        *                      - If the email of @c attendee is empty, @c E_OBJ_ALREADY_EXIST is returned.
         *
         * @section     CompCalEventAddAttendeePageSolutionSection Resolutions
         *                      The issue mentioned above is resolved in %Tizen API version 2.1.
-        *                      - If the email of @c attendee is empty, the @c E_INVALID_ARG is returned.
+        *                      - If the email of @c attendee is empty, @c E_INVALID_ARG is returned.
         */
 
        /**
@@ -373,16 +403,16 @@ public:
         * @param[in]   attendee                        The attendee to remove @n
         *                                                                      The specified @c attendee must have an email address.
         * @exception   E_SUCCESS                       The method is successful.
-        * @exception   E_OBJ_NOT_FOUND         An attendee that has the same email address is not found.
+        * @exception   E_OBJ_NOT_FOUND         An attendee with the same email address is not found.
         */
        result RemoveAttendee(const Attendee& attendee);
 
        /**
-        * Gets a list of all the attendees.
+        * Gets the list of attendees.
         *
         * @since       2.0
         *
-        * @return              A list of the attendees
+        * @return              The list of attendees
         * @remarks             The specific error code can be accessed using the GetLastResult() method.
         * @see                 Attendee
         */
@@ -393,15 +423,15 @@ public:
         *
         * @since       2.0
         *
-        * @return              The time zone
-        * @see                 Tizen::Locales::TimeZone
+        * @return              The time zone based on the time zone ID and the start time of the %CalEvent instance
+        * @see                 Tizen::Locales::TimeZone::GetTimeZone(const Tizen::Base::String&, const Tizen::Base::DateTime&, Tizen::Locales::TimeZone&)
         */
        Tizen::Locales::TimeZone GetTimeZone(void) const;
 
        /**
         * Sets the time zone. @n
         * Recurrence is calculated based on the time zone, thus the time zone must be set before setting a recurrence.
-        * If the time zone is not set, it will be considered as Greenwich Mean Time (GMT) 0.
+        * If the time zone is not set, it is considered as Greenwich Mean Time (GMT).
         *
         * @since       2.0
         *
@@ -409,8 +439,9 @@ public:
         * @param[in]   timeZone                        The time zone to set
         * @exception   E_SUCCESS                       The method is successful.
         * @exception   E_FAILURE                       The method has failed.
-        * @remarks             As anniversaries and all day events are not affected by a time zone, it is recommended not to set the time zone.
-        * @see                 Tizen::Locales::TimeZone
+        * @remarks
+        *                              - As all day events are not affected by a time zone, it is recommended not to set the time zone.
+        *                              - Only the time zone ID of the @c timeZone is set to the %CalEvent instance, and the other properties are ignored.
         */
        result SetTimeZone(const Tizen::Locales::TimeZone& timeZone);
 
@@ -420,8 +451,8 @@ public:
         * The %GetRecurrenceId() method works only for the %CalEvent instances.
         *
         * @brief <i> [Deprecated] </i>
-        * @deprecated  This method is deprecated because %CalEvent class is not used for event instance any more. @n
-        * Instead of using the %CalEvent class, it is recommended to use the CalEventInstance class for event instance.
+        * @deprecated  This method is deprecated because the %CalEvent class is not used for an event instance any more. @n
+        * Instead of using the %CalEvent class, it is recommended to use the CalEventInstance class for an event instance.
         * @since       2.0
         *
         * @return              The recurrence ID
@@ -456,7 +487,7 @@ public:
         *
         * @since       2.0
         *
-        * @return              An instance of Tizen::Base::DateTime representing the start date and time
+        * @return              An instance of Tizen::Base::DateTime that represents the start date and time
         */
        Tizen::Base::DateTime GetStartTime(void) const;
 
@@ -465,7 +496,7 @@ public:
         *
         * @since       2.0
         *
-        * @return              An instance of Tizen::Base::DateTime representing the end date and time
+        * @return              An instance of Tizen::Base::DateTime that represents the end date and time
         */
        Tizen::Base::DateTime GetEndTime(void) const;
 
@@ -483,7 +514,7 @@ public:
         * Gets the category of the calendar event.
         *
         * @brief <i> [Deprecated] </i>
-        * @deprecated  This method is deprecated because the category of event is not used any more.
+        * @deprecated  This method is deprecated because the category of the event is not used any more.
         * @since       2.0
         *
         * @return              The category of the calendar event
@@ -558,7 +589,7 @@ public:
         * @page        CompCalEventSetSubjectPage Compatibility for SetSubject()
         * @section     CompCalEventSetSubjectPageIssueSection Issues
         *          Implementing this method in OSP compatible applications has the following issues: @n
-        *                      -# If the length of the subject to be set is greater than 100 characters, E_INVALID_ARG is returned.
+        *                      -# If the length of the subject to be set is greater than @c 100 characters, @c E_INVALID_ARG is returned.
         *
         * @section     CompCalEventSetSubjectPageSolutionSection Resolutions
         *                      This issue has been resolved in Tizen. @n
@@ -589,7 +620,7 @@ public:
         * @page        CompCalEventSetDescriptionPage Compatibility for SetDescription()
         * @section     CompCalEventSetDescriptionPageIssueSection Issues
         *          Implementing this method in OSP compatible applications has the following issues: @n
-        *                      -# If the length of the description to be set is greater than 1000 characters, E_INVALID_ARG is returned.
+        *                      -# If the length of the description to be set is greater than @c 1000 characters, @c E_INVALID_ARG is returned.
         *
         * @section     CompCalEventSetDescriptionPageSolutionSection Resolutions
         *                      This issue has been resolved in Tizen. @n
@@ -607,20 +638,21 @@ public:
         * @since       2.0
         *
         * @return              An error code
-        * @param[in]   startDateTime                           The start date and time. @n Any value with a unit that is less than a second is ignored.
-        * @param[in]   endDateTime                                     The end date and time. @n Any value with a unit that is less than a second is ignored.
-        * @exception   E_SUCCESS                       The method is successful.
-        * @exception   E_INVALID_ARG                   Either of the following conditions has occurred: @n
+        * @param[in]   startDateTime                   The start date and time @n Any value with a unit that is less than a second is ignored.
+        * @param[in]   endDateTime                             The end date and time @n Any value with a unit that is less than a second is ignored.
+        * @exception   E_SUCCESS                               The method is successful.
+        * @exception   E_INVALID_ARG                   Either of the following conditions has occurred:
         *                                                                              - The specified @c endDateTime value is earlier than the specified @c startDateTime value.
-        *                                                                              - The @c startDateTime or @c endDateTime is out of the valid range. @n
+        *                                                                              - The specified @c startDateTime or @c endDateTime is out of the valid range. @n
         *                                                                              The valid range of the date can be referenced from GetMaxDateTime() and GetMinDateTime().
-        * @exception   E_INVALID_CONDITION     The recurrence date is already set.
-        * @remarks             The start and end time of all day events created from the base applications is the local time of the location where
-        *                              they are added.
-        *                              All the other events are Coordinated Universal Time (UTC).
-        *                              In order to integrate it with the base applications, set the start and end time properly according to the above guidelines.
+        * @exception   E_INVALID_CONDITION             The recurrence date is already set.
+        * @remarks             
+        *                              - The start and end time of all day events created from the base applications is the local time of the location where
+        *                              they are added. @n
+        *                              All the other events are in Coordinated Universal Time (UTC). @n
+        *                              In order to integrate it with the base applications, set the start and end time properly according to the above guidelines. @n
         *                              If the seconds value of the start time is set, the alarm will not be fired.
-        *                              There is no automatic time conversion based on the time zone property of the calendar event.
+        *                              There is no automatic time conversion based on the time zone property of the calendar event.
         */
        result SetStartAndEndTime(const Tizen::Base::DateTime& startDateTime, const Tizen::Base::DateTime& endDateTime);
 
@@ -647,7 +679,7 @@ public:
         * @page        CompCalEventSetLocationPage Compatibility for SetLocation()
         * @section     CompCalEventSetLocationPageIssueSection Issues
         *          Implementing this method in OSP compatible applications has the following issues: @n
-        *                      -# If the length of the location to be set is greater than 100 characters, E_INVALID_ARG is returned.
+        *                      -# If the length of the location to be set is greater than @c 100 characters, @c E_INVALID_ARG is returned.
         *
         * @section     CompCalEventSetLocationPageSolutionSection Resolutions
         *                      This issue has been resolved in Tizen. @n
@@ -663,7 +695,7 @@ public:
         * @if OSPCOMPAT
         * @brief <i> [Deprecated] [Compatibility] </i>
         * @endif
-        * @deprecated  This method is deprecated because the category of event is not used any more.
+        * @deprecated  This method is deprecated because the category of the event is not used any more.
         * @since       2.0
         * @if OSPCOMPAT
         * @compatibility       This method has compatibility issues with OSP compatible applications. @n
@@ -685,14 +717,14 @@ public:
         * @section             CompCalEventSetCategoryPageIssueSection Issues
         *                              Implementing this method in OSP compatible applications has the following issues: @n
         *
-        *      -# When the anniversary category is set to the event, it is handled as all day event even though the all day event property is not set.
+        *                              -# When the anniversary category is set to the event, it is handled as an all day event even though the all day event property is not set.
         *
         * @section             CompCalEventSetCategoryPageSolutionSection Resolutions
         *
-        * This issue has been resolved in Tizen. @n
+        *  This issue has been resolved in Tizen. @n
         *  -# The category property is deprecated and it is not used any more.
-        *  In Tizen, the all day event property will be set simultaneously when the anniversary category is set to the event.
-        *  If an application tries to change the all day event property of the anniversary event to @c false, it will not be changed.
+        *  In Tizen, the all day event property is set simultaneously when the anniversary category is set to the event.
+        *  If an application tries to change the all day event property of the anniversary event to @c false, it is not changed.
         * @endif
         */
 
@@ -711,10 +743,10 @@ public:
         * @since       2.0
         *
         * @return              An error code
-        * @param[in]   latitude                The latitude in the range @n The valid range is [-90.0, 90.0].
-        * @param[in]   longitude               The longitude in the range @n The valid range is [-180.0, 180.0].
-        * @exception   E_SUCCESS               The method is successful.
-        * @exception   E_INVALID_ARG           The @c latitude or @c longitude is out of the valid range.
+        * @param[in]   latitude                        The latitude within the range @n The valid range is [-90.0, 90.0].
+        * @param[in]   longitude                       The longitude within the range @n The valid range is [-180.0, 180.0].
+        * @exception   E_SUCCESS                       The method is successful.
+        * @exception   E_INVALID_ARG           The specified @c latitude or @c longitude is outside the valid range.
         */
        result SetCoordinates(double latitude, double longitude);
 
@@ -768,23 +800,23 @@ public:
         *                                                                              else @c null to remove the previous recurrence
         * @exception   E_SUCCESS                               The method is successful.
         * @exception   E_INVALID_STATE                 The current event is a %CalEvent instance that has a recurrence ID.
-        * @exception   E_INVALID_CONDITION             Either of the following conditions has occurred: @n
-        *                                                                              - The recurrence rule date is earlier than the start date and time of the event. @n
-        *                                                                              - The recurrence rule is invalid. @n
+        * @exception   E_INVALID_CONDITION             Either of the following conditions has occurred:
+        *                                                                              - The recurrence rule date is earlier than the start date and time of the event.
+        *                                                                              - The recurrence rule is invalid.
         *                                                                              - The duration of the event is too long. @n
         *                                                                              It must be shorter than the (interval x frequency) days set for the recurrence rule.
-        * @exception   E_INVALID_ARG                   Either of the following conditions has occurred: @n
-        *                                                                              - When the frequency is #FREQ_WEEKLY, DayOfWeek is not set. @n
-        *                                                                              - When the frequency is #FREQ_MONTHLY, neither DayOfMonth nor DayOfWeek and WeekOfMonth are not set. @n
+        * @exception   E_INVALID_ARG                   Either of the following conditions has occurred:
+        *                                                                              - When the frequency is #FREQ_WEEKLY, DayOfWeek is not set.
+        *                                                                              - When the frequency is #FREQ_MONTHLY, neither DayOfMonth nor DayOfWeek and WeekOfMonth are set.
         *                                                                              - When the frequency is #FREQ_YEARLY, neither DayOfMonth and MonthOfYear nor DayOfWeek,
-        *                                                                              WeekOfMonth and MonthOfYear are not set. @n
-        *                                                                              - When the frequency is #FREQ_YEARLY and MonthOfYear is 2, DayOfMonth is greater than 29 (> 29). @n
-        *                                                                              - When the frequency is #FREQ_YEARLY and MonthOfYear is 4 or 6 or 9 or 11,
-        *                                                                              DayOfMonth is greater than 30 (> 30).
+        *                                                                                WeekOfMonth and MonthOfYear are set.
+        *                                                                              - When the frequency is #FREQ_YEARLY and MonthOfYear is @c 2, DayOfMonth is greater than @c 29 (> 29).
+        *                                                                              - When the frequency is #FREQ_YEARLY and MonthOfYear is @c 4, @c 6, @c 9 or @c 11,
+        *                                                                                DayOfMonth is greater than @c 30 (> 30).
         * @exception   E_SYSTEM                                The method cannot proceed due to a severe system error.
-        * @remarks             If the until property of the recurrence is set with too distant future from the event's start date, @n
-        *                              too many recurring events are generated. It is the same when the value of recurrence count is big. @n
-        *                              The system limits the count of the recurring events that are generated by recurrence rule of an event. @n
+        * @remarks             If the until property of the recurrence is set too far from the event's start date, @n
+        *                              too many recurring events are generated. It is the same when the value of the recurrence count is large. @n
+        *                              The system limits the count of the recurring events that are generated by the recurrence rule of an event. @n
         *                              In this case, some recurring events that exceed the system limitation cannot be retrieved.
         *
         * The following example demonstrates how to use the %SetRecurrence() method.
@@ -810,12 +842,12 @@ public:
         * @page        CompCalEventSetRecurrencePage Compatibility for SetRecurrence()
         * @section     CompCalEventSetRecurrencePageIssueSection Issues
         *           Implementing this method in OSP compatible applications has the following issues: @n
-        *                      - If the category is anniversary and the frequency of recurrence is not yearly, E_TYPE_MISMATCH exception is occurred. @n
-        *                      Yearly frequency is only accepted for anniversary category.
+        *                      - If the category is anniversary and the frequency of recurrence is not yearly, @c E_TYPE_MISMATCH exception is returned. @n
+        *                       Yearly frequency is only accepted for the anniversary category.
         *
         * @section     CompCalEventSetRecurrencePageSolutionSection Resolutions
         *                      This issue has been resolved in Tizen. @n
-        *                      -# All recurrence frequency will be accepted because the category of event is not used any more.
+        *                      -# All recurrence frequencies are accepted because the category of the event is not used any more.
         * @endif
         */
 
@@ -837,18 +869,20 @@ public:
         * @since       2.0
         *
         * @return              An error code
-        * @param[in]   index                           The index of reminder to remove
+        * @param[in]   index                           The index of the reminder to remove
         * @exception   E_SUCCESS                       The method is successful.
-        * @exception   E_OUT_OF_RANGE          The index is either equal to or greater than the number of reminders or less than @c 0.
+        * @exception   E_OUT_OF_RANGE          Either of the following conditions has occurred:
+        *                                                                      - The specified @c index is either greater than or equal to the number of reminders.
+        *                                                                      - The specified @c index is less than @c 0.
         */
        result RemoveReminderAt(int index);
 
        /**
-        * Gets a list of all the reminders.
+        * Gets the list of reminders.
         *
         * @since       2.0
         *
-        * @return              A list containing the Reminder instances, @n
+        * @return              The list that contains Reminder instances, @n
         *                              else an empty list if there are no reminders
         */
        const Tizen::Base::Collection::IList& GetAllReminders(void) const;
@@ -864,7 +898,7 @@ public:
 
        /**
         * Gets the base event ID.
-        * This method return the ID of the base recurring event for which this event is a recurrence exception.
+        * This method returns the ID of the base recurring event for which this event is a recurrence exception.
         *
         * @since       2.1
         *
@@ -878,7 +912,7 @@ public:
         *
         * @since       2.0
         *
-        * @param[in]   rhs             An instance of %CalEvent
+        * @param[in]   rhs             An instance of %CalEvent to copy
         */
        CalEvent& operator =(const CalEvent& rhs);