Browse Source

update local var pad

pull/16/head
Eusebiu Marcu 15 years ago
parent
commit
fe947738a1
  1. 12
      data/resources/StringResources.resx
  2. 3
      src/AddIns/Debugger/Debugger.AddIn/Pads/LocalVarPad.cs
  3. 5
      src/AddIns/Debugger/Debugger.AddIn/Service/WindowsDebugger.cs
  4. 6
      src/AddIns/Debugger/Debugger.Core/Process.cs

12
data/resources/StringResources.resx

@ -5807,6 +5807,12 @@ Unable to find 'WelcomeDialogId' in Dialogs.wxs</comment> @@ -5807,6 +5807,12 @@ Unable to find 'WelcomeDialogId' in Dialogs.wxs</comment>
<data name="MainWindow.Windows.Debug.CallStack.Language" xml:space="preserve">
<value>Language</value>
</data>
<data name="MainWindow.Windows.Debug.CallStack.LineString" xml:space="preserve">
<value>Line</value>
</data>
<data name="MainWindow.Windows.Debug.CallStack.Module" xml:space="preserve">
<value>Module</value>
</data>
<data name="MainWindow.Windows.Debug.CallStack.ShowArgumentNames" xml:space="preserve">
<value>Show argument names</value>
</data>
@ -5816,6 +5822,12 @@ Unable to find 'WelcomeDialogId' in Dialogs.wxs</comment> @@ -5816,6 +5822,12 @@ Unable to find 'WelcomeDialogId' in Dialogs.wxs</comment>
<data name="MainWindow.Windows.Debug.CallStack.ShowExternalMethods" xml:space="preserve">
<value>Show external methods</value>
</data>
<data name="MainWindow.Windows.Debug.CallStack.ShowLineNumber" xml:space="preserve">
<value>Show line number</value>
</data>
<data name="MainWindow.Windows.Debug.CallStack.ShowModuleNames" xml:space="preserve">
<value>Show module names</value>
</data>
<data name="MainWindow.Windows.Debug.Conditional.Breakpoints.Ask" xml:space="preserve">
<value>Ask</value>
</data>

3
src/AddIns/Debugger/Debugger.AddIn/Pads/LocalVarPad.cs

@ -65,7 +65,8 @@ namespace ICSharpCode.SharpDevelop.Gui.Pads @@ -65,7 +65,8 @@ namespace ICSharpCode.SharpDevelop.Gui.Pads
using(new PrintTimes("Local Variables refresh")) {
try {
Utils.DoEvents(debuggedProcess);
foreach (var item in new StackFrameNode(debuggedProcess.SelectedStackFrame).ChildNodes) {
var frame = !debuggedProcess.IsInExternalCode ? debuggedProcess.SelectedStackFrame : debuggedProcess.SelectedThread.MostRecentStackFrame;
foreach (var item in new StackFrameNode(frame).ChildNodes) {
localVarList.WatchItems.Add(item);
}
}

5
src/AddIns/Debugger/Debugger.AddIn/Service/WindowsDebugger.cs

@ -92,10 +92,7 @@ namespace ICSharpCode.SharpDevelop.Services @@ -92,10 +92,7 @@ namespace ICSharpCode.SharpDevelop.Services
if (debuggedProcess == null)
return true;
if(debuggedProcess.SelectedThread == null)
return true;
return debuggedProcess.SelectedStackFrame.ToString() != debuggedProcess.SelectedThread.MostRecentStackFrame.ToString();
return debuggedProcess.IsInExternalCode;
}
}

6
src/AddIns/Debugger/Debugger.Core/Process.cs

@ -134,6 +134,12 @@ namespace Debugger @@ -134,6 +134,12 @@ namespace Debugger
public static DebugModeFlag DebugMode { get; set; }
public bool IsInExternalCode {
get {
return SelectedStackFrame.ToString() != SelectedThread.MostRecentStackFrame.ToString();
}
}
internal Process(NDebugger debugger, ICorDebugProcess corProcess, string workingDirectory)
{
this.debugger = debugger;

Loading…
Cancel
Save