Files
UVtools/UVtools.WPF/Controls/Tools/ToolPCBExposureControl.axaml
T
Tiago Conceição 0805133048 v3.5.6
- **Tools**
   - **PCB Exposure:**
      - (Add) Able to choose the size midpoint rounding method (#520)
      - (Fix) Allow to flash alone D03 commands (#520)
      - (Fix) Correct line thickness to have at least 1px error (#523)
   - (Improvement) Layer arithmetic: Use ; to split and start a new arithmetic operation
- (Add) Cmd: Convert command now allow to pass 'auto' as target type to auto convert specific files, valid for SL1 files configured with FILEFORMAT_xxx (#522)
- (Add) GCode: Command to sync and wait for movement completion [Only enabled for cws format] (#514)
- (Add) VDT: Transition layer count
- (Upgrade) AvaloniaUI from 0.10.16 to 0.10.17
2022-07-29 18:10:48 +01:00

135 lines
6.1 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:i="clr-namespace:Projektanker.Icons.Avalonia;assembly=Projektanker.Icons.Avalonia"
xmlns:controls="clr-namespace:UVtools.WPF.Controls"
mc:Ignorable="d" d:DesignWidth="800" d:DesignHeight="450"
x:Class="UVtools.WPF.Controls.Tools.ToolPCBExposureControl">
<Grid ColumnDefinitions="Auto,10,350">
<StackPanel Spacing="10">
<Border BorderBrush="Gray" BorderThickness="1" Padding="5">
<Grid>
<StackPanel Spacing="5" Orientation="Horizontal">
<controls:ButtonWithIcon Padding="5"
Command="{Binding AddFiles}"
Text="Add"
Spacing="5"
Icon="fa-solid fa-plus"/>
<controls:ButtonWithIcon Padding="5"
Command="{Binding AddFilesFromZip}"
Text="Import zip"
Spacing="5"
Icon="fa-solid fa-file-zipper"/>
<controls:ButtonWithIcon Padding="5"
IsEnabled="{Binding #FilesListBox.SelectedItems.Count}"
Command="{Binding RemoveFiles}"
Text="Remove"
Spacing="5"
Icon="fa-solid fa-minus"/>
</StackPanel>
<StackPanel HorizontalAlignment="Right"
Spacing="5" Orientation="Horizontal">
<!--
<controls:ButtonWithIcon Padding="5"
IsEnabled="{Binding Operation.Files.Count}"
Command="{Binding Operation.Sort}"
Text="Sort by file name"
Spacing="5"
Icon="fa-solid fa-sort-alpha-up"/>
-->
<controls:ButtonWithIcon
IsEnabled="{Binding Operation.Files.Count}"
Padding="5" Command="{Binding ClearFiles}"
Text="Clear"
Spacing="5"
Icon="fa-solid fa-xmark"/>
<TextBlock
VerticalAlignment="Center"
Text="{Binding Operation.Files.Count, StringFormat=Files: \{0\}}"/>
</StackPanel>
</Grid>
</Border>
<ListBox Name="FilesListBox"
SelectionMode="Multiple"
SelectedItem="{Binding SelectedFile}"
MinHeight="50"
MaxHeight="400"
Items="{Binding Operation.Files}" />
<Grid RowDefinitions="Auto,10,Auto,10,Auto,10,Auto,10,Auto"
ColumnDefinitions="Auto,10,400">
<ToggleSwitch Grid.Row="0" Grid.Column="2"
IsChecked="{Binding Operation.MergeFiles}"
OnContent="Merge all gerber files into one layer"
OffContent="Create one layer per gerber file"/>
<TextBlock Grid.Row="2" Grid.Column="0"
VerticalAlignment="Center"
Text="Layer height:"/>
<NumericUpDown Grid.Row="2" Grid.Column="2"
Classes="ValueLabel ValueLabel_mm"
Increment="0.01"
Minimum="0.01"
Maximum="500"
FormatString="F3"
Value="{Binding Operation.LayerHeight}"/>
<TextBlock Grid.Row="4" Grid.Column="0"
VerticalAlignment="Center"
Text="Exposure time:"/>
<NumericUpDown Grid.Row="4" Grid.Column="2"
Classes="ValueLabel ValueLabel_s"
Increment="0.5"
Minimum="0.1"
Maximum="200"
FormatString="F2"
Value="{Binding Operation.ExposureTime}"/>
<TextBlock Grid.Row="6" Grid.Column="0"
VerticalAlignment="Center"
Text="Size rounding:"/>
<ComboBox Grid.Row="6" Grid.Column="2"
HorizontalAlignment="Stretch"
Items="{Binding Operation.SizeMidpointRounding, Converter={StaticResource EnumToCollectionConverter}, Mode=OneTime}"
SelectedItem="{Binding Operation.SizeMidpointRounding, Converter={StaticResource FromValueDescriptionToEnumConverter}}"/>
<StackPanel Grid.Row="8" Grid.Column="2"
Orientation="Horizontal" Spacing="20">
<CheckBox VerticalAlignment="Center"
IsChecked="{Binding Operation.Mirror}"
Content="Mirror"/>
<CheckBox VerticalAlignment="Center"
IsChecked="{Binding Operation.InvertColor}"
Content="Invert color"/>
<CheckBox VerticalAlignment="Center"
IsChecked="{Binding Operation.EnableAntiAliasing}"
Content="Enable Anti-Aliasing"/>
</StackPanel>
</Grid>
</StackPanel>
<StackPanel Grid.Column="2" Orientation="Vertical" Spacing="10">
<Image Stretch="Uniform"
Source="{Binding PreviewImage}"/>
<TextBlock Text="{Binding PreviewImage.Size, StringFormat=Size: {0}}" HorizontalAlignment="Center"/>
</StackPanel>
</Grid>
</UserControl>