Skip to content

Commit fb128aa

Browse files
committed
Added variable value info on hover
1 parent 60b6b53 commit fb128aa

File tree

2 files changed

+27
-0
lines changed

2 files changed

+27
-0
lines changed

Arma.Studio/UI/TextEditor.xaml

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,24 @@
3232
<TextBlock Grid.Column="5" Text="{Binding Description}" VerticalAlignment="Center"/>
3333
</Grid>
3434
</DataTemplate>
35+
<DataTemplate DataType="{x:Type asd:VariableInfo}">
36+
<Grid>
37+
<Grid.ColumnDefinitions>
38+
<ColumnDefinition Width="Auto"/>
39+
<ColumnDefinition Width="4"/>
40+
<ColumnDefinition Width="Auto"/>
41+
<ColumnDefinition Width="4"/>
42+
<ColumnDefinition Width="Auto"/>
43+
<ColumnDefinition Width="Auto"/>
44+
<ColumnDefinition Width="Auto"/>
45+
</Grid.ColumnDefinitions>
46+
<TextBlock Grid.Column="0" Text="{Binding Data}" VerticalAlignment="Center" FontSize="12"/>
47+
<TextBlock Grid.Column="2" Text="{Binding DataType}" VerticalAlignment="Center" FontSize="10" Opacity="0.5"/>
48+
<TextBlock Grid.Column="4" Text="{Binding ScopeName, StringFormat='{}(scope `{0}` '}" VerticalAlignment="Center" FontSize="10" Opacity="0.5"/>
49+
<TextBlock Grid.Column="5" Text="{Binding ScopeIndex, StringFormat='{} {0}'}" VerticalAlignment="Center" FontSize="10" Opacity="0.5"/>
50+
<TextBlock Grid.Column="6" Text="{Binding VariableName, StringFormat='{} with {0})'}" VerticalAlignment="Center" Opacity="0.5"/>
51+
</Grid>
52+
</DataTemplate>
3553
</ae:TextEditor.Resources>
3654
</ae:TextEditor>
3755
</DataTemplate>

Arma.Studio/UI/TextEditorDataContext.cs

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -492,6 +492,15 @@ private void TextEditor_MouseHover(object sender, MouseEventArgs e)
492492
{
493493
this.ToolTip.Content = lintInfo;
494494
}
495+
else if (!String.IsNullOrWhiteSpace(word) && App.MWContext.Debugger != null && App.MWContext.Debugger.State != Data.Debugging.EDebugState.NA)
496+
{
497+
var variable = App.MWContext.Debugger.GetLocalVariables().FirstOrDefault((it) => it.VariableName.Equals(word, StringComparison.InvariantCultureIgnoreCase));
498+
if (variable is null)
499+
{
500+
variable = App.MWContext.Debugger.GetVariable(word, Data.Debugging.ENamespace.MissionNamespace);
501+
}
502+
this.ToolTip.Content = variable;
503+
}
495504
}
496505
private void TextEditor_MouseHoverStopped(object sender, MouseEventArgs e)
497506
{

0 commit comments

Comments
 (0)