public virtual bool Push(CDriver.Progress progress) { for (int i = 0; i < this.EmptyListsToPush.Length; i++) { for (int j = 0; j < this.MedOrganizers[i].StreamCount; j++) { IOrganizerItem organizerItem = this.MedOrganizers[i].GetStream(j + 1) as IOrganizerItem; organizerItem.GetType(); } foreach (IOrganizerItem current in this.EmptyListsToPush[i]) { current.Commit(); } } if (this.Events != null) { foreach (COrganizerEntry cOrganizerEntry in this.Events) { cOrganizerEntry.Commit(); } } if (this.Notes != null) { foreach (COrganizerEntry cOrganizerEntry2 in this.Notes) { cOrganizerEntry2.Commit(); } } if (this.Tasks != null) { foreach (COrganizerEntry cOrganizerEntry3 in this.Tasks) { cOrganizerEntry3.Commit(); } } int min = 0; int max = 1000 / ((this.MedOrganizers.Length > 0) ? this.MedOrganizers.Length : 1); for (int k = 0; k < this.MedOrganizers.Length; k++) { IOrganizer organizer = this.MedOrganizers[k]; for (int l = 0; l < organizer.StreamCount; l++) { IOrganizerItem organizerItem2 = organizer.GetStream(l + 1) as IOrganizerItem; organizerItem2.GetType(); } IOperation operation = organizer.Flush() as IOperation; if (!CDriver.OperationToProgress(operation, progress, min, max)) { return(false); } } return(progress(1000)); }
internal void DeleteEntry(COrganizerEntry entry, int index) { entry.MedOrganizerItem.Delete(); (base.Parent as COrganizer).EmptyListsToPush[index].AddLast(entry.MedOrganizerItem); for (int i = 0; i < (base.Parent as COrganizer).MedOrganizers[index].StreamCount; i++) { IOrganizerItem organizerItem = (base.Parent as COrganizer).MedOrganizers[index].GetStream(i + 1) as IOrganizerItem; organizerItem.GetType(); } this.Remove(entry); }
public bool Update(CDriver.Progress progress) { if (this.Events != null) { this.Events.Invalidate(); } if (this.Tasks != null) { this.Tasks.Invalidate(); } if (this.Notes != null) { this.Notes.Invalidate(); } for (int i = 0; i < this.EmptyListsToPush.Length; i++) { this.EmptyListsToPush[i].Clear(); this.EmptyLists[i].Clear(); } int num = 0; int num2 = 1000 / ((this.MedOrganizers.Length > 0) ? this.MedOrganizers.Length : 1); for (int j = 0; j < this.MedOrganizers.Length; j++) { IOrganizer organizer = this.MedOrganizers[j]; IOperation operation = organizer.Cache() as IOperation; if (!CDriver.OperationToProgress(operation, progress, num, num + num2 / 2)) { return(false); } int num3; try { num3 = organizer.StreamCount; } catch (Exception ex) { Console.WriteLine(this.ToString() + "Unable to query StreamCount property [ " + ex.Message + " ]"); num3 = 0; } for (int k = 1; k <= num3; k++) { IOrganizerItem organizerItem = (IOrganizerItem)organizer.GetStream(k); if (organizerItem.Type == 1) { this.Events.AddLast(new COrganizerEntry(this.Events, organizerItem, this.Events.EntryDescriptor)); } else { if (organizerItem.Type == 3) { this.Notes.AddLast(new COrganizerEntry(this.Notes, organizerItem, this.Notes.EntryDescriptor)); } else { if (organizerItem.Type == 2) { this.Tasks.AddLast(new COrganizerEntry(this.Tasks, organizerItem, this.Tasks.EntryDescriptor)); } else { this.EmptyLists[j].AddLast(organizerItem); } } } if (!progress(num + num2 * k / num3 / 2 + num2 / 2)) { return(false); } } num += num2; } return(progress(1000)); }
internal COrganizerEntry(CItem parent, IOrganizerItem medOrganizerItem, CEntryItem.CDescriptor entryDescriptor) : base(parent) { if (!(parent is COrganizerEntries)) { throw new Exception("Internal error"); } this.EntryDescriptor = entryDescriptor; this.Items = new CEntryItem[this.EntryDescriptor.DataTypes.Length]; this.MedOrganizerItem = medOrganizerItem; for (int i = 0; i < this.EntryDescriptor.DataTypes.Length; i++) { CEntryItem.EDataType eDataType = this.EntryDescriptor.DataTypes[i][0]; this.Items[i] = new CEntryItem(this, this.EntryDescriptor.DataTypes[i]); this.Items[i].DataType = eDataType; int num = 1; try { CEntryItem.EDataType eDataType2 = eDataType; if (eDataType2 != CEntryItem.EDataType.Number) { switch (eDataType2) { case CEntryItem.EDataType.Description: (this.Items[i].Data as CEntryItem.CData.CTextData).Text = this.MedOrganizerItem.Description; if (this.MedOrganizerItem.Description == "") { num = 0; } break; case CEntryItem.EDataType.Summary: (this.Items[i].Data as CEntryItem.CData.CTextData).Text = this.MedOrganizerItem.Summary; if (this.MedOrganizerItem.Summary == "") { num = 0; } break; case CEntryItem.EDataType.Location: (this.Items[i].Data as CEntryItem.CData.CTextData).Text = this.MedOrganizerItem.Location; if (this.MedOrganizerItem.Location == "") { num = 0; } break; default: switch (eDataType2) { case CEntryItem.EDataType.AlarmTime: { int num2; (this.Items[i].Data as CEntryItem.CData.CTimeData).Time = this.MedOrganizerItem.GetAudioAlarmTimestamp(out num2); if (num2 == 0) { num = 0; } break; } case CEntryItem.EDataType.CompletedTime: (this.Items[i].Data as CEntryItem.CData.CTimeData).Time = this.MedOrganizerItem.GetCompletedTimestamp(out num); break; case CEntryItem.EDataType.DueToTime: (this.Items[i].Data as CEntryItem.CData.CTimeData).Time = this.MedOrganizerItem.GetDueToTimestamp(out num); break; case CEntryItem.EDataType.EndTime: (this.Items[i].Data as CEntryItem.CData.CTimeData).Time = this.MedOrganizerItem.GetEndTimestamp(out num); break; case CEntryItem.EDataType.StartTime: (this.Items[i].Data as CEntryItem.CData.CTimeData).Time = this.MedOrganizerItem.GetStartTimestamp(out num); break; } break; } } else { (this.Items[i].Data as CEntryItem.CData.CNumberData).Number = this.MedOrganizerItem.PhoneNumber; if (this.MedOrganizerItem.PhoneNumber == "") { num = 0; } } if (num == 0) { this.Items[i].DataType = CEntryItem.EDataType.Empty; } } catch (Exception ex) { Console.WriteLine(this.ToString() + " : [ " + ex.Message + " ]"); this.Items[i].DataType = CEntryItem.EDataType.Empty; } } this._Changed = false; }
internal override void Invalidate() { this.MedOrganizerItem = null; base.Invalidate(); }