WPFWindows/NewJobWindow.xaml
<Window
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 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:local="clr-namespace:PSChiaPlotter" Title="New Job" Height="725" Width="680"> <Window.Resources> <BooleanToVisibilityConverter x:Key="BooleanToVisibilityConverter" /> <Style TargetType="Label"> <Setter Property="HorizontalAlignment" Value="Right" /> <Setter Property="VerticalAlignment" Value="Center" /> <Setter Property="FontWeight" Value="Bold" /> </Style> <Style TargetType="TextBox"> <Setter Property="Margin" Value="5" /> <Setter Property="VerticalAlignment" Value="Center" /> <Setter Property="HorizontalContentAlignment" Value="Right"/> </Style> <Style TargetType="GroupBox"> <Setter Property="FontWeight" Value="Bold" /> <Setter Property="BorderThickness" Value="2" /> <Setter Property="BorderBrush" Value="ForestGreen" /> </Style> <Style TargetType="ComboBox"> <Setter Property="Margin" Value="5" /> </Style> <Style TargetType="ComboBoxItem"> <Setter Property="FontSize" Value="10"/> <Setter Property="Margin" Value="0" /> <Setter Property="Padding" Value="0" /> </Style> <Style x:Key="TempBusType" TargetType="TextBlock"> <Setter Property="VerticalAlignment" Value="Center" /> <Setter Property="FontWeight" Value="Bold" /> <Style.Triggers> <Trigger Property="Text" Value="NVMe"> <Setter Property="Foreground" Value="Green"/> </Trigger> <Trigger Property="Text" Value="Network"> <Setter Property="Foreground" Value="Red"/> </Trigger> </Style.Triggers> </Style> <Style x:Key="TempMediaType" TargetType="TextBlock"> <Setter Property="VerticalAlignment" Value="Center" /> <Setter Property="FontWeight" Value="Bold" /> <Style.Triggers> <Trigger Property="Text" Value="SSD"> <Setter Property="Foreground" Value="Green" /> </Trigger> </Style.Triggers> </Style> <Style x:Key="FinalBusType" TargetType="TextBlock"> <Setter Property="VerticalAlignment" Value="Center" /> <Setter Property="FontWeight" Value="Bold" /> <Style.Triggers> <Trigger Property="Text" Value="SATA"> <Setter Property="Foreground" Value="Green"/> </Trigger> </Style.Triggers> </Style> <Style x:Key="FinalMediaType" TargetType="TextBlock"> <Setter Property="VerticalAlignment" Value="Center" /> <Setter Property="FontWeight" Value="Bold" /> <Style.Triggers> <Trigger Property="Text" Value="HDD"> <Setter Property="Foreground" Value="Green" /> </Trigger> </Style.Triggers> </Style> <Style x:Key="AddParamGroupbox" TargetType="GroupBox"> <Setter Property="FontWeight" Value="Bold" /> <Setter Property="BorderThickness" Value="2" /> <Setter Property="BorderBrush" Value="ForestGreen" /> <Style.Triggers> <DataTrigger Binding="{Binding ElementName=AdditionalParametersCheckBox, Path=IsChecked}" Value="False"> <Setter Property="BorderThickness" Value="0" /> </DataTrigger> <DataTrigger Binding="{Binding ElementName=AdditionalParametersCheckBox, Path=IsChecked}" Value="True"> <Setter Property="BorderThickness" Value="2" /> </DataTrigger> </Style.Triggers> </Style> <Style x:Key="TotalPlots" TargetType="TextBox"> <Setter Property="Margin" Value="5" /> <Setter Property="VerticalAlignment" Value="Center" /> <Setter Property="HorizontalContentAlignment" Value="Right"/> <Style.Triggers> <DataTrigger Binding="{Binding ElementName=PlotInfiniteCheckBox, Path=IsChecked}" Value="False"> <Setter Property="IsEnabled" Value="True" /> </DataTrigger> <DataTrigger Binding="{Binding ElementName=PlotInfiniteCheckBox, Path=IsChecked}" Value="True"> <Setter Property="IsEnabled" Value="False" /> </DataTrigger> </Style.Triggers> </Style> <Style x:Key="WrapCheckBox" TargetType="CheckBox"> <Setter Property="IsThreeState" Value="False" /> <Setter Property="Margin" Value="5,0,5,5" /> <Setter Property="VerticalAlignment" Value="Center" /> </Style> </Window.Resources> <Grid> <Grid.ColumnDefinitions> <ColumnDefinition Width="5" /> <ColumnDefinition Width="*" /> <ColumnDefinition Width="*" /> <ColumnDefinition Width="2*" /> <ColumnDefinition Width="5" /> </Grid.ColumnDefinitions> <Grid.RowDefinitions> <RowDefinition Height="5" /> <RowDefinition Height="auto" /> <RowDefinition Height="*" /> <RowDefinition Height="auto" /> <RowDefinition Height="5" /> </Grid.RowDefinitions> <Border Grid.Row="1" Grid.Column="1" Grid.ColumnSpan="3" BorderBrush="Black" BorderThickness="1" Margin="5"> <Grid> <Grid.ColumnDefinitions> <ColumnDefinition Width="auto" /> <ColumnDefinition Width="*" /> <ColumnDefinition Width="auto" /> <ColumnDefinition Width="*" /> <ColumnDefinition Width="auto" /> </Grid.ColumnDefinitions> <Label Content="Job Names:"/> <TextBox Text="{Binding Path=NewChiaJob.JobName}" Grid.Column="1"/> <Label Content="Saved Jobs: " Grid.Column="2"/> <ComboBox Name="SavedJobs_Combobox" Grid.Column="3" SelectedValuePath="FullName" DisplayMemberPath="Name" /> <Button x:Name="LoadJob_Button" Content="Load" Margin="0,5,5,5" Padding="5,0,5,0" Grid.Column="4"/> </Grid> </Border> <ScrollViewer x:Name="Form_ScrollViewer" VerticalScrollBarVisibility="Auto" HorizontalScrollBarVisibility="Disabled" Grid.Column="1" Grid.Row="2" Grid.ColumnSpan="3"> <Grid> <Grid.ColumnDefinitions> <ColumnDefinition Width="5" /> <ColumnDefinition Width="*" /> <ColumnDefinition Width="*" /> <ColumnDefinition Width="5" /> </Grid.ColumnDefinitions> <Grid.RowDefinitions> <RowDefinition Height="5" /> <RowDefinition Height="auto" /> <RowDefinition Height="auto" /> <RowDefinition Height="*" /> <RowDefinition Height="auto" /> <RowDefinition Height="5" /> </Grid.RowDefinitions> <GroupBox Header="Plots / Parallel" Grid.Row="1" Grid.Column="1" Grid.ColumnSpan="2"> <Grid> <Grid.ColumnDefinitions> <ColumnDefinition Width="5" /> <ColumnDefinition Width="auto" /> <ColumnDefinition Width="*" /> <ColumnDefinition Width="auto" /> <ColumnDefinition Width="*" /> <ColumnDefinition Width="auto" /> <ColumnDefinition Width="*" /> <ColumnDefinition Width="5" /> </Grid.ColumnDefinitions> <Grid.RowDefinitions> <RowDefinition Height="5" /> <RowDefinition Height="auto" /> <RowDefinition Height="auto" /> <RowDefinition Height="5" /> </Grid.RowDefinitions> <Label Content="Total Plots:" Grid.Row="1" Grid.Column="1" /> <Label Content="Parallel Count:" Grid.Column="3" Grid.Row="1" /> <Label Content="Delay (minutes):" Grid.Column="3" Grid.Row="2" /> <Label Content="First Delay (min):" Grid.Row="2" Grid.Column="1" /> <Label Content="Phase 1 Limit" Grid.Row="2" Grid.Column="5"/> <CheckBox Grid.Row="1" Grid.Column="5" Grid.ColumnSpan="2" Margin="5" x:Name="PhaseOneLimitor_CheckBox" ToolTip="This will enable the Phase 1 Limit Property below" Content="Enable Phase 1 Limit" VerticalAlignment="Center" IsThreeState="False" IsChecked="{Binding Path=NewChiaJob.EnablePhaseOneLimitor}" /> <TextBox x:Name="TotalPlots_TextBox" Grid.Row="1" Grid.Column="2" Text="{Binding Path=NewChiaJob.TotalPlotCount}" Style="{StaticResource TotalPlots}"/> <TextBox x:Name="Parallel_TextBox" Grid.Row="1" Grid.Column="4" Text="{Binding Path=NewChiaJob.QueueCount}"/> <TextBox x:Name="Delay_TextBox" Grid.Row="2" Grid.Column="4" Text="{Binding Path=NewChiaJob.DelayInMinutes}" /> <TextBox x:Name="FirstDelay_TextBox" Grid.Row="2" Grid.Column="2" Text="{Binding Path=NewChiaJob.FirstDelay}" /> <TextBox x:Name="PhaseOneLimit_TextBox" IsEnabled="{Binding ElementName=PhaseOneLimitor_CheckBox, Path=IsChecked}" Grid.Row="2" Grid.Column="6" ToolTip="This will limit the total number of chia processes that can be in phase 1 at one time." Text="{Binding Path=NewChiaJob.PhaseOneLimit}" /> </Grid> </GroupBox> <GroupBox Header="Plotting Parameters" Grid.Row="2" Grid.Column="1" Grid.ColumnSpan="2"> <Grid> <Grid.ColumnDefinitions> <ColumnDefinition Width="5" /> <ColumnDefinition Width="auto" /> <ColumnDefinition Width="*" /> <ColumnDefinition Width="auto" /> <ColumnDefinition Width="*" /> <ColumnDefinition Width="5" /> </Grid.ColumnDefinitions> <Grid.RowDefinitions> <RowDefinition Height="5" /> <RowDefinition Height="auto" /> <RowDefinition Height="auto" /> <RowDefinition Height="auto" /> <RowDefinition Height="auto" /> <RowDefinition Height="5" /> </Grid.RowDefinitions> <Label Content="K-Size: " Grid.Column="1" Grid.Row="1" /> <Label Content="RAM (MiB): " Grid.Column="3" Grid.Row="1" /> <Label Content="Threads: " Grid.Column="1" Grid.Row="2" /> <Label Content="Buckets: " Grid.Column="3" Grid.Row="2" /> <ComboBox Name="KSize_ComboBox" SelectedItem="{Binding Path=NewChiaJob.InitialChiaParameters.KSize}" ItemsSource="{Binding Path=AvailableKSizes}" DisplayMemberPath="KSizeValue" Grid.Column="2" Grid.Row="1" Margin="5" VerticalAlignment="Top"> </ComboBox> <TextBox x:Name="RAM_TextBox" Grid.Row="1" Grid.Column="4" Text="{Binding Path=NewChiaJob.InitialChiaParameters.RAM}" /> <TextBox x:Name="Threads_TextBox" Grid.Row="2" Grid.Column="2" Text="{Binding Path=NewChiaJob.InitialChiaParameters.Threads}"/> <TextBox x:Name="Buckets_TextBox" Grid.Row="2" Grid.Column="4" Text="{Binding Path=NewChiaJob.InitialChiaParameters.Buckets}" /> <Separator Grid.Column="1" Grid.ColumnSpan="4" Grid.Row="3" Height="1" VerticalAlignment="Center" Margin="5"/> <WrapPanel Grid.Row="4" Grid.Column="1" Grid.ColumnSpan="4" HorizontalAlignment="Center"> <CheckBox Content="Plot Infinite" x:Name="PlotInfiniteCheckBox" IsChecked="{Binding Path=NewChiaJob.PlotInfinite}" Style="{StaticResource WrapCheckBox}"/> <CheckBox Content="Auto Check Plots" IsChecked="{Binding Path=NewChiaJob.InitialChiaParameters.AutoPlotCheckEnabled}" Style="{StaticResource WrapCheckBox}"/> <CheckBox Content="Disable Bitfield" Style="{StaticResource WrapCheckBox}" IsChecked="{Binding Path=NewChiaJob.InitialChiaParameters.DisableBitField}"/> <CheckBox Content="Exclude Final Directory" IsChecked="{Binding Path=NewChiaJob.InitialChiaParameters.ExcludeFinalDirectory}" Style="{StaticResource WrapCheckBox}"/> <CheckBox Content="Plot While Copy" Style="{StaticResource ResourceKey=WrapCheckBox}" IsChecked="{Binding Path=NewChiaJob.InitialChiaParameters.PlotWhileCopy}" /> </WrapPanel> </Grid> </GroupBox> <GroupBox Grid.Row="3" Grid.Column="1" Grid.ColumnSpan="2"> <GroupBox.Header> <StackPanel Orientation="Horizontal"> <Label Content="Directories" Margin="0" Padding="0"/> <Separator Width="5" Margin="5" VerticalAlignment="Center"/> <Button x:Name="AdvancedBasic_Button" Content="Switch To Basic" FontSize="10" Margin="0" Padding="5,0,5,0" Background="Azure" VerticalAlignment="Bottom"/> </StackPanel> </GroupBox.Header> <Grid> <Grid.ColumnDefinitions> <ColumnDefinition Width="5" /> <ColumnDefinition Width="*" /> <ColumnDefinition Width="5" /> </Grid.ColumnDefinitions> <Grid.RowDefinitions> <RowDefinition Height="5" /> <RowDefinition Height="*" /> <RowDefinition Height="5" /> </Grid.RowDefinitions> <Grid x:Name="BasicPlotting_Grid" Grid.Row="1" Grid.Column="1" Visibility="Collapsed"> <Grid.ColumnDefinitions> <ColumnDefinition Width="5" /> <ColumnDefinition Width="auto" /> <ColumnDefinition Width="*" /> <ColumnDefinition Width="5" /> </Grid.ColumnDefinitions> <Grid.RowDefinitions> <RowDefinition Height="5" /> <RowDefinition Height="auto" /> <RowDefinition Height="auto" /> <RowDefinition Height="auto" /> <RowDefinition Height="*" /> <RowDefinition Height="auto" /> <RowDefinition Height="auto" /> <RowDefinition Height="5" /> </Grid.RowDefinitions> <Label Content="Temp Directory Path: " Grid.Row="1" Grid.Column="1"/> <CheckBox Content="2nd Temp Directory Path: " x:Name="SecondTempCheckBox" IsThreeState="False" VerticalAlignment="Center" IsChecked="{Binding Path=NewChiaJob.InitialChiaParameters.EnableBasicSecondTempDirectory}" Grid.Row="2" Grid.Column="1"/> <Label Content="Final Directory Path: " Grid.Row="3" Grid.Column="1"/> <CheckBox Content="Replot Directory: " IsChecked="{Binding Path=NewChiaJob.InitialChiaParameters.ReplotEnabled}" IsThreeState="False" VerticalAlignment="Top" Margin="0,5,0,0" HorizontalAlignment="Right" Grid.Row="4" Grid.Column="1" /> <Label Content="Logging Path: " Grid.Row="5" Grid.Column="1"/> <Label Content="Note: " Grid.Row="6" Grid.Column="1" /> <TextBox x:Name="TempDir_TextBox" Text="{Binding Path=NewChiaJob.InitialChiaParameters.BasicTempDirectory.DirectoryPath}" Grid.Row="1" Grid.Column="2" HorizontalContentAlignment="Left"/> <TextBox x:Name="SecondTempDir_TextBox" IsEnabled="{Binding ElementName=SecondTempCheckBox, Path=IsChecked}" Text="{Binding Path=NewChiaJob.InitialChiaParameters.BasicSecondTempDirectory}" Grid.Row="2" Grid.Column="2" HorizontalContentAlignment="Left"/> <TextBox x:Name="FinalDir_TextBox" Text="{Binding Path=NewChiaJob.InitialChiaParameters.BasicFinalDirectory.DirectoryPath}" Grid.Row="3" Grid.Column="2" HorizontalContentAlignment="Left"/> <Grid Grid.Row="4" Grid.Column="2" MinHeight="25" VerticalAlignment="Stretch" IsEnabled="{Binding ElementName=EnableReplotCheckbox, Path=IsChecked}" > <Grid.ColumnDefinitions> <ColumnDefinition Width="*" /> <ColumnDefinition Width="auto" /> </Grid.ColumnDefinitions> <ListBox x:Name="ReplotDir_ListBox" IsEnabled="{Binding ElementName=EnableReplotCheckbox, Path=IsChecked}" ItemsSource="{Binding Path=NewChiaJob.InitialChiaParameters.BasicFinalDirectory.OldPlotDirectories}" HorizontalContentAlignment="Stretch" VerticalAlignment="Stretch" Grid.Column="0" Margin="5" ScrollViewer.HorizontalScrollBarVisibility="Disabled"> <ListBox.ItemTemplate> <DataTemplate> <Border BorderBrush="SlateGray" BorderThickness="1"> <Grid> <Grid.ColumnDefinitions> <ColumnDefinition Width="auto" /> <ColumnDefinition Width="*" /> <ColumnDefinition Width="auto" /> <ColumnDefinition Width="auto" /> <ColumnDefinition Width="auto" /> <ColumnDefinition Width="auto" /> </Grid.ColumnDefinitions> <Label Content="Path:" Grid.Column="0" FontWeight="Bold" VerticalAlignment="Center"/> <TextBox Text="{Binding Path}" HorizontalContentAlignment="Left" Grid.Column="1" IsReadOnly="True" Margin="5" HorizontalAlignment="Stretch"/> <Separator Grid.Column="2" Style="{StaticResource {x:Static ToolBar.SeparatorStyleKey}}" Margin="5"/> <Label Content="Old Plot Count:" Grid.Column="3" FontWeight="Bold" VerticalAlignment="Center"/> <Label Content="{Binding PlotCount}" Grid.Column="4" VerticalAlignment="Center" Foreground="OrangeRed" FontWeight="Black"/> </Grid> </Border> </DataTemplate> </ListBox.ItemTemplate> </ListBox> <Button x:Name="BasicReplot_Button" Content="Add" Margin="5" Padding="5,2,5,2" MaxHeight="30" VerticalAlignment="Top" Grid.Column="1"/> </Grid> <TextBox x:Name="LoggingPath_TextBox" Text="{Binding Path=NewChiaJob.InitialChiaParameters.LogDirectory}" Grid.Row="5" Grid.Column="2" HorizontalContentAlignment="Left"/> <TextBlock Text="Basic plotting performs no checks to ensure free space when plotting." Grid.Column="2" Grid.Row="6" VerticalAlignment="Center"/> </Grid> <TabControl x:Name="AdvancedPlotting_TabControl" Grid.Row="1" Grid.Column="1" HorizontalAlignment="Stretch" Visibility="Visible" VerticalAlignment="Stretch"> <TabItem Header="Temp Drives"> <Grid> <Grid.ColumnDefinitions> <ColumnDefinition Width="5" /> <ColumnDefinition Width="auto" /> <ColumnDefinition Width="*" /> <ColumnDefinition Width="auto" /> <ColumnDefinition Width="5" /> </Grid.ColumnDefinitions> <Grid.RowDefinitions> <RowDefinition Height="5" /> <RowDefinition Height="auto" /> <RowDefinition Height="*" /> <RowDefinition Height="auto" /> </Grid.RowDefinitions> <Label Content="Temp Drives: " ToolTip="These drive are for phase 1 and 2 (and 3 if no 2nd temp drive is selected)" Grid.Column="1" Grid.Row="1" Margin="5" HorizontalAlignment="Left"/> <Grid Grid.Row="3" Grid.Column="1" Grid.ColumnSpan="3"> <Grid.ColumnDefinitions> <ColumnDefinition Width="auto" /> <ColumnDefinition Width="*" /> <ColumnDefinition Width="auto" /> <ColumnDefinition Width="auto" /> </Grid.ColumnDefinitions> <Grid.RowDefinitions> <RowDefinition Height="*" /> </Grid.RowDefinitions> <Label Content="2nd Temp Drive:" Grid.Row="0" Grid.Column="0" ToolTip="This drive is for phase 3 only. If none selected, then it will default to the temporary directory."/> <ComboBox Name="SecondTemp_ComboBox" Grid.Column="1" SelectedItem="{Binding Path=NewChiaJob.InitialChiaParameters.SecondTempVolume}" ItemsSource="{Binding Path=SecondTempVolumes}"> <ComboBox.ItemTemplate> <DataTemplate> <Grid> <Grid.ColumnDefinitions> <ColumnDefinition Width="auto" /> <ColumnDefinition Width="*" /> <ColumnDefinition Width="*" /> <ColumnDefinition Width="*" /> </Grid.ColumnDefinitions> <Grid.RowDefinitions> <RowDefinition Height="*" /> </Grid.RowDefinitions> <StackPanel Orientation="Horizontal" Grid.Column="0" Grid.Row="0"> <TextBlock Text="{Binding Path=DriveLetter, StringFormat={}{0} - }" VerticalAlignment="Center" FontWeight="Bold" Margin="5,0,0,0"/> </StackPanel> <StackPanel Orientation="Horizontal" Grid.Row="0" Grid.Column="1"> <Label Content="MediaType:" VerticalAlignment="Center" FontWeight="Normal"/> <TextBlock Text="{Binding Path=MediaType}" Style="{StaticResource TempMediaType}"/> </StackPanel> <StackPanel Orientation="Horizontal" Grid.Row="0" Grid.Column="2"> <Label Content="BuyType:" VerticalAlignment="Center" FontWeight="Normal"/> <TextBlock Text="{Binding Path=BusType}" Style="{StaticResource TempBusType}" /> </StackPanel> <TextBox x:Name="Path_TextBox" Grid.Column="3" Text="{Binding Path=DirectoryPath}" HorizontalAlignment="Stretch" HorizontalContentAlignment="Left"/> </Grid> </DataTemplate> </ComboBox.ItemTemplate> </ComboBox> <Button x:Name="RemoveTempVolumeButton" Content="Clear" Grid.Column="2" Margin="5" Padding="5,0,5,0"/> <CheckBox IsChecked="{Binding Path=NewChiaJob.IgnoreMaxParallel}" IsThreeState="False" MaxWidth="160" VerticalContentAlignment="Center" Grid.Column="3" ToolTip="example - You will be able to plot 4 parallel plots on a 1 TB drive instead of 3 (do this at your own risk) - Applies to all temp drives"> <TextBox Text="Ignore MaxParallel" IsReadOnly="True" TextAlignment="Center" BorderThickness="0" TextWrapping="Wrap"/> </CheckBox> </Grid> <ComboBox x:Name="TempDir_ComboBox" Grid.Row="1" Grid.Column="2" ItemsSource="{Binding Path=TempAvailableVolumes}"> <ComboBox.ItemTemplate> <DataTemplate> <Grid> <Grid.ColumnDefinitions> <ColumnDefinition Width="auto" /> <ColumnDefinition Width="*" /> <ColumnDefinition Width="*" /> <ColumnDefinition Width="*" /> </Grid.ColumnDefinitions> <Grid.RowDefinitions> <RowDefinition Height="*" /> </Grid.RowDefinitions> <StackPanel Orientation="Horizontal" Grid.Column="0" Grid.Row="0"> <TextBlock Text="{Binding Path=DriveLetter, StringFormat={}{0} - }" VerticalAlignment="Center" FontWeight="Bold" Margin="5,0,0,0"/> </StackPanel> <StackPanel Orientation="Horizontal" Grid.Row="0" Grid.Column="1"> <Label Content="MediaType:" VerticalAlignment="Center" FontWeight="Normal"/> <TextBlock Text="{Binding Path=MediaType}" Style="{StaticResource TempMediaType}"/> </StackPanel> <StackPanel Orientation="Horizontal" Grid.Row="0" Grid.Column="2"> <Label Content="BuyType:" VerticalAlignment="Center" FontWeight="Normal"/> <TextBlock Text="{Binding Path=BusType}" Style="{StaticResource TempBusType}" /> </StackPanel> <StackPanel Orientation="Horizontal" Grid.Row="0" Grid.Column="3"> <Label Content="Max Parallel: " VerticalAlignment="Center" FontWeight="Normal"/> <TextBlock Text="{Binding Path=MaxConCurrentTempChiaRuns}" VerticalAlignment="Center"/> </StackPanel> </Grid> </DataTemplate> </ComboBox.ItemTemplate> </ComboBox> <Button x:Name="TempDriveAdd_Button" Content="Add" Grid.Column="3" Grid.Row="1" VerticalAlignment="Center" Padding="5,5,5,5" Margin="0,5,5,5" CommandParameter="{Binding ElementName=TempDir_ComboBox, Path=SelectedItem}" Command="{Binding Path=AddTempVolumeCommand}"/> <ListBox x:Name="TempVolume_ListBox" Grid.Row="2" Grid.Column="1" Grid.ColumnSpan="3" ItemsSource="{Binding Path=NewChiaJob.TempVolumes}" Margin="5" ScrollViewer.HorizontalScrollBarVisibility="Disabled" HorizontalContentAlignment="Stretch"> <ListBox.ItemTemplate> <DataTemplate> <Border BorderBrush="SlateGray" BorderThickness="1"> <Grid> <Grid.ColumnDefinitions> <ColumnDefinition Width="1" /> <ColumnDefinition Width="auto" /> <ColumnDefinition Width="auto" /> <ColumnDefinition Width="*" /> <ColumnDefinition Width="auto" /> <ColumnDefinition Width="1" /> </Grid.ColumnDefinitions> <Grid.RowDefinitions> <RowDefinition Height="1" /> <RowDefinition Height="*" /> <RowDefinition Height="1" /> </Grid.RowDefinitions> <Label Content="{Binding Path=DriveLetter}" Grid.Row="1" Grid.Column="1" Margin="5" FontSize="11" FontWeight="Bold" VerticalAlignment="Center" HorizontalAlignment="Center" BorderThickness="1" BorderBrush="Black" Foreground="DarkBlue" ToolTip="Drive Letter"/> <Label Content="Path: " Grid.Row="1" Grid.Column="2" /> <TextBox x:Name="Path_TextBox" Grid.Row="1" Grid.Column="3" Text="{Binding Path=DirectoryPath}" HorizontalAlignment="Stretch" HorizontalContentAlignment="Left"/> <Button Content="Remove" Grid.Column="4" Grid.Row="1" BorderThickness="1" Background="Transparent" BorderBrush="Pink" Foreground="Red" Margin="5" CommandParameter="{Binding}" Command="{Binding RelativeSource={RelativeSource AncestorType={x:Type ListBox}}, Path=DataContext.RemoveTempVolumeCommand}"/> </Grid> </Border> </DataTemplate> </ListBox.ItemTemplate> </ListBox> </Grid> </TabItem> <TabItem Header="Final Drives / Logging"> <Grid> <Grid.ColumnDefinitions> <ColumnDefinition Width="5" /> <ColumnDefinition Width="auto" /> <ColumnDefinition Width="*" /> <ColumnDefinition Width="auto" /> <ColumnDefinition Width="5" /> </Grid.ColumnDefinitions> <Grid.RowDefinitions> <RowDefinition Height="5" /> <RowDefinition Height="auto" /> <RowDefinition Height="*" /> <RowDefinition Height="auto" /> <RowDefinition Height="auto" /> </Grid.RowDefinitions> <Label Content="Final Drives: " Grid.Column="1" Grid.Row="1" Margin="5"/> <ComboBox x:Name="FinalDir_ComboBox" Grid.Row="1" Grid.Column="2" ItemsSource="{Binding Path=FinalAvailableVolumes}"> <ComboBox.ItemTemplate> <DataTemplate> <Grid> <Grid.ColumnDefinitions> <ColumnDefinition Width="auto" /> <ColumnDefinition Width="*" /> <ColumnDefinition Width="*" /> <ColumnDefinition Width="*" /> </Grid.ColumnDefinitions> <Grid.RowDefinitions> <RowDefinition Height="*" /> </Grid.RowDefinitions> <StackPanel Orientation="Horizontal" Grid.Column="0" Grid.Row="0"> <TextBlock Text="{Binding Path=DriveLetter, StringFormat={}{0} - }" VerticalAlignment="Center" FontWeight="Bold" Margin="5,0,0,0"/> </StackPanel> <StackPanel Orientation="Horizontal" Grid.Row="0" Grid.Column="1"> <Label Content="MediaType:" VerticalAlignment="Center" FontWeight="Normal"/> <TextBlock Text="{Binding Path=MediaType}" Style="{StaticResource FinalMediaType}"/> </StackPanel> <StackPanel Orientation="Horizontal" Grid.Row="0" Grid.Column="2"> <Label Content="BuyType:" VerticalAlignment="Center" FontWeight="Normal"/> <TextBlock Text="{Binding Path=BusType}" Style="{StaticResource FinalBusType}" /> </StackPanel> <StackPanel Orientation="Horizontal" Grid.Row="0" Grid.Column="3"> <Label Content="Potential Plots: " VerticalAlignment="Center" FontWeight="Normal"/> <TextBlock Text="{Binding Path=PotentialFinalPlotsRemaining}" VerticalAlignment="Center"/> </StackPanel> </Grid> </DataTemplate> </ComboBox.ItemTemplate> </ComboBox> <Button x:Name="FinalDir_Button" Content="Add" Grid.Column="3" Grid.Row="1" Padding="5,5,5,5" Margin="0,5,5,5" VerticalAlignment="Center" CommandParameter="{Binding ElementName=FinalDir_ComboBox, Path=SelectedItem}" Command="{Binding Path=AddFinalVolumeCommand}"/> <ListBox x:Name="FinalVolume_ListBox" Grid.Row="2" Grid.Column="1" Grid.ColumnSpan="3" ItemsSource="{Binding Path=NewChiaJob.FinalVolumes}" Margin="5" ScrollViewer.HorizontalScrollBarVisibility="Disabled" HorizontalContentAlignment="Stretch"> <ListBox.ItemTemplate> <DataTemplate> <Border BorderBrush="SlateGray" BorderThickness="1"> <Grid> <Grid.ColumnDefinitions> <ColumnDefinition Width="1" /> <ColumnDefinition Width="auto" /> <ColumnDefinition Width="auto" /> <ColumnDefinition Width="*" /> <ColumnDefinition Width="auto" /> <ColumnDefinition Width="1" /> </Grid.ColumnDefinitions> <Grid.RowDefinitions> <RowDefinition Height="1" /> <RowDefinition Height="*" /> <RowDefinition Height="1" /> </Grid.RowDefinitions> <Label Content="{Binding Path=DriveLetter}" Grid.Row="1" Grid.Column="1" Margin="5" FontSize="10" FontWeight="Bold" VerticalAlignment="Center" HorizontalAlignment="Center" BorderThickness="1" BorderBrush="Black" Foreground="DarkBlue" ToolTip="Drive Letter"/> <Label Content="Path: " Grid.Row="1" Grid.Column="2" /> <TextBox x:Name="FinalPath_TextBox" Grid.Row="1" Grid.Column="3" Text="{Binding Path=DirectoryPath}" HorizontalAlignment="Stretch" HorizontalContentAlignment="Left"/> <Button Content="Remove" Grid.Column="4" Grid.Row="1" BorderThickness="1" Background="Transparent" BorderBrush="Pink" Foreground="Red" Margin="5" CommandParameter="{Binding}" Command="{Binding RelativeSource={RelativeSource AncestorType={x:Type ListBox}}, Path=DataContext.RemoveFinalVolumeCommand}"/> </Grid> </Border> </DataTemplate> </ListBox.ItemTemplate> </ListBox> <Grid Grid.Row="3" Grid.Column="1" Grid.ColumnSpan="3"> <Grid.ColumnDefinitions> <ColumnDefinition Width="auto" /> <ColumnDefinition Width="*" /> <ColumnDefinition Width="auto" /> <ColumnDefinition Width="auto" /> <ColumnDefinition Width="auto" /> </Grid.ColumnDefinitions> <Label Content="Log Directory: " Grid.Column="0"/> <TextBox x:Name="LogDir_TextBox" Grid.Column="1" Text="{Binding Path=NewChiaJob.InitialChiaParameters.LogDirectory}" HorizontalContentAlignment="Left"/> <CheckBox Content="Ignore Free Space" ToolTip="This will disable checking the final drive's free space before starting a new plotting process" IsThreeState="False" IsChecked="{Binding Path=NewChiaJob.DisableFreeSpaceCheck}" Grid.Column="2" Margin="0,0,5,0" VerticalAlignment="Center"/> <CheckBox x:Name="EnableReplotCheckbox" Content="Enable Replot" Grid.Column="3" IsThreeState="False" IsChecked="{Binding Path=NewChiaJob.InitialChiaParameters.ReplotEnabled}" VerticalAlignment="Center" /> <Button x:Name="ReplotButton" Content="Replot Config" Grid.Column="4" Margin="5" Padding="2" IsEnabled="{Binding ElementName=EnableReplotCheckbox, Path=IsChecked}"/> </Grid> </Grid> </TabItem> </TabControl> </Grid> </GroupBox> <GroupBox Grid.Row="4" Grid.Column="1" Grid.ColumnSpan="2" Style="{StaticResource AddParamGroupbox}"> <GroupBox.Header> <CheckBox x:Name="AdditionalParametersCheckBox" Content="Additional Parameters" IsChecked="True" IsThreeState="False" /> </GroupBox.Header> <Grid IsEnabled="{Binding ElementName=AdditionalParametersCheckBox, Path=IsChecked}" Visibility="{Binding ElementName=AdditionalParametersCheckBox, Path=IsChecked, Converter={StaticResource BooleanToVisibilityConverter}}"> <Grid.Resources> <Style x:Key="PoolKey" TargetType="TextBox"> <Setter Property="Margin" Value="5" /> <Style.Triggers> <DataTrigger Binding="{Binding ElementName=PoolContractAddressTextBox, Path=IsEnabled}" Value="True"> <Setter Property="IsEnabled" Value="False" /> </DataTrigger> <DataTrigger Binding="{Binding ElementName=PoolContractAddressTextBox, Path=IsEnabled}" Value="False"> <Setter Property="IsEnabled" Value="True" /> </DataTrigger> </Style.Triggers> </Style> </Grid.Resources> <Grid.ColumnDefinitions> <ColumnDefinition Width="5" /> <ColumnDefinition Width="auto" /> <ColumnDefinition Width="*" /> <ColumnDefinition Width="5" /> </Grid.ColumnDefinitions> <Grid.RowDefinitions> <RowDefinition Height="5" /> <RowDefinition Height="auto" /> <RowDefinition Height="auto" /> <RowDefinition Height="auto" /> <RowDefinition Height="auto" /> <RowDefinition Height="auto" /> <RowDefinition Height="5" /> </Grid.RowDefinitions> <CheckBox x:Name="PoolContractAddressCheckbox" Content="Pool Contract Address: " ToolTip="Used to make portable plots to join pools. Cannot use Pool Public Key when using this parameter." HorizontalAlignment="Right" VerticalAlignment="Center" Grid.Column="1" Grid.Row="1" IsChecked="{Binding Path=NewChiaJob.InitialChiaParameters.PoolContractEnabled}" IsThreeState="False"/> <Label Content="Farmer Public Key:" HorizontalAlignment="Right" Grid.Column="1" Grid.Row="2" /> <Label Content="Pool Public Key:" HorizontalAlignment="Right" Grid.Column="1" Grid.Row="3" /> <CheckBox Content="Alternative Plotter Path: " IsThreeState="False" Grid.Column="1" Grid.Row="4" x:Name="AlternativePlotterCheckbox" IsChecked="{Binding Path=NewChiaJob.InitialChiaParameters.AlternativePlotterEnabled}" HorizontalAlignment="Right" VerticalAlignment="Center" ToolTip="The full path to the alternative plotter .exe file" /> <CheckBox Content="Phase 3/4 Buckets:" HorizontalAlignment="Right" x:Name="Phase3and4BucketsCheckbox" Grid.Column="1" Grid.Row="5" IsThreeState="False" VerticalAlignment="Center" IsChecked="{Binding Path=NewChiaJob.InitialChiaParameters.Phase3and4BucketsEnabled}" ToolTip="Used with stotiks MadMax version v0.0.6 and above" Visibility="{Binding ElementName=AlternativePlotterCheckbox, Path=IsChecked, Converter={StaticResource BooleanToVisibilityConverter}}"/> <TextBox x:Name="PoolContractAddressTextBox" Grid.Row="1" Grid.Column="2" Text="{Binding Path=NewChiaJob.InitialChiaParameters.PoolContractAddress}" VerticalAlignment="Center" HorizontalContentAlignment="Left" IsEnabled="{Binding ElementName=PoolContractAddressCheckbox, Path=IsChecked}"/> <TextBox x:Name="FarmerPublicKeyTextBox" Grid.Row="2" Grid.Column="2" Text="{Binding Path=NewChiaJob.InitialChiaParameters.FarmerPublicKey}" VerticalAlignment="Center" HorizontalContentAlignment="Left"/> <TextBox x:Name="PoolPublicKeyTextBox" Grid.Row="3" Grid.Column="2" Text="{Binding Path=NewChiaJob.InitialChiaParameters.PoolPublicKey}" VerticalAlignment="Center" HorizontalContentAlignment="Left" Style="{StaticResource PoolKey}"/> <TextBox x:Name="AlternativePlotterTextBox" Grid.Row="4" Grid.Column="2" Text="{Binding Path=NewChiaJob.InitialChiaParameters.AlternativePlotterPath}" VerticalAlignment="Center" HorizontalContentAlignment="Left" IsEnabled="{Binding ElementName=AlternativePlotterCheckbox, Path=IsChecked}" /> <TextBox x:Name="Phase3and4Buckets" Grid.Row="5" Grid.Column="2" IsEnabled="{Binding ElementName=Phase3and4BucketsCheckbox, Path=IsChecked}" Text="{Binding Path=NewChiaJob.InitialChiaParameters.PhaseThreeFourBuckets}" VerticalAlignment="Center" HorizontalContentAlignment="Left" Visibility="{Binding ElementName=AlternativePlotterCheckbox, Path=IsChecked, Converter={StaticResource BooleanToVisibilityConverter}}"/> </Grid> </GroupBox> </Grid> </ScrollViewer> <Button x:Name="CreateJob_Button" Content="Start Job" Grid.Column="3" Grid.Row="3" Margin="5"/> <Button x:Name="CancelJobCreation_Button" Content="Cancel" Grid.Column="1" Grid.Row="3" Margin="5"/> <Button x:Name="SaveJob_Button" Content="Save Job" Grid.Column="2" Grid.Row="3" Margin="5"/> </Grid> </Window> |