sogo/UI/Scheduler/UIxCalView.h
Francis Lachapelle f7f55e9315 See ChangeLog
Monotone-Parent: b577b5789ba850c92417e70690576edfd3a2793b
Monotone-Revision: 931357c046b4c2c5bca20cfc7027809a3240f43a

Monotone-Author: flachapelle@inverse.ca
Monotone-Date: 2009-06-09T21:25:41
Monotone-Branch: ca.inverse.sogo
2009-06-09 21:25:41 +00:00

119 lines
2.5 KiB
Objective-C

// $Id: UIxCalView.h 1080 2007-06-12 22:15:47Z wolfgang $
#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 NSArray;
@class NSCalendarDate;
@class NSDictionary;
@class NSMutableDictionary;
@class NSString;
@class NSTimeZone;
@class SOGoAptFormatter;
@class SOGoAppointmentFolder;
@interface UIxCalView : UIxComponent
{
NSArray *appointments;
NSMutableDictionary *componentsData;
NSArray *tasks;
NSArray *allDayApts;
id appointment;
NSCalendarDate *currentDay;
NSTimeZone *timeZone;
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;
- (void) setTasks: (NSArray *) _tasks;
- (NSArray *) tasks;
- (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;
- (void) setCurrentView: (NSString *) theView;
/* fetching */
- (NSCalendarDate *) startDate;
- (NSCalendarDate *) endDate;
/* date selection */
- (NSDictionary *) todayQueryParameters;
- (NSDictionary *) currentDayQueryParameters;
/* CSS related */
- (NSString *) aptStyle;
/* protected methods */
- (NSDictionary *) _dateQueryParametersWithOffset: (int) daysOffset;
@end
#endif /* __SOGo_UIxCalView_H__ */