/// <summary> /// Sorts a plan according to the given settings. /// </summary> /// <param name="settings">The settings.</param> /// <exception cref="System.ArgumentNullException">settings</exception> public void Sort(PlanSorting settings) { settings.ThrowIfNull(nameof(settings)); PlanEntrySort criteria = settings.Order == ThreeStateSortOrder.None ? PlanEntrySort.None : settings.Criteria; Sort(criteria, settings.Order == ThreeStateSortOrder.Descending, settings.GroupByPriority); }
/// <summary> /// Imports data from a serialization object /// </summary> /// <param name="serial"></param> public void Import(SerializablePlan serial) { // Update name m_name = serial.Name; m_sortingPreferences = serial.SortingPreferences.Clone(); // Update entries List <PlanEntry> entries = new List <PlanEntry>(); List <InvalidPlanEntry> invalidEntries = new List <InvalidPlanEntry>(); foreach (var serialEntry in serial.Entries) { PlanEntry entry = new PlanEntry(this, serialEntry); if (entry.Skill != null) { entries.Add(entry); } // There are buggy entries in the plan else { var invalidEntry = new InvalidPlanEntry() { SkillName = serialEntry.SkillName, PlannedLevel = serialEntry.Level }; invalidEntries.Add(invalidEntry); } } RebuildPlanFrom(entries); FixPrerequisites(); foreach (var serialInvalidEntry in serial.InvalidEntries) { var invalidEntry = new InvalidPlanEntry() { SkillName = serialInvalidEntry.SkillName, PlannedLevel = serialInvalidEntry.PlannedLevel, Acknowledged = serialInvalidEntry.Acknowledged }; invalidEntries.Add(invalidEntry); } m_invalidEntries = invalidEntries.ToArray(); // Notify name change if (m_isConnected) { EveClient.OnPlanNameChanged(this); } }
/// <summary> /// Imports data from a serialization object /// </summary> /// <param name="serial"></param> public void Import(SerializablePlan serial) { // Update name m_name = serial.Name; m_sortingPreferences = serial.SortingPreferences.Clone(); // Update entries List <PlanEntry> entries = new List <PlanEntry>(); foreach (var serialEntry in serial.Entries) { entries.Add(new PlanEntry(this, serialEntry)); } RebuildPlanFrom(entries); // Notify name change if (m_isConnected) { EveClient.OnPlanNameChanged(this); } }
public SerializablePlan() { Entries = new List <SerializablePlanEntry>(); SortingPreferences = new PlanSorting(); }
/// <summary> /// Constructor /// </summary> /// <param name="character"></param> public Plan(BaseCharacter character) : base(character) { m_sortingPreferences = new PlanSorting(); m_invalidEntries = new InvalidPlanEntry[0]; }
/// <summary> /// Constructor /// </summary> /// <param name="character"></param> public Plan(BaseCharacter character) : base(character) { m_sortingPreferences = new PlanSorting(); }
/// <summary> /// Sorts a plan according to the given settings. /// </summary> /// <param name="settings"></param> public void Sort(PlanSorting settings) { var criteria = (settings.Order == ThreeStateSortOrder.None ? PlanEntrySort.None : settings.Criteria); Sort(criteria, (settings.Order == ThreeStateSortOrder.Descending), settings.GroupByPriority); }
public SerializablePlan() { SortingPreferences = new PlanSorting(); m_entries = new Collection <SerializablePlanEntry>(); m_invalidEntries = new Collection <SerializableInvalidPlanEntry>(); }