mirror of
https://github.com/riegera2412/UVtools.git
synced 2026-07-08 17:42:31 +02:00
v3.6.6
- **UI:** - (Improvement) Auto show a horizontal scroll bar on wider than screen contents on the tool windows - (Improvement) Move normal windows to zero position if negative and auto constrain height if necessary - (Improvement) Set a minimum width and minimum height for tool windows - (Fix) Setting - "Allow resize the tool windows" had been lost and no effect when checked - (Add) Windows MSI - Option: Add installation directory to system PATH environment variable - (Improvement) Better fetch of UVtools.Core.dll on PowerShell scripts under Windows - (Improvement) Better handling in get the process output, this fixes processor name not being shown on macOS
This commit is contained in:
+15
-4
@@ -1,12 +1,23 @@
|
||||
# Changelog
|
||||
|
||||
## 20/09/2022 - v3.6.6
|
||||
|
||||
- **UI:**
|
||||
- (Improvement) Auto show a horizontal scroll bar on wider than screen contents on the tool windows
|
||||
- (Improvement) Move normal windows to zero position if negative and auto constrain height if necessary
|
||||
- (Improvement) Set a minimum width and minimum height for tool windows
|
||||
- (Fix) Setting - "Allow resize the tool windows" had been lost and no effect when checked
|
||||
- (Add) Windows MSI - Option: Add installation directory to system PATH environment variable
|
||||
- (Improvement) Better fetch of UVtools.Core.dll on PowerShell scripts under Windows
|
||||
- (Improvement) Better handling in get the process output, this fixes processor name not being shown on macOS
|
||||
|
||||
## 18/09/2022 - v3.6.5
|
||||
|
||||
- **UI:**
|
||||
- (Add) Groups to convert menu
|
||||
- (Improvement) Re-arrange convert menu order
|
||||
- (Fix) Settings: Open file dialog filter dropdown width
|
||||
- (Fix) Hide "Debug tools" from "Help" menu
|
||||
- (Add) Groups to convert menu
|
||||
- (Improvement) Re-arrange convert menu order
|
||||
- (Fix) Settings: Open file dialog filter dropdown width
|
||||
- (Fix) Hide "Debug tools" from "Help" menu
|
||||
- **PrusaSlicer:**
|
||||
- (Add) AnyCubic Photon D2
|
||||
- (Add) Creality Halot Ray CL925
|
||||
|
||||
+7
-12
@@ -1,14 +1,9 @@
|
||||
- **UI:**
|
||||
- (Add) Groups to convert menu
|
||||
- (Improvement) Re-arrange convert menu order
|
||||
- (Fix) Settings: Open file dialog filter dropdown width
|
||||
- **PrusaSlicer:**
|
||||
- (Add) AnyCubic Photon D2
|
||||
- (Add) Creality Halot Ray CL925
|
||||
- (Add) Elegoo Saturn 8K
|
||||
- (Add) Uniformation GKtwo
|
||||
- (Add) Nova3D Whale3 Pro
|
||||
- (Add) Phrozen Sonic Mighty 8K
|
||||
- (Add) AnyCubic Photon D2 (.dl2p) compatibility to AnyCubic file format
|
||||
- (Fix) Hide "Debug tools" from "Help" menu
|
||||
- (Improvement) Auto show a horizontal scroll bar on wider than screen contents on the tool windows
|
||||
- (Improvement) Move normal windows to zero position if negative and auto constrain height if necessary
|
||||
- (Improvement) Set a minimum width and minimum height for tool windows
|
||||
- (Fix) Setting - "Allow resize the tool windows" had been lost and no effect when checked
|
||||
- (Add) Windows MSI - Option: Add installation directory to system PATH environment variable
|
||||
- (Improvement) Better fetch of UVtools.Core.dll on PowerShell scripts under Windows
|
||||
- (Improvement) Better handling in get the process output, this fixes processor name not being shown on macOS
|
||||
|
||||
|
||||
@@ -42,17 +42,38 @@ Write-Output "Version: $_VERSION"
|
||||
Write-Output "###############################################"
|
||||
|
||||
try{
|
||||
if(Test-Path "$Env:UVTOOLS_PATH${dirSeparator}${coreDll}" -PathType Leaf){
|
||||
Add-Type -Path "$Env:UVTOOLS_PATH${dirSeparator}${coreDll}"
|
||||
$coreDllFullPath = $null
|
||||
if(Test-Path "${coreDll}" -PathType Leaf){
|
||||
$coreDllFullPath = "${coreDll}"
|
||||
}
|
||||
elseif(Test-Path "$Env:UVTOOLS_PATH${dirSeparator}${coreDll}" -PathType Leaf){
|
||||
$coreDllFullPath = "$Env:UVTOOLS_PATH${dirSeparator}${coreDll}"
|
||||
}
|
||||
elseif(Test-Path "${_CORE_PATH}${dirSeparator}${coreDll}" -PathType Leaf) {
|
||||
Add-Type -Path "${_CORE_PATH}${dirSeparator}${coreDll}"
|
||||
$coreDllFullPath = "${_CORE_PATH}${dirSeparator}${coreDll}"
|
||||
} else {
|
||||
if($IsWindows) {
|
||||
$UVtoolsInstallDirReg = Get-ItemProperty -Path HKCU:\Software\UVtools -Name InstallDir -ErrorAction SilentlyContinue
|
||||
if($UVtoolsInstallDirReg -and $UVtoolsInstallDirReg.InstallDir -and (Test-Path "$($UVtoolsInstallDirReg.InstallDir)${coreDll}" -PathType Leaf)) {
|
||||
$coreDllFullPath = "$($UVtoolsInstallDirReg.InstallDir)${coreDll}"
|
||||
}else{
|
||||
foreach ($path in $Env:Path.Split(';')){
|
||||
if (!$path.EndsWith('UVtools\') -and !(Test-Path "${path}${coreDll}" -PathType Leaf)) {continue}
|
||||
$coreDllFullPath = "${path}${coreDll}"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if($coreDllFullPath){
|
||||
Add-Type -Path "${coreDllFullPath}"
|
||||
}
|
||||
else {
|
||||
Write-Error "Unable to find $coreDll, solutions are:
|
||||
1) Open powershell with admin and run: [System.Environment]::SetEnvironmentVariable('UVTOOLS_PATH','FOLDER/PATH/TO/UVTOOLS', [System.EnvironmentVariableTarget]::User)
|
||||
2) Edit the script and set the _CORE_PATH variable with the FOLDER/PATH/TO/UVTOOLS
|
||||
Path example: 'C:\Program Files (x86)\UVtools'
|
||||
Exiting now!"
|
||||
1) Open powershell with admin and run: [System.Environment]::SetEnvironmentVariable('UVTOOLS_PATH','FOLDER/PATH/TO/UVTOOLS', [System.EnvironmentVariableTarget]::User)
|
||||
2) Edit the script and set the _CORE_PATH variable with the FOLDER/PATH/TO/UVTOOLS
|
||||
Path example: 'C:\Program Files (x86)\UVtools'
|
||||
Exiting now!"
|
||||
return
|
||||
}
|
||||
|
||||
|
||||
@@ -42,17 +42,38 @@ Write-Output "Version: $_VERSION"
|
||||
Write-Output "###############################################"
|
||||
|
||||
try{
|
||||
if(Test-Path "$Env:UVTOOLS_PATH${dirSeparator}${coreDll}" -PathType Leaf){
|
||||
Add-Type -Path "$Env:UVTOOLS_PATH${dirSeparator}${coreDll}"
|
||||
$coreDllFullPath = $null
|
||||
if(Test-Path "${coreDll}" -PathType Leaf){
|
||||
$coreDllFullPath = "${coreDll}"
|
||||
}
|
||||
elseif(Test-Path "$Env:UVTOOLS_PATH${dirSeparator}${coreDll}" -PathType Leaf){
|
||||
$coreDllFullPath = "$Env:UVTOOLS_PATH${dirSeparator}${coreDll}"
|
||||
}
|
||||
elseif(Test-Path "${_CORE_PATH}${dirSeparator}${coreDll}" -PathType Leaf) {
|
||||
Add-Type -Path "${_CORE_PATH}${dirSeparator}${coreDll}"
|
||||
$coreDllFullPath = "${_CORE_PATH}${dirSeparator}${coreDll}"
|
||||
} else {
|
||||
if($IsWindows) {
|
||||
$UVtoolsInstallDirReg = Get-ItemProperty -Path HKCU:\Software\UVtools -Name InstallDir -ErrorAction SilentlyContinue
|
||||
if($UVtoolsInstallDirReg -and $UVtoolsInstallDirReg.InstallDir -and (Test-Path "$($UVtoolsInstallDirReg.InstallDir)${coreDll}" -PathType Leaf)) {
|
||||
$coreDllFullPath = "$($UVtoolsInstallDirReg.InstallDir)${coreDll}"
|
||||
}else{
|
||||
foreach ($path in $Env:Path.Split(';')){
|
||||
if (!$path.EndsWith('UVtools\') -and !(Test-Path "${path}${coreDll}" -PathType Leaf)) {continue}
|
||||
$coreDllFullPath = "${path}${coreDll}"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if($coreDllFullPath){
|
||||
Add-Type -Path "${coreDllFullPath}"
|
||||
}
|
||||
else {
|
||||
Write-Error "Unable to find $coreDll, solutions are:
|
||||
1) Open powershell with admin and run: [System.Environment]::SetEnvironmentVariable('UVTOOLS_PATH','FOLDER/PATH/TO/UVTOOLS', [System.EnvironmentVariableTarget]::User)
|
||||
2) Edit the script and set the _CORE_PATH variable with the FOLDER/PATH/TO/UVTOOLS
|
||||
Path example: 'C:\Program Files (x86)\UVtools'
|
||||
Exiting now!"
|
||||
1) Open powershell with admin and run: [System.Environment]::SetEnvironmentVariable('UVTOOLS_PATH','FOLDER/PATH/TO/UVTOOLS', [System.EnvironmentVariableTarget]::User)
|
||||
2) Edit the script and set the _CORE_PATH variable with the FOLDER/PATH/TO/UVTOOLS
|
||||
Path example: 'C:\Program Files (x86)\UVtools'
|
||||
Exiting now!"
|
||||
return
|
||||
}
|
||||
|
||||
|
||||
@@ -8,9 +8,9 @@ You will get same performance as native calling, plus you can stack all your act
|
||||
|
||||
## Requirements
|
||||
|
||||
* UVtools
|
||||
* [PowerShell >= 7.1](https://github.com/PowerShell/PowerShell/releases)
|
||||
* [Visual Studio Code](https://code.visualstudio.com/) (Optional but easier to run and edit scripts)
|
||||
- UVtools
|
||||
- [PowerShell >= 7.1](https://github.com/PowerShell/PowerShell/releases)
|
||||
- [Visual Studio Code](https://code.visualstudio.com/) (Optional but easier to run and edit scripts)
|
||||
|
||||
## How to run scripts
|
||||
|
||||
@@ -18,21 +18,21 @@ You will get same performance as native calling, plus you can stack all your act
|
||||
Never run scripts from untrusted sources! Always inspect the script content before run something new from others.
|
||||
Always try to run scripts with non-adminstration privileges.
|
||||
|
||||
1. First you need to register the UVtools install directory under a environment variable. This will
|
||||
1. First and if not on Windows you need to register the UVtools install directory under a environment variable. This will
|
||||
allow you to run scripts without have to modify each script to put the UVtools path in order to run them.
|
||||
* Open a PowerShell instance as admin
|
||||
* Enter: `[System.Environment]::SetEnvironmentVariable('UVTOOLS_PATH','FOLDER/PATH/TO/UVTOOLS', [System.EnvironmentVariableTarget]::User)`
|
||||
* Replace 'FOLDER/PATH/TO/UVTOOLS' with your UVtools instalation folder
|
||||
* Run command
|
||||
* Run: `$Env:UVTOOLS_PATH` to confirm if path is registed
|
||||
* Quit terminal
|
||||
* Note: You need to repeat this step if you change install directory
|
||||
* If your system is unable to register a environment you need to manuall set the path on each script
|
||||
- Open a PowerShell instance as admin
|
||||
- Enter: `[System.Environment]::SetEnvironmentVariable('UVTOOLS_PATH','FOLDER/PATH/TO/UVTOOLS', [System.EnvironmentVariableTarget]::User)`
|
||||
- Replace 'FOLDER/PATH/TO/UVTOOLS' with your UVtools instalation folder
|
||||
- Run command
|
||||
- Run: `$Env:UVTOOLS_PATH` to confirm if path is registed
|
||||
- Quit terminal
|
||||
- Note: You need to repeat this step if you change install directory
|
||||
- If your system is unable to register a environment you need to manuall set the path on each script
|
||||
2. Download and open a script with Visual Studio Code
|
||||
* After open a .ps1 file for the first time, visual code will ask if you want to install the PowerShell extension, say 'yes' and wait for instalation
|
||||
- After open a .ps1 file for the first time, visual code will ask if you want to install the PowerShell extension, say 'yes' and wait for instalation
|
||||
3. Click on the play arrow (Run) or F5
|
||||
4. Script will run and prompt for inputs
|
||||
* The easier way to input a file is drag and drop the file on the terminal
|
||||
- The easier way to input a file is drag and drop the file on the terminal
|
||||
|
||||
## Documentation
|
||||
|
||||
@@ -45,9 +45,9 @@ eg: `$slicerFile.`, if the list don't show up, press CTRL+Space, that should for
|
||||
Take **[Erode-Bottom.ps1](https://github.com/sn4k3/UVtools/blob/master/UVtools.Scripts/Erode-Bottom.ps1)** as bootstrap and minimal script, read each line and start exploring!
|
||||
|
||||
|
||||
* [Core - Source code](https://github.com/sn4k3/UVtools/tree/master/UVtools.Core)
|
||||
* [FileFormat.cs - File format functions & variables](https://github.com/sn4k3/UVtools/blob/master/UVtools.Core/FileFormats/FileFormat.cs)
|
||||
* How to load file:
|
||||
- [Core - Source code](https://github.com/sn4k3/UVtools/tree/master/UVtools.Core)
|
||||
- [FileFormat.cs - File format functions & variables](https://github.com/sn4k3/UVtools/blob/master/UVtools.Core/FileFormats/FileFormat.cs)
|
||||
- How to load file:
|
||||
```Powershell
|
||||
# Find a file format given a file path, $true = is file path, $true = Create a new instance
|
||||
# Returns null if file is invalid
|
||||
@@ -55,12 +55,12 @@ Take **[Erode-Bottom.ps1](https://github.com/sn4k3/UVtools/blob/master/UVtools.S
|
||||
if(!$slicerFile){ return } # Invalid file, exit
|
||||
$slicerFile.Decode($inputFile)
|
||||
```
|
||||
* [Layer.cs - Layer representation and hold it's own data](https://github.com/sn4k3/UVtools/blob/master/UVtools.Core/Layer/Layer.cs)
|
||||
* How to access:
|
||||
* `$slicerFile[layerIndex]`
|
||||
* `$slicerFile.LayerManager[layerIndex]` (Alternative)
|
||||
* `$slicerFile.LayerManager.Layers[layerIndex]` (Alternative)
|
||||
* Example:
|
||||
- [Layer.cs - Layer representation and hold it's own data](https://github.com/sn4k3/UVtools/blob/master/UVtools.Core/Layer/Layer.cs)
|
||||
- How to access:
|
||||
- `$slicerFile[layerIndex]`
|
||||
- `$slicerFile.LayerManager[layerIndex]` (Alternative)
|
||||
- `$slicerFile.LayerManager.Layers[layerIndex]` (Alternative)
|
||||
- Example:
|
||||
```Powershell
|
||||
Write-Output $slicerFile[layerIndex].PositionZ
|
||||
Write-Output $slicerFile[layerIndex].ExposureTime
|
||||
@@ -73,10 +73,10 @@ Take **[Erode-Bottom.ps1](https://github.com/sn4k3/UVtools/blob/master/UVtools.S
|
||||
Write-Output $slicerFile[layerIndex].NonZeroPixelCount
|
||||
Write-Output $slicerFile[layerIndex].IsModified
|
||||
```
|
||||
* [LayerManager.cs - The layer manager that keeps all layers within the file](https://github.com/sn4k3/UVtools/blob/master/UVtools.Core/Layer/LayerManager.cs)
|
||||
* How to access: `$slicerFile.LayerManager`
|
||||
* [Operations - Applies operation over layers, the tools menu on the GUI](https://github.com/sn4k3/UVtools/tree/master/UVtools.Core/Operations)
|
||||
* Example:
|
||||
- [LayerManager.cs - The layer manager that keeps all layers within the file](https://github.com/sn4k3/UVtools/blob/master/UVtools.Core/Layer/LayerManager.cs)
|
||||
- How to access: `$slicerFile.LayerManager`
|
||||
- [Operations - Applies operation over layers, the tools menu on the GUI](https://github.com/sn4k3/UVtools/tree/master/UVtools.Core/Operations)
|
||||
- Example:
|
||||
```Powershell
|
||||
# Erode bottom layers
|
||||
$morph = [UVtools.Core.Operations.OperationMorph]::new($slicerFile)
|
||||
|
||||
@@ -165,11 +165,6 @@ public static class SystemAware
|
||||
return key?.GetValue("ProcessorNameString")?.ToString();
|
||||
}
|
||||
|
||||
if (OperatingSystem.IsMacOS())
|
||||
{
|
||||
return GetProcessOutput("sysctl", "-n machdep.cpu.brand_string")?.TrimEnd('\r', '\n');
|
||||
}
|
||||
|
||||
if (OperatingSystem.IsLinux())
|
||||
{
|
||||
if (!File.Exists("/proc/cpuinfo")) return null;
|
||||
@@ -183,6 +178,11 @@ public static class SystemAware
|
||||
|
||||
return match.Groups[1].ToString();
|
||||
}
|
||||
|
||||
if (OperatingSystem.IsMacOS())
|
||||
{
|
||||
return GetProcessOutput("sysctl", "-n machdep.cpu.brand_string")?.TrimEnd('\r', '\n');
|
||||
}
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
@@ -270,22 +270,93 @@ public static class SystemAware
|
||||
return OperatingSystem.IsWindows() ? $"{executable}.exe" : executable;
|
||||
}
|
||||
|
||||
public static string? GetProcessOutput(string filename, string? arguments = null)
|
||||
public static (string standardOutput, string errorOutput) GetProcessOutputWithErrors(string filename, string? arguments = null, string? workingDirectory = null, int timeout = Timeout.Infinite)
|
||||
{
|
||||
using var proc = Process.Start(new ProcessStartInfo
|
||||
{
|
||||
FileName = filename,
|
||||
Arguments = arguments,
|
||||
RedirectStandardOutput = true,
|
||||
UseShellExecute = false,
|
||||
});
|
||||
if (proc is null) return null;
|
||||
var stringBuilder = new StringBuilder();
|
||||
while (!proc.HasExited)
|
||||
{
|
||||
stringBuilder.Append(proc.StandardOutput.ReadToEnd());
|
||||
}
|
||||
using var process = new Process();
|
||||
process.StartInfo.WorkingDirectory = workingDirectory;
|
||||
process.StartInfo.FileName = filename;
|
||||
process.StartInfo.Arguments = arguments;
|
||||
process.StartInfo.CreateNoWindow = true;
|
||||
process.StartInfo.RedirectStandardOutput = true;
|
||||
process.StartInfo.RedirectStandardError = true;
|
||||
process.StartInfo.UseShellExecute = false;
|
||||
|
||||
var standardOutput = new StringBuilder();
|
||||
var errorOutput = new StringBuilder();
|
||||
|
||||
|
||||
using var outputWaitHandle = new AutoResetEvent(false);
|
||||
using var errorWaitHandle = new AutoResetEvent(false);
|
||||
|
||||
process.OutputDataReceived += (sender, e) =>
|
||||
{
|
||||
if (e.Data is null)
|
||||
{
|
||||
outputWaitHandle.Set();
|
||||
}
|
||||
else
|
||||
{
|
||||
standardOutput.AppendLine(e.Data);
|
||||
}
|
||||
};
|
||||
|
||||
process.ErrorDataReceived += (sender, e) =>
|
||||
{
|
||||
if (e.Data is null)
|
||||
{
|
||||
errorWaitHandle.Set();
|
||||
}
|
||||
else
|
||||
{
|
||||
errorOutput.AppendLine(e.Data);
|
||||
}
|
||||
};
|
||||
|
||||
process.Start();
|
||||
|
||||
process.BeginErrorReadLine();
|
||||
process.BeginOutputReadLine();
|
||||
|
||||
process.WaitForExit(timeout);
|
||||
outputWaitHandle.WaitOne(timeout);
|
||||
errorWaitHandle.WaitOne(timeout);
|
||||
|
||||
return (standardOutput.ToString(), errorOutput.ToString());
|
||||
}
|
||||
|
||||
public static string GetProcessOutput(string filename, string? arguments = null, string? workingDirectory = null, int timeout = Timeout.Infinite)
|
||||
{
|
||||
using var process = new Process();
|
||||
process.StartInfo.WorkingDirectory = workingDirectory;
|
||||
process.StartInfo.FileName = filename;
|
||||
process.StartInfo.Arguments = arguments;
|
||||
process.StartInfo.CreateNoWindow = true;
|
||||
process.StartInfo.RedirectStandardOutput = true;
|
||||
process.StartInfo.UseShellExecute = false;
|
||||
|
||||
var stringBuilder = new StringBuilder();
|
||||
|
||||
using var outputWaitHandle = new AutoResetEvent(false);
|
||||
|
||||
process.OutputDataReceived += (sender, e) =>
|
||||
{
|
||||
if (e.Data is null)
|
||||
{
|
||||
outputWaitHandle.Set();
|
||||
}
|
||||
else
|
||||
{
|
||||
stringBuilder.AppendLine(e.Data);
|
||||
}
|
||||
};
|
||||
|
||||
process.Start();
|
||||
|
||||
process.BeginOutputReadLine();
|
||||
|
||||
process.WaitForExit(timeout);
|
||||
outputWaitHandle.WaitOne(timeout);
|
||||
|
||||
return stringBuilder.ToString();
|
||||
}
|
||||
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
<RepositoryUrl>https://github.com/sn4k3/UVtools</RepositoryUrl>
|
||||
<PackageProjectUrl>https://github.com/sn4k3/UVtools</PackageProjectUrl>
|
||||
<Description>MSLA/DLP, file analysis, calibration, repair, conversion and manipulation</Description>
|
||||
<Version>3.6.5</Version>
|
||||
<Version>3.6.6</Version>
|
||||
<Copyright>Copyright © 2020 PTRTECH</Copyright>
|
||||
<PackageIcon>UVtools.png</PackageIcon>
|
||||
<Platforms>AnyCPU;x64</Platforms>
|
||||
|
||||
@@ -395,6 +395,9 @@
|
||||
<Component Id="cmp4CA8A8377EC5F30AF1C8BF2ABE2B916B" Guid="*">
|
||||
<File Id="filF574BF00EFD9442D9E5911559F8D7CB3" KeyPath="yes" Source="$(var.HarvestPath)\System.Collections.Specialized.dll" />
|
||||
</Component>
|
||||
<Component Id="cmp3B9C9B9385920A10BBA478F4EB3B7ACD" Guid="*">
|
||||
<File Id="fil88E781372CFBEE069440964A1F323BF4" KeyPath="yes" Source="$(var.HarvestPath)\System.CommandLine.dll" />
|
||||
</Component>
|
||||
<Component Id="cmp86FA15ED6758AB64222C7B872722AE2A" Guid="*">
|
||||
<File Id="fil4462620259C842921061439D47904D07" KeyPath="yes" Source="$(var.HarvestPath)\System.ComponentModel.Annotations.dll" />
|
||||
</Component>
|
||||
@@ -896,6 +899,21 @@
|
||||
<Component Id="cmp10FE7896CFCD38A6CD8142CE0A08210B" Guid="*">
|
||||
<File Id="filE27A63E22148F18A6C0CC29BC2B31930" KeyPath="yes" Source="$(var.HarvestPath)\UVtools.sh" />
|
||||
</Component>
|
||||
<Component Id="cmpA5EF28FE13D2F5A6BF7F313B516C07FF" Guid="*">
|
||||
<File Id="fil93951F99F1262E05D49777984D888E67" KeyPath="yes" Source="$(var.HarvestPath)\UVtoolsCmd.deps.json" />
|
||||
</Component>
|
||||
<Component Id="cmp0689D02B3B151F4009E983276282DEB8" Guid="*">
|
||||
<File Id="filA84B1BA77A184C68087EC604EB5B9C1C" KeyPath="yes" Source="$(var.HarvestPath)\UVtoolsCmd.dll" />
|
||||
</Component>
|
||||
<Component Id="cmp599EF0BF15905A04DD89A2D533A560CE" Guid="*">
|
||||
<File Id="fil230DE403941FD431769F78376288092D" KeyPath="yes" Source="$(var.HarvestPath)\UVtoolsCmd.exe" />
|
||||
</Component>
|
||||
<Component Id="cmp3E7487FC5691D74F45793AEDB7DA0615" Guid="*">
|
||||
<File Id="filC909C604D80638D8DF2CD3DFD6ED880F" KeyPath="yes" Source="$(var.HarvestPath)\UVtoolsCmd.pdb" />
|
||||
</Component>
|
||||
<Component Id="cmp0FE8807B1234A038F2E65D7F13679252" Guid="*">
|
||||
<File Id="filF4D8BF038F9BF7DFF32BFC101F0D8C64" KeyPath="yes" Source="$(var.HarvestPath)\UVtoolsCmd.runtimeconfig.json" />
|
||||
</Component>
|
||||
<Component Id="cmp6A53CEABB3F189BA4137E2F343C2BDED" Guid="*">
|
||||
<File Id="filEB1D097EE95ECA4245C95B68206CCF6B" KeyPath="yes" Source="$(var.HarvestPath)\UVtools_demo_file.sl1" />
|
||||
</Component>
|
||||
@@ -1348,6 +1366,9 @@
|
||||
<Component Id="cmp37322184723F32E87C32C6657838819B" Guid="*">
|
||||
<File Id="fil4D20B50559B84222B72C88ECD59231E8" KeyPath="yes" Source="$(var.HarvestPath)\cs\Microsoft.CodeAnalysis.Scripting.resources.dll" />
|
||||
</Component>
|
||||
<Component Id="cmpB9BB68262D6F364DB61C2FD54DBEC5C6" Guid="*">
|
||||
<File Id="filEE0D5F74D4CD51B10AEEE02C2F12161A" KeyPath="yes" Source="$(var.HarvestPath)\cs\System.CommandLine.resources.dll" />
|
||||
</Component>
|
||||
</Directory>
|
||||
<Directory Id="dir242DC17B8DFC53C13CAF172FC08B730A" Name="de">
|
||||
<Component Id="cmp85D8AE1A380C35C1F931FDA83B69C206" Guid="*">
|
||||
@@ -1362,6 +1383,9 @@
|
||||
<Component Id="cmpF8FBE43A8EA39C78103156EADA7945B6" Guid="*">
|
||||
<File Id="fil7B754F5D8B3AF0FF84798ECEB66F230E" KeyPath="yes" Source="$(var.HarvestPath)\de\Microsoft.CodeAnalysis.Scripting.resources.dll" />
|
||||
</Component>
|
||||
<Component Id="cmp9C9F9A8C48E144F01800F7BE0B23E099" Guid="*">
|
||||
<File Id="filD5311452B32D096826D32259CC06C429" KeyPath="yes" Source="$(var.HarvestPath)\de\System.CommandLine.resources.dll" />
|
||||
</Component>
|
||||
</Directory>
|
||||
<Directory Id="dir9AE38F4F5CB5E565E774521E138F44FD" Name="es">
|
||||
<Component Id="cmpA138D05BA7C9460CAD63D20A63C165EE" Guid="*">
|
||||
@@ -1376,6 +1400,9 @@
|
||||
<Component Id="cmp3B1E5DA2C5015F32B4CAC36177A0AD6C" Guid="*">
|
||||
<File Id="fil82066FEF1F56A4BE328F9A51416BB8CF" KeyPath="yes" Source="$(var.HarvestPath)\es\Microsoft.CodeAnalysis.Scripting.resources.dll" />
|
||||
</Component>
|
||||
<Component Id="cmpE16B65E6AF1BF0C046FEF89E6D8AA2D0" Guid="*">
|
||||
<File Id="fil45C8D9ACD13BF45C1E1214CE86BB3AF4" KeyPath="yes" Source="$(var.HarvestPath)\es\System.CommandLine.resources.dll" />
|
||||
</Component>
|
||||
</Directory>
|
||||
<Directory Id="dirB55DFDA91FEE7CCCBC65CA7493B75748" Name="fr">
|
||||
<Component Id="cmp02F007F6E349BF1E45B754BBDA475E79" Guid="*">
|
||||
@@ -1390,6 +1417,9 @@
|
||||
<Component Id="cmp0B5CBD1C9582ED64279F4795FCF6FD94" Guid="*">
|
||||
<File Id="filF1C818BF553CE0B1EC73EDB71B6C4A44" KeyPath="yes" Source="$(var.HarvestPath)\fr\Microsoft.CodeAnalysis.Scripting.resources.dll" />
|
||||
</Component>
|
||||
<Component Id="cmpD46F44A1C6353143CAEEA32D23C705D2" Guid="*">
|
||||
<File Id="fil7CC5CACB4A01C88FB3527EFFFC7B01C0" KeyPath="yes" Source="$(var.HarvestPath)\fr\System.CommandLine.resources.dll" />
|
||||
</Component>
|
||||
</Directory>
|
||||
<Directory Id="dir45DE18DD71F3E8DD6BE4A0E2B48778C8" Name="it">
|
||||
<Component Id="cmp102B5DCE898C00C320BA06B659830D47" Guid="*">
|
||||
@@ -1404,6 +1434,9 @@
|
||||
<Component Id="cmp3687991C08BE7AEF0C4FA46A5908C16C" Guid="*">
|
||||
<File Id="fil38D4054D95423E588065E5F96ADDF13E" KeyPath="yes" Source="$(var.HarvestPath)\it\Microsoft.CodeAnalysis.Scripting.resources.dll" />
|
||||
</Component>
|
||||
<Component Id="cmp05678FE6EC643214A6A8D23DFA7AE822" Guid="*">
|
||||
<File Id="fil46DDA9E5EDB260BE4E8E7CA5CF3A8B0F" KeyPath="yes" Source="$(var.HarvestPath)\it\System.CommandLine.resources.dll" />
|
||||
</Component>
|
||||
</Directory>
|
||||
<Directory Id="dir997B58958EFAE06BB705E870622AB899" Name="ja">
|
||||
<Component Id="cmp30BCC02AA5E2FFB6E2A18CE70A2036D7" Guid="*">
|
||||
@@ -1418,6 +1451,9 @@
|
||||
<Component Id="cmp8F0AFDC4BB2EF3A1B85A68C7C34278A2" Guid="*">
|
||||
<File Id="fil84C91A88F7718550B6C87B85346ED7CC" KeyPath="yes" Source="$(var.HarvestPath)\ja\Microsoft.CodeAnalysis.Scripting.resources.dll" />
|
||||
</Component>
|
||||
<Component Id="cmpC8398AF47E20A91750FDB27E2EA845AC" Guid="*">
|
||||
<File Id="fil9615928A77FBA265BD5D69D1D9DB4022" KeyPath="yes" Source="$(var.HarvestPath)\ja\System.CommandLine.resources.dll" />
|
||||
</Component>
|
||||
</Directory>
|
||||
<Directory Id="dirF152986C1E6339E5EF84FD1370841521" Name="ko">
|
||||
<Component Id="cmpE8F42607C46BFC0A18FABF940AD6FA25" Guid="*">
|
||||
@@ -1432,6 +1468,9 @@
|
||||
<Component Id="cmp5E4B200F1A4C5FDBA941BAF5A85D0253" Guid="*">
|
||||
<File Id="fil55C442AE2ED96907CCC78BA2BDCA17BA" KeyPath="yes" Source="$(var.HarvestPath)\ko\Microsoft.CodeAnalysis.Scripting.resources.dll" />
|
||||
</Component>
|
||||
<Component Id="cmpEC42E1B66622887B11916A3BC8B33433" Guid="*">
|
||||
<File Id="filCD3BD6B25561E25694B08D153B29EFBE" KeyPath="yes" Source="$(var.HarvestPath)\ko\System.CommandLine.resources.dll" />
|
||||
</Component>
|
||||
</Directory>
|
||||
<Directory Id="dirB6C57608593BDEA87B90E388CF59E0E8" Name="pl">
|
||||
<Component Id="cmp453447E5E1D259CC610930DA5FCA889C" Guid="*">
|
||||
@@ -1446,6 +1485,9 @@
|
||||
<Component Id="cmp094C979D272BA58FE5C8614401B2D2A2" Guid="*">
|
||||
<File Id="fil6CA57BE7F80EFE1450E7B9C52ABA6D4A" KeyPath="yes" Source="$(var.HarvestPath)\pl\Microsoft.CodeAnalysis.Scripting.resources.dll" />
|
||||
</Component>
|
||||
<Component Id="cmp8BBB7575523A411E8D4A3305EA653BDC" Guid="*">
|
||||
<File Id="filA670FDDC078C32CB187D51BB0A60BF2B" KeyPath="yes" Source="$(var.HarvestPath)\pl\System.CommandLine.resources.dll" />
|
||||
</Component>
|
||||
</Directory>
|
||||
<Directory Id="dir339F53F3A11C56B053FD1FEC9B438810" Name="pt-BR">
|
||||
<Component Id="cmpDD32D43AD2385F827B9330031F55CD10" Guid="*">
|
||||
@@ -1460,6 +1502,9 @@
|
||||
<Component Id="cmp132B1ECF6D51D06422F1B26490EBC9A1" Guid="*">
|
||||
<File Id="fil68EA4B6BF7BDB77D2A744F52DDC9381C" KeyPath="yes" Source="$(var.HarvestPath)\pt-BR\Microsoft.CodeAnalysis.Scripting.resources.dll" />
|
||||
</Component>
|
||||
<Component Id="cmp4A7E19170CD7F50BA4AECCF1C62DC983" Guid="*">
|
||||
<File Id="fil5C04C0B35A0A57FDB5643C5615D3B4EB" KeyPath="yes" Source="$(var.HarvestPath)\pt-BR\System.CommandLine.resources.dll" />
|
||||
</Component>
|
||||
</Directory>
|
||||
<Directory Id="dirE9205C68F964857267FD3312DBFF9A91" Name="ru">
|
||||
<Component Id="cmpDEC9D2448E75375534A64A2FFFB8ECA4" Guid="*">
|
||||
@@ -1474,6 +1519,9 @@
|
||||
<Component Id="cmpABF8AB076AB25BF4F6F5883694AD5666" Guid="*">
|
||||
<File Id="fil20DBAB512840A8C954468CD79D885C1F" KeyPath="yes" Source="$(var.HarvestPath)\ru\Microsoft.CodeAnalysis.Scripting.resources.dll" />
|
||||
</Component>
|
||||
<Component Id="cmp564C80D36F172E4317802E9007BA888A" Guid="*">
|
||||
<File Id="filB92D9079553F7B3842DD6DC9CADCE294" KeyPath="yes" Source="$(var.HarvestPath)\ru\System.CommandLine.resources.dll" />
|
||||
</Component>
|
||||
</Directory>
|
||||
<Directory Id="dirE562A4656FE03253EA39D17E8127BA05" Name="tr">
|
||||
<Component Id="cmpD055CD4BE37AC69A6C3179A8EF50014E" Guid="*">
|
||||
@@ -1488,6 +1536,9 @@
|
||||
<Component Id="cmp8149269E4085AD11DCE2CEB24D0B5146" Guid="*">
|
||||
<File Id="fil3DF355F8336F9F39F805899775DE103D" KeyPath="yes" Source="$(var.HarvestPath)\tr\Microsoft.CodeAnalysis.Scripting.resources.dll" />
|
||||
</Component>
|
||||
<Component Id="cmp751198041C5687C4EC51BBF3F1DFD15B" Guid="*">
|
||||
<File Id="fil5CAAF4FE2EB27D38B0562D3D9C41C3EA" KeyPath="yes" Source="$(var.HarvestPath)\tr\System.CommandLine.resources.dll" />
|
||||
</Component>
|
||||
</Directory>
|
||||
<Directory Id="dir4A8DD77DBC79775EC39CACBC8AA06107" Name="zh-Hans">
|
||||
<Component Id="cmpE74E1BFCBF5DAF24230ADED9F41CA273" Guid="*">
|
||||
@@ -1502,6 +1553,9 @@
|
||||
<Component Id="cmp8A90A0DA436254684AFD659A0EC91C6F" Guid="*">
|
||||
<File Id="fil34568C9B0A854E7A3F600616A38EBE44" KeyPath="yes" Source="$(var.HarvestPath)\zh-Hans\Microsoft.CodeAnalysis.Scripting.resources.dll" />
|
||||
</Component>
|
||||
<Component Id="cmpCA421AD9C018D39263D035C87777C6DD" Guid="*">
|
||||
<File Id="fil1CEBED6A1CA0BF9A3062BC30EF913619" KeyPath="yes" Source="$(var.HarvestPath)\zh-Hans\System.CommandLine.resources.dll" />
|
||||
</Component>
|
||||
</Directory>
|
||||
<Directory Id="dir083BC4C92455CD933FA93376E7459C85" Name="zh-Hant">
|
||||
<Component Id="cmp572927903A3BC09BE84571AB3FCED87B" Guid="*">
|
||||
@@ -1516,6 +1570,9 @@
|
||||
<Component Id="cmp8007C403B2B0EE0CC6585944312D705B" Guid="*">
|
||||
<File Id="filB8835712DC63B7023A140F1026EE7FAE" KeyPath="yes" Source="$(var.HarvestPath)\zh-Hant\Microsoft.CodeAnalysis.Scripting.resources.dll" />
|
||||
</Component>
|
||||
<Component Id="cmp7D94C646F68C1D38D6249B8EF959C559" Guid="*">
|
||||
<File Id="fil6A5ACD3A20F080FD657B7596B83D8F5C" KeyPath="yes" Source="$(var.HarvestPath)\zh-Hant\System.CommandLine.resources.dll" />
|
||||
</Component>
|
||||
</Directory>
|
||||
</DirectoryRef>
|
||||
</Fragment>
|
||||
@@ -1652,6 +1709,7 @@
|
||||
<ComponentRef Id="cmp969F6EDF2594F3809D7A716387BF8894" />
|
||||
<ComponentRef Id="cmp1340CAF41213E899D78462CF580BF2AD" />
|
||||
<ComponentRef Id="cmp4CA8A8377EC5F30AF1C8BF2ABE2B916B" />
|
||||
<ComponentRef Id="cmp3B9C9B9385920A10BBA478F4EB3B7ACD" />
|
||||
<ComponentRef Id="cmp86FA15ED6758AB64222C7B872722AE2A" />
|
||||
<ComponentRef Id="cmp9556FA278AFE7EC69B499286701C47DD" />
|
||||
<ComponentRef Id="cmp912EE5CA7F0C138422055A3D0C240C38" />
|
||||
@@ -1819,6 +1877,11 @@
|
||||
<ComponentRef Id="cmpAB7F561FED8AF0E04BD19C1A49D60088" />
|
||||
<ComponentRef Id="cmp4A9972573F3D42E417332BD1AB8B12DF" />
|
||||
<ComponentRef Id="cmp10FE7896CFCD38A6CD8142CE0A08210B" />
|
||||
<ComponentRef Id="cmpA5EF28FE13D2F5A6BF7F313B516C07FF" />
|
||||
<ComponentRef Id="cmp0689D02B3B151F4009E983276282DEB8" />
|
||||
<ComponentRef Id="cmp599EF0BF15905A04DD89A2D533A560CE" />
|
||||
<ComponentRef Id="cmp3E7487FC5691D74F45793AEDB7DA0615" />
|
||||
<ComponentRef Id="cmp0FE8807B1234A038F2E65D7F13679252" />
|
||||
<ComponentRef Id="cmp6A53CEABB3F189BA4137E2F343C2BDED" />
|
||||
<ComponentRef Id="cmpF4BDAE8A068B7352141D703E6D5E677B" />
|
||||
<ComponentRef Id="cmpC45B25996E14AF1484591C266BD5D670" />
|
||||
@@ -1966,54 +2029,67 @@
|
||||
<ComponentRef Id="cmpDC3B50B369901B069599D5A9DCFC4737" />
|
||||
<ComponentRef Id="cmp567E1D848FA3F3C2D261218B840CB447" />
|
||||
<ComponentRef Id="cmp37322184723F32E87C32C6657838819B" />
|
||||
<ComponentRef Id="cmpB9BB68262D6F364DB61C2FD54DBEC5C6" />
|
||||
<ComponentRef Id="cmp85D8AE1A380C35C1F931FDA83B69C206" />
|
||||
<ComponentRef Id="cmp7EE71344283EBFAF4E0B746B0C65460D" />
|
||||
<ComponentRef Id="cmp9D0FF61921F53533FB2FB9D10155662D" />
|
||||
<ComponentRef Id="cmpF8FBE43A8EA39C78103156EADA7945B6" />
|
||||
<ComponentRef Id="cmp9C9F9A8C48E144F01800F7BE0B23E099" />
|
||||
<ComponentRef Id="cmpA138D05BA7C9460CAD63D20A63C165EE" />
|
||||
<ComponentRef Id="cmp6CD45E7EFE2DC965DC04D55F2262EDD9" />
|
||||
<ComponentRef Id="cmp64EADCD00A83038F25D1F27C60A7FF51" />
|
||||
<ComponentRef Id="cmp3B1E5DA2C5015F32B4CAC36177A0AD6C" />
|
||||
<ComponentRef Id="cmpE16B65E6AF1BF0C046FEF89E6D8AA2D0" />
|
||||
<ComponentRef Id="cmp02F007F6E349BF1E45B754BBDA475E79" />
|
||||
<ComponentRef Id="cmp5203EBBB6981B5C92881E467FD5FD638" />
|
||||
<ComponentRef Id="cmp3E836866A5CFF75D04105DFA16D35F67" />
|
||||
<ComponentRef Id="cmp0B5CBD1C9582ED64279F4795FCF6FD94" />
|
||||
<ComponentRef Id="cmpD46F44A1C6353143CAEEA32D23C705D2" />
|
||||
<ComponentRef Id="cmp102B5DCE898C00C320BA06B659830D47" />
|
||||
<ComponentRef Id="cmp26778E79E71D7454DDDF91E4904BCE79" />
|
||||
<ComponentRef Id="cmp6780D332346713440CC057DAEC4B0FD3" />
|
||||
<ComponentRef Id="cmp3687991C08BE7AEF0C4FA46A5908C16C" />
|
||||
<ComponentRef Id="cmp05678FE6EC643214A6A8D23DFA7AE822" />
|
||||
<ComponentRef Id="cmp30BCC02AA5E2FFB6E2A18CE70A2036D7" />
|
||||
<ComponentRef Id="cmpF90137E538BE414F02361C37D4F14E49" />
|
||||
<ComponentRef Id="cmp2B73574A3CA3F07C3746A122ED4F122C" />
|
||||
<ComponentRef Id="cmp8F0AFDC4BB2EF3A1B85A68C7C34278A2" />
|
||||
<ComponentRef Id="cmpC8398AF47E20A91750FDB27E2EA845AC" />
|
||||
<ComponentRef Id="cmpE8F42607C46BFC0A18FABF940AD6FA25" />
|
||||
<ComponentRef Id="cmp07496961364F2B1E6C5512132AEB868D" />
|
||||
<ComponentRef Id="cmp61FFF7DB5F7D94DDB645987CAD6018D7" />
|
||||
<ComponentRef Id="cmp5E4B200F1A4C5FDBA941BAF5A85D0253" />
|
||||
<ComponentRef Id="cmpEC42E1B66622887B11916A3BC8B33433" />
|
||||
<ComponentRef Id="cmp453447E5E1D259CC610930DA5FCA889C" />
|
||||
<ComponentRef Id="cmp62A7E69BEE769697BB17AB809D093C8A" />
|
||||
<ComponentRef Id="cmpBD442C3313944AF0F84FA2455FFE0F72" />
|
||||
<ComponentRef Id="cmp094C979D272BA58FE5C8614401B2D2A2" />
|
||||
<ComponentRef Id="cmp8BBB7575523A411E8D4A3305EA653BDC" />
|
||||
<ComponentRef Id="cmpDD32D43AD2385F827B9330031F55CD10" />
|
||||
<ComponentRef Id="cmp10102F81CF5631F7A3EBBCA8F8DA3A8C" />
|
||||
<ComponentRef Id="cmpF7DB1AFA92F263C99DF8FCE16B9DAA60" />
|
||||
<ComponentRef Id="cmp132B1ECF6D51D06422F1B26490EBC9A1" />
|
||||
<ComponentRef Id="cmp4A7E19170CD7F50BA4AECCF1C62DC983" />
|
||||
<ComponentRef Id="cmpDEC9D2448E75375534A64A2FFFB8ECA4" />
|
||||
<ComponentRef Id="cmpFBF3162909E9534BDBD81F0FD83517DF" />
|
||||
<ComponentRef Id="cmp5845F1E73436266617221056BBF0D320" />
|
||||
<ComponentRef Id="cmpABF8AB076AB25BF4F6F5883694AD5666" />
|
||||
<ComponentRef Id="cmp564C80D36F172E4317802E9007BA888A" />
|
||||
<ComponentRef Id="cmpD055CD4BE37AC69A6C3179A8EF50014E" />
|
||||
<ComponentRef Id="cmpA3FC5EE89233A8B0F40E39C5D1C7DEAF" />
|
||||
<ComponentRef Id="cmp893EB9C0C959C8AACD7BC975D074C94C" />
|
||||
<ComponentRef Id="cmp8149269E4085AD11DCE2CEB24D0B5146" />
|
||||
<ComponentRef Id="cmp751198041C5687C4EC51BBF3F1DFD15B" />
|
||||
<ComponentRef Id="cmpE74E1BFCBF5DAF24230ADED9F41CA273" />
|
||||
<ComponentRef Id="cmp4B689609F084DFD0F056DEBB8870BFDD" />
|
||||
<ComponentRef Id="cmp337184108B965333B018985B74BF5CF7" />
|
||||
<ComponentRef Id="cmp8A90A0DA436254684AFD659A0EC91C6F" />
|
||||
<ComponentRef Id="cmpCA421AD9C018D39263D035C87777C6DD" />
|
||||
<ComponentRef Id="cmp572927903A3BC09BE84571AB3FCED87B" />
|
||||
<ComponentRef Id="cmp7148BCB5F758CEDE2ACBB0DE4FCAE477" />
|
||||
<ComponentRef Id="cmp1D928052D0F5AFF2C2D503668E55EDC3" />
|
||||
<ComponentRef Id="cmp8007C403B2B0EE0CC6585944312D705B" />
|
||||
<ComponentRef Id="cmp7D94C646F68C1D38D6249B8EF959C559" />
|
||||
</ComponentGroup>
|
||||
</Fragment>
|
||||
</Wix>
|
||||
@@ -48,12 +48,17 @@
|
||||
<Property Id="CREATEDESKTOPSHORTCUT" Value="1">
|
||||
<!--<RegistrySearch Id="CREATEDESKTOPSHORTCUT_REG" Type="raw" Root="HKCU" Key="Software\[ProductName]" Name="CreateDesktopShortcut" />!-->
|
||||
</Property>
|
||||
<SetProperty Id="CREATEDESKTOPSHORTCUT" Value="0" Before="WriteRegistryValues" Sequence="execute">NOT (CREATEDESKTOPSHORTCUT="1")</SetProperty>
|
||||
<SetProperty Id="CREATEDESKTOPSHORTCUT" Value="0" Before="WriteRegistryValues" Sequence="execute">NOT (CREATEDESKTOPSHORTCUT=1)</SetProperty>
|
||||
|
||||
<Property Id="CREATEFILEASSOCIATIONS" Value="1">
|
||||
<!--<RegistrySearch Id="CREATEFILEASSOCIATIONS_REG" Type="raw" Root="HKCU" Key="Software\[ProductName]" Name="CreateFileAssociations" />!-->
|
||||
</Property>
|
||||
<SetProperty Id="CREATEFILEASSOCIATIONS" Value="0" Before="WriteRegistryValues" Sequence="execute">NOT (CREATEFILEASSOCIATIONS="1")</SetProperty>
|
||||
<SetProperty Id="CREATEFILEASSOCIATIONS" Value="0" Before="WriteRegistryValues" Sequence="execute">NOT (CREATEFILEASSOCIATIONS=1)</SetProperty>
|
||||
|
||||
<Property Id="SETPATHENVIRONMENTVAR" Value="1">
|
||||
<!--<RegistrySearch Id="SETPATHENVIRONMENTVAR_REG" Type="raw" Root="HKCU" Key="Software\[ProductName]" Name="SetPathEnvironmentVar" />!-->
|
||||
</Property>
|
||||
<SetProperty Id="SETPATHENVIRONMENTVAR" Value="0" Before="WriteRegistryValues" Sequence="execute">NOT (SETPATHENVIRONMENTVAR=1)</SetProperty>
|
||||
|
||||
<UIRef Id="UI" />
|
||||
|
||||
@@ -104,12 +109,20 @@
|
||||
</Directory>
|
||||
</Directory>
|
||||
|
||||
<!-- Environment vars -->
|
||||
<Component Id="CMP_SetPathEnvironmentVar" Guid="974A9C67-F75E-44BB-BDCD-59680100504E">
|
||||
<Condition>SETPATHENVIRONMENTVAR = 1</Condition>
|
||||
<Environment Id="PathEnvironmentVar" Name="PATH" Value="[INSTALLFOLDER]" Permanent="no" Part="last" Action="set" System="yes" />
|
||||
</Component>
|
||||
|
||||
<!-- Start Registry -->
|
||||
<Component Id="RegInstallInfo" Guid="C3603223-A8C1-4393-8C06-36B48DED2652">
|
||||
<!-- Install directory -->
|
||||
<RegistryKey Root="HKCU" Key="Software\[ProductName]" ForceCreateOnInstall="yes" ForceDeleteOnUninstall="yes">
|
||||
<RegistryValue Name="InstallDir" Value="[INSTALLFOLDER]" Type="string" />
|
||||
<RegistryValue Name="CreateDesktopShortcut" Value="[CREATEDESKTOPSHORTCUT]" Type="integer" />
|
||||
<RegistryValue Name="CreateFileAssociations" Value="[CREATEFILEASSOCIATIONS]" Type="integer" />
|
||||
<RegistryValue Name="SetPathEnvironmentVar" Value="[SETPATHENVIRONMENTVAR]" Type="integer" />
|
||||
</RegistryKey>
|
||||
</Component>
|
||||
|
||||
@@ -128,15 +141,19 @@
|
||||
</RegistryKey>
|
||||
|
||||
</Component>
|
||||
<!-- End Registry -->
|
||||
</DirectoryRef>
|
||||
|
||||
<!-- Start Features -->
|
||||
<Feature Id="UVtools" Title="UVtools" Description="Installs all the files needed for [ProductName]" Level="1" AllowAdvertise="no" ConfigurableDirectory="INSTALLFOLDER">
|
||||
<ComponentRef Id="RegInstallInfo" />
|
||||
<ComponentRef Id="RegFilesAssociations" />
|
||||
<ComponentGroupRef Id="HeatGeneratedFileList" />
|
||||
<ComponentRef Id="CMP_DesktopShortcuts" />
|
||||
<ComponentRef Id="CMP_StartMenuShortcuts" />
|
||||
<ComponentRef Id="CMP_SetPathEnvironmentVar" />
|
||||
</Feature>
|
||||
<!-- End Features -->
|
||||
|
||||
<Property Id="WIXUI_EXITDIALOGOPTIONALCHECKBOXTEXT" Value="Launch UVtools" />
|
||||
<Property Id="WixShellExecTarget" Value="[INSTALLFOLDER]UVtools.exe" />
|
||||
|
||||
@@ -1,31 +1,29 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. -->
|
||||
|
||||
|
||||
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
|
||||
<Fragment>
|
||||
<UI>
|
||||
<Dialog Id="UI_CustomInstallDirDlg" Width="370" Height="270" Title="!(loc.InstallDirDlg_Title)">
|
||||
<Control Id="Next" Type="PushButton" X="236" Y="243" Width="56" Height="17" Default="yes" Text="!(loc.WixUINext)" />
|
||||
<Control Id="Back" Type="PushButton" X="180" Y="243" Width="56" Height="17" Text="!(loc.WixUIBack)" />
|
||||
<Control Id="Cancel" Type="PushButton" X="304" Y="243" Width="56" Height="17" Cancel="yes" Text="!(loc.WixUICancel)">
|
||||
<Publish Event="SpawnDialog" Value="CancelDlg">1</Publish>
|
||||
</Control>
|
||||
<Fragment>
|
||||
<UI>
|
||||
<Dialog Id="UI_CustomInstallDirDlg" Width="370" Height="270" Title="!(loc.InstallDirDlg_Title)">
|
||||
<Control Id="Next" Type="PushButton" X="236" Y="243" Width="56" Height="17" Default="yes" Text="!(loc.WixUINext)" />
|
||||
<Control Id="Back" Type="PushButton" X="180" Y="243" Width="56" Height="17" Text="!(loc.WixUIBack)" />
|
||||
<Control Id="Cancel" Type="PushButton" X="304" Y="243" Width="56" Height="17" Cancel="yes" Text="!(loc.WixUICancel)">
|
||||
<Publish Event="SpawnDialog" Value="CancelDlg">1</Publish>
|
||||
</Control>
|
||||
|
||||
<Control Id="Description" Type="Text" X="25" Y="23" Width="280" Height="15" Transparent="yes" NoPrefix="yes" Text="!(loc.InstallDirDlgDescription)" />
|
||||
<Control Id="Title" Type="Text" X="15" Y="6" Width="200" Height="15" Transparent="yes" NoPrefix="yes" Text="!(loc.InstallDirDlgTitle)" />
|
||||
<Control Id="BannerBitmap" Type="Bitmap" X="0" Y="0" Width="370" Height="44" TabSkip="no" Text="!(loc.InstallDirDlgBannerBitmap)" />
|
||||
<Control Id="BannerLine" Type="Line" X="0" Y="44" Width="370" Height="0" />
|
||||
<Control Id="BottomLine" Type="Line" X="0" Y="234" Width="370" Height="0" />
|
||||
<Control Id="Description" Type="Text" X="25" Y="23" Width="280" Height="15" Transparent="yes" NoPrefix="yes" Text="!(loc.InstallDirDlgDescription)" />
|
||||
<Control Id="Title" Type="Text" X="15" Y="6" Width="200" Height="15" Transparent="yes" NoPrefix="yes" Text="!(loc.InstallDirDlgTitle)" />
|
||||
<Control Id="BannerBitmap" Type="Bitmap" X="0" Y="0" Width="370" Height="44" TabSkip="no" Text="!(loc.InstallDirDlgBannerBitmap)" />
|
||||
<Control Id="BannerLine" Type="Line" X="0" Y="44" Width="370" Height="0" />
|
||||
<Control Id="BottomLine" Type="Line" X="0" Y="234" Width="370" Height="0" />
|
||||
|
||||
<Control Id="FolderLabel" Type="Text" X="20" Y="60" Width="290" Height="30" NoPrefix="yes" Text="!(loc.InstallDirDlgFolderLabel)" />
|
||||
<Control Id="Folder" Type="PathEdit" X="20" Y="100" Width="320" Height="18" Property="WIXUI_INSTALLDIR" Indirect="yes" />
|
||||
<Control Id="ChangeFolder" Type="PushButton" X="20" Y="120" Width="56" Height="17" Text="!(loc.InstallDirDlgChange)" />
|
||||
<Control Id="FolderLabel" Type="Text" X="20" Y="60" Width="290" Height="30" NoPrefix="yes" Text="!(loc.InstallDirDlgFolderLabel)" />
|
||||
<Control Id="Folder" Type="PathEdit" X="20" Y="100" Width="320" Height="18" Property="WIXUI_INSTALLDIR" Indirect="yes" />
|
||||
<Control Id="ChangeFolder" Type="PushButton" X="20" Y="120" Width="56" Height="17" Text="!(loc.InstallDirDlgChange)" />
|
||||
|
||||
<Control Id="CreateFileAssociations" Type="CheckBox" X="25" Y="165" Width="320" Height="17" Property="CREATEFILEASSOCIATIONS" CheckBoxValue="1" Text="Add open in UVtools when right-click on supported files" />
|
||||
|
||||
<Control Id="CreateShortcutCheckbox" Type="CheckBox" X="25" Y="185" Width="320" Height="17" Property="CREATEDESKTOPSHORTCUT" CheckBoxValue="1" Text="Create desktop shortcut" />
|
||||
</Dialog>
|
||||
</UI>
|
||||
</Fragment>
|
||||
<Control Id="Control_CreateFileAssociations" Type="CheckBox" X="25" Y="165" Width="320" Height="17" Property="CREATEFILEASSOCIATIONS" CheckBoxValue="1" Text="Add "Open with UVtools" to the context-menu when right-click on supported files" />
|
||||
<Control Id="Control_SetPathEnvVar" Type="CheckBox" X="25" Y="185" Width="320" Height="17" Property="SETPATHENVIRONMENTVAR" CheckBoxValue="1" Text="Add installation directory to system PATH environment variable" />
|
||||
<Control Id="Control_CreateShortcutCheckbox" Type="CheckBox" X="25" Y="205" Width="320" Height="17" Property="CREATEDESKTOPSHORTCUT" CheckBoxValue="1" Text="Create a desktop shortcut" />
|
||||
</Dialog>
|
||||
</UI>
|
||||
</Fragment>
|
||||
</Wix>
|
||||
@@ -128,19 +128,34 @@ public class WindowEx : Window, INotifyPropertyChanged, IStyleable
|
||||
base.OnInitialized();
|
||||
}
|
||||
|
||||
/*protected override void OnOpened(EventArgs e)
|
||||
protected override void OnOpened(EventArgs e)
|
||||
{
|
||||
// Fix positions and sizes
|
||||
if (WindowState == WindowState.Normal)
|
||||
{
|
||||
if (Position.X < 0) Position = Position.WithX(0);
|
||||
if (Position.Y < 0) Position = Position.WithY(0);
|
||||
|
||||
if ((SizeToContent & SizeToContent.Height) == 0)
|
||||
{
|
||||
var workingArea = this.GetScreenWorkingArea();
|
||||
if (Bounds.Bottom > workingArea.Height)
|
||||
{
|
||||
Height = workingArea.Height - Position.Y;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//Debug.WriteLine("OnOpened");
|
||||
base.OnOpened(e);
|
||||
Debug.WriteLine("OnOpened");
|
||||
AutoConstainsWindowMaxSize();
|
||||
}*/
|
||||
}
|
||||
|
||||
public void ConstainsWindowMaxSize()
|
||||
{
|
||||
if (WindowStartupLocation == WindowStartupLocation.CenterOwner && Owner is null)
|
||||
/*if (WindowStartupLocation == WindowStartupLocation.CenterOwner && Owner is null)
|
||||
{
|
||||
WindowStartupLocation = WindowStartupLocation.CenterScreen;
|
||||
}
|
||||
}*/
|
||||
|
||||
if (!CanResize && WindowState == WindowState.Normal && WindowConstrainMaxSize != WindowConstrainsMaxSizeType.None)
|
||||
{
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
<PackageLicenseFile>LICENSE</PackageLicenseFile>
|
||||
<RepositoryUrl>https://github.com/sn4k3/UVtools</RepositoryUrl>
|
||||
<RepositoryType>Git</RepositoryType>
|
||||
<Version>3.6.5</Version>
|
||||
<Version>3.6.6</Version>
|
||||
<Platforms>AnyCPU;x64</Platforms>
|
||||
<PackageIcon>UVtools.png</PackageIcon>
|
||||
<PackageReadmeFile>README.md</PackageReadmeFile>
|
||||
|
||||
@@ -7,8 +7,7 @@
|
||||
mc:Ignorable="d" d:DesignWidth="800" d:DesignHeight="450"
|
||||
x:Class="UVtools.WPF.Windows.MessageWindow"
|
||||
Icon="/Assets/Icons/UVtools.ico"
|
||||
WindowStartupLocation="CenterOwner"
|
||||
CanResize="False"
|
||||
WindowStartupLocation="CenterScreen"
|
||||
SizeToContent="WidthAndHeight"
|
||||
MinWidth="300"
|
||||
MinHeight="200"
|
||||
|
||||
@@ -70,10 +70,10 @@ namespace UVtools.WPF.Windows
|
||||
#region Constructor
|
||||
public MessageWindow()
|
||||
{
|
||||
InitializeComponent();
|
||||
|
||||
CanResize = Settings.General.WindowsCanResize;
|
||||
|
||||
InitializeComponent();
|
||||
|
||||
_buttonsRightPanel = this.FindControl<StackPanel>("ButtonsRightPanel");
|
||||
DataContext = this;
|
||||
}
|
||||
|
||||
@@ -6,8 +6,9 @@
|
||||
xmlns:i="clr-namespace:Projektanker.Icons.Avalonia;assembly=Projektanker.Icons.Avalonia"
|
||||
mc:Ignorable="d" d:DesignWidth="800" d:DesignHeight="450"
|
||||
x:Class="UVtools.WPF.Windows.ToolWindow"
|
||||
CanResize="False"
|
||||
SizeToContent="WidthAndHeight"
|
||||
MinWidth="500"
|
||||
MinHeight="400"
|
||||
WindowStartupLocation="CenterOwner"
|
||||
Title="Tool"
|
||||
Icon="/Assets/Icons/UVtools.ico">
|
||||
@@ -23,6 +24,7 @@
|
||||
IsExpanded="{Binding Settings.Tools.ExpandDescriptions}"
|
||||
HorizontalContentAlignment="Stretch"
|
||||
Header="Description (Click to toggle)">
|
||||
|
||||
<TextBox Classes="TransparentReadOnlyMultiLineNoBorder"
|
||||
MaxWidth="{Binding DescriptionMaxWidth}"
|
||||
FontSize="16"
|
||||
@@ -30,6 +32,7 @@
|
||||
Watermark="Description:"
|
||||
Padding="5"
|
||||
Text="{Binding Description}"/>
|
||||
|
||||
</Expander>
|
||||
</Border>
|
||||
|
||||
@@ -66,16 +69,14 @@
|
||||
Grid.Column="0"
|
||||
VerticalAlignment="Center"
|
||||
Text="From:"
|
||||
Margin="0,0,10,0"
|
||||
/>
|
||||
Margin="0,0,10,0"/>
|
||||
|
||||
<NumericUpDown Grid.Row="0" Grid.Column="1"
|
||||
Classes="ValueLabel ValueLabel_layers"
|
||||
VerticalAlignment="Center"
|
||||
Minimum="0"
|
||||
Maximum="{Binding MaximumLayerIndex}"
|
||||
Value="{Binding LayerIndexStart}"
|
||||
/>
|
||||
Value="{Binding LayerIndexStart}"/>
|
||||
|
||||
<TextBlock
|
||||
Grid.Row="0"
|
||||
@@ -83,8 +84,7 @@
|
||||
VerticalAlignment="Center"
|
||||
Text="To:"
|
||||
IsEnabled="{Binding !LayerRangeSync}"
|
||||
Margin="20,0,10,0"
|
||||
/>
|
||||
Margin="20,0,10,0"/>
|
||||
|
||||
<NumericUpDown Grid.Row="0" Grid.Column="3"
|
||||
Classes="ValueLabel ValueLabel_layers"
|
||||
@@ -109,8 +109,7 @@
|
||||
Padding="10,0,10,0"
|
||||
Content="Select ⮟"
|
||||
Command="{Binding OpenContextMenu}"
|
||||
CommandParameter="LayerSelectPreset"
|
||||
>
|
||||
CommandParameter="LayerSelectPreset">
|
||||
<Button.ContextMenu>
|
||||
<ContextMenu Name="LayerSelectPresetContextMenu" PlacementMode="Bottom">
|
||||
<MenuItem
|
||||
@@ -152,14 +151,12 @@
|
||||
<MenuItem
|
||||
Header="_First layer"
|
||||
HotKey="Ctrl + Shift + F" InputGesture="Ctrl + Shift + F"
|
||||
Command="{Binding SelectFirstLayer}"
|
||||
/>
|
||||
Command="{Binding SelectFirstLayer}"/>
|
||||
|
||||
<MenuItem
|
||||
Header="_Last layer"
|
||||
HotKey="Ctrl + Shift + L" InputGesture="Ctrl + Shift + L"
|
||||
Command="{Binding SelectLastLayer}"
|
||||
/>
|
||||
Command="{Binding SelectLastLayer}"/>
|
||||
|
||||
</ContextMenu>
|
||||
</Button.ContextMenu>
|
||||
@@ -342,6 +339,8 @@
|
||||
|
||||
<ScrollViewer Grid.Row="1"
|
||||
Name="ContentScrollViewer"
|
||||
VerticalScrollBarVisibility="Auto"
|
||||
HorizontalScrollBarVisibility="Auto"
|
||||
Content="{Binding ContentControl}"/>
|
||||
</Grid>
|
||||
</Border>
|
||||
@@ -351,8 +350,7 @@
|
||||
<Grid RowDefinitions="Auto"
|
||||
ColumnDefinitions="*">
|
||||
<StackPanel Spacing="10" Orientation="Horizontal">
|
||||
<Button
|
||||
Command="{Binding #OptionsContextMenu.Open}"
|
||||
<Button Command="{Binding #OptionsContextMenu.Open}"
|
||||
Padding="10"
|
||||
Content="☰">
|
||||
<Button.ContextMenu>
|
||||
|
||||
@@ -575,7 +575,10 @@ public class ToolWindow : WindowEx
|
||||
#region Constructors
|
||||
public ToolWindow()
|
||||
{
|
||||
CanResize = Settings.General.WindowsCanResize;
|
||||
|
||||
InitializeComponent();
|
||||
|
||||
_contentScrollViewer = this.FindControl<ScrollViewer>("ContentScrollViewer");
|
||||
SelectAllLayers();
|
||||
|
||||
@@ -602,8 +605,8 @@ public class ToolWindow : WindowEx
|
||||
ToolControl = toolControl;
|
||||
toolControl.ParentWindow = this;
|
||||
toolControl.Margin = new Thickness(15);
|
||||
ToolControl.BaseOperation.ROI = ROI;
|
||||
ToolControl.BaseOperation.MaskPoints = Masks;
|
||||
toolControl.BaseOperation.ROI = ROI;
|
||||
toolControl.BaseOperation.MaskPoints = Masks;
|
||||
|
||||
Title = toolControl.BaseOperation.Title;
|
||||
//LayerRangeVisible = toolControl.BaseOperation.StartLayerRangeSelection != LayerRangeSelection.None;
|
||||
@@ -654,10 +657,10 @@ public class ToolWindow : WindowEx
|
||||
}
|
||||
|
||||
|
||||
if (ToolControl.BaseOperation.CanHaveProfiles)
|
||||
if (toolControl.BaseOperation.CanHaveProfiles)
|
||||
{
|
||||
_isProfilesVisible = true;
|
||||
var profiles = OperationProfiles.GetOperations(ToolControl.BaseOperation.GetType());
|
||||
var profiles = OperationProfiles.GetOperations(toolControl.BaseOperation.GetType());
|
||||
_profiles.AddRange(profiles);
|
||||
|
||||
if (toolControl.BaseOperation.ImportedFrom == Operation.OperationImportFrom.None ||
|
||||
|
||||
@@ -317,7 +317,7 @@ foreach($line in $changelog) {
|
||||
Write-Host $sb.ToString()
|
||||
Set-Content -Path "$rootFolder/RELEASE_NOTES.md" -Value $sb.ToString()
|
||||
|
||||
|
||||
<#
|
||||
if($null -ne $enableNugetPublish -and $enableNugetPublish)
|
||||
{
|
||||
$nugetApiKeyFile = 'build/secret/nuget_api.key'
|
||||
@@ -339,6 +339,7 @@ if($null -ne $enableNugetPublish -and $enableNugetPublish)
|
||||
}
|
||||
}
|
||||
}
|
||||
#>
|
||||
|
||||
foreach ($obj in $runtimes.GetEnumerator()) {
|
||||
if(![string]::IsNullOrWhiteSpace($buildOnly) -and !$buildOnly.Equals($obj.Name)) {continue}
|
||||
|
||||
Reference in New Issue
Block a user