diff --git a/App.xaml.cs b/App.xaml.cs
index 903f2e9..6822a27 100644
--- a/App.xaml.cs
+++ b/App.xaml.cs
@@ -36,7 +36,8 @@ namespace DrillTools
bool canClearParameters = CanClearDrillTapeParameters(filePath);
bool canGeneratePpDrillTape = CanGeneratePpDrillTape(filePath);
- var selectionWindow = new StartupSelectionWindow(filePath, canClearParameters, canGeneratePpDrillTape);
+ GetMinDiameters(filePath, out double minDrill, out double minSlot, out double minEA);
+ var selectionWindow = new StartupSelectionWindow(filePath, canClearParameters, canGeneratePpDrillTape, minDrill, minSlot, minEA);
selectionWindow.ShowDialog();
switch (selectionWindow.SelectedAction)
@@ -144,6 +145,34 @@ namespace DrillTools
}
}
+ private static void GetMinDiameters(string filePath, out double minDrillDiameter, out double minSlotDiameter, out double minEADiameter)
+ {
+ minDrillDiameter = 0;
+ minSlotDiameter = 0;
+ minEADiameter = 0;
+
+ try
+ {
+ var viewModel = new MainWindowViewModel
+ {
+ ShouldCheckSortFileOnLoad = false
+ };
+
+ string content = CommandTypeFileReader.ReadAllText(filePath);
+ viewModel.LoadToolsFromDrillTape(content);
+
+ if (viewModel.Tools.Count > 0)
+ {
+ minDrillDiameter = viewModel.MinDrillDiameter;
+ minSlotDiameter = viewModel.MinSlotDiameter;
+ minEADiameter = viewModel.MinEADiameter;
+ }
+ }
+ catch
+ {
+ }
+ }
+
private static void PerformPpDrillTapeGeneration(string filePath)
{
try
diff --git a/StartupSelectionWindow.xaml b/StartupSelectionWindow.xaml
index e5d91f1..63c5022 100644
--- a/StartupSelectionWindow.xaml
+++ b/StartupSelectionWindow.xaml
@@ -13,7 +13,57 @@
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/StartupSelectionWindow.xaml.cs b/StartupSelectionWindow.xaml.cs
index b2152f4..0458fb8 100644
--- a/StartupSelectionWindow.xaml.cs
+++ b/StartupSelectionWindow.xaml.cs
@@ -16,10 +16,17 @@ namespace DrillTools
{
public StartupAction SelectedAction { get; private set; } = StartupAction.None;
- public StartupSelectionWindow(string filePath, bool canClearParameters = false, bool canGeneratePpDrillTape = false)
+ public StartupSelectionWindow(string filePath, bool canClearParameters = false, bool canGeneratePpDrillTape = false,
+ double minDrillDiameter = 0, double minSlotDiameter = 0, double minEADiameter = 0)
{
InitializeComponent();
- DataContext = new { FileName = Path.GetFileName(filePath) };
+ DataContext = new
+ {
+ FileName = Path.GetFileNameWithoutExtension(filePath),
+ MinDrillDiameter = minDrillDiameter,
+ MinSlotDiameter = minSlotDiameter,
+ MinEADiameter = minEADiameter
+ };
ClearParametersButton.Visibility = canClearParameters ? Visibility.Visible : Visibility.Collapsed;
GeneratePpDrillTapeButton.Visibility = canGeneratePpDrillTape ? Visibility.Visible : Visibility.Collapsed;
}