void IViewModel.OnChangeHistoryItemClicked(StateHistoryItem item) { var change = item != null ? item.Data as StateInspectorEvent : null; if (change != null) { ShowPropertyChange(change, retainFocus: false); } }
bool IViewModel.OnGetHistoryItemBookmarked(StateHistoryItem item) { var change = item.Data as StateInspectorEvent; if (change == null || change.Output.LogSource.IsDisposed) { return(false); } var bmk = bookmarks.Factory.CreateBookmark( change.Trigger.Timestamp.Adjust(change.Output.LogSource.TimeOffsets), change.Output.LogSource.GetSafeConnectionId(), change.Trigger.StreamPosition, 0); var pos = bookmarks.FindBookmark(bmk); return(pos.Item2 > pos.Item1); }
void IViewModel.OnChangeHistoryItemKeyEvent(StateHistoryItem item, Key key) { var change = item != null ? item.Data as StateInspectorEvent : null; if (change != null) { if (key == Key.Enter) { ShowPropertyChange(change, retainFocus: true); } else if (key == Key.BookmarkShortcut) { ToggleBookmark(change); } } }
StateHistoryItem MakeStateHistoryItem(StateInspectorEventInfo evtInfo, bool isSelected, bool showTimeDeltas, StateInspectorEvent prevSelectedEvent) { var evt = evtInfo.Event; StateHistoryItem ret = new StateHistoryItem() { Data = evt }; if (showTimeDeltas) { if (isSelected && prevSelectedEvent != null) { ret.Time = TimeUtils.TimeDeltaToString( evt.Trigger.Timestamp.ToUnspecifiedTime() - prevSelectedEvent.Trigger.Timestamp.ToUnspecifiedTime(), addPlusSign: true); } else { ret.Time = ""; } } else { ret.Time = FormatTimestampt(evt); } var messageFormatter = new StateHistoryMessageFormatter() { shortNames = this.shortNames }; evt.OriginalEvent.Visit(messageFormatter); if (evtInfo.InspectedObjectNr != 0) { ret.Message = string.Format("#{0}: {1}", evtInfo.InspectedObjectNr, messageFormatter.message); } else { ret.Message = messageFormatter.message; } return(ret); }