Browse Source

Text visualizer has word wrap and copy to clipboard.

git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/trunk@4801 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61
shortcuts
Martin Koníček 16 years ago
parent
commit
fc6637a32f
  1. 8
      src/AddIns/Misc/Debugger/Debugger.AddIn/Project/Src/Visualizers/GridVisualizer/GridVisualizerWindow.xaml.cs
  2. 11
      src/AddIns/Misc/Debugger/Debugger.AddIn/Project/Src/Visualizers/TextVisualizer/TextVisualizerWindow.xaml
  3. 11
      src/AddIns/Misc/Debugger/Debugger.AddIn/Project/Src/Visualizers/TextVisualizer/TextVisualizerWindow.xaml.cs
  4. 3
      src/AddIns/Misc/Debugger/Debugger.Core/Project/Src/Control/Eval.cs

8
src/AddIns/Misc/Debugger/Debugger.AddIn/Project/Src/Visualizers/GridVisualizer/GridVisualizerWindow.xaml.cs

@ -117,9 +117,6 @@ namespace Debugger.AddIn.Visualizers.GridVisualizer
Value val = null; Value val = null;
try { try {
val = debuggerService.GetValueFromName(txtExpression.Text); val = debuggerService.GetValueFromName(txtExpression.Text);
/*var systemObjectType = DebugType.CreateFromType(val.AppDomain, typeof(System.Object));
var listType = DebugType.CreateFromType(val.AppDomain, typeof(System.Collections.Generic.List<>), systemObjectType);
Value list = Eval.NewObject(listType , val);*/
} catch(GetValueException) { } catch(GetValueException) {
// display ex.Message // display ex.Message
} }
@ -140,6 +137,11 @@ namespace Debugger.AddIn.Visualizers.GridVisualizer
var enumerableValuesProvider = new EnumerableValuesProvider(val.ExpressionTree, iEnumerableType, itemType); var enumerableValuesProvider = new EnumerableValuesProvider(val.ExpressionTree, iEnumerableType, itemType);
lazyListViewWrapper.ItemsSource = new VirtualizingIEnumerable<ObjectValue>(enumerableValuesProvider.ItemsSource); lazyListViewWrapper.ItemsSource = new VirtualizingIEnumerable<ObjectValue>(enumerableValuesProvider.ItemsSource);
gridValuesProvider = enumerableValuesProvider; gridValuesProvider = enumerableValuesProvider;
/*var systemObjectType = DebugType.CreateFromType(val.AppDomain, typeof(System.Object));
var listType = DebugType.CreateFromType(val.AppDomain, typeof(System.Collections.Generic.List<>), systemObjectType);
Value list = Eval.NewObject(listType , val);*/
} else { } else {
// Value cannot be displayed in GridVisualizer // Value cannot be displayed in GridVisualizer
return; return;

11
src/AddIns/Misc/Debugger/Debugger.AddIn/Project/Src/Visualizers/TextVisualizer/TextVisualizerWindow.xaml

@ -3,7 +3,14 @@
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="Text visualizer" SizeToContent="WidthAndHeight" WindowStartupLocation="CenterScreen" Title="Text visualizer" SizeToContent="WidthAndHeight" WindowStartupLocation="CenterScreen"
MinWidth="300" MinHeight="300" MaxWidth="1000" MaxHeight="700"> MinWidth="300" MinHeight="300" MaxWidth="1000" MaxHeight="700">
<DockPanel> <DockPanel Margin="2">
<TextBox IsReadOnly="True" Name="txtText" Width="Auto" Height="Auto" ScrollViewer.HorizontalScrollBarVisibility="Auto" ScrollViewer.VerticalScrollBarVisibility="Auto"></TextBox> <StackPanel DockPanel.Dock="Top" Orientation="Horizontal">
<Button Name="btnCopy" HorizontalAlignment="Left" Padding="4 2" Margin="0 4" Click="BtnCopy_Click">Copy to clipboard and close</Button>
<CheckBox Name="chbWrap" IsChecked="false" VerticalAlignment="Center" Margin="4 0" Unchecked="CheckBox_CheckedChanged" Checked="CheckBox_CheckedChanged">Word wrap</CheckBox>
</StackPanel>
<Border Margin="0" Padding="2">
<TextBox Background="White" IsReadOnly="True" Name="txtText" Width="Auto" Height="Auto" ScrollViewer.HorizontalScrollBarVisibility="Auto" ScrollViewer.VerticalScrollBarVisibility="Auto"></TextBox>
</Border>
</DockPanel> </DockPanel>
</Window> </Window>

11
src/AddIns/Misc/Debugger/Debugger.AddIn/Project/Src/Visualizers/TextVisualizer/TextVisualizerWindow.xaml.cs

@ -40,5 +40,16 @@ namespace Debugger.AddIn.Visualizers.TextVisualizer
get { return this.txtText.Text; } get { return this.txtText.Text; }
set { this.txtText.Text = value; } set { this.txtText.Text = value; }
} }
void BtnCopy_Click(object sender, RoutedEventArgs e)
{
Clipboard.SetText(txtText.Text);
Close();
}
void CheckBox_CheckedChanged(object sender, RoutedEventArgs e)
{
txtText.TextWrapping = chbWrap.IsChecked.GetValueOrDefault(false) ? TextWrapping.Wrap : TextWrapping.NoWrap;
}
} }
} }

3
src/AddIns/Misc/Debugger/Debugger.Core/Project/Src/Control/Eval.cs

@ -356,8 +356,9 @@ namespace Debugger
public static Eval AsyncNewObject(DebugType debugType, List<Value> constructorArguments) public static Eval AsyncNewObject(DebugType debugType, List<Value> constructorArguments)
{ {
List<Expression> constructorArgumentsExpressions = SelectExpressions(constructorArguments); List<Expression> constructorArgumentsExpressions = SelectExpressions(constructorArguments);
// constructorArgumentsTypes = SelectTypes(constructorArguments);
ICorDebugValue[] constructorArgsCorDebug = ValuesAsCorDebug(constructorArguments); ICorDebugValue[] constructorArgsCorDebug = ValuesAsCorDebug(constructorArguments);
MethodInfo constructor = debugType.GetMethod(".ctor"); MethodInfo constructor = debugType.GetMethod(".ctor"); // TODO
return new Eval( return new Eval(
debugType.AppDomain, debugType.AppDomain,
"New object: " + debugType.FullName, "New object: " + debugType.FullName,

Loading…
Cancel
Save