mirror of
https://github.com/riegera2412/UVtools.git
synced 2026-07-08 17:42:31 +02:00
Cleanup fixes and import layer GUI preparation
This commit is contained in:
+4
-1
@@ -8,9 +8,12 @@
|
||||
* (Add) Layer issue Z map paired with layer navigation tracker bar
|
||||
* (Change) Shortcuts: + and - to go up and down on layers were change to W and S keys. Reason: + and - are bound to zoom and can lead to problems
|
||||
* (Upgrade) OpenCV from 4.2 to 4.3
|
||||
* (Remove) Menu - Tools - Layer Removal and Layer clone for redudancy they now home at layer preview toolbar under "Actions" dropdown button
|
||||
* (Fix) CWS: Add missing Platform X,Y,Z size when converting from SL1
|
||||
* (Fix) CWS: Invert XY resolution when converting from SL1
|
||||
* (Fix) Layer Preview: When selecting issues using SHIFT in the layer preview, the selected issue doesn't update in the issue list until after shift is released
|
||||
* (Fix) Layer Preview: When selecting issues using SHIFT in the layer preview, the selected issue doesn't update in the issue list until after shift is released and slow operation
|
||||
* (Fix) PrusaSlicer Printer: Kelant S400 Y Resolution from 1440 to 1600 and default slice settings, inverted XY resolution
|
||||
* (Fix) Layer Clone window title was set to Pattern
|
||||
|
||||
## 04/08/2020 - v0.7.0.0
|
||||
|
||||
|
||||
@@ -39,7 +39,7 @@ namespace UVtools.GUI.Controls
|
||||
|
||||
public TrackBarHighlight()
|
||||
{
|
||||
SetStyle(ControlStyles.OptimizedDoubleBuffer | ControlStyles.DoubleBuffer | ControlStyles.ResizeRedraw, true);
|
||||
//SetStyle(ControlStyles.OptimizedDoubleBuffer | ControlStyles.DoubleBuffer | ControlStyles.ResizeRedraw, true);
|
||||
}
|
||||
|
||||
/*protected override void OnInvalidated(InvalidateEventArgs e)
|
||||
|
||||
+1
-1
@@ -282,7 +282,7 @@ namespace UVtools.GUI.Forms
|
||||
this.Name = "FrmToolLayerClone";
|
||||
this.SizeGripStyle = System.Windows.Forms.SizeGripStyle.Hide;
|
||||
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
|
||||
this.Text = "Pattern";
|
||||
this.Text = "Clone layer";
|
||||
this.TopMost = true;
|
||||
((System.ComponentModel.ISupportInitialize)(this.nmLayerRangeStart)).EndInit();
|
||||
((System.ComponentModel.ISupportInitialize)(this.nmLayerRangeEnd)).EndInit();
|
||||
|
||||
Generated
+192
-169
@@ -70,27 +70,29 @@ namespace UVtools.GUI
|
||||
this.scCenter = new System.Windows.Forms.SplitContainer();
|
||||
this.pbLayer = new Cyotek.Windows.Forms.ImageBox();
|
||||
this.tsLayer = new System.Windows.Forms.ToolStrip();
|
||||
this.tsLayerImageExport = new System.Windows.Forms.ToolStripSplitButton();
|
||||
this.tsLayerImageExportFile = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.tsLayerImageExportClipboard = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.tsLayerImageRotate = new System.Windows.Forms.ToolStripButton();
|
||||
this.btnLayerImageExport = new System.Windows.Forms.ToolStripSplitButton();
|
||||
this.btnLayerImageExportFile = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.btnLayerImageExportClipboard = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.btnLayerImageRotate = new System.Windows.Forms.ToolStripButton();
|
||||
this.toolStripSeparator5 = new System.Windows.Forms.ToolStripSeparator();
|
||||
this.tsLayerImageLayerDifference = new System.Windows.Forms.ToolStripButton();
|
||||
this.btnLayerImageLayerDifference = new System.Windows.Forms.ToolStripButton();
|
||||
this.toolStripSeparator14 = new System.Windows.Forms.ToolStripSeparator();
|
||||
this.tsLayerImageHighlightIssues = new System.Windows.Forms.ToolStripButton();
|
||||
this.btnLayerImageHighlightIssues = new System.Windows.Forms.ToolStripButton();
|
||||
this.toolStripSeparator7 = new System.Windows.Forms.ToolStripSeparator();
|
||||
this.tsLayerImageShowCrosshairs = new System.Windows.Forms.ToolStripButton();
|
||||
this.btnLayerImageShowCrosshairs = new System.Windows.Forms.ToolStripButton();
|
||||
this.toolStripSeparator25 = new System.Windows.Forms.ToolStripSeparator();
|
||||
this.tsLayerImageLayerOutline = new System.Windows.Forms.ToolStripSplitButton();
|
||||
this.tsLayerImageLayerOutlinePrintVolumeBounds = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.tsLayerImageLayerOutlineLayerBounds = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.tsLayerImageLayerOutlineHollowAreas = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.tsLayerImageLayerOutlineEdgeDetection = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.btnLayerImageLayerOutline = new System.Windows.Forms.ToolStripSplitButton();
|
||||
this.btnLayerImageLayerOutlinePrintVolumeBounds = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.btnLayerImageLayerOutlineLayerBounds = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.btnLayerImageLayerOutlineHollowAreas = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.btnLayerImageLayerOutlineEdgeDetection = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.toolStripSeparator9 = new System.Windows.Forms.ToolStripSeparator();
|
||||
this.tsLayerImagePixelEdit = new System.Windows.Forms.ToolStripButton();
|
||||
this.btnLayerImagePixelEdit = new System.Windows.Forms.ToolStripButton();
|
||||
this.toolStripSeparator18 = new System.Windows.Forms.ToolStripSeparator();
|
||||
this.tsLayerRmove = new System.Windows.Forms.ToolStripButton();
|
||||
this.tsLayerClone = new System.Windows.Forms.ToolStripButton();
|
||||
this.btnLayerImageActions = new System.Windows.Forms.ToolStripSplitButton();
|
||||
this.btnLayerImageActionImport = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.btnLayerImageActionClone = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.btnLayerImageActionRemove = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.tsLayerInfo = new System.Windows.Forms.ToolStrip();
|
||||
this.tsLayerPreviewTime = new System.Windows.Forms.ToolStripLabel();
|
||||
this.toolStripSeparator6 = new System.Windows.Forms.ToolStripSeparator();
|
||||
@@ -535,6 +537,7 @@ namespace UVtools.GUI
|
||||
this.menuToolsLayerClone.Name = "menuToolsLayerClone";
|
||||
this.menuToolsLayerClone.Size = new System.Drawing.Size(261, 22);
|
||||
this.menuToolsLayerClone.Text = "Layer &Clone";
|
||||
this.menuToolsLayerClone.Visible = false;
|
||||
this.menuToolsLayerClone.Click += new System.EventHandler(this.EventClick);
|
||||
//
|
||||
// menuToolsLayerRemoval
|
||||
@@ -544,6 +547,7 @@ namespace UVtools.GUI
|
||||
this.menuToolsLayerRemoval.Name = "menuToolsLayerRemoval";
|
||||
this.menuToolsLayerRemoval.Size = new System.Drawing.Size(261, 22);
|
||||
this.menuToolsLayerRemoval.Text = "Layer Re&moval";
|
||||
this.menuToolsLayerRemoval.Visible = false;
|
||||
this.menuToolsLayerRemoval.Click += new System.EventHandler(this.EventClick);
|
||||
//
|
||||
// menuToolsPattern
|
||||
@@ -704,191 +708,190 @@ namespace UVtools.GUI
|
||||
//
|
||||
this.tsLayer.GripStyle = System.Windows.Forms.ToolStripGripStyle.Hidden;
|
||||
this.tsLayer.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||
this.tsLayerImageExport,
|
||||
this.tsLayerImageRotate,
|
||||
this.btnLayerImageExport,
|
||||
this.btnLayerImageRotate,
|
||||
this.toolStripSeparator5,
|
||||
this.tsLayerImageLayerDifference,
|
||||
this.btnLayerImageLayerDifference,
|
||||
this.toolStripSeparator14,
|
||||
this.tsLayerImageHighlightIssues,
|
||||
this.btnLayerImageHighlightIssues,
|
||||
this.toolStripSeparator7,
|
||||
this.tsLayerImageShowCrosshairs,
|
||||
this.btnLayerImageShowCrosshairs,
|
||||
this.toolStripSeparator25,
|
||||
this.tsLayerImageLayerOutline,
|
||||
this.btnLayerImageLayerOutline,
|
||||
this.toolStripSeparator9,
|
||||
this.tsLayerImagePixelEdit,
|
||||
this.btnLayerImagePixelEdit,
|
||||
this.toolStripSeparator18,
|
||||
this.tsLayerRmove,
|
||||
this.tsLayerClone});
|
||||
this.btnLayerImageActions});
|
||||
this.tsLayer.Location = new System.Drawing.Point(0, 0);
|
||||
this.tsLayer.Name = "tsLayer";
|
||||
this.tsLayer.Size = new System.Drawing.Size(1176, 25);
|
||||
this.tsLayer.TabIndex = 6;
|
||||
this.tsLayer.Text = "Layer Menu";
|
||||
//
|
||||
// tsLayerImageExport
|
||||
// btnLayerImageExport
|
||||
//
|
||||
this.tsLayerImageExport.Alignment = System.Windows.Forms.ToolStripItemAlignment.Right;
|
||||
this.tsLayerImageExport.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
|
||||
this.tsLayerImageExport.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||
this.tsLayerImageExportFile,
|
||||
this.tsLayerImageExportClipboard});
|
||||
this.tsLayerImageExport.Image = global::UVtools.GUI.Properties.Resources.Save_16x16;
|
||||
this.tsLayerImageExport.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||
this.tsLayerImageExport.Name = "tsLayerImageExport";
|
||||
this.tsLayerImageExport.Size = new System.Drawing.Size(32, 22);
|
||||
this.tsLayerImageExport.Text = "Save to";
|
||||
this.tsLayerImageExport.ToolTipText = "Save layer image to a file or clipboard";
|
||||
this.tsLayerImageExport.ButtonClick += new System.EventHandler(this.EventClick);
|
||||
this.btnLayerImageExport.Alignment = System.Windows.Forms.ToolStripItemAlignment.Right;
|
||||
this.btnLayerImageExport.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
|
||||
this.btnLayerImageExport.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||
this.btnLayerImageExportFile,
|
||||
this.btnLayerImageExportClipboard});
|
||||
this.btnLayerImageExport.Image = global::UVtools.GUI.Properties.Resources.Save_16x16;
|
||||
this.btnLayerImageExport.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||
this.btnLayerImageExport.Name = "btnLayerImageExport";
|
||||
this.btnLayerImageExport.Size = new System.Drawing.Size(32, 22);
|
||||
this.btnLayerImageExport.Text = "Save to";
|
||||
this.btnLayerImageExport.ToolTipText = "Save layer image to a file or clipboard";
|
||||
this.btnLayerImageExport.ButtonClick += new System.EventHandler(this.EventClick);
|
||||
//
|
||||
// tsLayerImageExportFile
|
||||
// btnLayerImageExportFile
|
||||
//
|
||||
this.tsLayerImageExportFile.Image = global::UVtools.GUI.Properties.Resources.file_image_16x16;
|
||||
this.tsLayerImageExportFile.Name = "tsLayerImageExportFile";
|
||||
this.tsLayerImageExportFile.Size = new System.Drawing.Size(141, 22);
|
||||
this.tsLayerImageExportFile.Text = "To &File";
|
||||
this.tsLayerImageExportFile.Click += new System.EventHandler(this.EventClick);
|
||||
this.btnLayerImageExportFile.Image = global::UVtools.GUI.Properties.Resources.file_image_16x16;
|
||||
this.btnLayerImageExportFile.Name = "btnLayerImageExportFile";
|
||||
this.btnLayerImageExportFile.Size = new System.Drawing.Size(141, 22);
|
||||
this.btnLayerImageExportFile.Text = "To &File";
|
||||
this.btnLayerImageExportFile.Click += new System.EventHandler(this.EventClick);
|
||||
//
|
||||
// tsLayerImageExportClipboard
|
||||
// btnLayerImageExportClipboard
|
||||
//
|
||||
this.tsLayerImageExportClipboard.Image = global::UVtools.GUI.Properties.Resources.clipboard_16x16;
|
||||
this.tsLayerImageExportClipboard.Name = "tsLayerImageExportClipboard";
|
||||
this.tsLayerImageExportClipboard.Size = new System.Drawing.Size(141, 22);
|
||||
this.tsLayerImageExportClipboard.Text = "To &Clipboard";
|
||||
this.tsLayerImageExportClipboard.Click += new System.EventHandler(this.EventClick);
|
||||
this.btnLayerImageExportClipboard.Image = global::UVtools.GUI.Properties.Resources.clipboard_16x16;
|
||||
this.btnLayerImageExportClipboard.Name = "btnLayerImageExportClipboard";
|
||||
this.btnLayerImageExportClipboard.Size = new System.Drawing.Size(141, 22);
|
||||
this.btnLayerImageExportClipboard.Text = "To &Clipboard";
|
||||
this.btnLayerImageExportClipboard.Click += new System.EventHandler(this.EventClick);
|
||||
//
|
||||
// tsLayerImageRotate
|
||||
// btnLayerImageRotate
|
||||
//
|
||||
this.tsLayerImageRotate.Checked = true;
|
||||
this.tsLayerImageRotate.CheckOnClick = true;
|
||||
this.tsLayerImageRotate.CheckState = System.Windows.Forms.CheckState.Checked;
|
||||
this.tsLayerImageRotate.Image = global::UVtools.GUI.Properties.Resources.Rotate_16x16;
|
||||
this.tsLayerImageRotate.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||
this.tsLayerImageRotate.Name = "tsLayerImageRotate";
|
||||
this.tsLayerImageRotate.Size = new System.Drawing.Size(117, 22);
|
||||
this.tsLayerImageRotate.Text = "&Rotate Image 90º";
|
||||
this.tsLayerImageRotate.ToolTipText = "Auto rotate layer preview image at 90º (This can slow down the layer preview) [CT" +
|
||||
this.btnLayerImageRotate.Checked = true;
|
||||
this.btnLayerImageRotate.CheckOnClick = true;
|
||||
this.btnLayerImageRotate.CheckState = System.Windows.Forms.CheckState.Checked;
|
||||
this.btnLayerImageRotate.Image = global::UVtools.GUI.Properties.Resources.Rotate_16x16;
|
||||
this.btnLayerImageRotate.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||
this.btnLayerImageRotate.Name = "btnLayerImageRotate";
|
||||
this.btnLayerImageRotate.Size = new System.Drawing.Size(117, 22);
|
||||
this.btnLayerImageRotate.Text = "&Rotate Image 90º";
|
||||
this.btnLayerImageRotate.ToolTipText = "Auto rotate layer preview image at 90º (This can slow down the layer preview) [CT" +
|
||||
"RL+R]";
|
||||
this.tsLayerImageRotate.Click += new System.EventHandler(this.EventClick);
|
||||
this.btnLayerImageRotate.Click += new System.EventHandler(this.EventClick);
|
||||
//
|
||||
// toolStripSeparator5
|
||||
//
|
||||
this.toolStripSeparator5.Name = "toolStripSeparator5";
|
||||
this.toolStripSeparator5.Size = new System.Drawing.Size(6, 25);
|
||||
//
|
||||
// tsLayerImageLayerDifference
|
||||
// btnLayerImageLayerDifference
|
||||
//
|
||||
this.tsLayerImageLayerDifference.CheckOnClick = true;
|
||||
this.tsLayerImageLayerDifference.Image = global::UVtools.GUI.Properties.Resources.layers_16x16;
|
||||
this.tsLayerImageLayerDifference.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||
this.tsLayerImageLayerDifference.Name = "tsLayerImageLayerDifference";
|
||||
this.tsLayerImageLayerDifference.Size = new System.Drawing.Size(81, 22);
|
||||
this.tsLayerImageLayerDifference.Text = "&Difference";
|
||||
this.tsLayerImageLayerDifference.ToolTipText = "Show layer differences where daker pixels were also present on previous layer and" +
|
||||
this.btnLayerImageLayerDifference.CheckOnClick = true;
|
||||
this.btnLayerImageLayerDifference.Image = global::UVtools.GUI.Properties.Resources.layers_16x16;
|
||||
this.btnLayerImageLayerDifference.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||
this.btnLayerImageLayerDifference.Name = "btnLayerImageLayerDifference";
|
||||
this.btnLayerImageLayerDifference.Size = new System.Drawing.Size(81, 22);
|
||||
this.btnLayerImageLayerDifference.Text = "&Difference";
|
||||
this.btnLayerImageLayerDifference.ToolTipText = "Show layer differences where daker pixels were also present on previous layer and" +
|
||||
" the white pixels the difference between previous and current layer.";
|
||||
this.tsLayerImageLayerDifference.Click += new System.EventHandler(this.EventClick);
|
||||
this.btnLayerImageLayerDifference.Click += new System.EventHandler(this.EventClick);
|
||||
//
|
||||
// toolStripSeparator14
|
||||
//
|
||||
this.toolStripSeparator14.Name = "toolStripSeparator14";
|
||||
this.toolStripSeparator14.Size = new System.Drawing.Size(6, 25);
|
||||
//
|
||||
// tsLayerImageHighlightIssues
|
||||
// btnLayerImageHighlightIssues
|
||||
//
|
||||
this.tsLayerImageHighlightIssues.Checked = true;
|
||||
this.tsLayerImageHighlightIssues.CheckOnClick = true;
|
||||
this.tsLayerImageHighlightIssues.CheckState = System.Windows.Forms.CheckState.Checked;
|
||||
this.tsLayerImageHighlightIssues.Image = global::UVtools.GUI.Properties.Resources.warning_16x16;
|
||||
this.tsLayerImageHighlightIssues.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||
this.tsLayerImageHighlightIssues.Name = "tsLayerImageHighlightIssues";
|
||||
this.tsLayerImageHighlightIssues.Size = new System.Drawing.Size(58, 22);
|
||||
this.tsLayerImageHighlightIssues.Text = "&Issues";
|
||||
this.tsLayerImageHighlightIssues.ToolTipText = "Highlight Issues on current layer.\r\nValid only if Issues are calculated.";
|
||||
this.tsLayerImageHighlightIssues.Click += new System.EventHandler(this.EventClick);
|
||||
this.btnLayerImageHighlightIssues.Checked = true;
|
||||
this.btnLayerImageHighlightIssues.CheckOnClick = true;
|
||||
this.btnLayerImageHighlightIssues.CheckState = System.Windows.Forms.CheckState.Checked;
|
||||
this.btnLayerImageHighlightIssues.Image = global::UVtools.GUI.Properties.Resources.warning_16x16;
|
||||
this.btnLayerImageHighlightIssues.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||
this.btnLayerImageHighlightIssues.Name = "btnLayerImageHighlightIssues";
|
||||
this.btnLayerImageHighlightIssues.Size = new System.Drawing.Size(58, 22);
|
||||
this.btnLayerImageHighlightIssues.Text = "&Issues";
|
||||
this.btnLayerImageHighlightIssues.ToolTipText = "Highlight Issues on current layer.\r\nValid only if Issues are calculated.";
|
||||
this.btnLayerImageHighlightIssues.Click += new System.EventHandler(this.EventClick);
|
||||
//
|
||||
// toolStripSeparator7
|
||||
//
|
||||
this.toolStripSeparator7.Name = "toolStripSeparator7";
|
||||
this.toolStripSeparator7.Size = new System.Drawing.Size(6, 25);
|
||||
//
|
||||
// tsLayerImageShowCrosshairs
|
||||
// btnLayerImageShowCrosshairs
|
||||
//
|
||||
this.tsLayerImageShowCrosshairs.Checked = true;
|
||||
this.tsLayerImageShowCrosshairs.CheckOnClick = true;
|
||||
this.tsLayerImageShowCrosshairs.CheckState = System.Windows.Forms.CheckState.Checked;
|
||||
this.tsLayerImageShowCrosshairs.Image = global::UVtools.GUI.Properties.Resources.crosshairs_16x16;
|
||||
this.tsLayerImageShowCrosshairs.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||
this.tsLayerImageShowCrosshairs.Name = "tsLayerImageShowCrosshairs";
|
||||
this.tsLayerImageShowCrosshairs.Size = new System.Drawing.Size(81, 22);
|
||||
this.tsLayerImageShowCrosshairs.Text = "&Crosshairs";
|
||||
this.tsLayerImageShowCrosshairs.ToolTipText = "Show crosshairs for selected issues on the current layer.";
|
||||
this.tsLayerImageShowCrosshairs.Click += new System.EventHandler(this.EventClick);
|
||||
this.btnLayerImageShowCrosshairs.Checked = true;
|
||||
this.btnLayerImageShowCrosshairs.CheckOnClick = true;
|
||||
this.btnLayerImageShowCrosshairs.CheckState = System.Windows.Forms.CheckState.Checked;
|
||||
this.btnLayerImageShowCrosshairs.Image = global::UVtools.GUI.Properties.Resources.crosshairs_16x16;
|
||||
this.btnLayerImageShowCrosshairs.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||
this.btnLayerImageShowCrosshairs.Name = "btnLayerImageShowCrosshairs";
|
||||
this.btnLayerImageShowCrosshairs.Size = new System.Drawing.Size(81, 22);
|
||||
this.btnLayerImageShowCrosshairs.Text = "&Crosshairs";
|
||||
this.btnLayerImageShowCrosshairs.ToolTipText = "Show crosshairs for selected issues on the current layer.";
|
||||
this.btnLayerImageShowCrosshairs.Click += new System.EventHandler(this.EventClick);
|
||||
//
|
||||
// toolStripSeparator25
|
||||
//
|
||||
this.toolStripSeparator25.Name = "toolStripSeparator25";
|
||||
this.toolStripSeparator25.Size = new System.Drawing.Size(6, 25);
|
||||
//
|
||||
// tsLayerImageLayerOutline
|
||||
// btnLayerImageLayerOutline
|
||||
//
|
||||
this.tsLayerImageLayerOutline.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||
this.tsLayerImageLayerOutlinePrintVolumeBounds,
|
||||
this.tsLayerImageLayerOutlineLayerBounds,
|
||||
this.tsLayerImageLayerOutlineHollowAreas,
|
||||
this.tsLayerImageLayerOutlineEdgeDetection});
|
||||
this.tsLayerImageLayerOutline.Image = global::UVtools.GUI.Properties.Resources.Geometry_16x16;
|
||||
this.tsLayerImageLayerOutline.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||
this.tsLayerImageLayerOutline.Name = "tsLayerImageLayerOutline";
|
||||
this.tsLayerImageLayerOutline.Size = new System.Drawing.Size(78, 22);
|
||||
this.tsLayerImageLayerOutline.Text = "&Outline";
|
||||
this.tsLayerImageLayerOutline.ButtonClick += new System.EventHandler(this.EventClick);
|
||||
this.btnLayerImageLayerOutline.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||
this.btnLayerImageLayerOutlinePrintVolumeBounds,
|
||||
this.btnLayerImageLayerOutlineLayerBounds,
|
||||
this.btnLayerImageLayerOutlineHollowAreas,
|
||||
this.btnLayerImageLayerOutlineEdgeDetection});
|
||||
this.btnLayerImageLayerOutline.Image = global::UVtools.GUI.Properties.Resources.Geometry_16x16;
|
||||
this.btnLayerImageLayerOutline.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||
this.btnLayerImageLayerOutline.Name = "btnLayerImageLayerOutline";
|
||||
this.btnLayerImageLayerOutline.Size = new System.Drawing.Size(78, 22);
|
||||
this.btnLayerImageLayerOutline.Text = "&Outline";
|
||||
this.btnLayerImageLayerOutline.ButtonClick += new System.EventHandler(this.EventClick);
|
||||
//
|
||||
// tsLayerImageLayerOutlinePrintVolumeBounds
|
||||
// btnLayerImageLayerOutlinePrintVolumeBounds
|
||||
//
|
||||
this.tsLayerImageLayerOutlinePrintVolumeBounds.CheckOnClick = true;
|
||||
this.tsLayerImageLayerOutlinePrintVolumeBounds.Name = "tsLayerImageLayerOutlinePrintVolumeBounds";
|
||||
this.tsLayerImageLayerOutlinePrintVolumeBounds.Size = new System.Drawing.Size(185, 22);
|
||||
this.tsLayerImageLayerOutlinePrintVolumeBounds.Text = "Print Volume Bounds";
|
||||
this.tsLayerImageLayerOutlinePrintVolumeBounds.Click += new System.EventHandler(this.EventClick);
|
||||
this.btnLayerImageLayerOutlinePrintVolumeBounds.CheckOnClick = true;
|
||||
this.btnLayerImageLayerOutlinePrintVolumeBounds.Name = "btnLayerImageLayerOutlinePrintVolumeBounds";
|
||||
this.btnLayerImageLayerOutlinePrintVolumeBounds.Size = new System.Drawing.Size(185, 22);
|
||||
this.btnLayerImageLayerOutlinePrintVolumeBounds.Text = "Print Volume Bounds";
|
||||
this.btnLayerImageLayerOutlinePrintVolumeBounds.Click += new System.EventHandler(this.EventClick);
|
||||
//
|
||||
// tsLayerImageLayerOutlineLayerBounds
|
||||
// btnLayerImageLayerOutlineLayerBounds
|
||||
//
|
||||
this.tsLayerImageLayerOutlineLayerBounds.CheckOnClick = true;
|
||||
this.tsLayerImageLayerOutlineLayerBounds.Name = "tsLayerImageLayerOutlineLayerBounds";
|
||||
this.tsLayerImageLayerOutlineLayerBounds.Size = new System.Drawing.Size(185, 22);
|
||||
this.tsLayerImageLayerOutlineLayerBounds.Text = "Layer Bounds";
|
||||
this.tsLayerImageLayerOutlineLayerBounds.Click += new System.EventHandler(this.EventClick);
|
||||
this.btnLayerImageLayerOutlineLayerBounds.CheckOnClick = true;
|
||||
this.btnLayerImageLayerOutlineLayerBounds.Name = "btnLayerImageLayerOutlineLayerBounds";
|
||||
this.btnLayerImageLayerOutlineLayerBounds.Size = new System.Drawing.Size(185, 22);
|
||||
this.btnLayerImageLayerOutlineLayerBounds.Text = "Layer Bounds";
|
||||
this.btnLayerImageLayerOutlineLayerBounds.Click += new System.EventHandler(this.EventClick);
|
||||
//
|
||||
// tsLayerImageLayerOutlineHollowAreas
|
||||
// btnLayerImageLayerOutlineHollowAreas
|
||||
//
|
||||
this.tsLayerImageLayerOutlineHollowAreas.CheckOnClick = true;
|
||||
this.tsLayerImageLayerOutlineHollowAreas.Name = "tsLayerImageLayerOutlineHollowAreas";
|
||||
this.tsLayerImageLayerOutlineHollowAreas.Size = new System.Drawing.Size(185, 22);
|
||||
this.tsLayerImageLayerOutlineHollowAreas.Text = "Hollow Areas";
|
||||
this.tsLayerImageLayerOutlineHollowAreas.Click += new System.EventHandler(this.EventClick);
|
||||
this.btnLayerImageLayerOutlineHollowAreas.CheckOnClick = true;
|
||||
this.btnLayerImageLayerOutlineHollowAreas.Name = "btnLayerImageLayerOutlineHollowAreas";
|
||||
this.btnLayerImageLayerOutlineHollowAreas.Size = new System.Drawing.Size(185, 22);
|
||||
this.btnLayerImageLayerOutlineHollowAreas.Text = "Hollow Areas";
|
||||
this.btnLayerImageLayerOutlineHollowAreas.Click += new System.EventHandler(this.EventClick);
|
||||
//
|
||||
// tsLayerImageLayerOutlineEdgeDetection
|
||||
// btnLayerImageLayerOutlineEdgeDetection
|
||||
//
|
||||
this.tsLayerImageLayerOutlineEdgeDetection.CheckOnClick = true;
|
||||
this.tsLayerImageLayerOutlineEdgeDetection.Name = "tsLayerImageLayerOutlineEdgeDetection";
|
||||
this.tsLayerImageLayerOutlineEdgeDetection.Size = new System.Drawing.Size(185, 22);
|
||||
this.tsLayerImageLayerOutlineEdgeDetection.Text = "&Edge Detection";
|
||||
this.tsLayerImageLayerOutlineEdgeDetection.Click += new System.EventHandler(this.EventClick);
|
||||
this.btnLayerImageLayerOutlineEdgeDetection.CheckOnClick = true;
|
||||
this.btnLayerImageLayerOutlineEdgeDetection.Name = "btnLayerImageLayerOutlineEdgeDetection";
|
||||
this.btnLayerImageLayerOutlineEdgeDetection.Size = new System.Drawing.Size(185, 22);
|
||||
this.btnLayerImageLayerOutlineEdgeDetection.Text = "&Edge Detection";
|
||||
this.btnLayerImageLayerOutlineEdgeDetection.Click += new System.EventHandler(this.EventClick);
|
||||
//
|
||||
// toolStripSeparator9
|
||||
//
|
||||
this.toolStripSeparator9.Name = "toolStripSeparator9";
|
||||
this.toolStripSeparator9.Size = new System.Drawing.Size(6, 25);
|
||||
//
|
||||
// tsLayerImagePixelEdit
|
||||
// btnLayerImagePixelEdit
|
||||
//
|
||||
this.tsLayerImagePixelEdit.CheckOnClick = true;
|
||||
this.tsLayerImagePixelEdit.Image = global::UVtools.GUI.Properties.Resources.pixel_16x16;
|
||||
this.tsLayerImagePixelEdit.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||
this.tsLayerImagePixelEdit.Name = "tsLayerImagePixelEdit";
|
||||
this.tsLayerImagePixelEdit.Size = new System.Drawing.Size(75, 22);
|
||||
this.tsLayerImagePixelEdit.Text = "Pixel &Edit";
|
||||
this.tsLayerImagePixelEdit.ToolTipText = "Edit layer image: Draw pixels, add supports and/or drain holes";
|
||||
this.tsLayerImagePixelEdit.Click += new System.EventHandler(this.EventClick);
|
||||
this.btnLayerImagePixelEdit.CheckOnClick = true;
|
||||
this.btnLayerImagePixelEdit.Image = global::UVtools.GUI.Properties.Resources.pixel_16x16;
|
||||
this.btnLayerImagePixelEdit.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||
this.btnLayerImagePixelEdit.Name = "btnLayerImagePixelEdit";
|
||||
this.btnLayerImagePixelEdit.Size = new System.Drawing.Size(75, 22);
|
||||
this.btnLayerImagePixelEdit.Text = "Pixel &Edit";
|
||||
this.btnLayerImagePixelEdit.ToolTipText = "Edit layer image: Draw pixels, add supports and/or drain holes";
|
||||
this.btnLayerImagePixelEdit.Click += new System.EventHandler(this.EventClick);
|
||||
//
|
||||
// toolStripSeparator18
|
||||
//
|
||||
@@ -896,27 +899,45 @@ namespace UVtools.GUI
|
||||
this.toolStripSeparator18.Name = "toolStripSeparator18";
|
||||
this.toolStripSeparator18.Size = new System.Drawing.Size(6, 25);
|
||||
//
|
||||
// tsLayerRmove
|
||||
// btnLayerImageActions
|
||||
//
|
||||
this.tsLayerRmove.Alignment = System.Windows.Forms.ToolStripItemAlignment.Right;
|
||||
this.tsLayerRmove.Image = global::UVtools.GUI.Properties.Resources.trash_16x16;
|
||||
this.tsLayerRmove.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||
this.tsLayerRmove.Name = "tsLayerRmove";
|
||||
this.tsLayerRmove.Size = new System.Drawing.Size(101, 22);
|
||||
this.tsLayerRmove.Text = "Remove Layer";
|
||||
this.tsLayerRmove.ToolTipText = "Delete current layer";
|
||||
this.tsLayerRmove.Click += new System.EventHandler(this.EventClick);
|
||||
this.btnLayerImageActions.Alignment = System.Windows.Forms.ToolStripItemAlignment.Right;
|
||||
this.btnLayerImageActions.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||
this.btnLayerImageActionImport,
|
||||
this.btnLayerImageActionClone,
|
||||
this.btnLayerImageActionRemove});
|
||||
this.btnLayerImageActions.Image = global::UVtools.GUI.Properties.Resources.layers_alt_16x16;
|
||||
this.btnLayerImageActions.Name = "btnLayerImageActions";
|
||||
this.btnLayerImageActions.Size = new System.Drawing.Size(79, 22);
|
||||
this.btnLayerImageActions.Text = "Actions";
|
||||
this.btnLayerImageActions.ButtonClick += new System.EventHandler(this.EventClick);
|
||||
//
|
||||
// tsLayerClone
|
||||
// btnLayerImageActionImport
|
||||
//
|
||||
this.tsLayerClone.Alignment = System.Windows.Forms.ToolStripItemAlignment.Right;
|
||||
this.tsLayerClone.Image = global::UVtools.GUI.Properties.Resources.copy_16x16;
|
||||
this.tsLayerClone.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||
this.tsLayerClone.Name = "tsLayerClone";
|
||||
this.tsLayerClone.Size = new System.Drawing.Size(89, 22);
|
||||
this.tsLayerClone.Text = "Clone Layer";
|
||||
this.tsLayerClone.ToolTipText = "Clone current layer";
|
||||
this.tsLayerClone.Click += new System.EventHandler(this.EventClick);
|
||||
this.btnLayerImageActionImport.Image = global::UVtools.GUI.Properties.Resources.file_import_16x16;
|
||||
this.btnLayerImageActionImport.Name = "btnLayerImageActionImport";
|
||||
this.btnLayerImageActionImport.Size = new System.Drawing.Size(191, 22);
|
||||
this.btnLayerImageActionImport.Text = "&Import layers from file";
|
||||
this.btnLayerImageActionImport.ToolTipText = "Imports layer images at current height";
|
||||
this.btnLayerImageActionImport.Click += new System.EventHandler(this.EventClick);
|
||||
//
|
||||
// btnLayerImageActionClone
|
||||
//
|
||||
this.btnLayerImageActionClone.Image = global::UVtools.GUI.Properties.Resources.copy_16x16;
|
||||
this.btnLayerImageActionClone.Name = "btnLayerImageActionClone";
|
||||
this.btnLayerImageActionClone.Size = new System.Drawing.Size(191, 22);
|
||||
this.btnLayerImageActionClone.Text = "&Clone layer";
|
||||
this.btnLayerImageActionClone.ToolTipText = "Clone current layer";
|
||||
this.btnLayerImageActionClone.Click += new System.EventHandler(this.EventClick);
|
||||
//
|
||||
// btnLayerImageActionRemove
|
||||
//
|
||||
this.btnLayerImageActionRemove.Image = global::UVtools.GUI.Properties.Resources.trash_16x16;
|
||||
this.btnLayerImageActionRemove.Name = "btnLayerImageActionRemove";
|
||||
this.btnLayerImageActionRemove.Size = new System.Drawing.Size(191, 22);
|
||||
this.btnLayerImageActionRemove.Text = "&Remove layer(s)";
|
||||
this.btnLayerImageActionRemove.ToolTipText = "Remove current layer";
|
||||
this.btnLayerImageActionRemove.Click += new System.EventHandler(this.EventClick);
|
||||
//
|
||||
// tsLayerInfo
|
||||
//
|
||||
@@ -3057,12 +3078,12 @@ namespace UVtools.GUI
|
||||
private System.Windows.Forms.ToolStripSeparator toolStripSeparator4;
|
||||
private System.Windows.Forms.ToolStripLabel tsPropertiesLabelGroups;
|
||||
private System.Windows.Forms.ToolStripMenuItem menuFileOpenNewWindow;
|
||||
private System.Windows.Forms.ToolStripButton tsLayerImageRotate;
|
||||
private System.Windows.Forms.ToolStripButton btnLayerImageRotate;
|
||||
private System.Windows.Forms.ToolStripSeparator toolStripSeparator5;
|
||||
private System.Windows.Forms.ToolStripButton tsLayerImageLayerDifference;
|
||||
private System.Windows.Forms.ToolStripButton btnLayerImageLayerDifference;
|
||||
private Cyotek.Windows.Forms.ImageBox pbLayer;
|
||||
private System.Windows.Forms.ToolStripSeparator toolStripSeparator7;
|
||||
private System.Windows.Forms.ToolStripButton tsLayerImagePixelEdit;
|
||||
private System.Windows.Forms.ToolStripButton btnLayerImagePixelEdit;
|
||||
private System.Windows.Forms.ToolStripSeparator toolStripSeparator9;
|
||||
private System.Windows.Forms.ToolStripMenuItem menuMutate;
|
||||
private System.Windows.Forms.ToolStripSeparator toolStripSeparator10;
|
||||
@@ -3079,8 +3100,8 @@ namespace UVtools.GUI
|
||||
private System.Windows.Forms.ToolStripSeparator toolStripSeparator13;
|
||||
private System.Windows.Forms.ToolStripButton tsIssuesRepair;
|
||||
private System.Windows.Forms.ToolStripSeparator toolStripSeparator14;
|
||||
private System.Windows.Forms.ToolStripButton tsLayerImageHighlightIssues;
|
||||
private System.Windows.Forms.ToolStripButton tsLayerImageShowCrosshairs;
|
||||
private System.Windows.Forms.ToolStripButton btnLayerImageHighlightIssues;
|
||||
private System.Windows.Forms.ToolStripButton btnLayerImageShowCrosshairs;
|
||||
private System.Windows.Forms.ToolStripSeparator toolStripSeparator25;
|
||||
private TrackBarHighlight tbLayer;
|
||||
private System.Windows.Forms.TableLayoutPanel tlRight;
|
||||
@@ -3098,20 +3119,20 @@ namespace UVtools.GUI
|
||||
private System.Windows.Forms.Timer layerScrollTimer;
|
||||
private System.Windows.Forms.Timer layerZoomTimer;
|
||||
private System.Windows.Forms.Timer issueScrollTimer;
|
||||
private System.Windows.Forms.ToolStripSplitButton tsLayerImageExport;
|
||||
private System.Windows.Forms.ToolStripMenuItem tsLayerImageExportFile;
|
||||
private System.Windows.Forms.ToolStripMenuItem tsLayerImageExportClipboard;
|
||||
private System.Windows.Forms.ToolStripSplitButton btnLayerImageExport;
|
||||
private System.Windows.Forms.ToolStripMenuItem btnLayerImageExportFile;
|
||||
private System.Windows.Forms.ToolStripMenuItem btnLayerImageExportClipboard;
|
||||
private System.Windows.Forms.ToolStripMenuItem menuNewVersion;
|
||||
private System.Windows.Forms.ToolStripMenuItem menuFileSettings;
|
||||
private System.Windows.Forms.ToolStripSeparator toolStripSeparator15;
|
||||
private System.Windows.Forms.ToolStripSplitButton tsIssuesDetect;
|
||||
private System.Windows.Forms.ToolStripMenuItem tsIssuesDetectIslands;
|
||||
private System.Windows.Forms.ToolStripMenuItem tsIssuesDetectResinTraps;
|
||||
private System.Windows.Forms.ToolStripSplitButton tsLayerImageLayerOutline;
|
||||
private System.Windows.Forms.ToolStripMenuItem tsLayerImageLayerOutlineEdgeDetection;
|
||||
private System.Windows.Forms.ToolStripMenuItem tsLayerImageLayerOutlinePrintVolumeBounds;
|
||||
private System.Windows.Forms.ToolStripMenuItem tsLayerImageLayerOutlineLayerBounds;
|
||||
private System.Windows.Forms.ToolStripMenuItem tsLayerImageLayerOutlineHollowAreas;
|
||||
private System.Windows.Forms.ToolStripSplitButton btnLayerImageLayerOutline;
|
||||
private System.Windows.Forms.ToolStripMenuItem btnLayerImageLayerOutlineEdgeDetection;
|
||||
private System.Windows.Forms.ToolStripMenuItem btnLayerImageLayerOutlinePrintVolumeBounds;
|
||||
private System.Windows.Forms.ToolStripMenuItem btnLayerImageLayerOutlineLayerBounds;
|
||||
private System.Windows.Forms.ToolStripMenuItem btnLayerImageLayerOutlineHollowAreas;
|
||||
private System.Windows.Forms.ToolStripMenuItem menuToolsPattern;
|
||||
private System.Windows.Forms.ToolStripSplitButton tsThumbnailsExport;
|
||||
private System.Windows.Forms.ToolStripMenuItem tsThumbnailsExportFile;
|
||||
@@ -3147,7 +3168,6 @@ namespace UVtools.GUI
|
||||
private System.Windows.Forms.NumericUpDown nmPixelEditorDrainHoleDiameter;
|
||||
private System.Windows.Forms.Label label14;
|
||||
private System.Windows.Forms.ToolStripButton btnPixelHistoryRemove;
|
||||
private System.Windows.Forms.ToolStripButton tsLayerRmove;
|
||||
private System.Windows.Forms.ToolStripSeparator toolStripSeparator18;
|
||||
private System.Windows.Forms.ToolStripMenuItem menuToolsLayerRemoval;
|
||||
private System.Windows.Forms.ToolStripSeparator toolStripSeparator19;
|
||||
@@ -3235,7 +3255,6 @@ namespace UVtools.GUI
|
||||
private System.Windows.Forms.ToolStripLabel tsLayerImagePixelCount;
|
||||
private System.Windows.Forms.ToolStripSeparator toolStripSeparator17;
|
||||
private System.Windows.Forms.ToolStripLabel tsLayerBounds;
|
||||
private System.Windows.Forms.ToolStripButton tsLayerClone;
|
||||
private System.Windows.Forms.ToolStripMenuItem menuToolsLayerClone;
|
||||
private System.Windows.Forms.ToolStripMenuItem menuHelpBenchmark;
|
||||
private System.Windows.Forms.ToolStripSeparator toolStripSeparator24;
|
||||
@@ -3245,6 +3264,10 @@ namespace UVtools.GUI
|
||||
private System.Windows.Forms.ToolStripMenuItem tsIssuesDetectEmptyLayers;
|
||||
private System.Windows.Forms.ToolStripMenuItem tsIssuesDetectTouchingBounds;
|
||||
private System.Windows.Forms.PictureBox pbTrackerIssues;
|
||||
private System.Windows.Forms.ToolStripSplitButton btnLayerImageActions;
|
||||
private System.Windows.Forms.ToolStripMenuItem btnLayerImageActionClone;
|
||||
private System.Windows.Forms.ToolStripMenuItem btnLayerImageActionRemove;
|
||||
private System.Windows.Forms.ToolStripMenuItem btnLayerImageActionImport;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
+83
-106
@@ -221,14 +221,14 @@ namespace UVtools.GUI
|
||||
|
||||
Clear();
|
||||
|
||||
tsLayerImageLayerDifference.Checked = Settings.Default.LayerDifferenceDefault;
|
||||
btnLayerImageLayerDifference.Checked = Settings.Default.LayerDifferenceDefault;
|
||||
tsIssuesDetectIslands.Checked = Settings.Default.ComputeIslands;
|
||||
tsIssuesDetectResinTraps.Checked = Settings.Default.ComputeResinTraps;
|
||||
tsIssuesDetectTouchingBounds.Checked = Settings.Default.ComputeTouchingBounds;
|
||||
tsIssuesDetectEmptyLayers.Checked = Settings.Default.ComputeEmptyLayers;
|
||||
tsLayerImageLayerOutlinePrintVolumeBounds.Checked = Settings.Default.OutlinePrintVolumeBounds;
|
||||
tsLayerImageLayerOutlineLayerBounds.Checked = Settings.Default.OutlineLayerBounds;
|
||||
tsLayerImageLayerOutlineHollowAreas.Checked = Settings.Default.OutlineHollowAreas;
|
||||
btnLayerImageLayerOutlinePrintVolumeBounds.Checked = Settings.Default.OutlinePrintVolumeBounds;
|
||||
btnLayerImageLayerOutlineLayerBounds.Checked = Settings.Default.OutlineLayerBounds;
|
||||
btnLayerImageLayerOutlineHollowAreas.Checked = Settings.Default.OutlineHollowAreas;
|
||||
|
||||
// Initialize pbLayer zoom levels to use the discrete factors from ZoomLevels
|
||||
pbLayer.ZoomLevels = new Cyotek.Windows.Forms.ZoomLevelCollection(ZoomLevels);
|
||||
@@ -303,8 +303,6 @@ namespace UVtools.GUI
|
||||
flvProperties.ShowGroups = true;
|
||||
flvProperties.AlwaysGroupByColumn = flvProperties.AllColumns[2];
|
||||
|
||||
panelLayerNavigation.Paint += (sender, args) => Debug.WriteLine("Panel Paint");
|
||||
|
||||
if (Settings.Default.CheckForUpdatesOnStartup)
|
||||
{
|
||||
Task.Factory.StartNew(AppLoadTask);
|
||||
@@ -411,7 +409,7 @@ namespace UVtools.GUI
|
||||
|
||||
if (e.KeyCode == Keys.R)
|
||||
{
|
||||
tsLayerImageRotate.PerformClick();
|
||||
btnLayerImageRotate.PerformClick();
|
||||
e.Handled = true;
|
||||
return;
|
||||
}
|
||||
@@ -472,14 +470,18 @@ namespace UVtools.GUI
|
||||
|
||||
private void EventClick(object sender, EventArgs e)
|
||||
{
|
||||
if (sender.GetType() == typeof(ToolStripMenuItem))
|
||||
if (sender is ToolStripSplitButton splitButton && !ReferenceEquals(sender, tsIssuesDetect))
|
||||
{
|
||||
splitButton.ShowDropDown();
|
||||
return;
|
||||
}
|
||||
if (sender is ToolStripMenuItem menuItem)
|
||||
{
|
||||
ToolStripMenuItem item = (ToolStripMenuItem) sender;
|
||||
/*******************
|
||||
* Main Menu *
|
||||
******************/
|
||||
// File
|
||||
if (ReferenceEquals(sender, menuFileOpen))
|
||||
if (ReferenceEquals(menuItem, menuFileOpen))
|
||||
{
|
||||
using (OpenFileDialog openFile = new OpenFileDialog())
|
||||
{
|
||||
@@ -505,7 +507,7 @@ namespace UVtools.GUI
|
||||
return;
|
||||
}
|
||||
|
||||
if (ReferenceEquals(sender, menuFileOpenNewWindow))
|
||||
if (ReferenceEquals(menuItem, menuFileOpenNewWindow))
|
||||
{
|
||||
using (OpenFileDialog openFile = new OpenFileDialog())
|
||||
{
|
||||
@@ -522,13 +524,13 @@ namespace UVtools.GUI
|
||||
return;
|
||||
}
|
||||
|
||||
if (ReferenceEquals(sender, menuFileReload))
|
||||
if (ReferenceEquals(menuItem, menuFileReload))
|
||||
{
|
||||
ProcessFile(ActualLayer);
|
||||
return;
|
||||
}
|
||||
|
||||
if (ReferenceEquals(sender, menuFileSave))
|
||||
if (ReferenceEquals(menuItem, menuFileSave))
|
||||
{
|
||||
if (SavesCount == 0 && Settings.Default.FileSavePromptOverwrite)
|
||||
{
|
||||
@@ -580,7 +582,7 @@ namespace UVtools.GUI
|
||||
return;
|
||||
}
|
||||
|
||||
if (ReferenceEquals(sender, menuFileSaveAs))
|
||||
if (ReferenceEquals(menuItem, menuFileSaveAs))
|
||||
{
|
||||
using (SaveFileDialog dialog = new SaveFileDialog())
|
||||
{
|
||||
@@ -640,7 +642,7 @@ namespace UVtools.GUI
|
||||
return;
|
||||
}
|
||||
|
||||
if (ReferenceEquals(sender, menuFileClose))
|
||||
if (ReferenceEquals(menuItem, menuFileClose))
|
||||
{
|
||||
if (menuFileSave.Enabled)
|
||||
{
|
||||
@@ -656,7 +658,7 @@ namespace UVtools.GUI
|
||||
return;
|
||||
}
|
||||
|
||||
if (ReferenceEquals(sender, menuFileSettings))
|
||||
if (ReferenceEquals(menuItem, menuFileSettings))
|
||||
{
|
||||
using (FrmSettings frmSettings = new FrmSettings())
|
||||
{
|
||||
@@ -666,7 +668,7 @@ namespace UVtools.GUI
|
||||
return;
|
||||
}
|
||||
|
||||
if (ReferenceEquals(sender, menuFileExit))
|
||||
if (ReferenceEquals(menuItem, menuFileExit))
|
||||
{
|
||||
if (menuFileSave.Enabled)
|
||||
{
|
||||
@@ -683,7 +685,7 @@ namespace UVtools.GUI
|
||||
}
|
||||
|
||||
|
||||
if (ReferenceEquals(sender, menuFileExtract))
|
||||
if (ReferenceEquals(menuItem, menuFileExtract))
|
||||
{
|
||||
using (FolderBrowserDialog folder = new FolderBrowserDialog())
|
||||
{
|
||||
@@ -751,11 +753,11 @@ namespace UVtools.GUI
|
||||
}
|
||||
|
||||
// Edit & mutate
|
||||
if (!ReferenceEquals(item.Tag, null))
|
||||
if (!ReferenceEquals(menuItem.Tag, null))
|
||||
{
|
||||
if (item.Tag.GetType() == typeof(FileFormat.PrintParameterModifier))
|
||||
if (menuItem.Tag.GetType() == typeof(FileFormat.PrintParameterModifier))
|
||||
{
|
||||
FileFormat.PrintParameterModifier modifier = (FileFormat.PrintParameterModifier) item.Tag;
|
||||
FileFormat.PrintParameterModifier modifier = (FileFormat.PrintParameterModifier) menuItem.Tag;
|
||||
using (FrmInputBox inputBox = new FrmInputBox(modifier,
|
||||
decimal.Parse(SlicerFile.GetValueFromPrintParameterModifier(modifier).ToString())))
|
||||
{
|
||||
@@ -780,9 +782,9 @@ namespace UVtools.GUI
|
||||
|
||||
}
|
||||
|
||||
if (item.Tag.GetType() == typeof(LayerManager.Mutate))
|
||||
if (menuItem.Tag.GetType() == typeof(LayerManager.Mutate))
|
||||
{
|
||||
LayerManager.Mutate mutate = (LayerManager.Mutate) item.Tag;
|
||||
LayerManager.Mutate mutate = (LayerManager.Mutate) menuItem.Tag;
|
||||
MutateLayers(mutate);
|
||||
return;
|
||||
}
|
||||
@@ -791,7 +793,7 @@ namespace UVtools.GUI
|
||||
// View
|
||||
|
||||
// Tools
|
||||
if (ReferenceEquals(sender, menuToolsRepairLayers))
|
||||
if (ReferenceEquals(menuItem, menuToolsRepairLayers))
|
||||
{
|
||||
uint layerStart;
|
||||
uint layerEnd;
|
||||
@@ -879,7 +881,7 @@ namespace UVtools.GUI
|
||||
return;
|
||||
}
|
||||
|
||||
if (ReferenceEquals(sender, menuToolsChangeResolution))
|
||||
if (ReferenceEquals(menuItem, menuToolsChangeResolution))
|
||||
{
|
||||
uint newResolutionX;
|
||||
uint newResolutionY;
|
||||
@@ -930,7 +932,7 @@ namespace UVtools.GUI
|
||||
return;
|
||||
}
|
||||
|
||||
if (ReferenceEquals(sender, menuToolsLayerReHeight))
|
||||
if (ReferenceEquals(menuItem, menuToolsLayerReHeight))
|
||||
{
|
||||
OperationLayerReHeight operation = null;
|
||||
using (var frm = new FrmToolLayerReHeight(SlicerFile.LayerCount, SlicerFile.LayerHeight))
|
||||
@@ -978,9 +980,9 @@ namespace UVtools.GUI
|
||||
return;
|
||||
}
|
||||
|
||||
if (ReferenceEquals(sender, menuToolsLayerRemoval))
|
||||
if (ReferenceEquals(menuItem, menuToolsLayerRemoval))
|
||||
{
|
||||
using (var frm = new FrmToolEmpty(ActualLayer, "Layer Removal", "Removes layer(s) in a given range", "Remove"))
|
||||
using (var frm = new FrmToolEmpty(ActualLayer, "Remove Layer(s)", "Removes layer(s) in a given range", "Remove"))
|
||||
{
|
||||
if (frm.ShowDialog() != DialogResult.OK) return;
|
||||
|
||||
@@ -1024,7 +1026,7 @@ namespace UVtools.GUI
|
||||
return;
|
||||
}
|
||||
|
||||
if (ReferenceEquals(sender, menuToolsPattern))
|
||||
if (ReferenceEquals(menuItem, menuToolsPattern))
|
||||
{
|
||||
OperationPattern operation = new OperationPattern(SlicerFile.LayerManager.BoundingRectangle,
|
||||
(uint)ActualLayerImage.Width, (uint)ActualLayerImage.Height);
|
||||
@@ -1082,13 +1084,13 @@ namespace UVtools.GUI
|
||||
}
|
||||
|
||||
// About
|
||||
if (ReferenceEquals(sender, menuHelpAbout))
|
||||
if (ReferenceEquals(menuItem, menuHelpAbout))
|
||||
{
|
||||
Program.FrmAbout.ShowDialog();
|
||||
return;
|
||||
}
|
||||
|
||||
if (ReferenceEquals(sender, menuHelpWebsite))
|
||||
if (ReferenceEquals(menuItem, menuHelpWebsite))
|
||||
{
|
||||
using (Process.Start(About.Website))
|
||||
{
|
||||
@@ -1097,7 +1099,7 @@ namespace UVtools.GUI
|
||||
return;
|
||||
}
|
||||
|
||||
if (ReferenceEquals(sender, menuHelpDonate))
|
||||
if (ReferenceEquals(menuItem, menuHelpDonate))
|
||||
{
|
||||
MessageBox.Show(
|
||||
"All my work here is given for free (OpenSource), it took some hours to build, test and polish the program.\n" +
|
||||
@@ -1111,7 +1113,7 @@ namespace UVtools.GUI
|
||||
return;
|
||||
}
|
||||
|
||||
if (ReferenceEquals(sender, menuHelpBenchmark))
|
||||
if (ReferenceEquals(menuItem, menuHelpBenchmark))
|
||||
{
|
||||
using (var frmBenchmark = new FrmBenchmark())
|
||||
{
|
||||
@@ -1120,7 +1122,7 @@ namespace UVtools.GUI
|
||||
return;
|
||||
}
|
||||
|
||||
if (ReferenceEquals(sender, menuHelpInstallPrinters))
|
||||
if (ReferenceEquals(menuItem, menuHelpInstallPrinters))
|
||||
{
|
||||
var PEFolder =
|
||||
$"{Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData)}{Path.DirectorySeparatorChar}{Path.DirectorySeparatorChar}PrusaSlicer";
|
||||
@@ -1155,9 +1157,9 @@ namespace UVtools.GUI
|
||||
}
|
||||
}
|
||||
|
||||
if (ReferenceEquals(sender, menuToolsLayerClone) || ReferenceEquals(sender, tsLayerClone))
|
||||
if (ReferenceEquals(sender, menuToolsLayerClone) || ReferenceEquals(sender, btnLayerImageActionClone))
|
||||
{
|
||||
using (var frm = new FrmToolLayerClone(ReferenceEquals(sender, menuToolsLayerClone) ? -1 : (int)ActualLayer))
|
||||
using (var frm = new FrmToolLayerClone((int)ActualLayer))
|
||||
{
|
||||
if (frm.ShowDialog() != DialogResult.OK) return;
|
||||
|
||||
@@ -1293,12 +1295,6 @@ namespace UVtools.GUI
|
||||
}
|
||||
}
|
||||
|
||||
if (ReferenceEquals(sender, tsThumbnailsExport))
|
||||
{
|
||||
tsThumbnailsExport.ShowDropDown();
|
||||
return;
|
||||
}
|
||||
|
||||
if (ReferenceEquals(sender, tsThumbnailsExportFile))
|
||||
{
|
||||
using (SaveFileDialog dialog = new SaveFileDialog())
|
||||
@@ -1332,12 +1328,6 @@ namespace UVtools.GUI
|
||||
/************************
|
||||
* Properties Menu *
|
||||
***********************/
|
||||
if (ReferenceEquals(sender, tsPropertiesExport))
|
||||
{
|
||||
tsPropertiesExport.ShowDropDown();
|
||||
return;
|
||||
}
|
||||
|
||||
if (ReferenceEquals(sender, tsPropertiesExportFile))
|
||||
{
|
||||
using (SaveFileDialog dialog = new SaveFileDialog())
|
||||
@@ -1407,11 +1397,7 @@ namespace UVtools.GUI
|
||||
UpdateGCode();
|
||||
return;
|
||||
}
|
||||
if (ReferenceEquals(sender, btnGCodeSave))
|
||||
{
|
||||
btnGCodeSave.ShowDropDown();
|
||||
return;
|
||||
}
|
||||
|
||||
if (ReferenceEquals(sender, btnGCodeSaveFile))
|
||||
{
|
||||
using (SaveFileDialog dialog = new SaveFileDialog())
|
||||
@@ -1664,9 +1650,9 @@ namespace UVtools.GUI
|
||||
{
|
||||
if (!btnPixelHistoryRemove.Enabled) return;
|
||||
if (flvPixelHistory.SelectedIndices.Count == 0) return;
|
||||
foreach (PixelOperation item in flvPixelHistory.SelectedObjects)
|
||||
foreach (PixelOperation operation in flvPixelHistory.SelectedObjects)
|
||||
{
|
||||
PixelHistory.Items.Remove(item);
|
||||
PixelHistory.Items.Remove(operation);
|
||||
}
|
||||
RefreshPixelHistory();
|
||||
|
||||
@@ -1709,34 +1695,28 @@ namespace UVtools.GUI
|
||||
/************************
|
||||
* Layer Menu *
|
||||
***********************/
|
||||
if (ReferenceEquals(sender, tsLayerImageRotate) ||
|
||||
ReferenceEquals(sender, tsLayerImageLayerDifference) ||
|
||||
ReferenceEquals(sender, tsLayerImageHighlightIssues) ||
|
||||
ReferenceEquals(sender, tsLayerImageShowCrosshairs) ||
|
||||
ReferenceEquals(sender, tsLayerImageLayerOutlinePrintVolumeBounds) ||
|
||||
ReferenceEquals(sender, tsLayerImageLayerOutlineLayerBounds) ||
|
||||
ReferenceEquals(sender, tsLayerImageLayerOutlineHollowAreas) ||
|
||||
ReferenceEquals(sender, tsLayerImageLayerOutlineEdgeDetection)
|
||||
if (ReferenceEquals(sender, btnLayerImageRotate) ||
|
||||
ReferenceEquals(sender, btnLayerImageLayerDifference) ||
|
||||
ReferenceEquals(sender, btnLayerImageHighlightIssues) ||
|
||||
ReferenceEquals(sender, btnLayerImageShowCrosshairs) ||
|
||||
ReferenceEquals(sender, btnLayerImageLayerOutlinePrintVolumeBounds) ||
|
||||
ReferenceEquals(sender, btnLayerImageLayerOutlineLayerBounds) ||
|
||||
ReferenceEquals(sender, btnLayerImageLayerOutlineHollowAreas) ||
|
||||
ReferenceEquals(sender, btnLayerImageLayerOutlineEdgeDetection)
|
||||
|
||||
)
|
||||
{
|
||||
ShowLayer();
|
||||
if (ReferenceEquals(sender, tsLayerImageRotate))
|
||||
if (ReferenceEquals(sender, btnLayerImageRotate))
|
||||
{
|
||||
ZoomToFit();
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
||||
if (ReferenceEquals(sender, tsLayerImageLayerOutline))
|
||||
if (ReferenceEquals(sender, btnLayerImagePixelEdit))
|
||||
{
|
||||
tsLayerImageLayerOutline.ShowDropDown();
|
||||
return;
|
||||
}
|
||||
|
||||
if (ReferenceEquals(sender, tsLayerImagePixelEdit))
|
||||
{
|
||||
if (tsLayerImagePixelEdit.Checked)
|
||||
if (btnLayerImagePixelEdit.Checked)
|
||||
{
|
||||
tabControlLeft.TabPages.Add(tabPagePixelEditor);
|
||||
tabControlLeft.SelectedTab = tabPagePixelEditor;
|
||||
@@ -1749,27 +1729,24 @@ namespace UVtools.GUI
|
||||
return;
|
||||
}
|
||||
|
||||
if (ReferenceEquals(sender, tsLayerRmove))
|
||||
if (ReferenceEquals(sender, btnLayerImageActionRemove))
|
||||
{
|
||||
if (MessageBox.Show("Are you sure you want to remove current layer?\nThis operation is irreversible!",
|
||||
/*if (MessageBox.Show("Are you sure you want to remove current layer?\nThis operation is irreversible!",
|
||||
"Remove current layer?", MessageBoxButtons.YesNo, MessageBoxIcon.Question) !=
|
||||
DialogResult.Yes) return;
|
||||
DialogResult.Yes) return;*/
|
||||
|
||||
SlicerFile.LayerManager.RemoveLayer(ActualLayer);
|
||||
/*SlicerFile.LayerManager.RemoveLayer(ActualLayer);
|
||||
UpdateLayerLimits();
|
||||
RefreshInfo();
|
||||
ShowLayer();
|
||||
menuFileSave.Enabled = menuFileSaveAs.Enabled = true;
|
||||
menuFileSave.Enabled = menuFileSaveAs.Enabled = true;*/
|
||||
|
||||
EventClick(menuToolsLayerRemoval, EventArgs.Empty);
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
if (ReferenceEquals(sender, tsLayerImageExport))
|
||||
{
|
||||
tsLayerImageExport.ShowDropDown();
|
||||
return;
|
||||
}
|
||||
if (ReferenceEquals(sender, tsLayerImageExportFile))
|
||||
if (ReferenceEquals(sender, btnLayerImageExportFile))
|
||||
{
|
||||
using (SaveFileDialog dialog = new SaveFileDialog())
|
||||
{
|
||||
@@ -1791,7 +1768,7 @@ namespace UVtools.GUI
|
||||
return;
|
||||
}
|
||||
|
||||
if (ReferenceEquals(sender, tsLayerImageExportClipboard))
|
||||
if (ReferenceEquals(sender, btnLayerImageExportClipboard))
|
||||
{
|
||||
if (ReferenceEquals(pbLayer, null))
|
||||
{
|
||||
@@ -1947,7 +1924,7 @@ namespace UVtools.GUI
|
||||
}
|
||||
|
||||
// Refresh the layer to properly render the crosshair at various zoom transitions
|
||||
if (tsLayerImageShowCrosshairs.Checked &&
|
||||
if (btnLayerImageShowCrosshairs.Checked &&
|
||||
!ReferenceEquals(Issues, null) &&
|
||||
(e.OldZoom < 50 && e.NewZoom >= 50 // Trigger refresh as crosshair thickness increases at lower zoom levels
|
||||
|| e.OldZoom > 100 && e.NewZoom <= 100
|
||||
@@ -1992,7 +1969,7 @@ namespace UVtools.GUI
|
||||
// Bail here if we're not in a draw operation, if the mouse button is not either
|
||||
// left or right, or if the location of the mouse pointer is not within the image.
|
||||
if (tabControlPixelEditor.SelectedIndex != (int) PixelOperation.PixelOperationType.Drawing) return;
|
||||
if (!tsLayerImagePixelEdit.Checked || (e.Button & MouseButtons.Middle) != 0) return;
|
||||
if (!btnLayerImagePixelEdit.Checked || (e.Button & MouseButtons.Middle) != 0) return;
|
||||
if (!pbLayer.IsPointInImage(e.Location)) return;
|
||||
|
||||
if (e.Button == MouseButtons.Right)
|
||||
@@ -2231,7 +2208,7 @@ namespace UVtools.GUI
|
||||
btnLastLayer.Enabled =
|
||||
btnFindLayer.Enabled =
|
||||
|
||||
tsLayerImagePixelEdit.Checked =
|
||||
btnLayerImagePixelEdit.Checked =
|
||||
|
||||
false;
|
||||
|
||||
@@ -2349,7 +2326,7 @@ namespace UVtools.GUI
|
||||
|
||||
if (Settings.Default.LayerAutoRotateBestView)
|
||||
{
|
||||
tsLayerImageRotate.Checked = ActualLayerImage.Height > ActualLayerImage.Width;
|
||||
btnLayerImageRotate.Checked = ActualLayerImage.Height > ActualLayerImage.Width;
|
||||
}
|
||||
|
||||
if (!ReferenceEquals(SlicerFile.ConvertToFormats, null))
|
||||
@@ -2703,7 +2680,7 @@ namespace UVtools.GUI
|
||||
var imageBgrSpan = ActualLayerImageBgr.GetPixelSpan<byte>();
|
||||
|
||||
|
||||
if (tsLayerImageLayerOutlineEdgeDetection.Checked)
|
||||
if (btnLayerImageLayerOutlineEdgeDetection.Checked)
|
||||
{
|
||||
using (var grayscale = new Mat())
|
||||
{
|
||||
@@ -2711,7 +2688,7 @@ namespace UVtools.GUI
|
||||
CvInvoke.CvtColor(grayscale, ActualLayerImageBgr, ColorConversion.Gray2Bgr);
|
||||
}
|
||||
}
|
||||
else if (tsLayerImageLayerDifference.Checked)
|
||||
else if (btnLayerImageLayerDifference.Checked)
|
||||
{
|
||||
if (layerNum > 0 && layerNum < SlicerFile.LayerCount-1)
|
||||
{
|
||||
@@ -2808,7 +2785,7 @@ namespace UVtools.GUI
|
||||
var selectedIssues = flvIssues.SelectedObjects;
|
||||
//List<LayerIssue> selectedIssues = (from object t in selectedIssuesRaw where ((LayerIssue) t).LayerIndex == ActualLayer select (LayerIssue) t).ToList();
|
||||
|
||||
if (tsLayerImageHighlightIssues.Checked &&
|
||||
if (btnLayerImageHighlightIssues.Checked &&
|
||||
!ReferenceEquals(Issues, null))
|
||||
{
|
||||
foreach (var issue in Issues)
|
||||
@@ -2832,7 +2809,7 @@ namespace UVtools.GUI
|
||||
//CvInvoke.DrawContours(ActualLayerImageBgr, new VectorOfVectorOfPoint(new VectorOfPoint(issue.Pixels)), -1, new MCvScalar(0, 0, 255), 1);
|
||||
}
|
||||
|
||||
if (tsLayerImageShowCrosshairs.Checked && !Settings.Default.CrosshairShowOnlyOnSelectedIssues && pbLayer.Zoom <= CrosshairFadeLevel)
|
||||
if (btnLayerImageShowCrosshairs.Checked && !Settings.Default.CrosshairShowOnlyOnSelectedIssues && pbLayer.Zoom <= CrosshairFadeLevel)
|
||||
{
|
||||
DrawCrosshair(issue.BoundingRectangle);
|
||||
}
|
||||
@@ -2846,7 +2823,7 @@ namespace UVtools.GUI
|
||||
color = selectedIssues.Contains(issue)
|
||||
? Settings.Default.IslandHLColor
|
||||
: Settings.Default.IslandColor;
|
||||
if (tsLayerImageShowCrosshairs.Checked && !Settings.Default.CrosshairShowOnlyOnSelectedIssues && pbLayer.Zoom <= CrosshairFadeLevel)
|
||||
if (btnLayerImageShowCrosshairs.Checked && !Settings.Default.CrosshairShowOnlyOnSelectedIssues && pbLayer.Zoom <= CrosshairFadeLevel)
|
||||
{
|
||||
DrawCrosshair(issue.BoundingRectangle);
|
||||
}
|
||||
@@ -2873,19 +2850,19 @@ namespace UVtools.GUI
|
||||
}
|
||||
}
|
||||
|
||||
if (tsLayerImageLayerOutlinePrintVolumeBounds.Checked)
|
||||
if (btnLayerImageLayerOutlinePrintVolumeBounds.Checked)
|
||||
{
|
||||
CvInvoke.Rectangle(ActualLayerImageBgr, SlicerFile.LayerManager.BoundingRectangle,
|
||||
new MCvScalar(Settings.Default.OutlinePrintVolumeBoundsColor.B, Settings.Default.OutlinePrintVolumeBoundsColor.G, Settings.Default.OutlinePrintVolumeBoundsColor.R), Settings.Default.OutlinePrintVolumeBoundsLineThickness);
|
||||
}
|
||||
|
||||
if (tsLayerImageLayerOutlineLayerBounds.Checked)
|
||||
if (btnLayerImageLayerOutlineLayerBounds.Checked)
|
||||
{
|
||||
CvInvoke.Rectangle(ActualLayerImageBgr, SlicerFile[layerNum].BoundingRectangle,
|
||||
new MCvScalar(Settings.Default.OutlineLayerBoundsColor.B, Settings.Default.OutlineLayerBoundsColor.G, Settings.Default.OutlineLayerBoundsColor.R), Settings.Default.OutlineLayerBoundsLineThickness);
|
||||
}
|
||||
|
||||
if (tsLayerImageLayerOutlineHollowAreas.Checked)
|
||||
if (btnLayerImageLayerOutlineHollowAreas.Checked)
|
||||
{
|
||||
//CvInvoke.Threshold(ActualLayerImage, grayscale, 1, 255, ThresholdType.Binary);
|
||||
initContours();
|
||||
@@ -3004,12 +2981,12 @@ namespace UVtools.GUI
|
||||
|
||||
// Show crosshairs for selected issues if crosshair mode is enabled via toolstrip button.
|
||||
// Even when enabled, crosshairs are hidden in pixel edit mode when SHIFT is pressed.
|
||||
if (tsLayerImageShowCrosshairs.Checked &&
|
||||
if (btnLayerImageShowCrosshairs.Checked &&
|
||||
Settings.Default.CrosshairShowOnlyOnSelectedIssues &&
|
||||
!ReferenceEquals(Issues, null) &&
|
||||
flvIssues.SelectedIndices.Count > 0 &&
|
||||
pbLayer.Zoom <= CrosshairFadeLevel && // Only draw crosshairs when zoom level is below the configurable crosshair fade threshold.
|
||||
!(tsLayerImagePixelEdit.Checked && (ModifierKeys & Keys.Shift) != 0))
|
||||
!(btnLayerImagePixelEdit.Checked && (ModifierKeys & Keys.Shift) != 0))
|
||||
{
|
||||
|
||||
|
||||
@@ -3024,7 +3001,7 @@ namespace UVtools.GUI
|
||||
}
|
||||
}
|
||||
|
||||
if (tsLayerImageRotate.Checked)
|
||||
if (btnLayerImageRotate.Checked)
|
||||
{
|
||||
CvInvoke.Rotate(ActualLayerImageBgr, ActualLayerImageBgr, RotateFlags.Rotate90Clockwise);
|
||||
}
|
||||
@@ -3183,7 +3160,7 @@ namespace UVtools.GUI
|
||||
pbLayer.ClientRectangle.Contains(pbLayer.PointToClient(MousePosition)))
|
||||
{
|
||||
|
||||
pbLayer.Cursor = tsLayerImagePixelEdit.Checked ? Cursors.Cross : Cursors.Hand;
|
||||
pbLayer.Cursor = btnLayerImagePixelEdit.Checked ? Cursors.Cross : Cursors.Hand;
|
||||
pbLayer.PanMode = Cyotek.Windows.Forms.ImageBoxPanMode.None;
|
||||
//if (!ReferenceEquals(SlicerFile, null)) ShowLayer(); // Not needed?
|
||||
}
|
||||
@@ -3388,7 +3365,7 @@ namespace UVtools.GUI
|
||||
mouseHoldTimer.Stop();
|
||||
|
||||
// Shift must be pressed for any pixel edit action, middle button is ignored.
|
||||
if (!tsLayerImagePixelEdit.Checked || (e.Button & MouseButtons.Middle) != 0 ||
|
||||
if (!btnLayerImagePixelEdit.Checked || (e.Button & MouseButtons.Middle) != 0 ||
|
||||
(ModifierKeys & Keys.Shift) == 0) return;
|
||||
if (!pbLayer.IsPointInImage(e.Location)) return;
|
||||
var location = pbLayer.PointToImage(e.Location);
|
||||
@@ -4098,7 +4075,7 @@ namespace UVtools.GUI
|
||||
|
||||
public Point GetTransposedPoint(Point point, bool clockWise = true)
|
||||
{
|
||||
if (!tsLayerImageRotate.Checked) return point;
|
||||
if (!btnLayerImageRotate.Checked) return point;
|
||||
return clockWise
|
||||
? new Point(point.Y, ActualLayerImage.Height - 1 - point.X)
|
||||
: new Point(ActualLayerImage.Height - 1 - point.Y, point.X);
|
||||
@@ -4106,7 +4083,7 @@ namespace UVtools.GUI
|
||||
|
||||
public Rectangle GetTransposedRectangle(Rectangle rectangle)
|
||||
{
|
||||
return tsLayerImageRotate.Checked ? new Rectangle(ActualLayerImage.Height - rectangle.Bottom,
|
||||
return btnLayerImageRotate.Checked ? new Rectangle(ActualLayerImage.Height - rectangle.Bottom,
|
||||
rectangle.X, rectangle.Height, rectangle.Width) : rectangle;
|
||||
}
|
||||
|
||||
@@ -4118,7 +4095,7 @@ namespace UVtools.GUI
|
||||
/// </summary>
|
||||
private Rectangle GetTransposedIssueBounds(LayerIssue issue)
|
||||
{
|
||||
if (issue.X >= 0 && issue.Y >= 0 && (issue.BoundingRectangle.IsEmpty || issue.Size == 1) && tsLayerImageRotate.Checked)
|
||||
if (issue.X >= 0 && issue.Y >= 0 && (issue.BoundingRectangle.IsEmpty || issue.Size == 1) && btnLayerImageRotate.Checked)
|
||||
return new Rectangle(ActualLayerImage.Height - 1 - issue.Y,
|
||||
issue.X, 1, 1);
|
||||
|
||||
@@ -4220,7 +4197,7 @@ namespace UVtools.GUI
|
||||
// zoom to plate vs. zoom to print bounds will be inverted.
|
||||
if (Settings.Default.ZoomToFitPrintVolumeBounds ^ (ModifierKeys & Keys.Alt) != 0)
|
||||
{
|
||||
if (!tsLayerImageRotate.Checked)
|
||||
if (!btnLayerImageRotate.Checked)
|
||||
{
|
||||
pbLayer.ZoomToRegion(SlicerFile.LayerManager.BoundingRectangle);
|
||||
}
|
||||
@@ -4332,7 +4309,7 @@ namespace UVtools.GUI
|
||||
|
||||
if (result == DialogResult.Cancel)
|
||||
{
|
||||
tsLayerImagePixelEdit.Checked = true;
|
||||
btnLayerImagePixelEdit.Checked = true;
|
||||
return;
|
||||
}
|
||||
if (result == DialogResult.Yes)
|
||||
|
||||
@@ -158,7 +158,7 @@
|
||||
AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w
|
||||
LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
|
||||
ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAABk
|
||||
FAAAAk1TRnQBSQFMAgEBBgEAAegBCQHoAQkBEAEAARABAAT/ASEBAAj/AUIBTQE2BwABNgMAASgDAAFA
|
||||
FAAAAk1TRnQBSQFMAgEBBgEAASgBCgEoAQoBEAEAARABAAT/ASEBAAj/AUIBTQE2BwABNgMAASgDAAFA
|
||||
AwABIAMAAQEBAAEgBgABIC4AAxgBIgMwAUsDMAFMAzIBUDMAAQEDJAE2AysBQqwAAyIBMQNWAbkDXQHi
|
||||
AwAB/wMAAf8BKgEtASgB/gNTAawDTQGVAwABARgAAwkBDAMzAVIDUAGdA1cB6AMAAf4DKwH8Ay8BSqQA
|
||||
AyEBMANZAewBKwEuASkB+gNRAfcDUgH0A1MB8QNIAfYDQQH5AwAB/wNPAZsDAAEBCAADFQEdAz8BbgNV
|
||||
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 136 B |
+10
@@ -430,6 +430,16 @@ namespace UVtools.GUI.Properties {
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized resource of type System.Drawing.Bitmap.
|
||||
/// </summary>
|
||||
internal static System.Drawing.Bitmap file_import_16x16 {
|
||||
get {
|
||||
object obj = ResourceManager.GetObject("file-import-16x16", resourceCulture);
|
||||
return ((System.Drawing.Bitmap)(obj));
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized resource of type System.Drawing.Bitmap.
|
||||
/// </summary>
|
||||
|
||||
@@ -136,15 +136,15 @@
|
||||
<data name="island-16x16" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Images\island-16x16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="ladder-16x16" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Images\ladder-16x16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="layers-alt-16x16" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Images\layers-alt-16x16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="mask-16x16" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Images\mask-16x16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="Back-16x16" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Images\Back-16x16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="move-16x16" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Images\move-16x16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
@@ -154,6 +154,9 @@
|
||||
<data name="Cancel-32x32" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Images\Cancel-32x32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="Lock-16x16" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Images\Lock-16x16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="crop-16x16" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Images\crop-16x16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
@@ -208,6 +211,9 @@
|
||||
<data name="SaveAs-16x16" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Images\SaveAs-16x16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="pixel-16x16" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Images\pixel-16x16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="mutation_tophat" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Images\gui\mutation_tophat.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
@@ -262,15 +268,21 @@
|
||||
<data name="trash-16x16" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Images\trash-16x16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="accept-16x16" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Images\accept-16x16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="file-image-16x16" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Images\file-image-16x16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="Geometry-16x16" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Images\Geometry-16x16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="refresh-16x16" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Images\refresh-16x16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="crosshairs-16x16" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Images\crosshairs-16x16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="microchip_16x16" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Images\microchip_16x16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="eye-16x16" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Images\eye-16x16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
@@ -286,9 +298,6 @@
|
||||
<data name="square-solid-16x16" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Images\square-solid-16x16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="chessboard-16x16" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Images\chessboard-16x16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="burn-16x16" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Images\burn-16x16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
@@ -331,8 +340,8 @@
|
||||
<data name="expand-16x16" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Images\expand-16x16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="accept-16x16" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Images\accept-16x16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
<data name="Geometry-16x16" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Images\Geometry-16x16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="copy_16x16" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Images\copy_16x16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
@@ -352,22 +361,16 @@
|
||||
<data name="eye-24x24" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Images\eye-24x24.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="pixel-16x16" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Images\pixel-16x16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
<data name="ladder-16x16" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Images\ladder-16x16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="Back-16x16" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Images\Back-16x16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
<data name="chessboard-16x16" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Images\chessboard-16x16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="expand-alt-16x16" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Images\expand-alt-16x16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="microchip_16x16" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Images\microchip_16x16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="crosshairs-16x16" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Images\crosshairs-16x16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="Lock-16x16" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Images\Lock-16x16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
<data name="file-import-16x16" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Images\file-import-16x16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
</root>
|
||||
@@ -445,6 +445,7 @@
|
||||
<None Include="Images\mask-16x16.png" />
|
||||
<None Include="Images\copy_16x16.png" />
|
||||
<None Include="Images\microchip_16x16.png" />
|
||||
<None Include="Images\file-import-16x16.png" />
|
||||
<Content Include="UVtools.ico" />
|
||||
<None Include="UVtools.png" />
|
||||
<None Include="Images\Exit-16x16.png" />
|
||||
|
||||
Reference in New Issue
Block a user