|
@@ -0,0 +1,881 @@
|
|
|
+{
|
|
|
+ This file is part of the Pas2JS run time library.
|
|
|
+ Copyright (C) 2019 Michael Van Canneyt
|
|
|
+
|
|
|
+ FullCalendar version 5 mappings for pas2js
|
|
|
+
|
|
|
+ See the file COPYING.FPC, included in this distribution,
|
|
|
+ for details about the copyright.
|
|
|
+
|
|
|
+ This program is distributed in the hope that it will be useful,
|
|
|
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
|
|
+
|
|
|
+ **********************************************************************}
|
|
|
+
|
|
|
+unit libfullcalendar5;
|
|
|
+
|
|
|
+{$mode objfpc}
|
|
|
+{$modeswitch externalclass}
|
|
|
+
|
|
|
+interface
|
|
|
+
|
|
|
+uses
|
|
|
+ sysutils, types, js, web;
|
|
|
+
|
|
|
+Const
|
|
|
+ fcViewMonth = 'dayGridMonth';
|
|
|
+ fcViewWeek = 'timeGridWeek';
|
|
|
+ fcViewDay = 'timeGridDay';
|
|
|
+
|
|
|
+ // A list of plugin names, created from the plugin index page
|
|
|
+ fcInteractionPlugin = 'interaction';
|
|
|
+ fcDayGridPlugin = 'dayGrid';
|
|
|
+ fcTimeGridPlugin = 'timeGrid';
|
|
|
+ fcListPlugin = 'list';
|
|
|
+ fcTimelinePlugin = 'timeline';
|
|
|
+ fcResourceDayGridPlugin = 'resourceDayGrid';
|
|
|
+ fcResourceTimeGridPlugin = 'resourceTimeGrid';
|
|
|
+ fcResourceTimelinePlugin = 'resourceTimeline';
|
|
|
+ fcBootstrapPlugin = 'bootstrap';
|
|
|
+ fcGoogleCalendarPlugin = 'googleCalendar';
|
|
|
+ fcRRulePlugin = 'rrule';
|
|
|
+ fcMomentPlugin = 'moment';
|
|
|
+ fcMomentTimezonePlugin = 'momentTimeZone';
|
|
|
+ fcReactPlugin = 'react';
|
|
|
+ fcAngularPlugin = 'angular';
|
|
|
+ fcVuePlugin = 'vue';
|
|
|
+
|
|
|
+ fcHeaderFooterTitle = 'title';
|
|
|
+ fcHeaderFooterPrev = 'prev';
|
|
|
+ fcHeaderFooterNext = 'next';
|
|
|
+ fcHeaderFooterPrevYear = 'prevYear';
|
|
|
+ fcHeaderFooterNextYear = 'nextYear';
|
|
|
+ fcHeaderFooterToday = 'today';
|
|
|
+
|
|
|
+ fcDateFormatNumeric = 'numeric';
|
|
|
+ fcDateFormat2Digit = '2-digit';
|
|
|
+ fcDateFormatLong = 'long';
|
|
|
+ fcDateFormatShort = 'short';
|
|
|
+ fcDateFormatNarrow = 'narrow';
|
|
|
+
|
|
|
+ fcEventDisplayAuto = 'auto';
|
|
|
+ fcEventDisplayBlock = 'block';
|
|
|
+ fcEventDisplayListItem = 'list-item';
|
|
|
+ fcEventDisplayBackground = 'background';
|
|
|
+ fcEventDisplayInverseBackground = 'inverse-background';
|
|
|
+ fcEventDisplayNone = 'none';
|
|
|
+
|
|
|
+ fcSlotFuture = 'fc-slot-future';
|
|
|
+ fcSlotPast = 'fc-slot-past';
|
|
|
+ fcSlotFri = 'fc-slot-fri';
|
|
|
+ fcSlotSat = 'fc-slot-sat';
|
|
|
+ fcSlotSun = 'fc-slot-sun';
|
|
|
+ fcSlotToday = 'fc-slot-today';
|
|
|
+
|
|
|
+Type
|
|
|
+ TProcedural = reference to procedure;
|
|
|
+ TDateFunction = reference to Function : TJSDate;
|
|
|
+
|
|
|
+ TDateFormatter = Class external name 'Object' (TJSObject)
|
|
|
+ // Use fcDateFormat* constants
|
|
|
+ year : String;
|
|
|
+ month : String;
|
|
|
+ day : String;
|
|
|
+ week : string;
|
|
|
+ meridiem : string;
|
|
|
+ weekday : String;
|
|
|
+ hour : string;
|
|
|
+ minute : string;
|
|
|
+ second : string;
|
|
|
+ hour12 : Boolean;
|
|
|
+ timeZoneName : string;
|
|
|
+ omitZeroMinute : Boolean;
|
|
|
+ omitCommas : Boolean;
|
|
|
+ end;
|
|
|
+
|
|
|
+ TDuration = Class external name 'Object' (TJSObject)
|
|
|
+ years : NativeInt;
|
|
|
+ months : NativeInt;
|
|
|
+ days : NativeInt;
|
|
|
+ milliseconds : NativeInt;
|
|
|
+ end;
|
|
|
+
|
|
|
+ TDateRange = Class external name 'Object' (TJSObject)
|
|
|
+ start : TJSDate;
|
|
|
+ startStr : string; external name 'start';
|
|
|
+ startInt : nativeInt; external name 'start';
|
|
|
+ end;
|
|
|
+
|
|
|
+ TCalendarHeaderFooterOptions = Class external name 'Object' (TJSObject)
|
|
|
+ // use the fcHeaderFooter consts
|
|
|
+ start : string;
|
|
|
+ end_ : string; external name 'end';
|
|
|
+ center : string;
|
|
|
+ end;
|
|
|
+
|
|
|
+ TDateFormatHandler = reference to function(aDate : TJSDate) : String;
|
|
|
+
|
|
|
+ TButtonText = Class external name 'Object' (TJSObject)
|
|
|
+ today : string;
|
|
|
+ month : string;
|
|
|
+ week : string;
|
|
|
+ day : string;
|
|
|
+ list : string;
|
|
|
+ end;
|
|
|
+
|
|
|
+ TButtonTextRec = record
|
|
|
+ today : string;
|
|
|
+ month : string;
|
|
|
+ week : string;
|
|
|
+ day : string;
|
|
|
+ list : string;
|
|
|
+ end;
|
|
|
+
|
|
|
+ TButtonIcons = Class external name 'Object' (TJSObject)
|
|
|
+ title : string;
|
|
|
+ prev : string;
|
|
|
+ next : string;
|
|
|
+ prevYear : string;
|
|
|
+ nextYear : string;
|
|
|
+ today : string;
|
|
|
+ end;
|
|
|
+
|
|
|
+ TButtonIconsRec = record
|
|
|
+ today : string;
|
|
|
+ title : string;
|
|
|
+ prev : string;
|
|
|
+ next : string;
|
|
|
+ prevYear : string;
|
|
|
+ nextYear : string;
|
|
|
+ end;
|
|
|
+
|
|
|
+ TCustomButtonSpec = record
|
|
|
+ text : string;
|
|
|
+ click : TJSEventHandler;
|
|
|
+ end;
|
|
|
+
|
|
|
+ TFontAwesomeSpec = Class external name 'Object' (TJSObject)
|
|
|
+ close : string;
|
|
|
+ title : string;
|
|
|
+ prev : string;
|
|
|
+ next : string;
|
|
|
+ prevYear : string;
|
|
|
+ nextYear : string;
|
|
|
+ today : string;
|
|
|
+ end;
|
|
|
+
|
|
|
+ TFontAwesomeSpecRec = record
|
|
|
+ close : string;
|
|
|
+ title : string;
|
|
|
+ prev : string;
|
|
|
+ next : string;
|
|
|
+ prevYear : string;
|
|
|
+ nextYear : string;
|
|
|
+ today : string;
|
|
|
+ end;
|
|
|
+
|
|
|
+
|
|
|
+ TCustomButtonSpecs = Class external name 'Object' (TJSObject)
|
|
|
+ private
|
|
|
+ function GetButton(Name: String): TCustomButtonSpec; external name '[]';
|
|
|
+ procedure SetButton(Name: String; const AValue: TCustomButtonSpec); external name '[]';
|
|
|
+ Public
|
|
|
+ property buttons [aIndex : string] : TCustomButtonSpec read GetButton Write SetButton;
|
|
|
+ end;
|
|
|
+
|
|
|
+ TBusinessHoursSpec = Class external name 'Object' (TJSObject)
|
|
|
+ daysOfWeek : TIntegerDynArray;
|
|
|
+ startTime : TDuration;
|
|
|
+ startTimeStr : string; external name 'startTime';
|
|
|
+ startTimeInt : nativeInt; external name 'startTime';
|
|
|
+ endTime : TDuration;
|
|
|
+ endTimeStr : string; external name 'endTime';
|
|
|
+ endTimeInt : nativeInt; external name 'endTime';
|
|
|
+ end;
|
|
|
+ TBusinessHoursSpecArray = Array of TBusinessHoursSpec;
|
|
|
+
|
|
|
+ TCalendarEvent = Class;
|
|
|
+ TCalendarResource = Class;
|
|
|
+ TFullCalendarView = class;
|
|
|
+
|
|
|
+ TAllowDropInfo = record
|
|
|
+ allDay : Boolean;
|
|
|
+ end_ : TJSDate; external name 'end';
|
|
|
+ resource : TCalendarResource;
|
|
|
+ start : TJSDate;
|
|
|
+ startStr : String;
|
|
|
+ end;
|
|
|
+
|
|
|
+ TAllowFunction = reference to function (dropInfo : TAllowDropInfo; draggedEvent : TCalendarEvent) : Boolean;
|
|
|
+
|
|
|
+ TBaseCalendarResource = Class external name 'Object' (TJSObject)
|
|
|
+ id : String;
|
|
|
+ title : string;
|
|
|
+ eventColor : string;
|
|
|
+ eventBackgroundColor : string;
|
|
|
+ eventBorderColor : string;
|
|
|
+ eventTextColor : string;
|
|
|
+ eventClassNames : String;
|
|
|
+ eventClassNamesArray : TStringDynArray; external name 'eventClassNames';
|
|
|
+ eventOverlap : Boolean;
|
|
|
+ eventAllow : TAllowFunction;
|
|
|
+ end;
|
|
|
+ TBaseCalendarResourceArray = array of TBaseCalendarResource;
|
|
|
+
|
|
|
+ TCalendarResource = Class external name 'Object' (TJSObject)
|
|
|
+ end;
|
|
|
+
|
|
|
+ TCalendarResourceArray = array of TCalendarResource;
|
|
|
+
|
|
|
+ THeightHandler = Reference to function : NativeInt;
|
|
|
+
|
|
|
+ TBaseCalendarEvent = Class external name 'Object' (TJSObject)
|
|
|
+ id : string;
|
|
|
+ idInt : NativeInt; external name 'id';
|
|
|
+ groupId : string;
|
|
|
+ groupIdInt : NativeInt; external name 'groupId';
|
|
|
+ allDay : Boolean;
|
|
|
+ start : TJSDate;
|
|
|
+ startStr : string; external name 'start';
|
|
|
+ startInt : nativeInt; external name 'start';
|
|
|
+ end_ : TJSDate; external name 'end';
|
|
|
+ endStr : string; external name 'end';
|
|
|
+ endInt : nativeInt; external name 'end';
|
|
|
+ daysOfWeek : TIntegerDynArray;
|
|
|
+ startTime : TDuration;
|
|
|
+ startTimeStr : string; external name 'startTime';
|
|
|
+ endTime : TDuration;
|
|
|
+ endTimeStr : string; external name 'endTime';
|
|
|
+ startRecur : TJSDate;
|
|
|
+ startRecurStr : string; external name 'startRecur';
|
|
|
+ startRecurInt : nativeInt; external name 'startRecur';
|
|
|
+ endRecur : TJSDate;
|
|
|
+ endRecurStr : string; external name 'endRecur';
|
|
|
+ endRecurInt : nativeInt; external name 'endRecur';
|
|
|
+ title : string;
|
|
|
+ url : string;
|
|
|
+ classNames : string;
|
|
|
+ classNamesArray : TStringDynArray; external name 'classNames';
|
|
|
+ editable : boolean;
|
|
|
+ startEditable : Boolean;
|
|
|
+ durationEditable : Boolean;
|
|
|
+ resourceEditable : Boolean;
|
|
|
+ resourceId : String;
|
|
|
+ resourceIds : TStringDynArray;
|
|
|
+ display : string;
|
|
|
+ overlap : boolean;
|
|
|
+ constraint : string;
|
|
|
+ constraintObj : TBusinessHoursSpec; external name 'constraint';
|
|
|
+ color : string;
|
|
|
+ backgroundColor : string;
|
|
|
+ borderColor : string;
|
|
|
+ textColor : string;
|
|
|
+ extendedProps : TJSObject;
|
|
|
+ end;
|
|
|
+ TBaseCalendarEventArray = array of TBaseCalendarEvent;
|
|
|
+
|
|
|
+ { TBaseCalendarEventHelper }
|
|
|
+
|
|
|
+ TBaseCalendarEventHelper = class helper for TBaseCalendarEvent
|
|
|
+ class function event(const aTitle : String; aStart,aEnd : TDateTime) : TBaseCalendarEvent; static;
|
|
|
+ end;
|
|
|
+
|
|
|
+ { TCalendarEvent }
|
|
|
+
|
|
|
+ TCalendarEvent = Class external name 'Object' (TJSObject)
|
|
|
+ private
|
|
|
+ FAllDay: Boolean; external name 'allDay';
|
|
|
+ FbackgroundColor: string; external name 'backgroundColor';
|
|
|
+ FBorderColor: string; external name 'borderColor';
|
|
|
+ FClassNames: TStringDynArray; external name 'classNames';
|
|
|
+ FdurationEditable: Boolean; external name 'durationEditable';
|
|
|
+ feditable: boolean; external name 'editable';
|
|
|
+ FEnd: TJSDate; external name 'end';
|
|
|
+ fEventConstraint: string; external name 'eventConstraint';
|
|
|
+ FExtendedProps: TJSObject; external name 'extendedProps';
|
|
|
+ FGroupID: string; external name 'groupId';
|
|
|
+ FID: string; external name 'id';
|
|
|
+ FOverLap: boolean; external name 'overlap';
|
|
|
+ FRendering: string; external name 'rendering';
|
|
|
+ FresourceEditable: Boolean; external name 'resourceEditable';
|
|
|
+ FSource: JSValue; external name 'source';
|
|
|
+ FStart: TJSDate; external name 'start';
|
|
|
+ FstartEditable: Boolean; external name 'startEditable';
|
|
|
+ FTextColor: string; external name 'textColor';
|
|
|
+ FTitle: string; external name 'title';
|
|
|
+ FURL: string; external name 'url';
|
|
|
+ Public
|
|
|
+ procedure setProp(const aName : string; aValue : JSValue);
|
|
|
+ procedure setExtendedProp(const aName : string; aValue : JSValue);
|
|
|
+ Procedure setStart(aDate : TJSDate); overload;
|
|
|
+ Procedure setStart(aDate : String); overload;
|
|
|
+ Procedure setStart(aDate : NativeInt); overload;
|
|
|
+ Procedure setStart(aDate : TJSDate; Options : TJSObject); overload;
|
|
|
+ Procedure setStart(aDate : String; Options : TJSObject); overload;
|
|
|
+ Procedure setStart(aDate : NativeInt; Options : TJSObject); overload;
|
|
|
+ Procedure setEnd(aDate : TJSDate); overload;
|
|
|
+ Procedure setEnd(aDate : String); overload;
|
|
|
+ Procedure setEnd(aDate : NativeInt); overload;
|
|
|
+ Procedure setDates(aStart,aEnd : TJSDate); overload;
|
|
|
+ Procedure setDates(aStart,aEnd : String); overload;
|
|
|
+ Procedure setDates(aStart,aEnd : NativeInt); overload;
|
|
|
+ Procedure setDates(aStart,aEnd : TJSDate; Options : TJSObject); overload;
|
|
|
+ Procedure setDates(aStart,aEnd : String; Options : TJSObject); overload;
|
|
|
+ Procedure setDates(aStart,aEnd : NativeInt; Options : TJSObject); overload;
|
|
|
+ Procedure setAllDay(aValue : Boolean); overload;
|
|
|
+ Procedure setAllDay(aValue : Boolean; Options:TJSObject); overload;
|
|
|
+ Procedure moveStart(aDelta : TDuration); overload;
|
|
|
+ Procedure moveStart(aDelta : String); overload;
|
|
|
+ Procedure moveStart(aDelta : NativeInt); overload;
|
|
|
+ Procedure moveEnd(aDelta : TDuration); overload;
|
|
|
+ Procedure moveEnd(aDelta : String); overload;
|
|
|
+ Procedure moveEnd(aDelta : NativeInt); overload;
|
|
|
+ Procedure moveDates(aDelta : TDuration); overload;
|
|
|
+ Procedure moveDates(aDelta : String); overload;
|
|
|
+ Procedure moveDates(aDelta : NativeInt); overload;
|
|
|
+ Procedure formatRange(formatter : TDateFormatter);
|
|
|
+ Procedure remove;
|
|
|
+ Function getResources : TCalendarResourceArray;
|
|
|
+ Procedure setResources(aResources : array of string); overload;
|
|
|
+ Procedure setResources(aResources : TCalendarResourceArray); overload;
|
|
|
+
|
|
|
+ Property id : string read FID;
|
|
|
+ Property groupId : string read FGroupID;
|
|
|
+ Property allDay : Boolean read FAllDay;
|
|
|
+ Property start : TJSDate read FStart;
|
|
|
+ Property end_ : TJSDate read FEnd;
|
|
|
+ Property title : string read FTitle;
|
|
|
+ Property url : string read FURL;
|
|
|
+ Property classNames : TStringDynArray read FClassNames;
|
|
|
+ Property editable : boolean read feditable;
|
|
|
+ Property startEditable : Boolean read FstartEditable;
|
|
|
+ property eventConstraint : string Read fEventConstraint;
|
|
|
+ Property durationEditable : Boolean Read FdurationEditable;
|
|
|
+ Property resourceEditable : Boolean read FresourceEditable;
|
|
|
+ Property rendering : string read FRendering;
|
|
|
+ Property overlap : boolean read FOverLap;
|
|
|
+ Property backgroundColor : string read FbackgroundColor;
|
|
|
+ Property borderColor : string read FBorderColor;
|
|
|
+ Property textColor : string Read FTextColor;
|
|
|
+ Property extendedProps : TJSObject Read FExtendedProps;
|
|
|
+ Property source : JSValue Read FSource;
|
|
|
+ end;
|
|
|
+ TCalendarEventArray = array of TCalendarEvent;
|
|
|
+
|
|
|
+ TGoogleCalendarEventsSpec = Class external name 'Object' (TJSObject)
|
|
|
+ googleCalendarId : String;
|
|
|
+ // Other options can be specified
|
|
|
+ end;
|
|
|
+
|
|
|
+
|
|
|
+ TJSONFeedSpec = Class external name 'Object' (TJSObject)
|
|
|
+ url : string;
|
|
|
+ // Other options can be specified
|
|
|
+ end;
|
|
|
+
|
|
|
+ TEventGeneratorInfo = record
|
|
|
+ start : TJSDate;
|
|
|
+ end_ : TJSDate; external name 'end';
|
|
|
+ startStr : String;
|
|
|
+ endStr : String;
|
|
|
+ timeZone : String;
|
|
|
+ end;
|
|
|
+
|
|
|
+ TSelectInfo = Record
|
|
|
+ Start : TJSDate;
|
|
|
+ end_ : TJSDate; external name 'end';
|
|
|
+ resourceId : String;
|
|
|
+ end;
|
|
|
+
|
|
|
+ TEventMouseInfo = record
|
|
|
+ event : TCalendarEvent;
|
|
|
+ el : TJSHTMLElement;
|
|
|
+ jsEvent : TJSEvent;
|
|
|
+ view : TFullCalendarView;
|
|
|
+ end;
|
|
|
+
|
|
|
+
|
|
|
+ TGenerateEventsCallBack = Procedure (Res : TBaseCalendarEventArray);
|
|
|
+ TGenerateEventsFailureCallBack = Procedure (Res : JSValue);
|
|
|
+ TCalendarEventGenerator = reference to Procedure (info : TEventGeneratorInfo; successCallBack : TGenerateEventsCallBack; FailCallBack : TGenerateEventsFailureCallBack);
|
|
|
+ TCalendarLoadingCallback = reference to procedure (isLoading : Boolean);
|
|
|
+ TSelectOverlapHandler = reference to function(Event : TJSObject) : boolean;
|
|
|
+ TSelectAllowHandler = reference to function(info : TSelectInfo) : Boolean;
|
|
|
+ TEventMouseEventHandler = reference to procedure(info : TEventMouseInfo);
|
|
|
+
|
|
|
+ TCalendarEventSource = Class external name 'Object' (TJSObject)
|
|
|
+ events : TBaseCalendarEventArray;
|
|
|
+ eventsStr : string; external name 'events'; // JSON feed
|
|
|
+ eventsFunc : TCalendarEventGenerator; external name 'events'; // JSON feed
|
|
|
+ eventsJSONFeed : TJSONFeedSpec; external name 'events'; // JSON feed
|
|
|
+ eventsArr : TCalendarEventArray; external name 'events'; // JSON feed
|
|
|
+ eventsObjList : TJSObjectDynArray ; external name 'events'; // Roll your own
|
|
|
+ Procedure refetch;
|
|
|
+ Procedure remove;
|
|
|
+ end;
|
|
|
+
|
|
|
+ TCalendarEventRenderInfo = record
|
|
|
+ event: TCalendarEvent;
|
|
|
+ el : TJSHTMLElement;
|
|
|
+ timeText : string;
|
|
|
+ isStart : Boolean;
|
|
|
+ isEnd : Boolean;
|
|
|
+ isMirror : Boolean;
|
|
|
+ isPast : Boolean;
|
|
|
+ isFuture : Boolean;
|
|
|
+ isToday : Boolean;
|
|
|
+ view : TFullCalendarView;
|
|
|
+ end;
|
|
|
+
|
|
|
+ TCalendarEventContentObj = Class external name 'Object' (TJSObject)
|
|
|
+ html : string;
|
|
|
+ domNodes : Array of TJSHTMLElement;
|
|
|
+ end;
|
|
|
+ TSlotLabelContentObj = TCalendarEventContentObj;
|
|
|
+ TSlotLaneContentObj = TCalendarEventContentObj;
|
|
|
+ TweekNumberContentObj = TCalendarEventContentObj;
|
|
|
+ TViewContentObj = TCalendarEventContentObj;
|
|
|
+
|
|
|
+ TRevertHandler = reference to procedure;
|
|
|
+ TAddEventInfo = Class external name 'Object' (TJSObject)
|
|
|
+ event : TCalendarEvent;
|
|
|
+ relatedEvents : TCalendarEventArray;
|
|
|
+ revert : TRevertHandler;
|
|
|
+ end;
|
|
|
+
|
|
|
+ TChangeEventInfo = Class external name 'Object' (TJSObject)
|
|
|
+ event : TCalendarEvent;
|
|
|
+ oldevent : TCalendarEvent;
|
|
|
+ relatedEvents : TCalendarEventArray;
|
|
|
+ revert : TRevertHandler;
|
|
|
+ end;
|
|
|
+
|
|
|
+ TRemoveEventInfo = Class external name 'Object' (TJSObject)
|
|
|
+ event : TCalendarEvent;
|
|
|
+ relatedEvents : TCalendarEventArray;
|
|
|
+ revert : TRevertHandler;
|
|
|
+ end;
|
|
|
+
|
|
|
+ TCalendarViewRenderInfo = record
|
|
|
+ view: TFullCalendarView;
|
|
|
+ el : TJSHTMLElement;
|
|
|
+ end;
|
|
|
+
|
|
|
+ TDayHeaderRenderInfo = Record
|
|
|
+ date : TJSDate;
|
|
|
+ text : string;
|
|
|
+ isPast : Boolean;
|
|
|
+ isFuture : Boolean;
|
|
|
+ isToday : Boolean;
|
|
|
+ isOther : boolean;
|
|
|
+ resource : TJSObject;
|
|
|
+ el : TJSHTMLElement;
|
|
|
+ end;
|
|
|
+
|
|
|
+ TDayCellRenderInfo = Record
|
|
|
+ date : TJSDate;
|
|
|
+ dayNumberText : string;
|
|
|
+ isPast : Boolean;
|
|
|
+ isFuture : Boolean;
|
|
|
+ isToday : Boolean;
|
|
|
+ isOther : boolean;
|
|
|
+ resource : TJSObject;
|
|
|
+ el : TJSHTMLElement;
|
|
|
+ end;
|
|
|
+
|
|
|
+ TSlotLabelRenderInfo = Record
|
|
|
+ date : TJSDate;
|
|
|
+ text : string;
|
|
|
+ isPast : Boolean;
|
|
|
+ isFuture : Boolean;
|
|
|
+ isToday : Boolean;
|
|
|
+ lebel : Integer;
|
|
|
+ el : TJSHTMLElement;
|
|
|
+ end;
|
|
|
+ TSlotLaneRenderInfo = TSlotLabelRenderInfo;
|
|
|
+
|
|
|
+ TWeekNumberRenderInfo = Record
|
|
|
+ num : integer;
|
|
|
+ text : string;
|
|
|
+ date : TJSDate;
|
|
|
+ end;
|
|
|
+
|
|
|
+ TCalendarEventClassNamesCallback = reference to function(Info : TCalendarEventRenderInfo) : string;
|
|
|
+ TCalendarEventContentCallback = reference to function (Info : TCalendarEventRenderInfo) : TCalendarEventContentObj;
|
|
|
+ TCalendarEventMountCallback = reference to Procedure (Info : TCalendarEventRenderInfo);
|
|
|
+
|
|
|
+ TEventSortCallBack = reference to function (ev1,ev2 : TCalendarEvent) : Integer;
|
|
|
+ TCalendarEventSourceArray = Array of TCalendarEventSource;
|
|
|
+ TAddEventCallBack = reference to procedure (addInfo : TAddEventInfo);
|
|
|
+ TChangeEventCallBack = reference to procedure (changeInfo : TChangeEventInfo);
|
|
|
+ TRemoveEventCallBack = reference to procedure (removeInfo : TRemoveEventInfo);
|
|
|
+
|
|
|
+ TCalendarViewClassNamesCallback = reference to function(Info : TCalendarViewRenderInfo) : string;
|
|
|
+ TCalendarViewMountCallback = reference to Procedure (Info : TCalendarViewRenderInfo);
|
|
|
+
|
|
|
+ TDayHeaderClassNamesCallback = reference to function(Info : TDayHeaderRenderInfo) : string;
|
|
|
+ TDayHeaderContentStrCallback = reference to function (Info : TDayHeaderRenderInfo) : string;
|
|
|
+ TDayHeaderContentObjCallback = reference to function (Info : TDayHeaderRenderInfo) : TCalendarEventContentObj;
|
|
|
+ TDayHeaderMountCallback = reference to Procedure (Info : TDayHeaderRenderInfo);
|
|
|
+
|
|
|
+ TDayCellClassNamesCallback = reference to function(Info : TDayCellRenderInfo) : string;
|
|
|
+ TDayCellContentStrCallback = reference to function (Info : TDayCellRenderInfo) : string;
|
|
|
+ TDayCellContentObjCallback = reference to function (Info : TDayCellRenderInfo) : TCalendarEventContentObj;
|
|
|
+ TDayCellMountCallback = reference to Procedure (Info : TDayCellRenderInfo);
|
|
|
+
|
|
|
+ TSlotLabelClassNamesCallback = reference to function(Info : TSlotLabelRenderInfo) : string;
|
|
|
+ TSlotLabelContentStrCallback = reference to function (Info : TSlotLabelRenderInfo) : string;
|
|
|
+ TSlotLabelContentObjCallback = reference to function (Info : TSlotLabelRenderInfo) : TCalendarEventContentObj;
|
|
|
+ TSlotLabelMountCallback = reference to Procedure (Info : TSlotLabelRenderInfo);
|
|
|
+
|
|
|
+ TSlotLaneClassNamesCallback = reference to function(Info : TSlotLaneRenderInfo) : string;
|
|
|
+ TSlotLaneContentStrCallback = reference to function (Info : TSlotLaneRenderInfo) : string;
|
|
|
+ TSlotLaneContentObjCallback = reference to function (Info : TSlotLaneRenderInfo) : TCalendarEventContentObj;
|
|
|
+ TSlotLaneMountCallback = reference to Procedure (Info : TSlotLaneRenderInfo);
|
|
|
+
|
|
|
+ TweekNumberClassNamesCallback = reference to function(Info : TweekNumberRenderInfo) : string;
|
|
|
+ TweekNumberContentStrCallback = reference to function (Info : TweekNumberRenderInfo) : string;
|
|
|
+ TweekNumberContentObjCallback = reference to function (Info : TweekNumberRenderInfo) : TCalendarEventContentObj;
|
|
|
+ TweekNumberMountCallback = reference to Procedure (Info : TweekNumberRenderInfo);
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ TFullCalendarOptions = Class external name 'Object' (TJSObject)
|
|
|
+ plugins : TStringDynArray;
|
|
|
+ pluginRaw : TJSArray; external name 'plugins';
|
|
|
+ rerenderDelay : NativeInt;
|
|
|
+ initialDate : TJSDate;
|
|
|
+ initialDateStr : string; external name 'initialDate';
|
|
|
+ initialDateInt : nativeInt; external name 'initialDate';
|
|
|
+ defaultAllDay : Boolean;
|
|
|
+ defaultAllDayEventDuration : TDuration;
|
|
|
+ defaultAllDayEventDurationStr : String; external name 'defaultAllDayEventDuration';
|
|
|
+ defaultTimedEventDuration : TDuration;
|
|
|
+ defaultTimedEventDurationStr : String; external name 'defaultTimedEventDuration';
|
|
|
+ forceEventDuration : Boolean;
|
|
|
+ eventDisplay : string;
|
|
|
+ eventAdd : TAddEventCallBack;
|
|
|
+ eventChange : TChangeEventCallBack;
|
|
|
+ eventRemove : TRemoveEventCallBack;
|
|
|
+ eventColor : String;
|
|
|
+ eventBorderColor : String;
|
|
|
+ eventTextColor : String;
|
|
|
+ eventBackgroundColor : String;
|
|
|
+ dateIncrement : TDuration;
|
|
|
+ dateIncrementStr : string; external name 'dateIncrement';
|
|
|
+ dateAlignment : String;
|
|
|
+ validRange : TDateRange;
|
|
|
+ headerToolbar : TCalendarHeaderFooterOptions;
|
|
|
+ headerToolbarBool : Boolean; external name 'headerToolbar';
|
|
|
+ footerToolbar : TCalendarHeaderFooterOptions;
|
|
|
+ footerToolbarBool : Boolean; external name 'footerToolbar';
|
|
|
+ titleFormat : TDateFormatter;
|
|
|
+ titleFormatStr : string; external name 'titleFormat';
|
|
|
+ titleFormatFunc : TDateFormatHandler; external name 'titleFormat';
|
|
|
+ titleRangeSeparator : String;
|
|
|
+ buttonText : TButtonText;
|
|
|
+ buttonTextRec : TButtonTextRec;
|
|
|
+ buttonIcons : TButtonIcons;
|
|
|
+ buttonIconsRec : TButtonIconsRec;
|
|
|
+ customButtons : TCustomButtonSpecs;
|
|
|
+ customButtonsObj : TJSObject;
|
|
|
+ themeSystem : string;
|
|
|
+ bootstrapFontAwesome : TFontAwesomeSpec;
|
|
|
+ bootstrapFontAwesomeRec : TFontAwesomeSpecRec;
|
|
|
+ weekends : boolean;
|
|
|
+ hiddenDays : TNativeIntDynArray;
|
|
|
+ dayHeader : Boolean;
|
|
|
+ dayHeaderFormat : TDateFormatter;
|
|
|
+ dayHeaderClassNames : String;
|
|
|
+ dayHeaderClassNamesFunc : TDayHeaderClassnamesCallback; external name 'dayHeaderClassNames';
|
|
|
+ dayHeaderContent : TDayHeaderClassnamesCallback;
|
|
|
+ dayHeaderContentStr : TDayHeaderContentStrCallback; external name 'dayHeaderContent';
|
|
|
+ dayHeaderContentObj : TDayHeaderContentObjCallback; external name 'dayHeaderContent';
|
|
|
+ dayHeaderDidMount : TDayHeaderMountCallBack;
|
|
|
+ dayHeaderWillUnmount : TDayHeaderMountCallBack;
|
|
|
+
|
|
|
+ dayCellClassNames : String;
|
|
|
+ dayCellClassNamesFunc : TDayCellClassnamesCallback; external name 'dayCellClassNames';
|
|
|
+ dayCellContent : TDayCellClassnamesCallback;
|
|
|
+ dayCellContentStr : TDayCellContentStrCallback; external name 'dayCellContent';
|
|
|
+ dayCellContentObj : TDayCellContentObjCallback; external name 'dayCellContent';
|
|
|
+ dayCellDidMount : TDayCellMountCallBack;
|
|
|
+ dayCellWillUnmount : TDayCellMountCallBack;
|
|
|
+
|
|
|
+ slotDuration : TDuration;
|
|
|
+ slotDurationStr : string; external name 'slotDuration';
|
|
|
+ slotLabelInterval : TDuration;
|
|
|
+ slotLabelIntervalStr : string; external name 'slotLabelInterval';
|
|
|
+ slotLabelFormat : TDateFormatter;
|
|
|
+ slotLabelFormatStr : String;
|
|
|
+ slotMinTime : TDuration;
|
|
|
+ slotMinTimeStr : string; external name 'slotMinTime';
|
|
|
+ slotMaxTime : TDuration;
|
|
|
+ slotMaxTimeStr : string; external name 'slotMaxTime';
|
|
|
+ slotMinWidth : Integer;
|
|
|
+
|
|
|
+ slotLabelClassNames : String;
|
|
|
+ slotLabelClassNamesFunc : TSlotLabelClassNamesCallback; external name 'slotLabelClassNames';
|
|
|
+ slotLabelContent : String;
|
|
|
+ slotLabelContentObj : TSlotLabelContentObj; external name 'slotLabelContent';
|
|
|
+ slotLabelContentObjFunc : TSlotLabelContentObjCallback; external name 'slotLabelContent';
|
|
|
+ slotLabelContentStrFunc : TSlotLabelContentStrCallback; external name 'slotLabelContent';
|
|
|
+ slotLabelDidMount : TSlotLabelMountCallback;
|
|
|
+ slotLabelWillUnmout : TSlotLabelMountCallback;
|
|
|
+
|
|
|
+ slotLaneClassNames : String;
|
|
|
+ slotLaneClassNamesFunc : TSlotLaneClassNamesCallback; external name 'slotLaneClassNames';
|
|
|
+ slotLaneContent : String;
|
|
|
+ slotLaneContentObj : TSlotLaneContentObj; external name 'slotLaneContent';
|
|
|
+ slotLaneContentObjFunc : TSlotLaneContentObjCallback; external name 'slotLaneContent';
|
|
|
+ slotLaneContentStrFunc : TSlotLaneClassNamesCallback; external name 'slotLaneContent';
|
|
|
+ slotLaneDidMount : TSlotLaneMountCallback;
|
|
|
+ slotLaneWillUnmout : TSlotLaneMountCallback;
|
|
|
+
|
|
|
+ weekText : string;
|
|
|
+ weekNumberFormat : TDateFormatter;
|
|
|
+ weekNumberFormatStr : String; external name 'weekNumberFormat';
|
|
|
+ weekNumberClassNames : String;
|
|
|
+ weekNumberClassNamesFunc : TweekNumberClassNamesCallback; external name 'weekNumberClassNames';
|
|
|
+ weekNumberContent : String;
|
|
|
+ weekNumberContentObj : TweekNumberContentObj; external name 'weekNumberContent';
|
|
|
+ weekNumberContentObjFunc : TweekNumberContentObjCallback; external name 'weekNumberContent';
|
|
|
+ weekNumberContentStrFunc : TweekNumberClassNamesCallback; external name 'weekNumberContent';
|
|
|
+ weekNumberDidMount : TweekNumberMountCallback;
|
|
|
+ weekNumberWillUnmout : TweekNumberMountCallback;
|
|
|
+
|
|
|
+
|
|
|
+ scrollTime : TDuration;
|
|
|
+ scrollTimeStr : string; external name 'scrollTime';
|
|
|
+ firstDay : Integer;
|
|
|
+ locale : string;
|
|
|
+ dir : string;
|
|
|
+ height : Integer;
|
|
|
+ heightStr : String; external name 'height';
|
|
|
+ heightFunc : THeightHandler; external name 'height';
|
|
|
+ contentHeight : Integer;
|
|
|
+ contentHeightStr : String; external name 'contentHeight';
|
|
|
+ contentHeightFunc : THeightHandler; external name 'contentHeight';
|
|
|
+ aspectRatio : Double;
|
|
|
+ handleWindoResize : Boolean;
|
|
|
+ windowResizeDelay : Integer;
|
|
|
+ showNonCurrentDates : Boolean;
|
|
|
+ fixedWeekCount : Boolean;
|
|
|
+ businessHours : TBusinessHoursSpec;
|
|
|
+ businessHoursBool : Boolean; external name 'businessHours';
|
|
|
+ businessHoursArray : TBusinessHoursSpecArray; external name 'businessHours';
|
|
|
+ nowIndicator : Boolean;
|
|
|
+ now : TJSDate;
|
|
|
+ nowStr : string; external name 'now';
|
|
|
+ nowInt : nativeInt; external name 'now';
|
|
|
+ nowFunc : TDateFunction; external name 'now';
|
|
|
+ eventLimit : Boolean;
|
|
|
+ eventLimitInt : Integer; external name 'eventLimit';
|
|
|
+ events : TBaseCalendarEventArray;
|
|
|
+ eventsStr : string; external name 'events'; // JSON feed
|
|
|
+ eventsFunc : TCalendarEventGenerator; external name 'events'; // JSON feed
|
|
|
+ eventsJSONFeed : TJSONFeedSpec; external name 'events'; // JSON feed
|
|
|
+ eventsArr : TCalendarEventArray; external name 'events'; // JSON feed
|
|
|
+ eventsObjList : TJSObjectDynArray ; external name 'events'; // Roll your own
|
|
|
+ eventSources : TCalendarEventSourceArray;
|
|
|
+ eventClassNames : String;
|
|
|
+ eventClassNamesFunc : TCalendarEventClassNamesCallback; external name 'eventClassNames';
|
|
|
+ eventContent : String;
|
|
|
+ eventContentObj : TCalendarEventContentObj; external name 'eventContent';
|
|
|
+ eventContentObjFunc : TCalendarEventContentCallback; external name 'eventContent';
|
|
|
+ eventContentStrFunc : TCalendarEventClassNamesCallback; external name 'eventContent';
|
|
|
+ eventDidMount : TCalendarEventMountCallback;
|
|
|
+ eventWillUnmout : TCalendarEventMountCallback;
|
|
|
+ eventTimeFormat : TDateFormatter;
|
|
|
+ eventOrder : String;
|
|
|
+ eventOrderArr : TStringDynArray; external name 'eventOrder';
|
|
|
+ eventOrderFunc : TEventSortCallBack; external name 'eventOrder';
|
|
|
+ progressiveEventRendering : Boolean;
|
|
|
+
|
|
|
+ displayEventTime : Boolean;
|
|
|
+ displayEventEnd: Boolean;
|
|
|
+ nextDayTreshold : String;
|
|
|
+ startParam : string;
|
|
|
+ endParam : string;
|
|
|
+ timeZoneParam : string;
|
|
|
+ timeZone : string;
|
|
|
+ lazyFetching : Boolean;
|
|
|
+ loading : TCalendarLoadingCallback;
|
|
|
+ selectable : boolean;
|
|
|
+ selectMirror : Boolean;
|
|
|
+ unselectAuto : Boolean;
|
|
|
+ unselectCancel : string;
|
|
|
+ selectOverlap : boolean;
|
|
|
+ selectOverlapFunc : TSelectOverlapHandler; external name 'selectOverlap';
|
|
|
+ selectAllow : TSelectAllowHandler;
|
|
|
+ selectMinDistance : Integer;
|
|
|
+ selectConstraint: TBusinessHoursSpec;
|
|
|
+ eventClick : TEventMouseEventHandler;
|
|
|
+ eventMouseEnter : TEventMouseEventHandler;
|
|
|
+ eventMouseLeave : TEventMouseEventHandler;
|
|
|
+ listDayFormat : TDateFormatter;
|
|
|
+ listDayBool : Boolean; external name 'listDayFormat';
|
|
|
+ listDayAltFormat : TDateFormatter;
|
|
|
+ listDayAltBool : Boolean; external name 'listDayAltFormat';
|
|
|
+ noEventsMessage : String;
|
|
|
+ weekNumbers : Boolean;
|
|
|
+ dayMaxEvents : Integer;
|
|
|
+ dayMaxEventsBool : Boolean; external name 'dayMaxEvents';
|
|
|
+ initialView : string;
|
|
|
+ viewClassNames : String;
|
|
|
+ viewClassNamesFunc : TCalendarViewClassNamesCallback; external name 'eventClassNames';
|
|
|
+ viewDidMount : TCalendarViewMountCallback;
|
|
|
+ viewWillUnmount : TCalendarViewMountCallback;
|
|
|
+ end;
|
|
|
+
|
|
|
+ { TFullCalendarView }
|
|
|
+ TDateSelector = Class external name 'Object' (TJSObject)
|
|
|
+ start : TJSDate;
|
|
|
+ startStr : string; external name 'start';
|
|
|
+ startInt : NativeInt; external name 'start';
|
|
|
+ end_ : TJSDate;
|
|
|
+ endStr : string; external name 'end';
|
|
|
+ endInt : NativeInt; external name 'end';
|
|
|
+ allDay : Boolean;
|
|
|
+ resourceId : String;
|
|
|
+ end;
|
|
|
+
|
|
|
+ TFullCalendarView = Class external name 'Object' (TJSObject)
|
|
|
+ private
|
|
|
+ FType: string; external name 'type';
|
|
|
+ Public
|
|
|
+ title : string;
|
|
|
+ activeStart : TJSDate;
|
|
|
+ activeEnd : TJSDate;
|
|
|
+ currentStart : TJSDate;
|
|
|
+ currentEnd : TJSDate;
|
|
|
+ Property type_ : string read FType;
|
|
|
+ end;
|
|
|
+
|
|
|
+ TFullCalendarEventInfo = record
|
|
|
+ view : TFullCalendarView;
|
|
|
+ el : TJSHTMLElement;
|
|
|
+ end;
|
|
|
+
|
|
|
+ TDayRenderInfo = record
|
|
|
+ date : TJSDate;
|
|
|
+ view : TFullCalendarView;
|
|
|
+ el : TJSHTMLElement;
|
|
|
+ end;
|
|
|
+
|
|
|
+ TDateClickInfo = record
|
|
|
+ date : TJSDate;
|
|
|
+ dateStr : string;
|
|
|
+ allDay : Boolean;
|
|
|
+ dayEl : TJSHTMLElement;
|
|
|
+ jsEvent : TJSEvent;
|
|
|
+ view : TFullCalendarView;
|
|
|
+ resource : TCalendarResource;
|
|
|
+ end;
|
|
|
+
|
|
|
+ TDateSelectInfo = record
|
|
|
+ start : TJSDate;
|
|
|
+ startStr : string;
|
|
|
+ end_ : TJSDate; external name 'end';
|
|
|
+ endStr : string;
|
|
|
+ allDay : Boolean;
|
|
|
+ jsEvent : TJSEvent;
|
|
|
+ view : TFullCalendarView;
|
|
|
+ resource : TCalendarResource;
|
|
|
+ end;
|
|
|
+
|
|
|
+
|
|
|
+ TFullCalendarEvent = reference to function(Info :TFullCalendarEventInfo) : Boolean;
|
|
|
+ TDayRenderEvent = reference to function(Info : TDayrenderInfo) : Boolean;
|
|
|
+ TViewEvent = reference to function(View : TFullCalendarView) : Boolean;
|
|
|
+ TDateClickEvent = reference to procedure (Info: TDateClickInfo);
|
|
|
+ TDateSelectEvent = reference to procedure (Info: TDateSelectInfo);
|
|
|
+ TDateUnSelectEvent = reference to procedure (event: TJSEvent; View : TFullCalendarView);
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ TFullCalendar = Class external name 'FullCalendar.Calendar' (TJSObject)
|
|
|
+ Constructor new(el : TJSHTMLElement; Options : TFullCalendarOptions) ; // external name 'Calendar';
|
|
|
+ class function Calendar(el : TJSHTMLElement; Options : TFullCalendarOptions) : TFullCalendar; static;
|
|
|
+ function getOption(aName : String) : JSValue;
|
|
|
+ procedure setOption(aName : string; aValue : JSValue);
|
|
|
+ procedure render;
|
|
|
+ procedure destroy;
|
|
|
+ Procedure batchRendering(aBatch : TProcedural);
|
|
|
+ Procedure prev;
|
|
|
+ Procedure next;
|
|
|
+ Procedure prevYear;
|
|
|
+ Procedure nextYear;
|
|
|
+ Procedure today;
|
|
|
+ Procedure gotoDate(aDate : string); overload;
|
|
|
+ Procedure gotoDate(aDate : NativeInt); overload;
|
|
|
+ Procedure gotoDate(aDate : TJSDate); overload;
|
|
|
+ Procedure incrementDate(aDuration : TDuration); overload;
|
|
|
+ Procedure incrementDate(aDuration : string);overload;
|
|
|
+ Procedure incrementDate(aDuration : NativeInt);overload;
|
|
|
+ Procedure on_(eventName : string; aHandler : TFullCalendarEvent); external name 'on';
|
|
|
+ Procedure on_(eventName : string; aHandler : TDayRenderEvent);external name 'on';
|
|
|
+ Procedure on_(eventName : string; aHandler : TViewEvent);external name 'on';
|
|
|
+ Procedure on_(eventName : string; aHandler : TDateSelectEvent);external name 'on';
|
|
|
+ Procedure on_(eventName : string; aHandler : TDateClickEvent);external name 'on';
|
|
|
+ Procedure on_(eventName : string; aHandler : TDateUnSelectEvent);external name 'on';
|
|
|
+ Procedure off(eventName : string); overload;
|
|
|
+ Procedure off(eventName : string; aHandler : TFullCalendarEvent); overload;
|
|
|
+ Procedure off(eventName : string; aHandler : TDayRenderEvent);
|
|
|
+ Procedure off(eventName : string; aHandler : TViewEvent);
|
|
|
+ Procedure off(eventName : string; aHandler : TDateClickEvent);
|
|
|
+ Procedure off(eventName : string; aHandler : TDateUnSelectEvent);
|
|
|
+ function GetDate : TJSDate;
|
|
|
+ function View : TFullCalendarView;
|
|
|
+ procedure changeView(aViewName : string); overload;
|
|
|
+ procedure changeView(aViewName : string; aDate : TJSDate); overload;
|
|
|
+ procedure changeView(aViewName : string; aDate : String); overload;
|
|
|
+ procedure changeView(aViewName : string; aDate : NativeInt); overload;
|
|
|
+ procedure changeView(aViewName : string; aDate : TDateRange); overload;
|
|
|
+ procedure scrollToTime(aTime : TDuration); overload;
|
|
|
+ procedure scrollToTime(aTime : String); overload;
|
|
|
+ procedure scrollToTime(aTime : NativeInt); overload;
|
|
|
+ Procedure updateSize;
|
|
|
+ Function getEvents : TCalendarEventArray;
|
|
|
+ Function getEvent(aID : NativeInt) :TCalendarEvent; overload;
|
|
|
+ Function getEvent(aID : String) : TCalendarEvent; overload;
|
|
|
+ Function addEvent(aEvent : TBaseCalendarEvent) : TCalendarEvent; overload;
|
|
|
+ Function addEvent(aEvent : TBaseCalendarEvent; Source : String) : TCalendarEvent; overload;
|
|
|
+ Function addEvent(aEvent : TBaseCalendarEvent; Source : TBaseCalendarEvent) : TCalendarEvent; overload;
|
|
|
+ Function getEventSources : TCalendarEventSourceArray;
|
|
|
+ Function getEventSourcebyId(aID: String) : TCalendarEventSource;
|
|
|
+ Procedure addEventSource(aSource : TCalendarEventGenerator);
|
|
|
+ Procedure addEventSource(aSource : TJSONFeedSpec);
|
|
|
+ Procedure addEventSource(aSource : TCalendarEventArray);
|
|
|
+ Procedure addEventSource(aSource : TBaseCalendarEventArray);
|
|
|
+ Procedure addEventSource(aSource : String);
|
|
|
+ procedure refetchEvents;
|
|
|
+ procedure Select(aStart : TJSDate; aEnd : TJSDate);
|
|
|
+ procedure Select(aStart : String; aEnd : String);
|
|
|
+ procedure Select(aStart : NativeInt; aEnd : NativeInt);
|
|
|
+ procedure Select(aStart : TJSDate);
|
|
|
+ procedure Select(aStart : String);
|
|
|
+ procedure Select(aStart : NativeInt);
|
|
|
+ procedure Select(aSel : TDateSelector);
|
|
|
+ procedure unselect;
|
|
|
+
|
|
|
+
|
|
|
+ Function getAvailableLocaleCodes : TStringDynArray;
|
|
|
+ Property Date : TJSDate Read GetDate Write GotoDate;
|
|
|
+ end;
|
|
|
+
|
|
|
+implementation
|
|
|
+
|
|
|
+{ TBaseCalendarEventHelper }
|
|
|
+
|
|
|
+class function TBaseCalendarEventHelper.event(const aTitle : String; aStart,aEnd : TDateTime) : TBaseCalendarEvent;
|
|
|
+
|
|
|
+begin
|
|
|
+ Result:=TBaseCalendarEvent.new;
|
|
|
+ Result.title:=aTitle;
|
|
|
+ Result.Start:=DateTimeToJSDate(aStart);
|
|
|
+ Result.end_:=DateTimeToJSDate(aEnd);
|
|
|
+end;
|
|
|
+
|
|
|
+end.
|