Files
AohDrllTools/StartupSelectionWindow.xaml.cs
2026-05-25 10:15:42 +08:00

67 lines
2.3 KiB
C#

using System.IO;
using System.Windows;
namespace DrillTools
{
public enum StartupAction
{
None,
AdjustToolOrder,
ExportHoleCount,
ClearParameters,
GeneratePpDrillTape
}
public partial class StartupSelectionWindow : Window
{
public StartupAction SelectedAction { get; private set; } = StartupAction.None;
public StartupSelectionWindow(string filePath, bool canClearParameters = false, bool canGeneratePpDrillTape = false,
double minDrillDiameter = 0, double minSlotDiameter = 0, double minEADiameter = 0,
bool isPpDrillTape = false, double ppXSpacing = 0, double ppYSpacing = 0,
bool hasOuter3175Spacing = false, double outer3175XSpacing = 0, double outer3175YSpacing = 0)
{
InitializeComponent();
DataContext = new
{
FileName = Path.GetFileNameWithoutExtension(filePath),
MinDrillDiameter = minDrillDiameter,
MinSlotDiameter = minSlotDiameter,
MinEADiameter = minEADiameter,
IsPpDrillTape = isPpDrillTape,
PpXSpacing = ppXSpacing,
PpYSpacing = ppYSpacing,
HasOuter3175Spacing = hasOuter3175Spacing,
Outer3175XSpacing = outer3175XSpacing,
Outer3175YSpacing = outer3175YSpacing
};
ClearParametersButton.Visibility = canClearParameters ? Visibility.Visible : Visibility.Collapsed;
GeneratePpDrillTapeButton.Visibility = canGeneratePpDrillTape ? Visibility.Visible : Visibility.Collapsed;
}
private void AdjustToolOrder_Click(object sender, RoutedEventArgs e)
{
SelectedAction = StartupAction.AdjustToolOrder;
Close();
}
private void ExportHoleCount_Click(object sender, RoutedEventArgs e)
{
SelectedAction = StartupAction.ExportHoleCount;
Close();
}
private void ClearParameters_Click(object sender, RoutedEventArgs e)
{
SelectedAction = StartupAction.ClearParameters;
Close();
}
private void GeneratePpDrillTape_Click(object sender, RoutedEventArgs e)
{
SelectedAction = StartupAction.GeneratePpDrillTape;
Close();
}
}
}