diff --git a/SOPE/NGCards/ChangeLog b/SOPE/NGCards/ChangeLog index 86dab1f70..82c5bfe13 100644 --- a/SOPE/NGCards/ChangeLog +++ b/SOPE/NGCards/ChangeLog @@ -1,3 +1,10 @@ +2011-03-22 Wolfgang Sourdeau + + * iCalByDayMask.m (-occursOnDay:withWeekOccurrence:): fixed method + to return true only when it is valid to do so... + (-weekDayOccurrences): new method that returns a reference to the + days ivar. + 2011-03-20 Wolfgang Sourdeau * CardGroup.m (-removeChild:, -removeChildren:): new diff --git a/SOPE/NGCards/iCalByDayMask.h b/SOPE/NGCards/iCalByDayMask.h index 1ca57ee34..b094150db 100644 --- a/SOPE/NGCards/iCalByDayMask.h +++ b/SOPE/NGCards/iCalByDayMask.h @@ -67,6 +67,8 @@ typedef iCalWeekOccurrence iCalWeekOccurrences[7]; - (iCalWeekDay) firstDay; - (int) firstOccurrence; +- (iCalWeekOccurrences *) weekDayOccurrences; + - (NSString *) asRuleString; - (NSString *) asRuleStringWithIntegers; diff --git a/SOPE/NGCards/iCalByDayMask.m b/SOPE/NGCards/iCalByDayMask.m index b586d66b6..9c54e4df0 100644 --- a/SOPE/NGCards/iCalByDayMask.m +++ b/SOPE/NGCards/iCalByDayMask.m @@ -207,7 +207,7 @@ - (BOOL) occursOnDay: (iCalWeekDay) weekDay withWeekOccurrence: (iCalWeekOccurrence) occurrence { - return (days[weekDay] | occurrence) > 0; + return (days[weekDay] & occurrence) > 0; } - (BOOL) occursOnDay: (iCalWeekDay) weekDay @@ -244,13 +244,10 @@ iCalWeekDay day; day = -1; - for (i = 0; i < 7; i++) + for (i = 0; day == -1 && i < 7; i++) { if (days[i]) - { - day = i; - break; - } + day = i; } return day; @@ -270,6 +267,11 @@ return occurrence; } +- (iCalWeekOccurrences *) weekDayOccurrences +{ + return &days; +} + - (int) _iCalWeekOccurrenceIntValue: (iCalWeekOccurrence) weekOccurrence { int i = 0;