From 000000009de61c99674ac5b3fe61af8ee00f42d7 Mon Sep 17 00:00:00 2001 From: Konstantin Safonov Date: Thu, 12 Jan 2023 00:23:19 +0500 Subject: [PATCH] Core --- .github/workflows/dotnet.yml | 28 + .gitignore | 563 +----------------- .../ProjectEvaluation/kru.gui.metadata.v6.1 | Bin 174309 -> 0 bytes .../ProjectEvaluation/kru.gui.projects.v6.1 | Bin 92692 -> 0 bytes .../.vs/kru.gui/DesignTimeBuild/.dtbcache.v2 | Bin 96216 -> 0 bytes ...70e3f94a-27da-4670-ab5a-98cc09085bd1.vsidx | Bin 12940 -> 0 bytes ...8f7ea11c-8429-447a-8a8b-9901c7e51e3e.vsidx | Bin 9216 -> 0 bytes .../.vs/kru.gui/FileContentIndex/read.lock | 0 src/kru.gui/.vs/kru.gui/v17/.futdcache.v2 | Bin 138 -> 0 bytes src/kru.gui/.vs/kru.gui/v17/.suo | Bin 27136 -> 0 bytes src/kru.gui/Command.cs | 48 ++ src/kru.gui/Program.cs | 25 +- src/kru.gui/UI/FrmMain.Designer.cs | 224 ------- src/kru.gui/UI/FrmMain.cs | 31 - src/kru.gui/frmMain.Designer.cs | 211 +++++++ src/kru.gui/frmMain.cs | 73 +++ src/kru.gui/{UI/FrmMain.resx => frmMain.resx} | 8 +- src/kru.gui/kru.gui.csproj | 1 - src/kru.gui/kru.gui.csproj.user | 8 - src/kru.sln | 2 + 20 files changed, 387 insertions(+), 835 deletions(-) create mode 100644 .github/workflows/dotnet.yml delete mode 100644 src/kru.gui/.vs/ProjectEvaluation/kru.gui.metadata.v6.1 delete mode 100644 src/kru.gui/.vs/ProjectEvaluation/kru.gui.projects.v6.1 delete mode 100644 src/kru.gui/.vs/kru.gui/DesignTimeBuild/.dtbcache.v2 delete mode 100644 src/kru.gui/.vs/kru.gui/FileContentIndex/70e3f94a-27da-4670-ab5a-98cc09085bd1.vsidx delete mode 100644 src/kru.gui/.vs/kru.gui/FileContentIndex/8f7ea11c-8429-447a-8a8b-9901c7e51e3e.vsidx delete mode 100644 src/kru.gui/.vs/kru.gui/FileContentIndex/read.lock delete mode 100644 src/kru.gui/.vs/kru.gui/v17/.futdcache.v2 delete mode 100644 src/kru.gui/.vs/kru.gui/v17/.suo create mode 100644 src/kru.gui/Command.cs delete mode 100644 src/kru.gui/UI/FrmMain.Designer.cs delete mode 100644 src/kru.gui/UI/FrmMain.cs create mode 100644 src/kru.gui/frmMain.Designer.cs create mode 100644 src/kru.gui/frmMain.cs rename src/kru.gui/{UI/FrmMain.resx => frmMain.resx} (83%) delete mode 100644 src/kru.gui/kru.gui.csproj.user diff --git a/.github/workflows/dotnet.yml b/.github/workflows/dotnet.yml new file mode 100644 index 000000000..775f691 --- /dev/null +++ b/.github/workflows/dotnet.yml @@ -0,0 +1,28 @@ +name: .NET + +defaults: + run: + working-directory: src +on: + push: + branches: [ master ] + pull_request: + branches: [ master ] +jobs: + build: + runs-on: ubuntu-latest + strategy: + matrix: + dotnet-version: ['7.0.x' ] + steps: + - uses: actions/checkout@v3 + - name: Setup .NET Core SDK ${{ matrix.dotnet-version }} + uses: actions/setup-dotnet@v3 + with: + dotnet-version: ${{ matrix.dotnet-version }} + - name: Install dependencies + run: dotnet restore + - name: Build + run: dotnet build --configuration Release --no-restore + - name: Test + run: dotnet test --no-restore --verbosity normal \ No newline at end of file diff --git a/.gitignore b/.gitignore index 8bfdde5..b361e50 100644 --- a/.gitignore +++ b/.gitignore @@ -1,255 +1,7 @@ -# Created by https://www.toptal.com/developers/gitignore/api/c,c++,csharp,visualstudio,visualstudiocode,intellij,clion,clion+all -# Edit at https://www.toptal.com/developers/gitignore?templates=c,c++,csharp,visualstudio,visualstudiocode,intellij,clion,clion+all - -### C ### -# Prerequisites -*.d - -# Object files -*.o -*.ko -*.obj -*.elf - -# Linker output -*.ilk -*.map -*.exp - -# Precompiled Headers -*.gch -*.pch - -# Libraries -*.lib -*.a -*.la -*.lo - -# Shared objects (inc. Windows DLLs) -*.dll -*.so -*.so.* -*.dylib - -# Executables -*.exe -*.out -*.app -*.i*86 -*.x86_64 -*.hex - -# Debug files -*.dSYM/ -*.su -*.idb -*.pdb - -# Kernel Module Compile Results -*.mod* -*.cmd -.tmp_versions/ -modules.order -Module.symvers -Mkfile.old -dkms.conf - -### C++ ### -# Prerequisites - -# Compiled Object files -*.slo - -# Precompiled Headers - -# Compiled Dynamic libraries - -# Fortran module files -*.mod -*.smod - -# Compiled Static libraries -*.lai - -# Executables - -### CLion ### -# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio, WebStorm and Rider -# Reference: https://intellij-support.jetbrains.com/hc/en-us/articles/206544839 - -# User-specific stuff -.idea/**/workspace.xml -.idea/**/tasks.xml -.idea/**/usage.statistics.xml -.idea/**/dictionaries -.idea/**/shelf - -# AWS User-specific -.idea/**/aws.xml - -# Generated files -.idea/**/contentModel.xml - -# Sensitive or high-churn files -.idea/**/dataSources/ -.idea/**/dataSources.ids -.idea/**/dataSources.local.xml -.idea/**/sqlDataSources.xml -.idea/**/dynamic.xml -.idea/**/uiDesigner.xml -.idea/**/dbnavigator.xml - -# Gradle -.idea/**/gradle.xml -.idea/**/libraries - -# Gradle and Maven with auto-import -# When using Gradle or Maven with auto-import, you should exclude module files, -# since they will be recreated, and may cause churn. Uncomment if using -# auto-import. -# .idea/artifacts -# .idea/compiler.xml -# .idea/jarRepositories.xml -# .idea/modules.xml -# .idea/*.iml -# .idea/modules -# *.iml -# *.ipr - -# CMake -cmake-build-*/ - -# Mongo Explorer plugin -.idea/**/mongoSettings.xml - -# File-based project format -*.iws - -# IntelliJ -out/ - -# mpeltonen/sbt-idea plugin -.idea_modules/ - -# JIRA plugin -atlassian-ide-plugin.xml - -# Cursive Clojure plugin -.idea/replstate.xml - -# SonarLint plugin -.idea/sonarlint/ - -# Crashlytics plugin (for Android Studio and IntelliJ) -com_crashlytics_export_strings.xml -crashlytics.properties -crashlytics-build.properties -fabric.properties - -# Editor-based Rest Client -.idea/httpRequests - -# Android studio 3.1+ serialized cache file -.idea/caches/build_file_checksums.ser - -### CLion Patch ### -# Comment Reason: https://github.com/joeblau/gitignore.io/issues/186#issuecomment-215987721 - -# *.iml -# modules.xml -# .idea/misc.xml -# *.ipr - -# Sonarlint plugin -# https://plugins.jetbrains.com/plugin/7973-sonarlint -.idea/**/sonarlint/ - -# SonarQube Plugin -# https://plugins.jetbrains.com/plugin/7238-sonarqube-community-plugin -.idea/**/sonarIssues.xml - -# Markdown Navigator plugin -# https://plugins.jetbrains.com/plugin/7896-markdown-navigator-enhanced -.idea/**/markdown-navigator.xml -.idea/**/markdown-navigator-enh.xml -.idea/**/markdown-navigator/ - -# Cache file creation bug -# See https://youtrack.jetbrains.com/issue/JBR-2257 -.idea/$CACHE_FILE$ - -# CodeStream plugin -# https://plugins.jetbrains.com/plugin/12206-codestream -.idea/codestream.xml - -# Azure Toolkit for IntelliJ plugin -# https://plugins.jetbrains.com/plugin/8053-azure-toolkit-for-intellij -.idea/**/azureSettings.xml - -### CLion+all ### -# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio, WebStorm and Rider -# Reference: https://intellij-support.jetbrains.com/hc/en-us/articles/206544839 - -# User-specific stuff - -# AWS User-specific - -# Generated files - -# Sensitive or high-churn files - -# Gradle - -# Gradle and Maven with auto-import -# When using Gradle or Maven with auto-import, you should exclude module files, -# since they will be recreated, and may cause churn. Uncomment if using -# auto-import. -# .idea/artifacts -# .idea/compiler.xml -# .idea/jarRepositories.xml -# .idea/modules.xml -# .idea/*.iml -# .idea/modules -# *.iml -# *.ipr - -# CMake - -# Mongo Explorer plugin - -# File-based project format - -# IntelliJ - -# mpeltonen/sbt-idea plugin - -# JIRA plugin - -# Cursive Clojure plugin - -# SonarLint plugin - -# Crashlytics plugin (for Android Studio and IntelliJ) - -# Editor-based Rest Client - -# Android studio 3.1+ serialized cache file - -### CLion+all Patch ### -# Ignore everything but code style settings and run configurations -# that are supposed to be shared within teams. - -.idea/* - -!.idea/codeStyles -!.idea/runConfigurations - -### Csharp ### ## Ignore Visual Studio temporary files, build results, and ## files generated by popular Visual Studio add-ons. ## -## Get latest from https://github.com/github/gitignore/blob/main/VisualStudio.gitignore +## Get latest from https://github.com/github/gitignore/blob/master/VisualStudio.gitignore # User-specific files *.rsuser @@ -320,8 +72,12 @@ StyleCopReport.xml *_i.c *_p.c *_h.h +*.ilk *.meta +*.obj *.iobj +*.pch +*.pdb *.ipdb *.pgc *.pgd @@ -334,7 +90,6 @@ StyleCopReport.xml *.tmp_proj *_wpftmp.csproj *.log -*.tlog *.vspscc *.vssscc .builds @@ -428,7 +183,7 @@ publish/ *.azurePubxml # Note: Comment the next line if you want to checkin your web deploy settings, # but database connection strings (with potential passwords) will be unencrypted -*.pubxml +#*.pubxml *.publishproj # Microsoft Azure Web App publish settings. Comment the next line if you want to @@ -538,15 +293,6 @@ node_modules/ # Visual Studio 6 auto-generated workspace file (contains which files were open etc.) *.vbw -# Visual Studio 6 auto-generated project file (contains which files were open etc.) -*.vbp - -# Visual Studio 6 workspace and project file (working project files containing files to include in project) -*.dsw -*.dsp - -# Visual Studio 6 technical files - # Visual Studio LightSwitch build output **/*.HTMLClient/GeneratedArtifacts **/*.DesktopClient/GeneratedArtifacts @@ -603,9 +349,6 @@ ASALocalRun/ # Local History for Visual Studio .localhistory/ -# Visual Studio History (VSHistory) files -.vshistory/ - # BeatPulse healthcheck temp database healthchecksdb @@ -616,296 +359,4 @@ MigrationBackup/ .ionide/ # Fody - auto-generated XML schema -FodyWeavers.xsd - -# VS Code files for those working on multiple tools -.vscode/* -!.vscode/settings.json -!.vscode/tasks.json -!.vscode/launch.json -!.vscode/extensions.json -*.code-workspace - -# Local History for Visual Studio Code -.history/ - -# Windows Installer files from build outputs -*.cab -*.msi -*.msix -*.msm -*.msp - -# JetBrains Rider -*.sln.iml - -### Intellij ### -# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio, WebStorm and Rider -# Reference: https://intellij-support.jetbrains.com/hc/en-us/articles/206544839 - -# User-specific stuff - -# AWS User-specific - -# Generated files - -# Sensitive or high-churn files - -# Gradle - -# Gradle and Maven with auto-import -# When using Gradle or Maven with auto-import, you should exclude module files, -# since they will be recreated, and may cause churn. Uncomment if using -# auto-import. -# .idea/artifacts -# .idea/compiler.xml -# .idea/jarRepositories.xml -# .idea/modules.xml -# .idea/*.iml -# .idea/modules -# *.iml -# *.ipr - -# CMake - -# Mongo Explorer plugin - -# File-based project format - -# IntelliJ - -# mpeltonen/sbt-idea plugin - -# JIRA plugin - -# Cursive Clojure plugin - -# SonarLint plugin - -# Crashlytics plugin (for Android Studio and IntelliJ) - -# Editor-based Rest Client - -# Android studio 3.1+ serialized cache file - -### Intellij Patch ### -# Comment Reason: https://github.com/joeblau/gitignore.io/issues/186#issuecomment-215987721 - -# *.iml -# modules.xml -# .idea/misc.xml -# *.ipr - -# Sonarlint plugin -# https://plugins.jetbrains.com/plugin/7973-sonarlint - -# SonarQube Plugin -# https://plugins.jetbrains.com/plugin/7238-sonarqube-community-plugin - -# Markdown Navigator plugin -# https://plugins.jetbrains.com/plugin/7896-markdown-navigator-enhanced - -# Cache file creation bug -# See https://youtrack.jetbrains.com/issue/JBR-2257 - -# CodeStream plugin -# https://plugins.jetbrains.com/plugin/12206-codestream - -# Azure Toolkit for IntelliJ plugin -# https://plugins.jetbrains.com/plugin/8053-azure-toolkit-for-intellij - -### VisualStudioCode ### -!.vscode/*.code-snippets - -# Local History for Visual Studio Code - -# Built Visual Studio Code Extensions -*.vsix - -### VisualStudioCode Patch ### -# Ignore all local history of files -.history -.ionide - -### VisualStudio ### - -# User-specific files - -# User-specific files (MonoDevelop/Xamarin Studio) - -# Mono auto generated files - -# Build results - -# Visual Studio 2015/2017 cache/options directory -# Uncomment if you have tasks that create the project's static files in wwwroot - -# Visual Studio 2017 auto generated files - -# MSTest test Results - -# NUnit - -# Build Results of an ATL Project - -# Benchmark Results - -# .NET Core - -# ASP.NET Scaffolding - -# StyleCop - -# Files built by Visual Studio - -# Chutzpah Test files - -# Visual C++ cache files - -# Visual Studio profiler - -# Visual Studio Trace Files - -# TFS 2012 Local Workspace - -# Guidance Automation Toolkit - -# ReSharper is a .NET coding add-in - -# TeamCity is a build add-in - -# DotCover is a Code Coverage Tool - -# AxoCover is a Code Coverage Tool - -# Coverlet is a free, cross platform Code Coverage Tool - -# Visual Studio code coverage results - -# NCrunch - -# MightyMoose - -# Web workbench (sass) - -# Installshield output folder - -# DocProject is a documentation generator add-in - -# Click-Once directory - -# Publish Web Output -# Note: Comment the next line if you want to checkin your web deploy settings, -# but database connection strings (with potential passwords) will be unencrypted - -# Microsoft Azure Web App publish settings. Comment the next line if you want to -# checkin your Azure Web App publish settings, but sensitive information contained -# in these scripts will be unencrypted - -# NuGet Packages -# NuGet Symbol Packages -# The packages folder can be ignored because of Package Restore -# except build/, which is used as an MSBuild target. -# Uncomment if necessary however generally it will be regenerated when needed -# NuGet v3's project.json files produces more ignorable files - -# Microsoft Azure Build Output - -# Microsoft Azure Emulator - -# Windows Store app package directories and files - -# Visual Studio cache files -# files ending in .cache can be ignored -# but keep track of directories ending in .cache - -# Others - -# Including strong name files can present a security risk -# (https://github.com/github/gitignore/pull/2483#issue-259490424) - -# Since there are multiple workflows, uncomment next line to ignore bower_components -# (https://github.com/github/gitignore/pull/1529#issuecomment-104372622) - -# RIA/Silverlight projects - -# Backup & report files from converting an old project file -# to a newer Visual Studio version. Backup files are not needed, -# because we have git ;-) - -# SQL Server files - -# Business Intelligence projects - -# Microsoft Fakes - -# GhostDoc plugin setting file - -# Node.js Tools for Visual Studio - -# Visual Studio 6 build log - -# Visual Studio 6 workspace options file - -# Visual Studio 6 auto-generated workspace file (contains which files were open etc.) - -# Visual Studio 6 auto-generated project file (contains which files were open etc.) - -# Visual Studio 6 workspace and project file (working project files containing files to include in project) - -# Visual Studio 6 technical files - -# Visual Studio LightSwitch build output - -# Paket dependency manager - -# FAKE - F# Make - -# CodeRush personal settings - -# Python Tools for Visual Studio (PTVS) - -# Cake - Uncomment if you are using it -# tools/** -# !tools/packages.config - -# Tabs Studio - -# Telerik's JustMock configuration file - -# BizTalk build output - -# OpenCover UI analysis results - -# Azure Stream Analytics local run output - -# MSBuild Binary and Structured Log - -# NVidia Nsight GPU debugger configuration file - -# MFractors (Xamarin productivity tool) working folder - -# Local History for Visual Studio - -# Visual Studio History (VSHistory) files - -# BeatPulse healthcheck temp database - -# Backup folder for Package Reference Convert tool in Visual Studio 2017 - -# Ionide (cross platform F# VS Code tools) working folder - -# Fody - auto-generated XML schema - -# VS Code files for those working on multiple tools - -# Local History for Visual Studio Code - -# Windows Installer files from build outputs - -# JetBrains Rider - -### VisualStudio Patch ### -# Additional files built by Visual Studio - -# End of https://www.toptal.com/developers/gitignore/api/c,c++,csharp,visualstudio,visualstudiocode,intellij,clion,clion+all +FodyWeavers.xsd \ No newline at end of file diff --git a/src/kru.gui/.vs/ProjectEvaluation/kru.gui.metadata.v6.1 b/src/kru.gui/.vs/ProjectEvaluation/kru.gui.metadata.v6.1 deleted file mode 100644 index 05937e853608c3c80f6e84190534ddedd24ded1d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 174309 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 xKTR?&%*A*lEbeE(J>W!T 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 F{{YEQ(K-MC diff --git a/src/kru.gui/.vs/kru.gui/DesignTimeBuild/.dtbcache.v2 b/src/kru.gui/.vs/kru.gui/DesignTimeBuild/.dtbcache.v2 deleted file mode 100644 index 8712588420b84c511ec1de2c28fd6e9d74f70c51..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 96216 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¨Lxg^q(7z`1BZPjG(7z${V}yR3 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 diff --git a/src/kru.gui/.vs/kru.gui/FileContentIndex/70e3f94a-27da-4670-ab5a-98cc09085bd1.vsidx b/src/kru.gui/.vs/kru.gui/FileContentIndex/70e3f94a-27da-4670-ab5a-98cc09085bd1.vsidx deleted file mode 100644 index e60dac95f1387d21dfe6b275077ff969b2a4efa5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12940 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 EKT|Q=!TjTN!r)Txf^n2UdneI_{kDgYRF|sU6 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 diff --git a/src/kru.gui/.vs/kru.gui/FileContentIndex/read.lock b/src/kru.gui/.vs/kru.gui/FileContentIndex/read.lock deleted file mode 100644 index e69de29..000000000 diff --git a/src/kru.gui/.vs/kru.gui/v17/.futdcache.v2 b/src/kru.gui/.vs/kru.gui/v17/.futdcache.v2 deleted file mode 100644 index 9cd260618cd8b78fa98541d7c34ce337e6d48d14..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 138 zcmZQ%U|{fcv5E=LFUpPy4srC2NzW_+;f&Ixn4r{>%-mGnfQKRj9 zlpK>?RH~O=nhB%zl8Xz9^0SzLrtv!G=cQ$)mlh?KWaj6wx}+wRrgH@3B$lM*7v-`! a=2bcegr+WLc>b8J_xrlHw>W@WzyJWlPA@nB diff --git a/src/kru.gui/.vs/kru.gui/v17/.suo b/src/kru.gui/.vs/kru.gui/v17/.suo deleted file mode 100644 index 38fb74e40b74eca6b4e99b58dcc92e17de2c8e23..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 27136 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 mepN9u9?dV9BZcfjByJT7k!T$L7m< + Path.Combine( + Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location!)!, + @"Tools\x64\retime_phoneme.exe" + ); + + public string GetBatchLine() => string.Join(" ", new[] { $"\"{ExecutablePath}\"" }.Concat(GetArguments().Select(arg => $"\"{arg}\""))); + + public Process GetProcess() + { + var proc = new Process() + { + StartInfo = new ProcessStartInfo + { + FileName = ExecutablePath + }, + EnableRaisingEvents = true, + }; + foreach (var item in this.GetArguments()) + { + proc.StartInfo.ArgumentList.Add(item); + } + return proc; + } + + private IEnumerable GetArguments() + { + yield return "-s"; + yield return InputFile; + yield return "-d"; + yield return OutputFile; + if (Clean) + { + yield return "-oc"; + } + if (SaveLog) + { + yield return "-o"; + } + } +} diff --git a/src/kru.gui/Program.cs b/src/kru.gui/Program.cs index 9b3749b..4f0c583 100644 --- a/src/kru.gui/Program.cs +++ b/src/kru.gui/Program.cs @@ -1,19 +1,16 @@ -using kru.gui.UI; +namespace ConverterGui; -namespace kru.gui +internal static class Program { - internal static class Program + /// + /// The main entry point for the application. + /// + [STAThread] + static void Main() { - /// - /// The main entry point for the application. - /// - [STAThread] - static void Main() - { - // To customize application configuration such as set high DPI settings or default font, - // see https://aka.ms/applicationconfiguration. - ApplicationConfiguration.Initialize(); - Application.Run(new FrmMain()); - } + // To customize application configuration such as set high DPI settings or default font, + // see https://aka.ms/applicationconfiguration. + ApplicationConfiguration.Initialize(); + Application.Run(new frmMain()); } } \ No newline at end of file diff --git a/src/kru.gui/UI/FrmMain.Designer.cs b/src/kru.gui/UI/FrmMain.Designer.cs deleted file mode 100644 index da0b7e6..000000000 --- a/src/kru.gui/UI/FrmMain.Designer.cs +++ /dev/null @@ -1,224 +0,0 @@ -namespace kru.gui.UI -{ - partial class FrmMain - { - /// - /// Required designer variable. - /// - private System.ComponentModel.IContainer components = null; - - /// - /// Clean up any resources being used. - /// - /// true if managed resources should be disposed; otherwise, false. - protected override void Dispose(bool disposing) - { - if (disposing && (components != null)) - { - components.Dispose(); - } - base.Dispose(disposing); - } - - #region Windows Form Designer generated code - - /// - /// Required method for Designer support - do not modify - /// the contents of this method with the code editor. - /// - private void InitializeComponent() - { - this.groupBoxInput = new System.Windows.Forms.GroupBox(); - this.buttonBrowseInput = new System.Windows.Forms.Button(); - this.textBoxInput = new System.Windows.Forms.TextBox(); - this.groupBoxOutput = new System.Windows.Forms.GroupBox(); - this.groupBoxMode = new System.Windows.Forms.GroupBox(); - this.radioButtonC = new System.Windows.Forms.RadioButton(); - this.radioButtonD = new System.Windows.Forms.RadioButton(); - this.buttonBrowseOutput = new System.Windows.Forms.Button(); - this.checkBoxSaveLogs = new System.Windows.Forms.CheckBox(); - this.textBoxOutput = new System.Windows.Forms.TextBox(); - this.buttonStart = new System.Windows.Forms.Button(); - this.buttonSaveBatch = new System.Windows.Forms.Button(); - this.folderBrowserDialog = new System.Windows.Forms.FolderBrowserDialog(); - this.groupBoxInput.SuspendLayout(); - this.groupBoxOutput.SuspendLayout(); - this.groupBoxMode.SuspendLayout(); - this.SuspendLayout(); - // - // groupBoxInput - // - this.groupBoxInput.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) - | System.Windows.Forms.AnchorStyles.Right))); - this.groupBoxInput.Controls.Add(this.buttonBrowseInput); - this.groupBoxInput.Controls.Add(this.textBoxInput); - this.groupBoxInput.Location = new System.Drawing.Point(12, 12); - this.groupBoxInput.Name = "groupBoxInput"; - this.groupBoxInput.Size = new System.Drawing.Size(358, 64); - this.groupBoxInput.TabIndex = 0; - this.groupBoxInput.TabStop = false; - this.groupBoxInput.Text = "Input:"; - // - // buttonBrowseInput - // - this.buttonBrowseInput.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); - this.buttonBrowseInput.Location = new System.Drawing.Point(277, 22); - this.buttonBrowseInput.Name = "buttonBrowseInput"; - this.buttonBrowseInput.Size = new System.Drawing.Size(75, 23); - this.buttonBrowseInput.TabIndex = 1; - this.buttonBrowseInput.Text = "Browse"; - this.buttonBrowseInput.UseVisualStyleBackColor = true; - this.buttonBrowseInput.Click += new System.EventHandler(this.buttonBrowseInput_Click); - // - // textBoxInput - // - this.textBoxInput.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) - | System.Windows.Forms.AnchorStyles.Right))); - this.textBoxInput.Location = new System.Drawing.Point(6, 22); - this.textBoxInput.Name = "textBoxInput"; - this.textBoxInput.Size = new System.Drawing.Size(265, 23); - this.textBoxInput.TabIndex = 0; - // - // groupBoxOutput - // - this.groupBoxOutput.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) - | System.Windows.Forms.AnchorStyles.Right))); - this.groupBoxOutput.Controls.Add(this.groupBoxMode); - this.groupBoxOutput.Controls.Add(this.buttonBrowseOutput); - this.groupBoxOutput.Controls.Add(this.checkBoxSaveLogs); - this.groupBoxOutput.Controls.Add(this.textBoxOutput); - this.groupBoxOutput.Location = new System.Drawing.Point(12, 82); - this.groupBoxOutput.Name = "groupBoxOutput"; - this.groupBoxOutput.Size = new System.Drawing.Size(358, 136); - this.groupBoxOutput.TabIndex = 0; - this.groupBoxOutput.TabStop = false; - this.groupBoxOutput.Text = "Output:"; - // - // groupBoxMode - // - this.groupBoxMode.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right))); - this.groupBoxMode.Controls.Add(this.radioButtonC); - this.groupBoxMode.Controls.Add(this.radioButtonD); - this.groupBoxMode.Location = new System.Drawing.Point(6, 51); - this.groupBoxMode.Name = "groupBoxMode"; - this.groupBoxMode.Size = new System.Drawing.Size(262, 79); - this.groupBoxMode.TabIndex = 2; - this.groupBoxMode.TabStop = false; - this.groupBoxMode.Text = "Mode:"; - // - // radioButtonC - // - this.radioButtonC.AutoSize = true; - this.radioButtonC.Location = new System.Drawing.Point(6, 47); - this.radioButtonC.Name = "radioButtonC"; - this.radioButtonC.Size = new System.Drawing.Size(55, 19); - this.radioButtonC.TabIndex = 0; - this.radioButtonC.Text = "Clean"; - this.radioButtonC.UseVisualStyleBackColor = true; - // - // radioButtonD - // - this.radioButtonD.AutoSize = true; - this.radioButtonD.Checked = true; - this.radioButtonD.Location = new System.Drawing.Point(6, 22); - this.radioButtonD.Name = "radioButtonD"; - this.radioButtonD.Size = new System.Drawing.Size(102, 19); - this.radioButtonD.TabIndex = 0; - this.radioButtonD.TabStop = true; - this.radioButtonD.Text = "Fixed (Default)"; - this.radioButtonD.UseVisualStyleBackColor = true; - // - // buttonBrowseOutput - // - this.buttonBrowseOutput.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); - this.buttonBrowseOutput.Location = new System.Drawing.Point(277, 21); - this.buttonBrowseOutput.Name = "buttonBrowseOutput"; - this.buttonBrowseOutput.Size = new System.Drawing.Size(75, 23); - this.buttonBrowseOutput.TabIndex = 1; - this.buttonBrowseOutput.Text = "Browse"; - this.buttonBrowseOutput.UseVisualStyleBackColor = true; - this.buttonBrowseOutput.Click += new System.EventHandler(this.buttonBrowseOutput_Click); - // - // checkBoxSaveLogs - // - this.checkBoxSaveLogs.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right))); - this.checkBoxSaveLogs.AutoCheck = false; - this.checkBoxSaveLogs.AutoSize = true; - this.checkBoxSaveLogs.Checked = true; - this.checkBoxSaveLogs.CheckState = System.Windows.Forms.CheckState.Checked; - this.checkBoxSaveLogs.Location = new System.Drawing.Point(274, 111); - this.checkBoxSaveLogs.Name = "checkBoxSaveLogs"; - this.checkBoxSaveLogs.Size = new System.Drawing.Size(78, 19); - this.checkBoxSaveLogs.TabIndex = 0; - this.checkBoxSaveLogs.Text = "Save Logs"; - this.checkBoxSaveLogs.UseVisualStyleBackColor = true; - // - // textBoxOutput - // - this.textBoxOutput.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) - | System.Windows.Forms.AnchorStyles.Right))); - this.textBoxOutput.Location = new System.Drawing.Point(6, 22); - this.textBoxOutput.Name = "textBoxOutput"; - this.textBoxOutput.Size = new System.Drawing.Size(265, 23); - this.textBoxOutput.TabIndex = 0; - // - // buttonStart - // - this.buttonStart.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right))); - this.buttonStart.Location = new System.Drawing.Point(295, 235); - this.buttonStart.Name = "buttonStart"; - this.buttonStart.Size = new System.Drawing.Size(75, 23); - this.buttonStart.TabIndex = 1; - this.buttonStart.Text = "Start"; - this.buttonStart.UseVisualStyleBackColor = true; - // - // buttonSaveBatch - // - this.buttonSaveBatch.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left))); - this.buttonSaveBatch.Location = new System.Drawing.Point(12, 235); - this.buttonSaveBatch.Name = "buttonSaveBatch"; - this.buttonSaveBatch.Size = new System.Drawing.Size(75, 23); - this.buttonSaveBatch.TabIndex = 1; - this.buttonSaveBatch.Text = "Save Batch"; - this.buttonSaveBatch.UseVisualStyleBackColor = true; - // - // FrmMain - // - this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 15F); - this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; - this.ClientSize = new System.Drawing.Size(382, 270); - this.Controls.Add(this.buttonSaveBatch); - this.Controls.Add(this.buttonStart); - this.Controls.Add(this.groupBoxOutput); - this.Controls.Add(this.groupBoxInput); - this.Name = "FrmMain"; - this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen; - this.Text = "Retime Phoneme Uti GUI"; - this.Load += new System.EventHandler(this.FrmMain_Load); - this.groupBoxInput.ResumeLayout(false); - this.groupBoxInput.PerformLayout(); - this.groupBoxOutput.ResumeLayout(false); - this.groupBoxOutput.PerformLayout(); - this.groupBoxMode.ResumeLayout(false); - this.groupBoxMode.PerformLayout(); - this.ResumeLayout(false); - - } - - #endregion - - private GroupBox groupBoxInput; - private GroupBox groupBoxOutput; - private Button buttonStart; - private Button buttonSaveBatch; - private CheckBox checkBoxSaveLogs; - private Button buttonBrowseInput; - private TextBox textBoxInput; - private Button buttonBrowseOutput; - private TextBox textBoxOutput; - private GroupBox groupBoxMode; - private RadioButton radioButtonC; - private RadioButton radioButtonD; - private FolderBrowserDialog folderBrowserDialog; - } -} \ No newline at end of file diff --git a/src/kru.gui/UI/FrmMain.cs b/src/kru.gui/UI/FrmMain.cs deleted file mode 100644 index bff89a3..000000000 --- a/src/kru.gui/UI/FrmMain.cs +++ /dev/null @@ -1,31 +0,0 @@ -namespace kru.gui.UI -{ - public partial class FrmMain : Form - { - public FrmMain() - { - InitializeComponent(); - } - - private void FrmMain_Load(object sender, EventArgs e) - { - - } - - private void buttonBrowseInput_Click(object sender, EventArgs e) - { - if (folderBrowserDialog.ShowDialog() == DialogResult.OK) - { - textBoxInput.Text = folderBrowserDialog.SelectedPath; - } - } - - private void buttonBrowseOutput_Click(object sender, EventArgs e) - { - if (folderBrowserDialog.ShowDialog() == DialogResult.OK) - { - textBoxOutput.Text = folderBrowserDialog.SelectedPath; - } - } - } -} \ No newline at end of file diff --git a/src/kru.gui/frmMain.Designer.cs b/src/kru.gui/frmMain.Designer.cs new file mode 100644 index 000000000..ef1e81e --- /dev/null +++ b/src/kru.gui/frmMain.Designer.cs @@ -0,0 +1,211 @@ +namespace ConverterGui; + +partial class frmMain +{ + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.lblInput = new System.Windows.Forms.Label(); + this.txtInput = new System.Windows.Forms.TextBox(); + this.txtOutput = new System.Windows.Forms.TextBox(); + this.lblOutput = new System.Windows.Forms.Label(); + this.btnBrowseInput = new System.Windows.Forms.Button(); + this.btnBrowseOutput = new System.Windows.Forms.Button(); + this.btnSave = new System.Windows.Forms.Button(); + this.btnStart = new System.Windows.Forms.Button(); + this.fbBrowseInput = new System.Windows.Forms.FolderBrowserDialog(); + this.fbBrowseOutput = new System.Windows.Forms.FolderBrowserDialog(); + this.sfdOutput = new System.Windows.Forms.SaveFileDialog(); + this.grpClean = new System.Windows.Forms.GroupBox(); + this.rdClean = new System.Windows.Forms.RadioButton(); + this.rdFixed = new System.Windows.Forms.RadioButton(); + this.chkSaveLogs = new System.Windows.Forms.CheckBox(); + this.grpClean.SuspendLayout(); + this.SuspendLayout(); + // + // lblInput + // + this.lblInput.AutoSize = true; + this.lblInput.Location = new System.Drawing.Point(12, 20); + this.lblInput.Name = "lblInput"; + this.lblInput.Size = new System.Drawing.Size(58, 25); + this.lblInput.TabIndex = 0; + this.lblInput.Text = "Input:"; + // + // txtInput + // + this.txtInput.Location = new System.Drawing.Point(12, 68); + this.txtInput.Name = "txtInput"; + this.txtInput.Size = new System.Drawing.Size(521, 31); + this.txtInput.TabIndex = 1; + this.txtInput.TextChanged += new System.EventHandler(this.TxtInputTextChanged); + // + // txtOutput + // + this.txtOutput.Location = new System.Drawing.Point(12, 173); + this.txtOutput.Name = "txtOutput"; + this.txtOutput.Size = new System.Drawing.Size(521, 31); + this.txtOutput.TabIndex = 3; + this.txtOutput.TextChanged += new System.EventHandler(this.TxtOutputTextChanged); + // + // lblOutput + // + this.lblOutput.AutoSize = true; + this.lblOutput.Location = new System.Drawing.Point(12, 125); + this.lblOutput.Name = "lblOutput"; + this.lblOutput.Size = new System.Drawing.Size(73, 25); + this.lblOutput.TabIndex = 2; + this.lblOutput.Text = "Output:"; + // + // btnBrowseInput + // + this.btnBrowseInput.Location = new System.Drawing.Point(555, 67); + this.btnBrowseInput.Name = "btnBrowseInput"; + this.btnBrowseInput.Size = new System.Drawing.Size(112, 34); + this.btnBrowseInput.TabIndex = 4; + this.btnBrowseInput.Text = "Browse"; + this.btnBrowseInput.UseVisualStyleBackColor = true; + this.btnBrowseInput.Click += new System.EventHandler(this.BtnBrowseInputClick); + // + // btnBrowseOutput + // + this.btnBrowseOutput.Location = new System.Drawing.Point(555, 171); + this.btnBrowseOutput.Name = "btnBrowseOutput"; + this.btnBrowseOutput.Size = new System.Drawing.Size(112, 34); + this.btnBrowseOutput.TabIndex = 5; + this.btnBrowseOutput.Text = "Browse"; + this.btnBrowseOutput.UseVisualStyleBackColor = true; + this.btnBrowseOutput.Click += new System.EventHandler(this.BtnBrowseOutputClick); + // + // btnSave + // + this.btnSave.Enabled = false; + this.btnSave.Location = new System.Drawing.Point(12, 373); + this.btnSave.Name = "btnSave"; + this.btnSave.Size = new System.Drawing.Size(112, 34); + this.btnSave.TabIndex = 6; + this.btnSave.Text = "Save batch"; + this.btnSave.UseVisualStyleBackColor = true; + this.btnSave.Click += new System.EventHandler(this.BtnSaveClick); + // + // btnStart + // + this.btnStart.Enabled = false; + this.btnStart.Location = new System.Drawing.Point(552, 373); + this.btnStart.Name = "btnStart"; + this.btnStart.Size = new System.Drawing.Size(112, 34); + this.btnStart.TabIndex = 7; + this.btnStart.Text = "Start"; + this.btnStart.UseVisualStyleBackColor = true; + this.btnStart.Click += new System.EventHandler(this.btnStart_Click); + // + // grpClean + // + this.grpClean.Controls.Add(this.rdClean); + this.grpClean.Controls.Add(this.rdFixed); + this.grpClean.Location = new System.Drawing.Point(12, 226); + this.grpClean.Name = "grpClean"; + this.grpClean.Size = new System.Drawing.Size(320, 119); + this.grpClean.TabIndex = 8; + this.grpClean.TabStop = false; + this.grpClean.Text = "Mode"; + // + // rdClean + // + this.rdClean.AutoSize = true; + this.rdClean.Location = new System.Drawing.Point(18, 75); + this.rdClean.Name = "rdClean"; + this.rdClean.Size = new System.Drawing.Size(80, 29); + this.rdClean.TabIndex = 1; + this.rdClean.Text = "Clean"; + this.rdClean.UseVisualStyleBackColor = true; + // + // rdFixed + // + this.rdFixed.AutoSize = true; + this.rdFixed.Checked = true; + this.rdFixed.Location = new System.Drawing.Point(18, 30); + this.rdFixed.Name = "rdFixed"; + this.rdFixed.Size = new System.Drawing.Size(143, 29); + this.rdFixed.TabIndex = 0; + this.rdFixed.TabStop = true; + this.rdFixed.Text = "Fixed(default)"; + this.rdFixed.UseVisualStyleBackColor = true; + // + // chkSaveLogs + // + this.chkSaveLogs.AutoSize = true; + this.chkSaveLogs.Checked = true; + this.chkSaveLogs.CheckState = System.Windows.Forms.CheckState.Checked; + this.chkSaveLogs.Location = new System.Drawing.Point(375, 243); + this.chkSaveLogs.Name = "chkSaveLogs"; + this.chkSaveLogs.Size = new System.Drawing.Size(114, 29); + this.chkSaveLogs.TabIndex = 9; + this.chkSaveLogs.Text = "Save logs"; + this.chkSaveLogs.UseVisualStyleBackColor = true; + // + // frmMain + // + this.AutoScaleDimensions = new System.Drawing.SizeF(10F, 25F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(690, 416); + this.Controls.Add(this.chkSaveLogs); + this.Controls.Add(this.grpClean); + this.Controls.Add(this.btnStart); + this.Controls.Add(this.btnSave); + this.Controls.Add(this.btnBrowseOutput); + this.Controls.Add(this.btnBrowseInput); + this.Controls.Add(this.txtOutput); + this.Controls.Add(this.lblOutput); + this.Controls.Add(this.txtInput); + this.Controls.Add(this.lblInput); + this.Name = "frmMain"; + this.Text = "Converter"; + this.grpClean.ResumeLayout(false); + this.grpClean.PerformLayout(); + this.ResumeLayout(false); + this.PerformLayout(); + + } + + #endregion + + private Label lblInput; + private TextBox txtInput; + private TextBox txtOutput; + private Label lblOutput; + private Button btnBrowseInput; + private Button btnBrowseOutput; + private Button btnSave; + private Button btnStart; + private FolderBrowserDialog fbBrowseInput; + private FolderBrowserDialog fbBrowseOutput; + private SaveFileDialog sfdOutput; + private GroupBox grpClean; + private RadioButton rdClean; + private RadioButton rdFixed; + private CheckBox chkSaveLogs; +} diff --git a/src/kru.gui/frmMain.cs b/src/kru.gui/frmMain.cs new file mode 100644 index 000000000..8a1bf5b --- /dev/null +++ b/src/kru.gui/frmMain.cs @@ -0,0 +1,73 @@ +namespace ConverterGui; +public partial class frmMain : Form +{ + public frmMain() => InitializeComponent(); + + private void BtnBrowseOutputClick(object sender, EventArgs e) => this.txtOutput.Text = this.fbBrowseOutput.ShowDialog() == DialogResult.OK ? this.fbBrowseOutput.SelectedPath : string.Empty; + + private void BtnBrowseInputClick(object sender, EventArgs e) => this.txtInput.Text = this.fbBrowseInput.ShowDialog() == DialogResult.OK ? this.fbBrowseInput.SelectedPath : string.Empty; + + private void TxtOutputTextChanged(object sender, EventArgs e) + { + this.fbBrowseOutput.SelectedPath = this.txtOutput.Text; + EnableButtons(); + } + + private void TxtInputTextChanged(object sender, EventArgs e) + { + this.fbBrowseInput.SelectedPath = this.txtInput.Text; + EnableButtons(); + } + + private void BtnSaveClick(object sender, EventArgs e) + { + var commands = GetCommands(); + + if (sfdOutput.ShowDialog() == DialogResult.OK) + { + File.WriteAllLines(sfdOutput.FileName, commands + .Select(a => a.GetBatchLine())); + } + + MessageBox.Show("Done!"); + } + + private void EnableButtons() + { + var enabled = !string.IsNullOrWhiteSpace(this.txtInput.Text) + && !string.IsNullOrWhiteSpace(this.txtOutput.Text) + && Directory.Exists(this.txtInput.Text); + this.btnSave.Enabled = this.btnStart.Enabled = enabled; + } + + private Command[] GetCommands() + { + var options = new + { + Input = this.txtInput.Text, + Output = this.txtOutput.Text, + Clean = this.rdClean.Checked, + SaveLog = chkSaveLogs.Checked, + }; + var commands = Directory + .GetFiles(options.Input) + .Select(inputFile => new Command(inputFile, Path.Combine(options.Output, Path.GetFileName(inputFile)), options.Clean, options.SaveLog)) + .ToArray(); + + return commands; + } + + private async void btnStart_Click(object sender, EventArgs e) + { + this.Enabled = false; + var commands = GetCommands(); + foreach (var command in commands) + { + var proc = command.GetProcess(); + proc.Start(); + await proc.WaitForExitAsync().ConfigureAwait(false); + } + this.Enabled = true; + MessageBox.Show("Done!"); + } +} diff --git a/src/kru.gui/UI/FrmMain.resx b/src/kru.gui/frmMain.resx similarity index 83% rename from src/kru.gui/UI/FrmMain.resx rename to src/kru.gui/frmMain.resx index f72ed9f..493d344 100644 --- a/src/kru.gui/UI/FrmMain.resx +++ b/src/kru.gui/frmMain.resx @@ -57,7 +57,13 @@ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - + 17, 17 + + 197, 17 + + + 393, 17 + \ No newline at end of file diff --git a/src/kru.gui/kru.gui.csproj b/src/kru.gui/kru.gui.csproj index 330f660..6e39934 100644 --- a/src/kru.gui/kru.gui.csproj +++ b/src/kru.gui/kru.gui.csproj @@ -34,5 +34,4 @@ Always - \ No newline at end of file diff --git a/src/kru.gui/kru.gui.csproj.user b/src/kru.gui/kru.gui.csproj.user deleted file mode 100644 index 03d5f0d..000000000 --- a/src/kru.gui/kru.gui.csproj.user +++ /dev/null @@ -1,8 +0,0 @@ - - - - - Form - - - \ No newline at end of file diff --git a/src/kru.sln b/src/kru.sln index 498a6c6..b54721d 100644 --- a/src/kru.sln +++ b/src/kru.sln @@ -5,6 +5,8 @@ VisualStudioVersion = 17.5.33209.295 MinimumVisualStudioVersion = 10.0.40219.1 Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "kru.gui", "kru.gui\kru.gui.csproj", "{2D372BD7-104E-480F-82F5-60EA08A20227}" EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{494D64A2-ECC6-4B4B-8359-F5AB20E128F7}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU