Files
exercises-300-digital-dojo-…/DDApp/DDApplication/MainWindow.axaml

49 lines
2.8 KiB
XML

<Window 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"
mc:Ignorable="d" d:DesignWidth="1320" d:DesignHeight="860"
Width="1320" Height="860"
x:Class="DDApplication.MainWindow"
Title="Digital Dojo Bot Controller">
<Grid RowDefinitions="Auto,Auto,*,Auto" ColumnDefinitions="2*,2*,3*" Margin="12">
<StackPanel Grid.Row="0" Grid.Column="0" Grid.ColumnSpan="3" Orientation="Horizontal" Spacing="8">
<Button x:Name="StartButton" Content="Start Bot" Width="120"/>
<Button x:Name="StopButton" Content="Stop Bot" Width="120" IsEnabled="False"/>
<TextBlock Text="API Key:" VerticalAlignment="Center"/>
<TextBox x:Name="ApiKeyBox" Width="360" Watermark="GUID player token"/>
<TextBlock x:Name="StatusText" VerticalAlignment="Center" Text="Idle"/>
</StackPanel>
<Border Grid.Row="1" Grid.Column="0" Grid.ColumnSpan="3" Margin="0,8,0,8" Padding="8" BorderThickness="1" CornerRadius="6">
<SelectableTextBlock x:Name="StatsText" TextWrapping="Wrap" Text="Waiting for game state..." Focusable="True"/>
</Border>
<Border Grid.Row="2" Grid.Column="0" Margin="0,0,8,0" Padding="8" BorderThickness="1" CornerRadius="6">
<Grid RowDefinitions="Auto,*" RowSpacing="6">
<TextBlock Text="Bot Knowledge" FontWeight="Bold"/>
<ScrollViewer Grid.Row="1" HorizontalScrollBarVisibility="Auto" VerticalScrollBarVisibility="Auto">
<UniformGrid x:Name="KnowledgeGrid" Rows="21" Columns="21"/>
</ScrollViewer>
</Grid>
</Border>
<Border Grid.Row="2" Grid.Column="1" Margin="0,0,8,0" Padding="8" BorderThickness="1" CornerRadius="6">
<Grid RowDefinitions="Auto,Auto,*" RowSpacing="8">
<TextBlock Text="Decision + Cooldowns" FontWeight="Bold"/>
<TextBlock x:Name="DecisionText" Grid.Row="1" TextWrapping="Wrap" Text="No decision yet."/>
<TextBlock x:Name="CooldownText" Grid.Row="2" TextWrapping="Wrap"/>
</Grid>
</Border>
<Border Grid.Row="2" Grid.Column="2" Padding="8" BorderThickness="1" CornerRadius="6">
<Grid RowDefinitions="Auto,*" RowSpacing="6">
<TextBlock Text="Action Log" FontWeight="Bold"/>
<ListBox x:Name="LogList" Grid.Row="1"/>
</Grid>
</Border>
<TextBlock Grid.Row="3" Grid.Column="0" Grid.ColumnSpan="3" Margin="0,8,0,0" Text="Legend: P=bot, N=scan-nearest, *=high threat, +=medium threat, .=low threat" />
</Grid>
</Window>