sogo/UI/Scheduler/UIxCalView.h
Wolfgang Sourdeau f28a25cb70 Monotone-Parent: b0ba815a88a1243ad497187fab3660f3ebef9f27
Monotone-Revision: 7e4012769b937d5a36d8043bf2b2b1392a61a376

Monotone-Author: wsourdeau@inverse.ca
Monotone-Date: 2006-10-04T23:15:25
Monotone-Branch: ca.inverse.sogo
2006-10-04 23:15:25 +00:00

109 lines
2.3 KiB
Objective-C

// $Id: UIxCalView.h 720 2005-07-12 13:56:19Z znek $
#ifndef __SOGo_UIxCalView_H__
#define __SOGo_UIxCalView_H__
#include <SOGoUI/UIxComponent.h>
/*
UIxCalView
Superclass for most components which render a set of appointments coming from
a SOPE clientObject (which usually is an SOGoAppointmentFolder).
*/
@class NSString, NSArray, NSDictionary, NSCalendarDate, SOGoAptFormatter;
@interface UIxCalView : UIxComponent
{
NSArray *appointments;
NSArray *allDayApts;
id appointment;
NSCalendarDate *currentDay;
SOGoAptFormatter *aptFormatter;
SOGoAptFormatter *aptTooltipFormatter;
SOGoAptFormatter *privateAptFormatter;
SOGoAptFormatter *privateAptTooltipFormatter;
struct {
unsigned isMyApt : 1;
unsigned canAccessApt : 1;
unsigned RESERVED : 30;
} aptFlags;
}
/* config */
- (void)configureFormatters;
/* accessors */
- (NSArray *)appointments;
- (void)setAppointments:(NSArray *)_apts;
- (NSArray *)allDayApts;
- (id)appointment;
- (BOOL)isMyApt;
- (BOOL)canAccessApt; /* protection */
- (BOOL)hasDayInfo;
- (BOOL)hasHoldidayInfo;
- (BOOL)hasAllDayApts;
- (NSDictionary *)aptTypeDict;
- (NSString *)aptTypeLabel;
- (NSString *)aptTypeIcon;
- (SOGoAptFormatter *)aptFormatter;
- (NSString *)shortTextForApt;
- (NSString *)shortTitleForApt;
- (NSString *)tooltipForApt;
- (NSString *)appointmentViewURL;
- (id)holidayInfo;
/* related to current day */
- (void)setCurrentDay:(NSCalendarDate *)_day;
- (NSCalendarDate *)currentDay;
- (NSString *)currentDayName; /* localized */
/* defaults */
- (BOOL)showFullNames;
- (BOOL)showAMPMDates;
- (unsigned)dayStartHour;
- (unsigned)dayEndHour;
- (BOOL)shouldDisplayWeekend;
- (BOOL)shouldDisplayRejectedAppointments;
- (NSCalendarDate *)referenceDateForFormatter;
- (NSCalendarDate *)thisMonth;
- (NSCalendarDate *)nextMonth;
/* fetching */
- (NSCalendarDate *)startDate;
- (NSCalendarDate *)endDate;
- (NSArray *)fetchCoreInfos;
/* date selection */
- (NSDictionary *)todayQueryParameters;
- (NSDictionary *)currentDayQueryParameters;
/* calendarUIDs */
- (NSString *)formattedCalendarUIDs;
/* CSS related */
- (NSString *)aptStyle;
/* protected methods */
- (NSDictionary *) _dateQueryParametersWithOffset: (int) daysOffset;
@end
#endif /* __SOGo_UIxCalView_H__ */