void SwitchSnapshotMode(UIState.ViewMode mode) { if (m_UIState.CurrentViewMode == mode) { return; } var currentViewName = "Unknown"; if (currentViewPane is UI.TreeMapPane) { currentViewName = "TreeMap"; } else if (currentViewPane is UI.MemoryMapPane) { currentViewName = "MemoryMap"; } else if (currentViewPane is UI.SpreadsheetPane) { currentViewName = (currentViewPane as UI.SpreadsheetPane).TableDisplayName; } MemoryProfilerAnalytics.StartEvent <MemoryProfilerAnalytics.DiffToggledEvent>(); var oldMode = m_UIState.CurrentViewMode; m_UIState.CurrentViewMode = mode; MemoryProfilerAnalytics.EndEvent(new MemoryProfilerAnalytics.DiffToggledEvent() { show = (int)ConvertUIModeToAnalyticsDiffToggleEventData(m_UIState.CurrentViewMode), shown = (int)ConvertUIModeToAnalyticsDiffToggleEventData(oldMode), viewName = currentViewName }); }
void OnModeChanged(UIState.BaseMode newMode, UIState.ViewMode newViewMode) { switch (newViewMode) { case UIState.ViewMode.ShowDiff: if (m_OpenSnapshotsPane != null) m_OpenSnapshotsPane.FocusDiff(); if (First != null) First.GuiData.CurrentState = SnapshotFileGUIData.State.Open; if (Second != null) Second.GuiData.CurrentState = SnapshotFileGUIData.State.Open; break; case UIState.ViewMode.ShowFirst: if (m_OpenSnapshotsPane != null) m_OpenSnapshotsPane.FocusFirst(); if (First != null) First.GuiData.CurrentState = SnapshotFileGUIData.State.InView; if (Second != null) Second.GuiData.CurrentState = SnapshotFileGUIData.State.Open; break; case UIState.ViewMode.ShowSecond: if (m_OpenSnapshotsPane != null) m_OpenSnapshotsPane.FocusSecond(); if (First != null) First.GuiData.CurrentState = SnapshotFileGUIData.State.Open; if (Second != null) Second.GuiData.CurrentState = SnapshotFileGUIData.State.InView; break; default: break; } }
void OnModeChanged(UIState.BaseMode newMode, UIState.ViewMode newViewMode) { if (m_ToolbarExtensionMode != null) { m_ToolbarExtensionMode.ViewPaneChanged -= OnViewPaneChanged; m_ToolbarExtensionMode = null; } if (newMode != null) { newMode.ViewPaneChanged += OnViewPaneChanged; m_ToolbarExtensionMode = newMode; } OnViewPaneChanged(newMode.CurrentViewPane); }
MemoryProfilerAnalytics.DiffToggledEvent.ShowSnapshot ConvertUIModeToAnalyticsDiffToggleEventData(UIState.ViewMode mode) { switch (mode) { case UIState.ViewMode.ShowDiff: return(MemoryProfilerAnalytics.DiffToggledEvent.ShowSnapshot.Both); case UIState.ViewMode.ShowFirst: return(MemoryProfilerAnalytics.DiffToggledEvent.ShowSnapshot.First); case UIState.ViewMode.ShowSecond: return(MemoryProfilerAnalytics.DiffToggledEvent.ShowSnapshot.Second); default: throw new NotImplementedException(); } }