private static void CreateSchema() { VTodo.conversionSchema = new Dictionary <object, SchemaInfo>(); VTodo.AddSchemaInfo(PropertyId.DateTimeStart, new PromoteTaskPropertyDelegate(VTodo.PromoteStartDate), null); VTodo.AddSchemaInfo(PropertyId.Completed, new PromoteTaskPropertyDelegate(VTodo.PromoteCompleteDate), null); VTodo.AddSchemaInfo(PropertyId.DateTimeDue, new PromoteTaskPropertyDelegate(VTodo.PromoteDueDate), null); VTodo.AddSchemaInfo(PropertyId.Status, new PromoteTaskPropertyDelegate(VTodo.PromoteStatus), null); VTodo.AddSchemaInfo(PropertyId.Summary, new PromoteTaskPropertyDelegate(VItemBase.PromoteSubject), null); VTodo.AddSchemaInfo(PropertyId.Description, new PromoteTaskPropertyDelegate(VItemBase.PromoteDescription), null); VTodo.AddSchemaInfo(PropertyId.Comment, new PromoteTaskPropertyDelegate(VItemBase.PromoteComment), null); VTodo.AddSchemaInfo(PropertyId.Class, new PromoteTaskPropertyDelegate(VItemBase.PromoteClass), null); VTodo.AddSchemaInfo(PropertyId.Priority, new PromoteTaskPropertyDelegate(VItemBase.PromotePriority), null); VTodo.AddSchemaInfo("X-MICROSOFT-CDO-IMPORTANCE", new PromoteTaskPropertyDelegate(VItemBase.PromoteXImportance), null); }
private static bool PromoteStatus(VTodo vtodo, CalendarPropertyBase property) { TaskStatus taskStatus = TaskStatus.NotStarted; if (string.Compare((string)property.Value, "IN-PROCESS", StringComparison.CurrentCultureIgnoreCase) == 0) { taskStatus = TaskStatus.InProgress; } else if (string.Compare((string)property.Value, "COMPLETED", StringComparison.CurrentCultureIgnoreCase) == 0) { taskStatus = TaskStatus.Completed; } else if (string.Compare((string)property.Value, "NEEDS-ACTION", StringComparison.CurrentCultureIgnoreCase) == 0) { taskStatus = TaskStatus.NotStarted; } else if (string.Compare((string)property.Value, "CANCELLED", StringComparison.CurrentCultureIgnoreCase) == 0) { taskStatus = TaskStatus.Deferred; } vtodo.SetProperty(InternalSchema.TaskStatus, taskStatus); return(true); }
private static bool PromoteDueDate(VTodo vtodo, CalendarPropertyBase property) { vtodo.SetProperty(InternalSchema.DueDate, property.Value); return(true); }
private static void AddSchemaInfo(string propertyName, object promotionMethod, object demotionMethod) { VTodo.AddSchemaInfo(new CalendarPropertyId(propertyName), promotionMethod, demotionMethod, CalendarMethod.All, IcalFlags.None); }
static VTodo() { VTodo.CreateSchema(); }