Files
UFL/Views/MainWindow.axaml

54 lines
2.5 KiB
Plaintext
Raw Normal View History

2025-12-17 15:34:34 -07:00
<Window xmlns="https://github.com/avaloniaui"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
x:Class="UnifiedFarmLauncher.Views.MainWindow"
Title="Unified Farm Launcher"
Width="1000" Height="700"
MinWidth="800" MinHeight="600">
<Grid RowDefinitions="Auto,Auto,*,Auto">
<!-- Toolbar -->
<StackPanel Orientation="Horizontal" Margin="5" Grid.Row="0">
<Button Name="AddWorkerButton" Content="Add Worker" Margin="5" Width="120"/>
<Button Name="EditWorkerButton" Content="Edit Worker" Margin="5" Width="120"/>
<Button Name="DeleteWorkerButton" Content="Delete Worker" Margin="5" Width="120"/>
<Separator Margin="10,0"/>
<Button Name="StartWorkerButton" Content="Start" Margin="5" Width="80"/>
<Button Name="StopWorkerButton" Content="Stop" Margin="5" Width="80"/>
<Button Name="AttachWorkerButton" Content="Attach" Margin="5" Width="80"/>
</StackPanel>
<!-- Worker Type Filter -->
<TabControl Name="WorkerTypeTabs" Grid.Row="1" Margin="5,0">
<TabItem Header="All Workers">
<TextBlock Text="All Workers" IsVisible="False"/>
</TabItem>
<TabItem Header="SheepIt">
<TextBlock Text="SheepIt" IsVisible="False"/>
</TabItem>
<TabItem Header="Flamenco">
<TextBlock Text="Flamenco" IsVisible="False"/>
</TabItem>
</TabControl>
<!-- Worker List -->
<DataGrid Name="WorkersGrid" Grid.Row="2" Margin="5"
AutoGenerateColumns="False"
IsReadOnly="True"
SelectionMode="Single"
GridLinesVisibility="All">
<DataGrid.Columns>
<DataGridTextColumn Header="Name" Binding="{Binding Name}" Width="150"/>
<DataGridCheckBoxColumn Header="Enabled" Binding="{Binding Enabled}" Width="80"/>
<DataGridTextColumn Header="SSH Host" Binding="{Binding Ssh.Host}" Width="150"/>
<DataGridTextColumn Header="SSH Port" Binding="{Binding Ssh.Port}" Width="80"/>
<DataGridTextColumn Header="Worker Types" Binding="{Binding WorkerTypes}" Width="*"/>
</DataGrid.Columns>
</DataGrid>
<!-- Status Bar -->
<StatusBar Grid.Row="3">
<TextBlock Name="StatusText" Text="{Binding StatusText}" Margin="5"/>
</StatusBar>
</Grid>
</Window>