feat: 二钻涨缩系数记忆,载入上次系数

涨缩完成后将模式与系数写入 %LocalAppData%\DrillTools\scaling.ini,涨缩窗口新增"载入上次系数"按钮实时读取回填。每次完成涨缩覆盖更新,只保留最新一条记录(含源文件名追溯)。ini 使用 UTF-8 无 BOM,损坏时容错返回空。
This commit is contained in:
2026-06-14 12:16:17 +08:00
parent 906de9e265
commit 29c7be3fac
4 changed files with 181 additions and 5 deletions

View File

@@ -208,10 +208,10 @@ namespace DrillTools
if (scalingWindow.ScalingResult == null)
return;
var (kx, ky) = scalingWindow.ScalingResult.Value;
var result = scalingWindow.ScalingResult.Value;
string content = CommandTypeFileReader.ReadAllText(filePath);
string scaledContent = Integration.ExcellonScaler.Scale(content, kx, ky);
string scaledContent = Integration.ExcellonScaler.Scale(content, result.Kx, result.Ky);
// 备份原文件
string backupFilePath = filePath + ".bak";
@@ -226,6 +226,19 @@ namespace DrillTools
"涨缩完成",
MessageBoxButton.OK,
MessageBoxImage.Information);
// 系数记忆:将本次模式与原始输入连同源文件名写入 ini供下次载入。
// 属辅助功能,失败不回滚已完成的涨缩,单独提示。
try
{
ScalingProfileStore.Save(result.Mode, result.InputX, result.InputY, Path.GetFileName(filePath));
}
catch (Exception ex)
{
System.Windows.MessageBox.Show(
$"系数记忆保存失败:\n{ex.Message}\n本次涨缩已完成不影响结果。",
"系数记忆", MessageBoxButton.OK, MessageBoxImage.Warning);
}
}
catch (Exception ex)
{