mirror of
https://github.com/riegera2412/UVtools.git
synced 2026-07-08 17:42:31 +02:00
v0.8.5.0
* (Add) Tool - Calculator: Convert millimeters to pixels * (Add) Tool - Calculator: Find the optimal "Ligth-Off Delay" * (Add) Internal abstraction of display size to all file formats * (Add) Default demo file that loads on startup when no file is specified (this can be disable/enabled on settings)
This commit is contained in:
@@ -271,6 +271,9 @@
|
||||
<setting name="LayerRepairRemoveIslandsRecursiveIterations" serializeAs="String">
|
||||
<value>4</value>
|
||||
</setting>
|
||||
<setting name="LoadDemoFileOnStartup" serializeAs="String">
|
||||
<value>True</value>
|
||||
</setting>
|
||||
</UVtools.GUI.Properties.Settings>
|
||||
</userSettings>
|
||||
</configuration>
|
||||
|
||||
+1064
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,201 @@
|
||||
/*
|
||||
* GNU AFFERO GENERAL PUBLIC LICENSE
|
||||
* Version 3, 19 November 2007
|
||||
* Copyright (C) 2007 Free Software Foundation, Inc. <https://fsf.org/>
|
||||
* Everyone is permitted to copy and distribute verbatim copies
|
||||
* of this license document, but changing it is not allowed.
|
||||
*/
|
||||
|
||||
using System;
|
||||
using System.Drawing;
|
||||
using System.Globalization;
|
||||
using UVtools.Core;
|
||||
using UVtools.Core.FileFormats;
|
||||
using UVtools.Core.Operations;
|
||||
|
||||
namespace UVtools.GUI.Controls.Tools
|
||||
{
|
||||
public partial class CtrlToolCalculator : CtrlToolWindowContent
|
||||
{
|
||||
public OperationCalculator Operation { get; }
|
||||
|
||||
public CtrlToolCalculator()
|
||||
{
|
||||
InitializeComponent();
|
||||
Operation = new OperationCalculator
|
||||
{
|
||||
CalcMillimetersToPixels = new OperationCalculator.MillimetersToPixels(Program.SlicerFile.Resolution, Program.SlicerFile.Display),
|
||||
CalcLightOffDelay = new OperationCalculator.LightOffDelayC(
|
||||
(decimal) Program.SlicerFile.LiftHeight, (decimal) Program.SlicerFile.BottomLiftHeight,
|
||||
(decimal) Program.SlicerFile.LiftSpeed, (decimal) Program.SlicerFile.BottomLiftSpeed,
|
||||
(decimal) Program.SlicerFile.RetractSpeed, (decimal)Program.SlicerFile.RetractSpeed)
|
||||
};
|
||||
SetOperation(Operation);
|
||||
|
||||
tpMillimetersToPixels.Tag = Operation.CalcMillimetersToPixels;
|
||||
tpLightOffDelay.Tag = Operation.CalcMillimetersToPixels;
|
||||
|
||||
lbMMtoPixelsDescription.Text = Operation.CalcMillimetersToPixels.Description;
|
||||
lbMMtoPixelsDescription.Text += $"\n\nFormula: {Operation.CalcMillimetersToPixels.Formula}";
|
||||
lbMMtoPixelsDescription.MaximumSize = new Size(Width - 20, 0);
|
||||
|
||||
lbLightOffDelayDescription.Text = Operation.CalcLightOffDelay.Description;
|
||||
lbLightOffDelayDescription.Text += $"\n\nFormula: {Operation.CalcLightOffDelay.Formula}";
|
||||
lbLightOffDelayDescription.MaximumSize = new Size(Width - 20, 0);
|
||||
|
||||
|
||||
nmMMtoPXResolutionX.Value = Program.SlicerFile.ResolutionX;
|
||||
nmMMtoPXResolutionY.Value = Program.SlicerFile.ResolutionY;
|
||||
nmMMtoPXDisplayWidth.Value = (decimal) Program.SlicerFile.DisplayWidth;
|
||||
nmMMtoPXDisplayHeight.Value = (decimal) Program.SlicerFile.DisplayHeight;
|
||||
nmMMtoPXInputMillimeters.Value = Operation.CalcMillimetersToPixels.Millimeters;
|
||||
Operation.CalcMillimetersToPixels.PropertyChanged += (sender, e) =>
|
||||
{
|
||||
if(e.PropertyName == nameof(Operation.CalcMillimetersToPixels.PixelsX)
|
||||
|| e.PropertyName == nameof(Operation.CalcMillimetersToPixels.PixelsY))
|
||||
CalculateMillimetersToPixels();
|
||||
};
|
||||
|
||||
nmLightOffDelayLiftHeight.Value = (decimal) Program.SlicerFile.LiftHeight;
|
||||
nmLightOffDelayBottomLiftHeight.Value = (decimal) Program.SlicerFile.BottomLiftHeight;
|
||||
nmLightOffDelayLiftSpeed.Value = (decimal) Program.SlicerFile.LiftSpeed;
|
||||
nmLightOffDelayBottomLiftSpeed.Value = (decimal) Program.SlicerFile.BottomLiftSpeed;
|
||||
nmLightOffDelayBottomRetract.Value = nmLightOffDelayRetract.Value = (decimal) Program.SlicerFile.RetractSpeed;
|
||||
nmLightOffDelayWaitTime.Value = Operation.CalcLightOffDelay.WaitTime;
|
||||
nmLightOffDelayBottomWaitTime.Value = Operation.CalcLightOffDelay.BottomWaitTime;
|
||||
|
||||
lbLightOffDelayCurrentValue.Text = $"Current value: {Program.SlicerFile.LayerOffTime}";
|
||||
lbLightOffDelayCurrentBottomValue.Text = $"Current value: {Program.SlicerFile.BottomLayerOffTime}";
|
||||
Operation.CalcLightOffDelay.PropertyChanged += (sender, e) =>
|
||||
{
|
||||
if (e.PropertyName == nameof(Operation.CalcLightOffDelay.LightOffDelay)
|
||||
|| e.PropertyName == nameof(Operation.CalcLightOffDelay.BottomLightOffDelay))
|
||||
CalculateLightOffDelay();
|
||||
};
|
||||
|
||||
CalculateMillimetersToPixels();
|
||||
CalculateLightOffDelay();
|
||||
|
||||
}
|
||||
|
||||
private void CalculateMillimetersToPixels()
|
||||
{
|
||||
tbMMtoPXResultPixelsPerMillimeterX.Text = Operation.CalcMillimetersToPixels.PixelsPerMillimeterX.ToString(CultureInfo.InvariantCulture);
|
||||
tbMMtoPXResultPixelsPerMillimeterY.Text = Operation.CalcMillimetersToPixels.PixelsPerMillimeterY.ToString(CultureInfo.InvariantCulture);
|
||||
tbMMtoPXResultPixelsX.Text = Operation.CalcMillimetersToPixels.PixelsX.ToString(CultureInfo.InvariantCulture);
|
||||
tbMMtoPXResultPixelsY.Text = Operation.CalcMillimetersToPixels.PixelsY.ToString(CultureInfo.InvariantCulture);
|
||||
}
|
||||
|
||||
private void CalculateLightOffDelay()
|
||||
{
|
||||
tbLightOffDelay.Text = Operation.CalcLightOffDelay.LightOffDelay.ToString(CultureInfo.InvariantCulture);
|
||||
tbLightOffDelayBottom.Text = Operation.CalcLightOffDelay.BottomLightOffDelay.ToString(CultureInfo.InvariantCulture);
|
||||
}
|
||||
|
||||
private void EventValueChanged(object sender, EventArgs e)
|
||||
{
|
||||
// Millimeters to pixels
|
||||
if (ReferenceEquals(sender, nmMMtoPXResolutionX))
|
||||
{
|
||||
Operation.CalcMillimetersToPixels.ResolutionX = (uint) nmMMtoPXResolutionX.Value;
|
||||
return;
|
||||
}
|
||||
if (ReferenceEquals(sender, nmMMtoPXResolutionY))
|
||||
{
|
||||
Operation.CalcMillimetersToPixels.ResolutionY = (uint)nmMMtoPXResolutionY.Value;
|
||||
return;
|
||||
}
|
||||
|
||||
if (ReferenceEquals(sender, nmMMtoPXDisplayWidth))
|
||||
{
|
||||
Operation.CalcMillimetersToPixels.DisplayWidth = nmMMtoPXDisplayWidth.Value;
|
||||
return;
|
||||
}
|
||||
|
||||
if (ReferenceEquals(sender, nmMMtoPXDisplayHeight))
|
||||
{
|
||||
Operation.CalcMillimetersToPixels.DisplayHeight = nmMMtoPXDisplayHeight.Value;
|
||||
return;
|
||||
}
|
||||
|
||||
if (ReferenceEquals(sender, nmMMtoPXInputMillimeters))
|
||||
{
|
||||
Operation.CalcMillimetersToPixels.Millimeters = nmMMtoPXInputMillimeters.Value;
|
||||
return;
|
||||
}
|
||||
|
||||
// Light-Off Delay
|
||||
if (ReferenceEquals(sender, nmLightOffDelayLiftHeight))
|
||||
{
|
||||
Operation.CalcLightOffDelay.LiftHeight = nmLightOffDelayLiftHeight.Value;
|
||||
return;
|
||||
}
|
||||
|
||||
if (ReferenceEquals(sender, nmLightOffDelayBottomLiftHeight))
|
||||
{
|
||||
Operation.CalcLightOffDelay.BottomLiftHeight = nmLightOffDelayBottomLiftHeight.Value;
|
||||
return;
|
||||
}
|
||||
|
||||
if (ReferenceEquals(sender, nmLightOffDelayLiftSpeed))
|
||||
{
|
||||
Operation.CalcLightOffDelay.LiftSpeed = nmLightOffDelayLiftSpeed.Value;
|
||||
return;
|
||||
}
|
||||
|
||||
if (ReferenceEquals(sender, nmLightOffDelayBottomLiftSpeed))
|
||||
{
|
||||
Operation.CalcLightOffDelay.BottomLiftSpeed = nmLightOffDelayBottomLiftSpeed.Value;
|
||||
return;
|
||||
}
|
||||
|
||||
if (ReferenceEquals(sender, nmLightOffDelayRetract))
|
||||
{
|
||||
nmLightOffDelayBottomRetract.Value = Operation.CalcLightOffDelay.RetractSpeed = nmLightOffDelayRetract.Value;
|
||||
return;
|
||||
}
|
||||
|
||||
if (ReferenceEquals(sender, nmLightOffDelayBottomRetract))
|
||||
{
|
||||
Operation.CalcLightOffDelay.BottomRetractSpeed = nmLightOffDelayBottomRetract.Value;
|
||||
return;
|
||||
}
|
||||
|
||||
if (ReferenceEquals(sender, nmLightOffDelayWaitTime))
|
||||
{
|
||||
Operation.CalcLightOffDelay.WaitTime = nmLightOffDelayWaitTime.Value;
|
||||
return;
|
||||
}
|
||||
|
||||
if (ReferenceEquals(sender, nmLightOffDelayBottomWaitTime))
|
||||
{
|
||||
Operation.CalcLightOffDelay.BottomWaitTime = nmLightOffDelayBottomWaitTime.Value;
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
private void EventClick(object sender, EventArgs e)
|
||||
{
|
||||
if (ReferenceEquals(sender, btnLightOffDelaySetParameter))
|
||||
{
|
||||
Program.SlicerFile.LiftHeight = (float) Operation.CalcLightOffDelay.LiftHeight;
|
||||
Program.SlicerFile.LiftSpeed = (float) Operation.CalcLightOffDelay.LiftSpeed;
|
||||
Program.SlicerFile.RetractSpeed = (float) Operation.CalcLightOffDelay.RetractSpeed;
|
||||
Program.SlicerFile.LayerOffTime = (float) Operation.CalcLightOffDelay.LightOffDelay;
|
||||
Program.FrmMain.CanSave = true;
|
||||
lbLightOffDelayCurrentValue.Text = $"Current value: {Program.SlicerFile.LayerOffTime}";
|
||||
return;
|
||||
}
|
||||
|
||||
if (ReferenceEquals(sender, btnLightOffDelaySetBottomParameter))
|
||||
{
|
||||
Program.SlicerFile.BottomLiftHeight = (float)Operation.CalcLightOffDelay.BottomLiftHeight;
|
||||
Program.SlicerFile.BottomLiftSpeed = (float)Operation.CalcLightOffDelay.BottomLiftSpeed;
|
||||
Program.SlicerFile.BottomLayerOffTime = (float)Operation.CalcLightOffDelay.BottomLightOffDelay;
|
||||
Program.FrmMain.CanSave = true;
|
||||
lbLightOffDelayCurrentBottomValue.Text = $"Current value: {Program.SlicerFile.BottomLayerOffTime}";
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,123 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<root>
|
||||
<!--
|
||||
Microsoft ResX Schema
|
||||
|
||||
Version 2.0
|
||||
|
||||
The primary goals of this format is to allow a simple XML format
|
||||
that is mostly human readable. The generation and parsing of the
|
||||
various data types are done through the TypeConverter classes
|
||||
associated with the data types.
|
||||
|
||||
Example:
|
||||
|
||||
... ado.net/XML headers & schema ...
|
||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||
<resheader name="version">2.0</resheader>
|
||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||
</data>
|
||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||
<comment>This is a comment</comment>
|
||||
</data>
|
||||
|
||||
There are any number of "resheader" rows that contain simple
|
||||
name/value pairs.
|
||||
|
||||
Each data row contains a name, and value. The row also contains a
|
||||
type or mimetype. Type corresponds to a .NET class that support
|
||||
text/value conversion through the TypeConverter architecture.
|
||||
Classes that don't support this are serialized and stored with the
|
||||
mimetype set.
|
||||
|
||||
The mimetype is used for serialized objects, and tells the
|
||||
ResXResourceReader how to depersist the object. This is currently not
|
||||
extensible. For a given mimetype the value must be set accordingly:
|
||||
|
||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||
that the ResXResourceWriter will generate, however the reader can
|
||||
read any of the formats listed below.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.binary.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.soap.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||
value : The object must be serialized into a byte array
|
||||
: using a System.ComponentModel.TypeConverter
|
||||
: and then encoded with base64 encoding.
|
||||
-->
|
||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||
<xsd:element name="root" msdata:IsDataSet="true">
|
||||
<xsd:complexType>
|
||||
<xsd:choice maxOccurs="unbounded">
|
||||
<xsd:element name="metadata">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||
<xsd:attribute name="type" type="xsd:string" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="assembly">
|
||||
<xsd:complexType>
|
||||
<xsd:attribute name="alias" type="xsd:string" />
|
||||
<xsd:attribute name="name" type="xsd:string" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="data">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="resheader">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:choice>
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:schema>
|
||||
<resheader name="resmimetype">
|
||||
<value>text/microsoft-resx</value>
|
||||
</resheader>
|
||||
<resheader name="version">
|
||||
<value>2.0</value>
|
||||
</resheader>
|
||||
<resheader name="reader">
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<metadata name="toolTip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>17, 17</value>
|
||||
</metadata>
|
||||
</root>
|
||||
+15
-2
@@ -187,6 +187,7 @@
|
||||
this.cbLayerRepairLayersIslands = new System.Windows.Forms.CheckBox();
|
||||
this.pnActions = new System.Windows.Forms.Panel();
|
||||
this.toolTip = new System.Windows.Forms.ToolTip(this.components);
|
||||
this.cbLoadDemoFileOnStartup = new System.Windows.Forms.CheckBox();
|
||||
this.groupBox3.SuspendLayout();
|
||||
((System.ComponentModel.ISupportInitialize)(this.nmResinTrapBinaryThreshold)).BeginInit();
|
||||
((System.ComponentModel.ISupportInitialize)(this.nmResinTrapMaximumPixelBrightnessToDrain)).BeginInit();
|
||||
@@ -782,7 +783,7 @@
|
||||
this.groupBox5.Controls.Add(this.label27);
|
||||
this.groupBox5.Controls.Add(this.tbFileSaveNamePreffix);
|
||||
this.groupBox5.Dock = System.Windows.Forms.DockStyle.Top;
|
||||
this.groupBox5.Location = new System.Drawing.Point(3, 93);
|
||||
this.groupBox5.Location = new System.Drawing.Point(3, 123);
|
||||
this.groupBox5.Name = "groupBox5";
|
||||
this.groupBox5.Size = new System.Drawing.Size(655, 276);
|
||||
this.groupBox5.TabIndex = 54;
|
||||
@@ -1020,12 +1021,13 @@
|
||||
//
|
||||
// groupBox4
|
||||
//
|
||||
this.groupBox4.Controls.Add(this.cbLoadDemoFileOnStartup);
|
||||
this.groupBox4.Controls.Add(this.cbStartMaximized);
|
||||
this.groupBox4.Controls.Add(this.cbCheckForUpdatesOnStartup);
|
||||
this.groupBox4.Dock = System.Windows.Forms.DockStyle.Top;
|
||||
this.groupBox4.Location = new System.Drawing.Point(3, 3);
|
||||
this.groupBox4.Name = "groupBox4";
|
||||
this.groupBox4.Size = new System.Drawing.Size(655, 90);
|
||||
this.groupBox4.Size = new System.Drawing.Size(655, 120);
|
||||
this.groupBox4.TabIndex = 15;
|
||||
this.groupBox4.TabStop = false;
|
||||
this.groupBox4.Text = "Startup";
|
||||
@@ -2332,6 +2334,16 @@
|
||||
this.toolTip.ToolTipIcon = System.Windows.Forms.ToolTipIcon.Info;
|
||||
this.toolTip.ToolTipTitle = "Information";
|
||||
//
|
||||
// cbLoadDemoFileOnStartup
|
||||
//
|
||||
this.cbLoadDemoFileOnStartup.AutoSize = true;
|
||||
this.cbLoadDemoFileOnStartup.Location = new System.Drawing.Point(6, 79);
|
||||
this.cbLoadDemoFileOnStartup.Name = "cbLoadDemoFileOnStartup";
|
||||
this.cbLoadDemoFileOnStartup.Size = new System.Drawing.Size(361, 22);
|
||||
this.cbLoadDemoFileOnStartup.TabIndex = 8;
|
||||
this.cbLoadDemoFileOnStartup.Text = "Loads a demo file on startup if no file was specified";
|
||||
this.cbLoadDemoFileOnStartup.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// FrmSettings
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(9F, 18F);
|
||||
@@ -2561,5 +2573,6 @@
|
||||
private System.Windows.Forms.CheckBox cbOverhangIndependentFromIslands;
|
||||
private System.Windows.Forms.NumericUpDown nmOverhangErodeIterations;
|
||||
private System.Windows.Forms.Label label48;
|
||||
private System.Windows.Forms.CheckBox cbLoadDemoFileOnStartup;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -38,8 +38,9 @@ namespace UVtools.GUI.Forms
|
||||
try
|
||||
{
|
||||
// General
|
||||
cbCheckForUpdatesOnStartup.Checked = Settings.Default.CheckForUpdatesOnStartup;
|
||||
cbStartMaximized.Checked = Settings.Default.StartMaximized;
|
||||
cbCheckForUpdatesOnStartup.Checked = Settings.Default.CheckForUpdatesOnStartup;
|
||||
cbLoadDemoFileOnStartup.Checked = Settings.Default.LoadDemoFileOnStartup;
|
||||
cbDefaultOpenFileExtension.SelectedIndex = Settings.Default.DefaultOpenFileExtension;
|
||||
tbFileOpenDefaultDirectory.Text = Settings.Default.FileOpenDefaultDirectory;
|
||||
tbFileSaveDefaultDirectory.Text = Settings.Default.FileSaveDefaultDirectory;
|
||||
@@ -235,8 +236,9 @@ namespace UVtools.GUI.Forms
|
||||
if (ReferenceEquals(sender, btnSave))
|
||||
{
|
||||
// General
|
||||
Settings.Default.CheckForUpdatesOnStartup = cbCheckForUpdatesOnStartup.Checked;
|
||||
Settings.Default.StartMaximized = cbStartMaximized.Checked;
|
||||
Settings.Default.CheckForUpdatesOnStartup = cbCheckForUpdatesOnStartup.Checked;
|
||||
Settings.Default.LoadDemoFileOnStartup = cbLoadDemoFileOnStartup.Checked;
|
||||
Settings.Default.DefaultOpenFileExtension = (byte) cbDefaultOpenFileExtension.SelectedIndex;
|
||||
Settings.Default.FileOpenDefaultDirectory = tbFileOpenDefaultDirectory.Text;
|
||||
Settings.Default.FileSaveDefaultDirectory = tbFileSaveDefaultDirectory.Text;
|
||||
|
||||
@@ -184,6 +184,11 @@ namespace UVtools.GUI.Forms
|
||||
btnOk.Enabled = content.ButtonOkEnabled;
|
||||
//content.AutoSize = true;
|
||||
|
||||
if (string.IsNullOrEmpty(content.ButtonOkText))
|
||||
{
|
||||
btnOk.Visible = false;
|
||||
}
|
||||
|
||||
if (!content.CanROI)
|
||||
{
|
||||
pnROI.Visible = false;
|
||||
|
||||
+20
-7
@@ -63,6 +63,7 @@ namespace UVtools.GUI
|
||||
new OperationMenuItem(new OperationPattern(), Resources.pattern_16x16),
|
||||
new OperationMenuItem(new OperationLayerReHeight(), Resources.ladder_16x16),
|
||||
new OperationMenuItem(new OperationChangeResolution(), Resources.resize_16x16),
|
||||
new OperationMenuItem(new OperationCalculator(), Resources.calculator_16x16),
|
||||
};
|
||||
|
||||
public static readonly OperationMenuItem[] LayerActions = {
|
||||
@@ -135,6 +136,12 @@ namespace UVtools.GUI
|
||||
// Track last open tab for when PixelEditor tab is removed.
|
||||
public TabPage ControlLeftLastTab { get; set; }
|
||||
|
||||
public bool CanSave
|
||||
{
|
||||
get => menuFileSave.Enabled;
|
||||
set => menuFileSave.Enabled = value;
|
||||
}
|
||||
|
||||
public uint SavesCount { get; set; }
|
||||
|
||||
private bool SupressLayerZoomEvent { get; set; }
|
||||
@@ -329,6 +336,11 @@ namespace UVtools.GUI
|
||||
base.OnShown(e);
|
||||
AddLog("UVtools Start");
|
||||
ProcessFile(Program.Args);
|
||||
|
||||
if (SlicerFile is null && Settings.Default.LoadDemoFileOnStartup)
|
||||
{
|
||||
ProcessFile(About.DemoFile);
|
||||
}
|
||||
}
|
||||
|
||||
protected override void OnKeyPress(KeyPressEventArgs e)
|
||||
@@ -824,7 +836,7 @@ namespace UVtools.GUI
|
||||
SlicerFile.SetThumbnail(i, fileOpen.FileName);
|
||||
pbThumbnail.Image = SlicerFile.Thumbnails[i].ToBitmap();
|
||||
SlicerFile.RequireFullEncode = true;
|
||||
menuFileSave.Enabled = true;
|
||||
CanSave = true;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1169,7 +1181,7 @@ namespace UVtools.GUI
|
||||
|
||||
//ShowLayer(); // It will call latter so its a extra call
|
||||
UpdateIssuesInfo();
|
||||
menuFileSave.Enabled = true;
|
||||
CanSave = true;
|
||||
|
||||
return;
|
||||
}
|
||||
@@ -1872,6 +1884,7 @@ namespace UVtools.GUI
|
||||
|
||||
void ProcessFile(string fileName, uint actualLayer = 0)
|
||||
{
|
||||
if (!File.Exists(fileName)) return;
|
||||
Clear();
|
||||
|
||||
var fileNameOnly = Path.GetFileName(fileName);
|
||||
@@ -2106,7 +2119,7 @@ namespace UVtools.GUI
|
||||
if (task.Result)
|
||||
{
|
||||
SavesCount++;
|
||||
menuFileSave.Enabled = false;
|
||||
CanSave = false;
|
||||
UpdateTitle();
|
||||
}
|
||||
|
||||
@@ -3547,7 +3560,7 @@ namespace UVtools.GUI
|
||||
pbLayer.Invalidate();
|
||||
//pbLayer.Update();
|
||||
//pbLayer.Refresh();
|
||||
//menuFileSave.Enabled = menuFileSaveAs.Enabled = true;
|
||||
//CanSavemenuFileSaveAs.Enabled = true;
|
||||
//sw.Stop();
|
||||
//Debug.WriteLine(sw.ElapsedMilliseconds);
|
||||
}
|
||||
@@ -4011,7 +4024,7 @@ namespace UVtools.GUI
|
||||
RefreshPixelHistory();
|
||||
ShowLayer();
|
||||
|
||||
menuFileSave.Enabled = true;
|
||||
CanSave = true;
|
||||
}
|
||||
|
||||
private void UpdateIslandsOverhangs(List<uint> whiteListLayers)
|
||||
@@ -4209,7 +4222,7 @@ namespace UVtools.GUI
|
||||
SlicerFile.SetValuesFromPrintParametersModifiers();
|
||||
RefreshInfo();
|
||||
|
||||
menuFileSave.Enabled = true;
|
||||
CanSave = true;
|
||||
|
||||
return false;
|
||||
case OperationRepairLayers operation:
|
||||
@@ -4349,7 +4362,7 @@ namespace UVtools.GUI
|
||||
UpdateLayerLimits();
|
||||
RefreshInfo();
|
||||
|
||||
menuFileSave.Enabled = true;
|
||||
CanSave = true;
|
||||
|
||||
switch (baseOperation)
|
||||
{
|
||||
|
||||
@@ -174,7 +174,7 @@
|
||||
AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w
|
||||
LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
|
||||
ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAABk
|
||||
FAAAAk1TRnQBSQFMAgEBBgEAASgBDAEoAQwBEAEAARABAAT/ASEBAAj/AUIBTQE2BwABNgMAASgDAAFA
|
||||
FAAAAk1TRnQBSQFMAgEBBgEAATABDAEwAQwBEAEAARABAAT/ASEBAAj/AUIBTQE2BwABNgMAASgDAAFA
|
||||
AwABIAMAAQEBAAEgBgABIC4AAxgBIgMwAUsDMAFMAzIBUDMAAQEDJAE2AysBQqwAAyIBMQNWAbkDXQHi
|
||||
AwAB/wMAAf8BKgEtASgB/gNTAawDTQGVAwABARgAAwkBDAMzAVIDUAGdA1cB6AMAAf4DKwH8Ay8BSqQA
|
||||
AyEBMANZAewBKwEuASkB+gNRAfcDUgH0A1MB8QNIAfYDQQH5AwAB/wNPAZsDAAEBCAADFQEdAz8BbgNV
|
||||
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 119 B |
@@ -35,5 +35,5 @@ using System.Runtime.InteropServices;
|
||||
// You can specify all the values or you can default the Build and Revision Numbers
|
||||
// by using the '*' as shown below:
|
||||
// [assembly: AssemblyVersion("1.0.*")]
|
||||
[assembly: AssemblyVersion("0.8.4.4")]
|
||||
[assembly: AssemblyFileVersion("0.8.4.4")]
|
||||
[assembly: AssemblyVersion("0.8.5.0")]
|
||||
[assembly: AssemblyFileVersion("0.8.5.0")]
|
||||
|
||||
+10
@@ -170,6 +170,16 @@ namespace UVtools.GUI.Properties {
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized resource of type System.Drawing.Bitmap.
|
||||
/// </summary>
|
||||
internal static System.Drawing.Bitmap calculator_16x16 {
|
||||
get {
|
||||
object obj = ResourceManager.GetObject("calculator-16x16", resourceCulture);
|
||||
return ((System.Drawing.Bitmap)(obj));
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized resource of type System.Drawing.Bitmap.
|
||||
/// </summary>
|
||||
|
||||
@@ -133,21 +133,12 @@
|
||||
<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="filter-filled-16x16" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Images\filter-filled-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>
|
||||
@@ -208,12 +199,18 @@
|
||||
<data name="mutation_dilation" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Images\gui\mutation_dilation.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="square-root-16x16" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Images\square-root-16x16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="File-Refresh-16x16" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Images\File-Refresh-16x16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<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>
|
||||
@@ -253,6 +250,9 @@
|
||||
<data name="checkbox-marked-16x16" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Images\checkbox-marked-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>
|
||||
<data name="minus_16x16" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Images\minus_16x16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
@@ -265,12 +265,12 @@
|
||||
<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>
|
||||
@@ -292,11 +292,17 @@
|
||||
<data name="bowling-ball-16x16" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Images\bowling-ball-16x16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<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>
|
||||
<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="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 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="filter-filled-16x16" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Images\filter-filled-16x16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="arrow-down-double-16x16" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Images\arrow-down-double-16x16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
@@ -307,14 +313,11 @@
|
||||
<data name="Button-Info-16x16" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Images\Button-Info-16x16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="plus-16x16" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Images\plus-16x16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="Global-Network-icon-16x16" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Images\Global-Network-icon-16x16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<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 name="plus-16x16" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Images\plus-16x16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="pixel_edit" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\pixel_edit.cur;System.Byte[], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
@@ -346,8 +349,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="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 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="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>
|
||||
@@ -367,11 +370,11 @@
|
||||
<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="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 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="object-group-16x16" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Images\object-group-16x16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
@@ -379,7 +382,7 @@
|
||||
<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="square-root-16x16" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Images\square-root-16x16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
<data name="calculator-16x16" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Images\calculator-16x16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
</root>
|
||||
+12
@@ -982,5 +982,17 @@ namespace UVtools.GUI.Properties {
|
||||
this["LayerRepairRemoveIslandsRecursiveIterations"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("True")]
|
||||
public bool LoadDemoFileOnStartup {
|
||||
get {
|
||||
return ((bool)(this["LoadDemoFileOnStartup"]));
|
||||
}
|
||||
set {
|
||||
this["LoadDemoFileOnStartup"] = value;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -242,5 +242,8 @@
|
||||
<Setting Name="LayerRepairRemoveIslandsRecursiveIterations" Type="System.Int16" Scope="User">
|
||||
<Value Profile="(Default)">4</Value>
|
||||
</Setting>
|
||||
<Setting Name="LoadDemoFileOnStartup" Type="System.Boolean" Scope="User">
|
||||
<Value Profile="(Default)">True</Value>
|
||||
</Setting>
|
||||
</Settings>
|
||||
</SettingsFile>
|
||||
@@ -192,6 +192,12 @@
|
||||
<Compile Include="Controls\Tools\CtrlToolEditEditParameters.Designer.cs">
|
||||
<DependentUpon>CtrlToolEditEditParameters.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Controls\Tools\CtrlToolCalculator.cs">
|
||||
<SubType>UserControl</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Controls\Tools\CtrlToolCalculator.Designer.cs">
|
||||
<DependentUpon>CtrlToolCalculator.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Controls\Tools\CtrlToolRepairLayers.cs">
|
||||
<SubType>UserControl</SubType>
|
||||
</Compile>
|
||||
@@ -368,6 +374,9 @@
|
||||
<EmbeddedResource Include="Controls\Tools\CtrlToolEditEditParameters.resx">
|
||||
<DependentUpon>CtrlToolEditEditParameters.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="Controls\Tools\CtrlToolCalculator.resx">
|
||||
<DependentUpon>CtrlToolCalculator.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="Controls\Tools\CtrlToolRepairLayers.resx">
|
||||
<DependentUpon>CtrlToolRepairLayers.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
@@ -463,6 +472,10 @@
|
||||
<None Include="..\README.md">
|
||||
<Link>README.md</Link>
|
||||
</None>
|
||||
<None Include="..\UVtools.CAD\UVtools_demo_file.sl1">
|
||||
<Link>UVtools_demo_file.sl1</Link>
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="packages.config" />
|
||||
<None Include="Properties\Settings.settings">
|
||||
<Generator>SettingsSingleFileGenerator</Generator>
|
||||
@@ -522,6 +535,7 @@
|
||||
<None Include="Images\sync-16x16.png" />
|
||||
<None Include="Images\object-group-16x16.png" />
|
||||
<None Include="Images\square-root-16x16.png" />
|
||||
<None Include="Images\calculator-16x16.png" />
|
||||
<Content Include="Resources\pixel_edit.cur" />
|
||||
<Content Include="UVtools.ico" />
|
||||
<None Include="UVtools.png" />
|
||||
|
||||
Reference in New Issue
Block a user