refactor: remove Plate menu Fill and Fill Area items replaced by Ctrl+F
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
20
OpenNest/Forms/MainForm.Designer.cs
generated
20
OpenNest/Forms/MainForm.Designer.cs
generated
@@ -104,8 +104,6 @@
|
||||
mnuPlateAdd = new System.Windows.Forms.ToolStripMenuItem();
|
||||
mnuPlateRemove = new System.Windows.Forms.ToolStripMenuItem();
|
||||
toolStripMenuItem16 = new System.Windows.Forms.ToolStripSeparator();
|
||||
mnuPlateFill = new System.Windows.Forms.ToolStripMenuItem();
|
||||
toolStripMenuItem9 = new System.Windows.Forms.ToolStripMenuItem();
|
||||
mnuPlateRotate = new System.Windows.Forms.ToolStripMenuItem();
|
||||
mnuPlateRotateCw = new System.Windows.Forms.ToolStripMenuItem();
|
||||
mnuPlateRotateCcw = new System.Windows.Forms.ToolStripMenuItem();
|
||||
@@ -655,7 +653,7 @@
|
||||
//
|
||||
// mnuPlate
|
||||
//
|
||||
mnuPlate.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { mnuPlateEdit, mnuPlateSetAsDefault, toolStripMenuItem18, mnuPlateAdd, mnuPlateRemove, toolStripMenuItem16, mnuPlateFill, toolStripMenuItem9, mnuPlateCutOff, mnuPlateRotate, mnuResizeToFitParts, toolStripMenuItem13, mnuPlateViewInCad, toolStripMenuItem20, mnuSequenceParts, calculateCutTimeToolStripMenuItem1, centerPartsToolStripMenuItem });
|
||||
mnuPlate.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { mnuPlateEdit, mnuPlateSetAsDefault, toolStripMenuItem18, mnuPlateAdd, mnuPlateRemove, toolStripMenuItem16, mnuPlateCutOff, mnuPlateRotate, mnuResizeToFitParts, toolStripMenuItem13, mnuPlateViewInCad, toolStripMenuItem20, mnuSequenceParts, calculateCutTimeToolStripMenuItem1, centerPartsToolStripMenuItem });
|
||||
mnuPlate.Name = "mnuPlate";
|
||||
mnuPlate.Size = new System.Drawing.Size(45, 20);
|
||||
mnuPlate.Text = "&Plate";
|
||||
@@ -699,20 +697,6 @@
|
||||
//
|
||||
toolStripMenuItem16.Name = "toolStripMenuItem16";
|
||||
toolStripMenuItem16.Size = new System.Drawing.Size(174, 6);
|
||||
//
|
||||
// mnuPlateFill
|
||||
//
|
||||
mnuPlateFill.Name = "mnuPlateFill";
|
||||
mnuPlateFill.Size = new System.Drawing.Size(177, 22);
|
||||
mnuPlateFill.Text = "Fill";
|
||||
mnuPlateFill.Click += FillPlate_Click;
|
||||
//
|
||||
// toolStripMenuItem9
|
||||
//
|
||||
toolStripMenuItem9.Name = "toolStripMenuItem9";
|
||||
toolStripMenuItem9.Size = new System.Drawing.Size(177, 22);
|
||||
toolStripMenuItem9.Text = "Fill Area";
|
||||
toolStripMenuItem9.Click += FillArea_Click;
|
||||
//
|
||||
// mnuPlateCutOff
|
||||
//
|
||||
@@ -1235,7 +1219,6 @@
|
||||
private System.Windows.Forms.ToolStripButton btnZoomIn;
|
||||
private System.Windows.Forms.ToolStripStatusLabel statusLabel1;
|
||||
private System.Windows.Forms.ToolStripStatusLabel spacerLabel;
|
||||
private System.Windows.Forms.ToolStripMenuItem mnuPlateFill;
|
||||
private System.Windows.Forms.ToolStripSeparator toolStripMenuItem18;
|
||||
private System.Windows.Forms.ToolStripMenuItem mnuPlateRemove;
|
||||
private System.Windows.Forms.ToolStripButton btnSave;
|
||||
@@ -1246,7 +1229,6 @@
|
||||
private System.Windows.Forms.ToolStripMenuItem mnuSequenceParts;
|
||||
private System.Windows.Forms.ToolStripMenuItem closeToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripMenuItem runAutoNestToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripMenuItem toolStripMenuItem9;
|
||||
private System.Windows.Forms.ToolStripMenuItem autoSequenceCurrentPlateToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripMenuItem manualSequenceToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripMenuItem autoSequenceAllPlatesToolStripMenuItem;
|
||||
|
||||
@@ -1026,127 +1026,6 @@ namespace OpenNest.Forms
|
||||
activeForm.SetCurrentPlateAsNestDefault();
|
||||
}
|
||||
|
||||
private async void FillPlate_Click(object sender, EventArgs e)
|
||||
{
|
||||
if (activeForm == null)
|
||||
return;
|
||||
|
||||
if (activeForm.Nest.Drawings.Count == 0)
|
||||
return;
|
||||
|
||||
var form = new FillPlateForm(activeForm.Nest.Drawings);
|
||||
form.ShowDialog();
|
||||
|
||||
var drawing = form.SelectedDrawing;
|
||||
|
||||
if (drawing == null)
|
||||
return;
|
||||
|
||||
nestingCts = new CancellationTokenSource();
|
||||
var token = nestingCts.Token;
|
||||
|
||||
var progressForm = new NestProgressForm(nestingCts, showPlateRow: false);
|
||||
|
||||
var progress = new Progress<NestProgress>(p =>
|
||||
{
|
||||
progressForm.UpdateProgress(p);
|
||||
|
||||
if (p.IsOverallBest)
|
||||
activeForm.PlateView.SetStationaryParts(p.BestParts);
|
||||
else
|
||||
activeForm.PlateView.SetActiveParts(p.BestParts);
|
||||
|
||||
activeForm.PlateView.ActiveWorkArea = p.ActiveWorkArea;
|
||||
});
|
||||
|
||||
progressForm.Show(this);
|
||||
SetNestingLockout(true);
|
||||
|
||||
try
|
||||
{
|
||||
var plate = activeForm.PlateView.Plate;
|
||||
var engine = NestEngineRegistry.Create(plate);
|
||||
|
||||
var parts = await Task.Run(() =>
|
||||
engine.Fill(new NestItem { Drawing = drawing },
|
||||
plate.WorkArea(), progress, token));
|
||||
|
||||
if (parts.Count > 0)
|
||||
activeForm.PlateView.AcceptPreviewParts(parts);
|
||||
else
|
||||
activeForm.PlateView.ClearPreviewParts();
|
||||
|
||||
progressForm.ShowCompleted();
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
activeForm.PlateView.ClearPreviewParts();
|
||||
MessageBox.Show($"Nesting error: {ex.Message}", "Error",
|
||||
MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||
}
|
||||
finally
|
||||
{
|
||||
activeForm.PlateView.ActiveWorkArea = null;
|
||||
progressForm.Close();
|
||||
SetNestingLockout(false);
|
||||
nestingCts.Dispose();
|
||||
nestingCts = null;
|
||||
}
|
||||
}
|
||||
|
||||
private void FillArea_Click(object sender, EventArgs e)
|
||||
{
|
||||
if (activeForm == null)
|
||||
return;
|
||||
|
||||
if (activeForm.Nest.Drawings.Count == 0)
|
||||
return;
|
||||
|
||||
var form = new FillPlateForm(activeForm.Nest.Drawings);
|
||||
form.ShowDialog();
|
||||
|
||||
var drawing = form.SelectedDrawing;
|
||||
|
||||
if (drawing == null)
|
||||
return;
|
||||
|
||||
nestingCts = new CancellationTokenSource();
|
||||
|
||||
var progressForm = new NestProgressForm(nestingCts, showPlateRow: false);
|
||||
|
||||
var progress = new Progress<NestProgress>(p =>
|
||||
{
|
||||
progressForm.UpdateProgress(p);
|
||||
|
||||
if (p.IsOverallBest)
|
||||
activeForm.PlateView.SetStationaryParts(p.BestParts);
|
||||
else
|
||||
activeForm.PlateView.SetActiveParts(p.BestParts);
|
||||
|
||||
activeForm.PlateView.ActiveWorkArea = p.ActiveWorkArea;
|
||||
});
|
||||
|
||||
Action<List<Part>> onComplete = parts =>
|
||||
{
|
||||
if (parts != null && parts.Count > 0)
|
||||
activeForm.PlateView.AcceptPreviewParts(parts);
|
||||
else
|
||||
activeForm.PlateView.ClearPreviewParts();
|
||||
|
||||
activeForm.PlateView.ActiveWorkArea = null;
|
||||
progressForm.Close();
|
||||
SetNestingLockout(false);
|
||||
nestingCts.Dispose();
|
||||
nestingCts = null;
|
||||
};
|
||||
|
||||
progressForm.Show(this);
|
||||
SetNestingLockout(true);
|
||||
|
||||
activeForm.PlateView.SetAction(typeof(ActionFillArea),
|
||||
drawing, progress, nestingCts, onComplete);
|
||||
}
|
||||
|
||||
private void AddPlate_Click(object sender, EventArgs e)
|
||||
{
|
||||
if (activeForm == null) return;
|
||||
|
||||
Reference in New Issue
Block a user