public void Display() { DataGridViewColumn sortcol = dataGridViewCombat.SortedColumn != null ? dataGridViewCombat.SortedColumn : dataGridViewCombat.Columns[0]; SortOrder sortorder = dataGridViewCombat.SortOrder != SortOrder.None ? dataGridViewCombat.SortOrder : SortOrder.Descending; dataGridViewCombat.Rows.Clear(); npc_total_kills = npc_faction_kills = total_reward = faction_reward = balance = total_crimes = pvp_kills = died = 0; if (current != null) { //System.Diagnostics.Debug.WriteLine("Filter {0} {1}", current.StartTime.ToStringZulu(), current.EndTime.ToStringZulu()); List <HistoryEntry> hel; if (current.Type == FilterEntry.EntryType.Lastdock) { hel = HistoryList.LatestFirstToLastDock(discoveryform.history.EntryOrder()); } else if (current.Type == FilterEntry.EntryType.All) { hel = discoveryform.history.LatestFirst(); } else if (current.Type == FilterEntry.EntryType.Oneday) { hel = HistoryList.FilterByDateRangeLatestFirst(discoveryform.history.EntryOrder(), DateTime.UtcNow.AddDays(-1), DateTime.UtcNow); } else if (current.Type == FilterEntry.EntryType.Sevendays) { hel = HistoryList.FilterByDateRangeLatestFirst(discoveryform.history.EntryOrder(), DateTime.UtcNow.AddDays(-7), DateTime.UtcNow); } else if (current.Type == FilterEntry.EntryType.Today) { hel = HistoryList.FilterByDateRangeLatestFirst(discoveryform.history.EntryOrder(), DateTime.UtcNow.Date, DateTime.UtcNow); } else if (current.Type == FilterEntry.EntryType.Mission) { hel = new List <HistoryEntry>(); // default empty if (current.MissionKey != null) { // look up the mission in the current data MissionState ms = discoveryform.history.MissionListAccumulator.GetMission(current.MissionKey); if (ms != null) { hel = HistoryList.FilterByDateRangeLatestFirst(discoveryform.history.EntryOrder(), current.StartTimeUTC, ms.MissionEndTime); } } } else { hel = HistoryList.FilterByDateRangeLatestFirst(discoveryform.history.EntryOrder(), current.StartTimeUTC, current.EndTimeUTC); } var rows = new List <DataGridViewRow>(hel.Count); foreach (HistoryEntry he in hel) { //System.Diagnostics.Debug.WriteLine("Combat Add {0} {1} {2}", he.EventTimeUTC.ToStringZulu(), he.EventSummary, he.EventDescription); var row = createRow(he); if (row != null) { rows.Add(row); } } dataGridViewCombat.Rows.AddRange(rows.ToArray()); } dataGridViewCombat.Sort(sortcol, (sortorder == SortOrder.Descending) ? ListSortDirection.Descending : ListSortDirection.Ascending); dataGridViewCombat.Columns[sortcol.Index].HeaderCell.SortGlyphDirection = sortorder; SetLabels(); }