Mesen2/UI/Debugger/Views/ScriptCodeCompletionView.axaml
Sour d208fdc6a7 UI: Support for NativeAOT
Added Windows & Linux builds using AOT compilation
2024-06-05 20:23:31 +09:00

96 lines
4 KiB
XML

<UserControl
xmlns="https://github.com/avaloniaui"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:cfg="using:Mesen.Config"
xmlns:c="using:Mesen.Controls"
xmlns:dc="using:Mesen.Debugger.Controls"
xmlns:dvm="using:Mesen.Debugger.ViewModels"
xmlns:du="using:Mesen.Debugger.Utilities"
xmlns:l="using:Mesen.Localization"
mc:Ignorable="d" d:DesignWidth="500" d:DesignHeight="410"
MaxWidth="550"
VerticalAlignment="Stretch"
HorizontalAlignment="Stretch"
x:DataType="du:DocEntryViewModel"
x:Class="Mesen.Debugger.Views.ScriptCodeCompletionView"
>
<Design.DataContext>
<du:DocEntryViewModel />
</Design.DataContext>
<UserControl.Styles>
<Style Selector="TextBlock">
<Setter Property="TextWrapping" Value="Wrap" />
</Style>
</UserControl.Styles>
<StackPanel Margin="2">
<TextBlock FontSize="16" Text="{Binding Name}" Padding="0 3" />
<TextBlock Text="{Binding Description}" Margin="0 10 0 0" />
<StackPanel IsVisible="{Binding !EnumValues.Count}">
<TextBlock Text="Syntax" TextDecorations="Underline" Margin="0 10 0 0" />
<TextBlock Text="{Binding Syntax}" FontFamily="{DynamicResource MesenMonospaceFont}" Margin="5 3 0 0" />
<TextBlock Text="Parameters" TextDecorations="Underline" Margin="0 10 0 0" />
<Grid IsVisible="{Binding Parameters.Count}" ColumnDefinitions="Auto,Auto,Auto" RowDefinitions="Auto" Margin="5 3 0 0" >
<ItemsControl ItemsSource="{Binding Parameters}" Grid.Column="0">
<ItemsControl.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding Name}" FontWeight="Bold" Padding="2 0" />
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
<ItemsControl ItemsSource="{Binding Parameters}" Grid.Column="1">
<ItemsControl.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding CalculatedType}" FontStyle="Italic" Margin="5 0" Padding="5 0" />
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
<ItemsControl ItemsSource="{Binding Parameters}" Grid.Column="2">
<ItemsControl.ItemTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal">
<TextBlock Text="{Binding Description}" />
<StackPanel Orientation="Horizontal" IsVisible="{Binding DefaultValue.Length}">
<TextBlock Text=" [default: " />
<TextBlock Text="{Binding DefaultValue}" />
<TextBlock Text="]" />
</StackPanel>
</StackPanel>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
</Grid>
<TextBlock IsVisible="{Binding !Parameters.Count}" FontStyle="Italic" Text="None" Margin="5 3 0 0" />
<TextBlock Text="Return Value" TextDecorations="Underline" Margin="0 10 0 0" />
<TextBlock IsVisible="{Binding ReturnValue.Type.Length}" Text="{Binding ReturnValue.Type}" FontStyle="Italic" Margin="5 3 0 0" />
<TextBlock IsVisible="{Binding ReturnValue.Type.Length}" Text="{Binding ReturnValue.Description}" Margin="5 3 0 0" />
<TextBlock IsVisible="{Binding !ReturnValue.Type.Length}" FontStyle="Italic" Text="None" Margin="5 3 0 0" />
</StackPanel>
<StackPanel IsVisible="{Binding EnumValues.Count}">
<TextBlock Text="Values" TextDecorations="Underline" Margin="0 10 0 0" />
<Grid IsVisible="{Binding EnumValues.Count}" ColumnDefinitions="Auto,Auto" RowDefinitions="Auto" Margin="5 3 0 0" >
<ItemsControl ItemsSource="{Binding EnumValues}" Grid.Column="0">
<ItemsControl.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding Name}" FontWeight="Bold" Padding="2 0" />
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
<ItemsControl ItemsSource="{Binding EnumValues}" Grid.Column="1">
<ItemsControl.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding Description}" Padding="5 0" />
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
</Grid>
</StackPanel>
</StackPanel>
</UserControl>