private void UpdateUI() { Mira.CallEnvironmentStack callEnvironments = runtime.CallEnvironments; RebuildCallStackListBox(callEnvironments); Mira.CallEnvironment topmostCallEnvironment = callEnvironments.Count == 0 ? null : callEnvironments.Peek(); Mira.Items topMostItems = topmostCallEnvironment == null ? runtime.CurrentRootItems : topmostCallEnvironment.Items; object topMostCurrentItem = topmostCallEnvironment?.CurrentItem; RebuildCodeTreeView(topMostItems, topMostCurrentItem); RebuildStackListBox(); }
private void RebuildCallStackListBox(Mira.CallEnvironmentStack callEnvironments) { frameStack.Items.Clear(); foreach (Mira.CallEnvironment currentCallEnvironment in callEnvironments) { ListItem newListItem = new ListItem(); newListItem.Text = currentCallEnvironment.CurrentItem?.ToString() ?? "(null)"; newListItem.Tag = currentCallEnvironment; frameStack.Items.Add(newListItem); } }