diff --git a/.github/workflows/dotnet-desktop.yml b/.github/workflows/dotnet-desktop.yml
index 4685300..c1507e7 100644
--- a/.github/workflows/dotnet-desktop.yml
+++ b/.github/workflows/dotnet-desktop.yml
@@ -1,22 +1,4 @@
-# 2. Signing
-# Generate a signing certificate in the Windows Application
-# Packaging Project or add an existing signing certificate to the project.
-# Next, use PowerShell to encode the .pfx file using Base64 encoding
-# by running the following Powershell script to generate the output string:
-#
-# $pfx_cert = Get-Content '.\SigningCertificate.pfx' -Encoding Byte
-# [System.Convert]::ToBase64String($pfx_cert) | Out-File 'SigningCertificate_Encoded.txt'
-#
-# Open the output file, SigningCertificate_Encoded.txt, and copy the
-# string inside. Then, add the string to the repo as a GitHub secret
-# and name it "Base64_Encoded_Pfx."
-# For more information on how to configure your signing certificate for
-# this workflow, refer to https://github.com/microsoft/github-actions-for-desktop-apps#signing
-#
-# Finally, add the signing certificate password to the repo as a secret and name it "Pfx_Key".
-# See "Build the Windows Application Packaging project" below to see how the secret is used.
-
-name: .NET Core Desktop
+name: Windows Forms build and package
on:
push:
@@ -34,9 +16,8 @@ jobs:
env:
Solution_Name: Vocup.sln # Replace with your solution name, i.e. MyWpfApp.sln.
- Test_Project_Path: tests\Vocup.UnitTests\Vocup.UnitTests.csproj # Replace with the path to your test project, i.e. MyWpfApp.Tests\MyWpfApp.Tests.csproj.
- Wap_Project_Directory: src\Vocup.Packaging # Replace with the Wap project directory relative to the solution, i.e. MyWpfApp.Package.
- Wap_Project_Path: src\Vocup.Packaging\Vocup.Packaging.wapproj # Replace with the path to your Wap project, i.e. MyWpf.App.Package\MyWpfApp.Package.wapproj.
+ App_Project_Directory: src\Vocup.WinForms
+ App_Project_Name: Vocup.WinForms
steps:
- name: Checkout
@@ -56,41 +37,79 @@ jobs:
# Execute all unit tests in the solution
- name: Execute unit tests
- run: dotnet test
+ run: dotnet test --configuration ${{ matrix.configuration }} --arch x64
# Restore the application to populate the obj folder with RuntimeIdentifiers
- name: Restore the application
- run: msbuild $env:Solution_Name /t:Restore /p:Configuration=$env:Configuration
- env:
- Configuration: ${{ matrix.configuration }}
+ if: matrix.configuration == 'Release'
+ run: msbuild $env:Solution_Name /t:Restore /p:Configuration=${{ matrix.configuration }}
- # Decode the base 64 encoded pfx and save the Signing_Certificate
- - name: Decode the pfx
+ - name: Create MSIX package (x86)
if: matrix.configuration == 'Release'
- run: |
- $pfx_cert_byte = [System.Convert]::FromBase64String("${{ secrets.Base64_Encoded_Pfx }}")
- $certificatePath = Join-Path -Path $env:Wap_Project_Directory -ChildPath GitHubActionsWorkflow.pfx
- [IO.File]::WriteAllBytes("$certificatePath", $pfx_cert_byte)
+ run: msbuild $env:App_Project_Directory /p:Configuration=${{ matrix.configuration }} /p:Platform=x86 /p:GenerateAppxPackageOnBuild=true
- # Create the app package by building and packaging the Windows Application Packaging project
- - name: Create the app package
+ - name: Create MSIX package (x64)
if: matrix.configuration == 'Release'
- run: msbuild $env:Wap_Project_Path /p:Configuration=$env:Configuration /p:UapAppxPackageBuildMode=$env:Appx_Package_Build_Mode /p:AppxBundle=$env:Appx_Bundle /p:PackageCertificateKeyFile=GitHubActionsWorkflow.pfx
- env:
- Appx_Bundle: Always
- Appx_Bundle_Platforms: x86|x64|arm64
- Appx_Package_Build_Mode: StoreUpload
- Configuration: ${{ matrix.configuration }}
-
- # Remove the pfx
- - name: Remove the pfx
+ run: msbuild $env:App_Project_Directory /p:Configuration=${{ matrix.configuration }} /p:Platform=x64 /p:GenerateAppxPackageOnBuild=true
+
+ - name: Create MSIX package (arm64)
if: matrix.configuration == 'Release'
- run: Remove-Item -path $env:Wap_Project_Directory\GitHubActionsWorkflow.pfx
+ run: msbuild $env:App_Project_Directory /p:Configuration=${{ matrix.configuration }} /p:Platform=arm64 /p:GenerateAppxPackageOnBuild=true
+
+ - name: Gather MSIX files
+ id: gather
+ if: matrix.configuration == 'Release' && startsWith(github.ref, 'refs/tags/')
+ run: |
+ $gatherDirectory = Join-Path $env:App_Project_Directory "obj" "Bundle"
+ New-Item -ItemType Directory -Path $gatherDirectory | Out-Null
+
+ $msixFiles = Get-ChildItem -Path (Join-Path $env:App_Project_Directory "bin") -Recurse -Include "$env:App_Project_Name*.appx"
+ $msixFiles | ForEach-Object { Copy-Item -Path $_.FullName -Destination $gatherDirectory }
+ Write-Output "Copied $($msixFiles.Count) MSIX files to $gatherDirectory"
+
+ $version = $msixFiles[0].BaseName.Split("_")[1]
+ Write-Output "Bundle version based on MSIX file name is $version"
+
+ $uploadDirectory = Join-Path $env:App_Project_Directory "bin" "AppPackages"
+ New-Item -ItemType Directory -Path $uploadDirectory | Out-Null
+
+ $uploadFile = Join-Path $uploadDirectory "$($env:App_Project_Name)_$($version)_x86_x64_arm64_bundle.appxupload"
- # Upload the MSIX package: https://github.com/marketplace/actions/upload-a-build-artifact
+ $bundleDirectory = Join-Path $uploadDirectory "$($env:App_Project_Name)_$($version)_Test"
+ New-Item -ItemType Directory -Path $bundleDirectory | Out-Null
+
+ $bundleFile = Join-Path $bundleDirectory "$($env:App_Project_Name)_$($version)_x86_x64_arm64.appxbundle"
+
+ $symbolFiles = Get-ChildItem -Path (Join-Path $env:App_Project_Directory "bin") -Recurse -Include "$env:App_Project_Name*.appxsym"
+ $symbolFiles | ForEach-Object { Copy-Item -Path $_.FullName -Destination $bundleDirectory }
+ Write-Output "Copied $($symbolFiles.Count) symbol files to $bundleDirectory"
+
+ Write-Output "gather_directory=$gatherDirectory" >> $env:GITHUB_OUTPUT
+ Write-Output "bundle_directory=$bundleDirectory" >> $env:GITHUB_OUTPUT
+ Write-Output "bundle_version=$version" >> $env:GITHUB_OUTPUT
+ Write-Output "bundle_file=$bundleFile" >> $env:GITHUB_OUTPUT
+ Write-Output "upload_directory=$uploadDirectory" >> $env:GITHUB_OUTPUT
+ Write-Output "upload_file=$uploadFile" >> $env:GITHUB_OUTPUT
+
+ - name: Create MSIX bundle
+ if: matrix.configuration == 'Release' && startsWith(github.ref, 'refs/tags/')
+ uses: LanceMcCarthy/Action-MsixBundler@v2.0.0
+ with:
+ msix-folder: ${{ steps.gather.outputs.gather_directory }}
+ msixbundle-filepath: ${{ steps.gather.outputs.bundle_file }}
+ msixbundle-version: ${{ steps.gather.outputs.bundle_version }}
+
+ - name: Create MSIX upload
+ if: matrix.configuration == 'Release' && startsWith(github.ref, 'refs/tags/')
+ run: |
+ $uploadFile = "${{ steps.gather.outputs.upload_file }}"
+ $bundleDirectory = "${{ steps.gather.outputs.bundle_directory }}"
+
+ Compress-Archive -Path "$bundleDirectory\*" -DestinationPath $uploadFile
+
- name: Upload build artifacts
if: matrix.configuration == 'Release' && startsWith(github.ref, 'refs/tags/')
uses: actions/upload-artifact@v4
with:
name: MSIX Package
- path: ${{ env.Wap_Project_Directory }}\AppPackages
+ path: ${{ steps.gather.outputs.upload_file }}
diff --git a/.gitignore b/.gitignore
index 8afdcb6..77bc254 100644
--- a/.gitignore
+++ b/.gitignore
@@ -186,7 +186,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
diff --git a/Directory.Build.props b/Directory.Build.props
index ee4489e..16cf905 100644
--- a/Directory.Build.props
+++ b/Directory.Build.props
@@ -1,6 +1,6 @@
enable
- 11.2.1
+ 11.2.2
diff --git a/Vocup.sln b/Vocup.sln
index dd1040f..72333f2 100644
--- a/Vocup.sln
+++ b/Vocup.sln
@@ -37,8 +37,6 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "setup", "setup", "{2EC721A1
setup\vocup.iss = setup\vocup.iss
EndProjectSection
EndProject
-Project("{C7167F0D-BC9F-4E6E-AFE1-012C56B48DB5}") = "Vocup.Packaging", "src\Vocup.Packaging\Vocup.Packaging.wapproj", "{B6986B1F-50BC-4E36-87B4-1C195B15F953}"
-EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "tests", "tests", "{DB3F9D1B-E719-4A4B-8953-5FB027887083}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Vocup.UnitTests", "tests\Vocup.UnitTests\Vocup.UnitTests.csproj", "{AEB8CB75-2A9D-4DE1-B4F8-B529FFA21240}"
@@ -65,38 +63,24 @@ Global
{004AE06A-96F3-4B2E-9AF4-524835814A36}.Debug|Any CPU.Build.0 = Debug|Any CPU
{004AE06A-96F3-4B2E-9AF4-524835814A36}.Debug|ARM64.ActiveCfg = Debug|ARM64
{004AE06A-96F3-4B2E-9AF4-524835814A36}.Debug|ARM64.Build.0 = Debug|ARM64
+ {004AE06A-96F3-4B2E-9AF4-524835814A36}.Debug|ARM64.Deploy.0 = Debug|ARM64
{004AE06A-96F3-4B2E-9AF4-524835814A36}.Debug|x64.ActiveCfg = Debug|x64
{004AE06A-96F3-4B2E-9AF4-524835814A36}.Debug|x64.Build.0 = Debug|x64
+ {004AE06A-96F3-4B2E-9AF4-524835814A36}.Debug|x64.Deploy.0 = Debug|x64
{004AE06A-96F3-4B2E-9AF4-524835814A36}.Debug|x86.ActiveCfg = Debug|x86
{004AE06A-96F3-4B2E-9AF4-524835814A36}.Debug|x86.Build.0 = Debug|x86
+ {004AE06A-96F3-4B2E-9AF4-524835814A36}.Debug|x86.Deploy.0 = Debug|x86
{004AE06A-96F3-4B2E-9AF4-524835814A36}.Release|Any CPU.ActiveCfg = Release|Any CPU
{004AE06A-96F3-4B2E-9AF4-524835814A36}.Release|Any CPU.Build.0 = Release|Any CPU
{004AE06A-96F3-4B2E-9AF4-524835814A36}.Release|ARM64.ActiveCfg = Release|ARM64
{004AE06A-96F3-4B2E-9AF4-524835814A36}.Release|ARM64.Build.0 = Release|ARM64
+ {004AE06A-96F3-4B2E-9AF4-524835814A36}.Release|ARM64.Deploy.0 = Release|ARM64
{004AE06A-96F3-4B2E-9AF4-524835814A36}.Release|x64.ActiveCfg = Release|x64
{004AE06A-96F3-4B2E-9AF4-524835814A36}.Release|x64.Build.0 = Release|x64
+ {004AE06A-96F3-4B2E-9AF4-524835814A36}.Release|x64.Deploy.0 = Release|x64
{004AE06A-96F3-4B2E-9AF4-524835814A36}.Release|x86.ActiveCfg = Release|x86
{004AE06A-96F3-4B2E-9AF4-524835814A36}.Release|x86.Build.0 = Release|x86
- {B6986B1F-50BC-4E36-87B4-1C195B15F953}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {B6986B1F-50BC-4E36-87B4-1C195B15F953}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {B6986B1F-50BC-4E36-87B4-1C195B15F953}.Debug|ARM64.Build.0 = Debug|ARM64
- {B6986B1F-50BC-4E36-87B4-1C195B15F953}.Debug|ARM64.Deploy.0 = Debug|ARM64
- {B6986B1F-50BC-4E36-87B4-1C195B15F953}.Debug|x64.ActiveCfg = Debug|x64
- {B6986B1F-50BC-4E36-87B4-1C195B15F953}.Debug|x64.Build.0 = Debug|x64
- {B6986B1F-50BC-4E36-87B4-1C195B15F953}.Debug|x64.Deploy.0 = Debug|x64
- {B6986B1F-50BC-4E36-87B4-1C195B15F953}.Debug|x86.ActiveCfg = Debug|x86
- {B6986B1F-50BC-4E36-87B4-1C195B15F953}.Debug|x86.Build.0 = Debug|x86
- {B6986B1F-50BC-4E36-87B4-1C195B15F953}.Debug|x86.Deploy.0 = Debug|x86
- {B6986B1F-50BC-4E36-87B4-1C195B15F953}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {B6986B1F-50BC-4E36-87B4-1C195B15F953}.Release|ARM64.ActiveCfg = Release|ARM64
- {B6986B1F-50BC-4E36-87B4-1C195B15F953}.Release|ARM64.Build.0 = Release|ARM64
- {B6986B1F-50BC-4E36-87B4-1C195B15F953}.Release|ARM64.Deploy.0 = Release|ARM64
- {B6986B1F-50BC-4E36-87B4-1C195B15F953}.Release|x64.ActiveCfg = Release|x64
- {B6986B1F-50BC-4E36-87B4-1C195B15F953}.Release|x64.Build.0 = Release|x64
- {B6986B1F-50BC-4E36-87B4-1C195B15F953}.Release|x64.Deploy.0 = Release|x64
- {B6986B1F-50BC-4E36-87B4-1C195B15F953}.Release|x86.ActiveCfg = Release|x86
- {B6986B1F-50BC-4E36-87B4-1C195B15F953}.Release|x86.Build.0 = Release|x86
- {B6986B1F-50BC-4E36-87B4-1C195B15F953}.Release|x86.Deploy.0 = Release|x86
+ {004AE06A-96F3-4B2E-9AF4-524835814A36}.Release|x86.Deploy.0 = Release|x86
{AEB8CB75-2A9D-4DE1-B4F8-B529FFA21240}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{AEB8CB75-2A9D-4DE1-B4F8-B529FFA21240}.Debug|Any CPU.Build.0 = Debug|Any CPU
{AEB8CB75-2A9D-4DE1-B4F8-B529FFA21240}.Debug|ARM64.ActiveCfg = Debug|Any CPU
@@ -175,7 +159,6 @@ Global
EndGlobalSection
GlobalSection(NestedProjects) = preSolution
{004AE06A-96F3-4B2E-9AF4-524835814A36} = {C15174B9-657C-4871-BD70-E367286C3A48}
- {B6986B1F-50BC-4E36-87B4-1C195B15F953} = {C15174B9-657C-4871-BD70-E367286C3A48}
{AEB8CB75-2A9D-4DE1-B4F8-B529FFA21240} = {DB3F9D1B-E719-4A4B-8953-5FB027887083}
{3A27DC34-46FB-44FB-B169-C3AAC746AC9B} = {C15174B9-657C-4871-BD70-E367286C3A48}
{B6B9C56D-7384-4D6B-B822-FB70E5D6ACCA} = {C15174B9-657C-4871-BD70-E367286C3A48}
diff --git a/src/Vocup.Packaging/Vocup.Packaging.wapproj b/src/Vocup.Packaging/Vocup.Packaging.wapproj
deleted file mode 100644
index 5787553..0000000
--- a/src/Vocup.Packaging/Vocup.Packaging.wapproj
+++ /dev/null
@@ -1,105 +0,0 @@
-
-
-
- 15.0
-
-
-
- Debug
- x86
-
-
- Release
- x86
-
-
- Debug
- x64
-
-
- Release
- x64
-
-
- Debug
- ARM64
-
-
- Release
- ARM64
-
-
- Debug
- AnyCPU
-
-
- Release
- AnyCPU
-
-
-
- $(MSBuildExtensionsPath)\Microsoft\DesktopBridge\
-
-
-
- b6986b1f-50bc-4e36-87b4-1c195b15f953
- 10.0.19041.0
- 10.0.14393.0
- en
- ..\Vocup.WinForms\Vocup.WinForms.csproj
- False
- False
- Always
- x86|x64|arm64
- True
- SHA256
- Vocup.Packaging_TemporaryKey.pfx
- True
- 0
- $(NoWarn);NU1702
-
-
-
- Designer
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/src/Vocup.WinForms/Forms/PracticeDialog.Designer.cs b/src/Vocup.WinForms/Forms/PracticeDialog.Designer.cs
index 4164677..b5edf7d 100644
--- a/src/Vocup.WinForms/Forms/PracticeDialog.Designer.cs
+++ b/src/Vocup.WinForms/Forms/PracticeDialog.Designer.cs
@@ -30,308 +30,304 @@ protected override void Dispose(bool disposing)
private void InitializeComponent()
{
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(PracticeDialog));
- this.TbForeignLangSynonym = new System.Windows.Forms.TextBox();
- this.TbForeignLang = new System.Windows.Forms.TextBox();
- this.TbMotherTongue = new System.Windows.Forms.TextBox();
- this.LbForeignLangSynonym = new System.Windows.Forms.Label();
- this.LbForeignLang = new System.Windows.Forms.Label();
- this.LbMotherTongue = new System.Windows.Forms.Label();
- this.GroupStatistics = new System.Windows.Forms.GroupBox();
- this.TbWrongCount = new System.Windows.Forms.TextBox();
- this.label6 = new System.Windows.Forms.Label();
- this.TbPartlyCorrectCount = new System.Windows.Forms.TextBox();
- this.label5 = new System.Windows.Forms.Label();
- this.label4 = new System.Windows.Forms.Label();
- this.TbCorrectCount = new System.Windows.Forms.TextBox();
- this.label3 = new System.Windows.Forms.Label();
- this.label2 = new System.Windows.Forms.Label();
- this.label1 = new System.Windows.Forms.Label();
- this.TbPracticedCount = new System.Windows.Forms.TextBox();
- this.TbUnpracticedCount = new System.Windows.Forms.TextBox();
- this.TbPracticeCount = new System.Windows.Forms.TextBox();
- this.PbPracticeProgress = new System.Windows.Forms.ProgressBar();
- this.BtnCancel = new System.Windows.Forms.Button();
- this.BtnContinue = new System.Windows.Forms.Button();
- this.TbCorrectAnswer = new System.Windows.Forms.TextBox();
- this.BtnSpecialChar = new System.Windows.Forms.Button();
- this.RbPartlyCorrect = new System.Windows.Forms.RadioButton();
- this.RbWrong = new System.Windows.Forms.RadioButton();
- this.RbCorrect = new System.Windows.Forms.RadioButton();
- this.GroupUserEvaluation = new System.Windows.Forms.GroupBox();
- this.TableLayout = new System.Windows.Forms.TableLayoutPanel();
- this.PanelMotherTongue = new System.Windows.Forms.Panel();
- this.PanelForeignLang = new System.Windows.Forms.Panel();
- this.PanelForeignLangSynonym = new System.Windows.Forms.Panel();
- this.GroupStatistics.SuspendLayout();
- this.GroupUserEvaluation.SuspendLayout();
- this.TableLayout.SuspendLayout();
- this.PanelMotherTongue.SuspendLayout();
- this.PanelForeignLang.SuspendLayout();
- this.PanelForeignLangSynonym.SuspendLayout();
- this.SuspendLayout();
+ TbForeignLangSynonym = new System.Windows.Forms.TextBox();
+ TbForeignLang = new System.Windows.Forms.TextBox();
+ TbMotherTongue = new System.Windows.Forms.TextBox();
+ LbForeignLangSynonym = new System.Windows.Forms.Label();
+ LbForeignLang = new System.Windows.Forms.Label();
+ LbMotherTongue = new System.Windows.Forms.Label();
+ GroupStatistics = new System.Windows.Forms.GroupBox();
+ TbWrongCount = new System.Windows.Forms.TextBox();
+ label6 = new System.Windows.Forms.Label();
+ TbPartlyCorrectCount = new System.Windows.Forms.TextBox();
+ label5 = new System.Windows.Forms.Label();
+ label4 = new System.Windows.Forms.Label();
+ TbCorrectCount = new System.Windows.Forms.TextBox();
+ label3 = new System.Windows.Forms.Label();
+ label2 = new System.Windows.Forms.Label();
+ label1 = new System.Windows.Forms.Label();
+ TbPracticedCount = new System.Windows.Forms.TextBox();
+ TbUnpracticedCount = new System.Windows.Forms.TextBox();
+ TbPracticeCount = new System.Windows.Forms.TextBox();
+ PbPracticeProgress = new System.Windows.Forms.ProgressBar();
+ BtnCancel = new System.Windows.Forms.Button();
+ BtnContinue = new System.Windows.Forms.Button();
+ TbCorrectAnswer = new System.Windows.Forms.TextBox();
+ BtnSpecialChar = new System.Windows.Forms.Button();
+ RbPartlyCorrect = new System.Windows.Forms.RadioButton();
+ RbWrong = new System.Windows.Forms.RadioButton();
+ RbCorrect = new System.Windows.Forms.RadioButton();
+ GroupUserEvaluation = new System.Windows.Forms.GroupBox();
+ TableLayout = new System.Windows.Forms.TableLayoutPanel();
+ PanelMotherTongue = new System.Windows.Forms.Panel();
+ PanelForeignLang = new System.Windows.Forms.Panel();
+ PanelForeignLangSynonym = new System.Windows.Forms.Panel();
+ GroupStatistics.SuspendLayout();
+ GroupUserEvaluation.SuspendLayout();
+ TableLayout.SuspendLayout();
+ PanelMotherTongue.SuspendLayout();
+ PanelForeignLang.SuspendLayout();
+ PanelForeignLangSynonym.SuspendLayout();
+ SuspendLayout();
//
// TbForeignLangSynonym
//
- resources.ApplyResources(this.TbForeignLangSynonym, "TbForeignLangSynonym");
- this.TbForeignLangSynonym.Name = "TbForeignLangSynonym";
- this.TbForeignLangSynonym.Enter += new System.EventHandler(this.TextBox_Enter);
+ resources.ApplyResources(TbForeignLangSynonym, "TbForeignLangSynonym");
+ TbForeignLangSynonym.Name = "TbForeignLangSynonym";
+ TbForeignLangSynonym.Enter += TextBox_Enter;
//
// TbForeignLang
//
- resources.ApplyResources(this.TbForeignLang, "TbForeignLang");
- this.TbForeignLang.Name = "TbForeignLang";
- this.TbForeignLang.Enter += new System.EventHandler(this.TextBox_Enter);
+ resources.ApplyResources(TbForeignLang, "TbForeignLang");
+ TbForeignLang.Name = "TbForeignLang";
+ TbForeignLang.Enter += TextBox_Enter;
//
// TbMotherTongue
//
- resources.ApplyResources(this.TbMotherTongue, "TbMotherTongue");
- this.TbMotherTongue.Name = "TbMotherTongue";
- this.TbMotherTongue.Enter += new System.EventHandler(this.TextBox_Enter);
+ resources.ApplyResources(TbMotherTongue, "TbMotherTongue");
+ TbMotherTongue.Name = "TbMotherTongue";
+ TbMotherTongue.Enter += TextBox_Enter;
//
// LbForeignLangSynonym
//
- resources.ApplyResources(this.LbForeignLangSynonym, "LbForeignLangSynonym");
- this.LbForeignLangSynonym.Name = "LbForeignLangSynonym";
+ resources.ApplyResources(LbForeignLangSynonym, "LbForeignLangSynonym");
+ LbForeignLangSynonym.Name = "LbForeignLangSynonym";
//
// LbForeignLang
//
- resources.ApplyResources(this.LbForeignLang, "LbForeignLang");
- this.LbForeignLang.Name = "LbForeignLang";
+ resources.ApplyResources(LbForeignLang, "LbForeignLang");
+ LbForeignLang.Name = "LbForeignLang";
//
// LbMotherTongue
//
- resources.ApplyResources(this.LbMotherTongue, "LbMotherTongue");
- this.LbMotherTongue.Name = "LbMotherTongue";
+ resources.ApplyResources(LbMotherTongue, "LbMotherTongue");
+ LbMotherTongue.Name = "LbMotherTongue";
//
// GroupStatistics
//
- resources.ApplyResources(this.GroupStatistics, "GroupStatistics");
- this.GroupStatistics.Controls.Add(this.TbWrongCount);
- this.GroupStatistics.Controls.Add(this.label6);
- this.GroupStatistics.Controls.Add(this.TbPartlyCorrectCount);
- this.GroupStatistics.Controls.Add(this.label5);
- this.GroupStatistics.Controls.Add(this.label4);
- this.GroupStatistics.Controls.Add(this.TbCorrectCount);
- this.GroupStatistics.Controls.Add(this.label3);
- this.GroupStatistics.Controls.Add(this.label2);
- this.GroupStatistics.Controls.Add(this.label1);
- this.GroupStatistics.Controls.Add(this.TbPracticedCount);
- this.GroupStatistics.Controls.Add(this.TbUnpracticedCount);
- this.GroupStatistics.Controls.Add(this.TbPracticeCount);
- this.GroupStatistics.Controls.Add(this.PbPracticeProgress);
- this.GroupStatistics.Name = "GroupStatistics";
- this.GroupStatistics.TabStop = false;
+ resources.ApplyResources(GroupStatistics, "GroupStatistics");
+ GroupStatistics.Controls.Add(TbWrongCount);
+ GroupStatistics.Controls.Add(label6);
+ GroupStatistics.Controls.Add(TbPartlyCorrectCount);
+ GroupStatistics.Controls.Add(label5);
+ GroupStatistics.Controls.Add(label4);
+ GroupStatistics.Controls.Add(TbCorrectCount);
+ GroupStatistics.Controls.Add(label3);
+ GroupStatistics.Controls.Add(label2);
+ GroupStatistics.Controls.Add(label1);
+ GroupStatistics.Controls.Add(TbPracticedCount);
+ GroupStatistics.Controls.Add(TbUnpracticedCount);
+ GroupStatistics.Controls.Add(TbPracticeCount);
+ GroupStatistics.Controls.Add(PbPracticeProgress);
+ GroupStatistics.Name = "GroupStatistics";
+ GroupStatistics.TabStop = false;
//
// TbWrongCount
//
- this.TbWrongCount.BackColor = System.Drawing.Color.Pink;
- this.TbWrongCount.ForeColor = System.Drawing.SystemColors.WindowText;
- resources.ApplyResources(this.TbWrongCount, "TbWrongCount");
- this.TbWrongCount.Name = "TbWrongCount";
- this.TbWrongCount.ReadOnly = true;
- this.TbWrongCount.TabStop = false;
+ TbWrongCount.BackColor = System.Drawing.Color.Pink;
+ resources.ApplyResources(TbWrongCount, "TbWrongCount");
+ TbWrongCount.Name = "TbWrongCount";
+ TbWrongCount.ReadOnly = true;
+ TbWrongCount.TabStop = false;
//
// label6
//
- resources.ApplyResources(this.label6, "label6");
- this.label6.Name = "label6";
+ resources.ApplyResources(label6, "label6");
+ label6.Name = "label6";
//
// TbPartlyCorrectCount
//
- this.TbPartlyCorrectCount.BackColor = System.Drawing.Color.Gold;
- this.TbPartlyCorrectCount.ForeColor = System.Drawing.SystemColors.WindowText;
- resources.ApplyResources(this.TbPartlyCorrectCount, "TbPartlyCorrectCount");
- this.TbPartlyCorrectCount.Name = "TbPartlyCorrectCount";
- this.TbPartlyCorrectCount.ReadOnly = true;
- this.TbPartlyCorrectCount.TabStop = false;
+ TbPartlyCorrectCount.BackColor = System.Drawing.Color.Gold;
+ resources.ApplyResources(TbPartlyCorrectCount, "TbPartlyCorrectCount");
+ TbPartlyCorrectCount.Name = "TbPartlyCorrectCount";
+ TbPartlyCorrectCount.ReadOnly = true;
+ TbPartlyCorrectCount.TabStop = false;
//
// label5
//
- resources.ApplyResources(this.label5, "label5");
- this.label5.Name = "label5";
+ resources.ApplyResources(label5, "label5");
+ label5.Name = "label5";
//
// label4
//
- resources.ApplyResources(this.label4, "label4");
- this.label4.Name = "label4";
+ resources.ApplyResources(label4, "label4");
+ label4.Name = "label4";
//
// TbCorrectCount
//
- this.TbCorrectCount.BackColor = System.Drawing.Color.LightGreen;
- this.TbCorrectCount.ForeColor = System.Drawing.SystemColors.WindowText;
- resources.ApplyResources(this.TbCorrectCount, "TbCorrectCount");
- this.TbCorrectCount.Name = "TbCorrectCount";
- this.TbCorrectCount.ReadOnly = true;
- this.TbCorrectCount.TabStop = false;
+ TbCorrectCount.BackColor = System.Drawing.Color.LightGreen;
+ resources.ApplyResources(TbCorrectCount, "TbCorrectCount");
+ TbCorrectCount.Name = "TbCorrectCount";
+ TbCorrectCount.ReadOnly = true;
+ TbCorrectCount.TabStop = false;
//
// label3
//
- resources.ApplyResources(this.label3, "label3");
- this.label3.Name = "label3";
+ resources.ApplyResources(label3, "label3");
+ label3.Name = "label3";
//
// label2
//
- resources.ApplyResources(this.label2, "label2");
- this.label2.Name = "label2";
+ resources.ApplyResources(label2, "label2");
+ label2.Name = "label2";
//
// label1
//
- resources.ApplyResources(this.label1, "label1");
- this.label1.Name = "label1";
+ resources.ApplyResources(label1, "label1");
+ label1.Name = "label1";
//
// TbPracticedCount
//
- resources.ApplyResources(this.TbPracticedCount, "TbPracticedCount");
- this.TbPracticedCount.Name = "TbPracticedCount";
- this.TbPracticedCount.ReadOnly = true;
- this.TbPracticedCount.TabStop = false;
+ resources.ApplyResources(TbPracticedCount, "TbPracticedCount");
+ TbPracticedCount.Name = "TbPracticedCount";
+ TbPracticedCount.ReadOnly = true;
+ TbPracticedCount.TabStop = false;
//
// TbUnpracticedCount
//
- resources.ApplyResources(this.TbUnpracticedCount, "TbUnpracticedCount");
- this.TbUnpracticedCount.Name = "TbUnpracticedCount";
- this.TbUnpracticedCount.ReadOnly = true;
- this.TbUnpracticedCount.TabStop = false;
+ resources.ApplyResources(TbUnpracticedCount, "TbUnpracticedCount");
+ TbUnpracticedCount.Name = "TbUnpracticedCount";
+ TbUnpracticedCount.ReadOnly = true;
+ TbUnpracticedCount.TabStop = false;
//
// TbPracticeCount
//
- resources.ApplyResources(this.TbPracticeCount, "TbPracticeCount");
- this.TbPracticeCount.Name = "TbPracticeCount";
- this.TbPracticeCount.ReadOnly = true;
- this.TbPracticeCount.TabStop = false;
+ resources.ApplyResources(TbPracticeCount, "TbPracticeCount");
+ TbPracticeCount.Name = "TbPracticeCount";
+ TbPracticeCount.ReadOnly = true;
+ TbPracticeCount.TabStop = false;
//
// PbPracticeProgress
//
- resources.ApplyResources(this.PbPracticeProgress, "PbPracticeProgress");
- this.PbPracticeProgress.Name = "PbPracticeProgress";
- this.PbPracticeProgress.Step = 100;
- this.PbPracticeProgress.Style = System.Windows.Forms.ProgressBarStyle.Continuous;
+ resources.ApplyResources(PbPracticeProgress, "PbPracticeProgress");
+ PbPracticeProgress.Name = "PbPracticeProgress";
+ PbPracticeProgress.Step = 100;
+ PbPracticeProgress.Style = System.Windows.Forms.ProgressBarStyle.Continuous;
//
// BtnCancel
//
- resources.ApplyResources(this.BtnCancel, "BtnCancel");
- this.BtnCancel.DialogResult = System.Windows.Forms.DialogResult.Cancel;
- this.BtnCancel.Name = "BtnCancel";
- this.BtnCancel.UseVisualStyleBackColor = true;
+ resources.ApplyResources(BtnCancel, "BtnCancel");
+ BtnCancel.DialogResult = System.Windows.Forms.DialogResult.Cancel;
+ BtnCancel.Name = "BtnCancel";
+ BtnCancel.UseVisualStyleBackColor = true;
//
// BtnContinue
//
- resources.ApplyResources(this.BtnContinue, "BtnContinue");
- this.BtnContinue.Name = "BtnContinue";
- this.BtnContinue.UseVisualStyleBackColor = true;
- this.BtnContinue.Click += new System.EventHandler(this.BtnContinue_Click);
+ resources.ApplyResources(BtnContinue, "BtnContinue");
+ BtnContinue.Name = "BtnContinue";
+ BtnContinue.UseVisualStyleBackColor = true;
+ BtnContinue.Click += BtnContinue_Click;
//
// TbCorrectAnswer
//
- this.TbCorrectAnswer.BorderStyle = System.Windows.Forms.BorderStyle.None;
- this.TableLayout.SetColumnSpan(this.TbCorrectAnswer, 2);
- resources.ApplyResources(this.TbCorrectAnswer, "TbCorrectAnswer");
- this.TbCorrectAnswer.Name = "TbCorrectAnswer";
- this.TbCorrectAnswer.ReadOnly = true;
- this.TbCorrectAnswer.TabStop = false;
+ TbCorrectAnswer.BorderStyle = System.Windows.Forms.BorderStyle.None;
+ TableLayout.SetColumnSpan(TbCorrectAnswer, 2);
+ resources.ApplyResources(TbCorrectAnswer, "TbCorrectAnswer");
+ TbCorrectAnswer.Name = "TbCorrectAnswer";
+ TbCorrectAnswer.ReadOnly = true;
+ TbCorrectAnswer.TabStop = false;
//
// BtnSpecialChar
//
- resources.ApplyResources(this.BtnSpecialChar, "BtnSpecialChar");
- this.BtnSpecialChar.Name = "BtnSpecialChar";
- this.BtnSpecialChar.UseVisualStyleBackColor = true;
+ resources.ApplyResources(BtnSpecialChar, "BtnSpecialChar");
+ BtnSpecialChar.Name = "BtnSpecialChar";
+ BtnSpecialChar.UseVisualStyleBackColor = true;
//
// RbPartlyCorrect
//
- resources.ApplyResources(this.RbPartlyCorrect, "RbPartlyCorrect");
- this.RbPartlyCorrect.BackColor = System.Drawing.Color.Transparent;
- this.RbPartlyCorrect.Name = "RbPartlyCorrect";
- this.RbPartlyCorrect.TabStop = true;
- this.RbPartlyCorrect.UseVisualStyleBackColor = false;
+ resources.ApplyResources(RbPartlyCorrect, "RbPartlyCorrect");
+ RbPartlyCorrect.BackColor = System.Drawing.Color.Transparent;
+ RbPartlyCorrect.Name = "RbPartlyCorrect";
+ RbPartlyCorrect.TabStop = true;
+ RbPartlyCorrect.UseVisualStyleBackColor = false;
//
// RbWrong
//
- resources.ApplyResources(this.RbWrong, "RbWrong");
- this.RbWrong.BackColor = System.Drawing.Color.Transparent;
- this.RbWrong.Name = "RbWrong";
- this.RbWrong.TabStop = true;
- this.RbWrong.UseVisualStyleBackColor = false;
+ resources.ApplyResources(RbWrong, "RbWrong");
+ RbWrong.BackColor = System.Drawing.Color.Transparent;
+ RbWrong.Name = "RbWrong";
+ RbWrong.TabStop = true;
+ RbWrong.UseVisualStyleBackColor = false;
//
// RbCorrect
//
- resources.ApplyResources(this.RbCorrect, "RbCorrect");
- this.RbCorrect.BackColor = System.Drawing.Color.Transparent;
- this.RbCorrect.Checked = true;
- this.RbCorrect.Name = "RbCorrect";
- this.RbCorrect.TabStop = true;
- this.RbCorrect.UseVisualStyleBackColor = false;
+ resources.ApplyResources(RbCorrect, "RbCorrect");
+ RbCorrect.BackColor = System.Drawing.Color.Transparent;
+ RbCorrect.Checked = true;
+ RbCorrect.Name = "RbCorrect";
+ RbCorrect.TabStop = true;
+ RbCorrect.UseVisualStyleBackColor = false;
//
// GroupUserEvaluation
//
- resources.ApplyResources(this.GroupUserEvaluation, "GroupUserEvaluation");
- this.GroupUserEvaluation.Controls.Add(this.RbCorrect);
- this.GroupUserEvaluation.Controls.Add(this.RbWrong);
- this.GroupUserEvaluation.Controls.Add(this.RbPartlyCorrect);
- this.GroupUserEvaluation.Name = "GroupUserEvaluation";
- this.GroupUserEvaluation.TabStop = false;
+ resources.ApplyResources(GroupUserEvaluation, "GroupUserEvaluation");
+ GroupUserEvaluation.Controls.Add(RbCorrect);
+ GroupUserEvaluation.Controls.Add(RbWrong);
+ GroupUserEvaluation.Controls.Add(RbPartlyCorrect);
+ GroupUserEvaluation.Name = "GroupUserEvaluation";
+ GroupUserEvaluation.TabStop = false;
//
// TableLayout
//
- resources.ApplyResources(this.TableLayout, "TableLayout");
- this.TableLayout.Controls.Add(this.PanelMotherTongue, 0, 0);
- this.TableLayout.Controls.Add(this.PanelForeignLang, 1, 0);
- this.TableLayout.Controls.Add(this.TbCorrectAnswer, 0, 2);
- this.TableLayout.Controls.Add(this.PanelForeignLangSynonym, 1, 1);
- this.TableLayout.Name = "TableLayout";
+ resources.ApplyResources(TableLayout, "TableLayout");
+ TableLayout.Controls.Add(PanelMotherTongue, 0, 0);
+ TableLayout.Controls.Add(PanelForeignLang, 1, 0);
+ TableLayout.Controls.Add(TbCorrectAnswer, 0, 2);
+ TableLayout.Controls.Add(PanelForeignLangSynonym, 1, 1);
+ TableLayout.Name = "TableLayout";
//
// PanelMotherTongue
//
- this.PanelMotherTongue.Controls.Add(this.LbMotherTongue);
- this.PanelMotherTongue.Controls.Add(this.TbMotherTongue);
- resources.ApplyResources(this.PanelMotherTongue, "PanelMotherTongue");
- this.PanelMotherTongue.Name = "PanelMotherTongue";
- this.TableLayout.SetRowSpan(this.PanelMotherTongue, 2);
+ PanelMotherTongue.Controls.Add(LbMotherTongue);
+ PanelMotherTongue.Controls.Add(TbMotherTongue);
+ resources.ApplyResources(PanelMotherTongue, "PanelMotherTongue");
+ PanelMotherTongue.Name = "PanelMotherTongue";
+ TableLayout.SetRowSpan(PanelMotherTongue, 2);
//
// PanelForeignLang
//
- this.PanelForeignLang.Controls.Add(this.LbForeignLang);
- this.PanelForeignLang.Controls.Add(this.TbForeignLang);
- resources.ApplyResources(this.PanelForeignLang, "PanelForeignLang");
- this.PanelForeignLang.Name = "PanelForeignLang";
+ PanelForeignLang.Controls.Add(LbForeignLang);
+ PanelForeignLang.Controls.Add(TbForeignLang);
+ resources.ApplyResources(PanelForeignLang, "PanelForeignLang");
+ PanelForeignLang.Name = "PanelForeignLang";
//
// PanelForeignLangSynonym
//
- this.PanelForeignLangSynonym.Controls.Add(this.TbForeignLangSynonym);
- this.PanelForeignLangSynonym.Controls.Add(this.LbForeignLangSynonym);
- resources.ApplyResources(this.PanelForeignLangSynonym, "PanelForeignLangSynonym");
- this.PanelForeignLangSynonym.Name = "PanelForeignLangSynonym";
+ PanelForeignLangSynonym.Controls.Add(TbForeignLangSynonym);
+ PanelForeignLangSynonym.Controls.Add(LbForeignLangSynonym);
+ resources.ApplyResources(PanelForeignLangSynonym, "PanelForeignLangSynonym");
+ PanelForeignLangSynonym.Name = "PanelForeignLangSynonym";
//
// PracticeDialog
//
- this.AcceptButton = this.BtnContinue;
+ AcceptButton = BtnContinue;
resources.ApplyResources(this, "$this");
- this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
- this.CancelButton = this.BtnCancel;
- this.Controls.Add(this.TableLayout);
- this.Controls.Add(this.BtnCancel);
- this.Controls.Add(this.BtnSpecialChar);
- this.Controls.Add(this.BtnContinue);
- this.Controls.Add(this.GroupUserEvaluation);
- this.Controls.Add(this.GroupStatistics);
- this.Name = "PracticeDialog";
- this.ShowInTaskbar = false;
- this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.Form_FormClosing);
- this.FormClosed += new System.Windows.Forms.FormClosedEventHandler(this.Form_FormClosed);
- this.Load += new System.EventHandler(this.Form_Load);
- this.GroupStatistics.ResumeLayout(false);
- this.GroupStatistics.PerformLayout();
- this.GroupUserEvaluation.ResumeLayout(false);
- this.GroupUserEvaluation.PerformLayout();
- this.TableLayout.ResumeLayout(false);
- this.TableLayout.PerformLayout();
- this.PanelMotherTongue.ResumeLayout(false);
- this.PanelMotherTongue.PerformLayout();
- this.PanelForeignLang.ResumeLayout(false);
- this.PanelForeignLang.PerformLayout();
- this.PanelForeignLangSynonym.ResumeLayout(false);
- this.PanelForeignLangSynonym.PerformLayout();
- this.ResumeLayout(false);
-
+ AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+ CancelButton = BtnCancel;
+ Controls.Add(TableLayout);
+ Controls.Add(BtnCancel);
+ Controls.Add(BtnSpecialChar);
+ Controls.Add(BtnContinue);
+ Controls.Add(GroupUserEvaluation);
+ Controls.Add(GroupStatistics);
+ Name = "PracticeDialog";
+ ShowInTaskbar = false;
+ FormClosing += Form_FormClosing;
+ FormClosed += Form_FormClosed;
+ Load += Form_Load;
+ GroupStatistics.ResumeLayout(false);
+ GroupStatistics.PerformLayout();
+ GroupUserEvaluation.ResumeLayout(false);
+ GroupUserEvaluation.PerformLayout();
+ TableLayout.ResumeLayout(false);
+ TableLayout.PerformLayout();
+ PanelMotherTongue.ResumeLayout(false);
+ PanelMotherTongue.PerformLayout();
+ PanelForeignLang.ResumeLayout(false);
+ PanelForeignLang.PerformLayout();
+ PanelForeignLangSynonym.ResumeLayout(false);
+ PanelForeignLangSynonym.PerformLayout();
+ ResumeLayout(false);
}
#endregion
diff --git a/src/Vocup.WinForms/Forms/PracticeDialog.cs b/src/Vocup.WinForms/Forms/PracticeDialog.cs
index 357793b..d6f0c2e 100644
--- a/src/Vocup.WinForms/Forms/PracticeDialog.cs
+++ b/src/Vocup.WinForms/Forms/PracticeDialog.cs
@@ -14,6 +14,10 @@ namespace Vocup.Forms;
public partial class PracticeDialog : Form
{
private const int userEvaluationHeight = 38;
+ private readonly Color InputHighlightBackColor;
+ private readonly Color CorrectFeedbackBackColor;
+ private readonly Color PartlyCorrectFeedbackBackColor;
+ private readonly Color WrongFeedbackBackColor;
private readonly VocabularyBook book;
private readonly List practiceList;
@@ -34,6 +38,24 @@ public PracticeDialog(VocabularyBook book, List practice
Icon = Icon.FromHandle(Icons.LightningBolt.GetHicon());
+ InputHighlightBackColor = Color.FromArgb(255, 255, 150);
+ CorrectFeedbackBackColor = Color.FromArgb(144, 238, 144);
+ PartlyCorrectFeedbackBackColor = Color.FromArgb(255, 215, 0);
+ WrongFeedbackBackColor = Color.FromArgb(255, 192, 203);
+
+#pragma warning disable WFO5001 // Type is for evaluation purposes only and is subject to change or removal in future updates. Suppress this diagnostic to proceed.
+ if (Application.ColorMode == SystemColorMode.Dark)
+ {
+ InputHighlightBackColor = Color.FromArgb(127, 127, 75);
+ CorrectFeedbackBackColor = Color.FromArgb(0, 100, 0);
+ PartlyCorrectFeedbackBackColor = Color.FromArgb(127, 106, 0);
+ WrongFeedbackBackColor = Color.FromArgb(127, 0, 0);
+ TbCorrectCount.BackColor = Color.DarkGreen;
+ TbPartlyCorrectCount.BackColor = Color.DarkGoldenrod;
+ TbWrongCount.BackColor = Color.DarkRed;
+ }
+#pragma warning restore WFO5001 // Type is for evaluation purposes only and is subject to change or removal in future updates. Suppress this diagnostic to proceed.
+
evaluator = new Evaluator
{
OptionalExpressions = Program.Settings.EvaluateOptionalExpressions,
@@ -182,7 +204,7 @@ public void LoadNextWord()
TbMotherTongue.BackColor = DefaultBackColor;
TbForeignLang.Text = "";
TbForeignLang.ReadOnly = false;
- TbForeignLang.BackColor = Color.FromArgb(250, 250, 150);
+ TbForeignLang.BackColor = InputHighlightBackColor;
TbForeignLangSynonym.Text = "";
if (string.IsNullOrWhiteSpace(currentWord.ForeignLangSynonym))
{
@@ -192,7 +214,7 @@ public void LoadNextWord()
else
{
TbForeignLangSynonym.ReadOnly = false;
- TbForeignLangSynonym.BackColor = Color.FromArgb(250, 250, 150);
+ TbForeignLangSynonym.BackColor = InputHighlightBackColor;
}
TbForeignLang.Select();
}
@@ -208,7 +230,7 @@ public void LoadNextWord()
TbForeignLang.ReadOnly = true;
TbForeignLang.BackColor = DefaultBackColor;
TbForeignLangSynonym.ReadOnly = true;
- TbMotherTongue.BackColor = Color.FromArgb(250, 250, 150);
+ TbMotherTongue.BackColor = InputHighlightBackColor;
TbMotherTongue.Select();
}
@@ -235,19 +257,19 @@ private PracticeResult EvaluateInput()
{
if (string.IsNullOrWhiteSpace(currentWord.ForeignLangSynonym))
{
- inputs = new[] { TbForeignLang.Text.Trim() };
- results = new[] { currentWord.ForeignLang };
+ inputs = [TbForeignLang.Text.Trim()];
+ results = [currentWord.ForeignLang];
}
else
{
- inputs = new[] { TbForeignLang.Text.Trim(), TbForeignLangSynonym.Text.Trim() };
- results = new[] { currentWord.ForeignLang, currentWord.ForeignLangSynonym };
+ inputs = [TbForeignLang.Text.Trim(), TbForeignLangSynonym.Text.Trim()];
+ results = [currentWord.ForeignLang, currentWord.ForeignLangSynonym];
}
}
else // PracticeMode.AskForMotherTongue
{
- inputs = new[] { TbMotherTongue.Text.Trim() };
- results = new[] { currentWord.MotherTongue };
+ inputs = [TbMotherTongue.Text.Trim()];
+ results = [currentWord.MotherTongue];
}
return evaluator.GetResult(results, inputs);
@@ -278,7 +300,7 @@ private void EvaluateWord()
if (!Program.Settings.UserEvaluates)
{
TbCorrectAnswer.Text = Words.Correct + "!";
- TbCorrectAnswer.BackColor = Color.FromArgb(144, 238, 144);
+ TbCorrectAnswer.BackColor = CorrectFeedbackBackColor;
sound = Sounds.sound_correct;
}
}
@@ -290,7 +312,7 @@ private void EvaluateWord()
if (!Program.Settings.UserEvaluates)
{
TbCorrectAnswer.Text = $"{Words.PartlyCorrect}! ({GetEvaluationAnswer()})";
- TbCorrectAnswer.BackColor = Color.FromArgb(255, 215, 0);
+ TbCorrectAnswer.BackColor = PartlyCorrectFeedbackBackColor;
sound = Sounds.sound_correct;
}
}
@@ -302,7 +324,7 @@ private void EvaluateWord()
if (!Program.Settings.UserEvaluates)
{
TbCorrectAnswer.Text = $"{Words.Wrong}! ({GetEvaluationAnswer()})";
- TbCorrectAnswer.BackColor = Color.FromArgb(255, 192, 203);
+ TbCorrectAnswer.BackColor = WrongFeedbackBackColor;
sound = Sounds.sound_wrong;
}
}
diff --git a/src/Vocup.WinForms/Forms/PracticeDialog.resx b/src/Vocup.WinForms/Forms/PracticeDialog.resx
index 63edde2..dab9094 100644
--- a/src/Vocup.WinForms/Forms/PracticeDialog.resx
+++ b/src/Vocup.WinForms/Forms/PracticeDialog.resx
@@ -1,4 +1,64 @@
+
+
diff --git a/src/Vocup.WinForms/Forms/PracticeResultList.cs b/src/Vocup.WinForms/Forms/PracticeResultList.cs
index dad898e..f6677c1 100644
--- a/src/Vocup.WinForms/Forms/PracticeResultList.cs
+++ b/src/Vocup.WinForms/Forms/PracticeResultList.cs
@@ -10,6 +10,10 @@ namespace Vocup.Forms;
public partial class PracticeResultList : Form
{
+ private readonly Color CorrectFeedbackBackColor;
+ private readonly Color PartlyCorrectFeedbackBackColor;
+ private readonly Color WrongFeedbackBackColor;
+
private VocabularyBook book;
private List practiceList;
@@ -23,6 +27,20 @@ public PracticeResultList(VocabularyBook book, List prac
InitializeComponent();
Icon = Icon.FromHandle(Icons.BarChart.GetHicon());
+ CorrectFeedbackBackColor = Color.FromArgb(144, 238, 144);
+ PartlyCorrectFeedbackBackColor = Color.FromArgb(255, 215, 0);
+ WrongFeedbackBackColor = Color.FromArgb(255, 192, 203);
+
+#pragma warning disable WFO5001 // Type is for evaluation purposes only and is subject to change or removal in future updates. Suppress this diagnostic to proceed.
+ if (Application.ColorMode == SystemColorMode.Dark)
+ {
+ CorrectFeedbackBackColor = Color.FromArgb(0, 100, 0);
+ PartlyCorrectFeedbackBackColor = Color.FromArgb(127, 106, 0);
+ WrongFeedbackBackColor = Color.FromArgb(127, 0, 0);
+ }
+#pragma warning restore WFO5001 // Type is for evaluation purposes only and is subject to change or removal in future updates. Suppress this diagnostic to proceed.
+
+
this.book = book;
this.practiceList = practiceList;
}
@@ -121,9 +139,9 @@ private void CalculateGrade()
TbPercentage.BackColor = correctRatio switch
{
// Steps taken from https://de.wikipedia.org/wiki/Vorlage:Punktesystem_der_gymnasialen_Oberstufe
- >= 0.70 => Color.FromArgb(144, 238, 144), // at least 70% -> green background
- >= 0.45 => Color.FromArgb(255, 215, 0), // at least 45% -> yellow background
- _ => Color.FromArgb(255, 192, 203) // less than 45% -> red background
+ >= 0.70 => CorrectFeedbackBackColor, // at least 70% -> green background
+ >= 0.45 => PartlyCorrectFeedbackBackColor, // at least 45% -> yellow background
+ _ => WrongFeedbackBackColor // less than 45% -> red background
};
TbPercentage.Text = Math.Round(correctRatio * 100) + "%";
diff --git a/src/Vocup.WinForms/Forms/SettingsDialog.Designer.cs b/src/Vocup.WinForms/Forms/SettingsDialog.Designer.cs
index 536ec54..e62a26d 100644
--- a/src/Vocup.WinForms/Forms/SettingsDialog.Designer.cs
+++ b/src/Vocup.WinForms/Forms/SettingsDialog.Designer.cs
@@ -29,594 +29,603 @@ protected override void Dispose(bool disposing)
private void InitializeComponent()
{
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(SettingsDialog));
- this.BtnOk = new System.Windows.Forms.Button();
- this.BtnCancel = new System.Windows.Forms.Button();
- this.GroupStartScreen = new System.Windows.Forms.GroupBox();
- this.BtnResetStartScreen = new System.Windows.Forms.Button();
- this.RbEmptyStart = new System.Windows.Forms.RadioButton();
- this.RbRecentFile = new System.Windows.Forms.RadioButton();
- this.TrbWrongRight = new System.Windows.Forms.TrackBar();
- this.TrbUnknown = new System.Windows.Forms.TrackBar();
- this.TabControlMain = new System.Windows.Forms.TabControl();
- this.TabGeneral = new System.Windows.Forms.TabPage();
- this.GroupLanguage = new System.Windows.Forms.GroupBox();
- this.LbLanguage = new System.Windows.Forms.Label();
- this.CbLanguage = new System.Windows.Forms.ComboBox();
- this.GroupVocabularyList = new System.Windows.Forms.GroupBox();
- this.CbColumnResize = new System.Windows.Forms.CheckBox();
- this.GroupVhrPath = new System.Windows.Forms.GroupBox();
- this.BtnVhrPath = new System.Windows.Forms.Button();
- this.TbVhrPath = new System.Windows.Forms.TextBox();
- this.GroupVhfPath = new System.Windows.Forms.GroupBox();
- this.BtnVhfPath = new System.Windows.Forms.Button();
- this.TbVhfPath = new System.Windows.Forms.TextBox();
- this.GroupUpdate = new System.Windows.Forms.GroupBox();
- this.CbDisableInternetServices = new System.Windows.Forms.CheckBox();
- this.GroupSave = new System.Windows.Forms.GroupBox();
- this.CbAutoSave = new System.Windows.Forms.CheckBox();
- this.TabPractice = new System.Windows.Forms.TabPage();
- this.GroupEvaluation = new System.Windows.Forms.GroupBox();
- this.CbOptionalExpressions = new System.Windows.Forms.CheckBox();
- this.CbManualCheck = new System.Windows.Forms.CheckBox();
- this.CbShowPracticeResult = new System.Windows.Forms.CheckBox();
- this.GroupUserInterface = new System.Windows.Forms.GroupBox();
- this.CbAcousticFeedback = new System.Windows.Forms.CheckBox();
- this.CbSingleContinueButton = new System.Windows.Forms.CheckBox();
- this.GroupNearlyCorrect = new System.Windows.Forms.GroupBox();
- this.CbTolerateWhiteSpace = new System.Windows.Forms.CheckBox();
- this.CbTolerateNoSynonym = new System.Windows.Forms.CheckBox();
- this.CbTolerateArticle = new System.Windows.Forms.CheckBox();
- this.CbToleratePunctuationMark = new System.Windows.Forms.CheckBox();
- this.CbTolerateSpecialChar = new System.Windows.Forms.CheckBox();
- this.TabPracticeSelect = new System.Windows.Forms.TabPage();
- this.BtnResetPracticeSelect = new System.Windows.Forms.Button();
- this.GroupSelectionMix = new System.Windows.Forms.GroupBox();
- this.LbWronglyPracticed = new System.Windows.Forms.Label();
- this.LbCorrectlyPracticed = new System.Windows.Forms.Label();
- this.LbUnpracticed = new System.Windows.Forms.Label();
- this.LbPercentageUnpracticed = new System.Windows.Forms.Label();
- this.pictureBox2 = new System.Windows.Forms.PictureBox();
- this.pictureBox1 = new System.Windows.Forms.PictureBox();
- this.pictureBox3 = new System.Windows.Forms.PictureBox();
- this.LbPercentageWrongCorrect = new System.Windows.Forms.Label();
- this.GroupRepetitions = new System.Windows.Forms.GroupBox();
- this.LbPracticeCount = new System.Windows.Forms.Label();
- this.PnlPracticeCount = new System.Windows.Forms.Panel();
- this.LbTrb6 = new System.Windows.Forms.Label();
- this.LbTrb2 = new System.Windows.Forms.Label();
- this.LbTrb5 = new System.Windows.Forms.Label();
- this.LbTrb3 = new System.Windows.Forms.Label();
- this.LbTrb4 = new System.Windows.Forms.Label();
- this.TrbRepetitions = new System.Windows.Forms.TrackBar();
- this.GroupStartScreen.SuspendLayout();
- ((System.ComponentModel.ISupportInitialize)(this.TrbWrongRight)).BeginInit();
- ((System.ComponentModel.ISupportInitialize)(this.TrbUnknown)).BeginInit();
- this.TabControlMain.SuspendLayout();
- this.TabGeneral.SuspendLayout();
- this.GroupLanguage.SuspendLayout();
- this.GroupVocabularyList.SuspendLayout();
- this.GroupVhrPath.SuspendLayout();
- this.GroupVhfPath.SuspendLayout();
- this.GroupUpdate.SuspendLayout();
- this.GroupSave.SuspendLayout();
- this.TabPractice.SuspendLayout();
- this.GroupEvaluation.SuspendLayout();
- this.GroupUserInterface.SuspendLayout();
- this.GroupNearlyCorrect.SuspendLayout();
- this.TabPracticeSelect.SuspendLayout();
- this.GroupSelectionMix.SuspendLayout();
- ((System.ComponentModel.ISupportInitialize)(this.pictureBox2)).BeginInit();
- ((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).BeginInit();
- ((System.ComponentModel.ISupportInitialize)(this.pictureBox3)).BeginInit();
- this.GroupRepetitions.SuspendLayout();
- this.PnlPracticeCount.SuspendLayout();
- ((System.ComponentModel.ISupportInitialize)(this.TrbRepetitions)).BeginInit();
- this.SuspendLayout();
+ BtnOk = new System.Windows.Forms.Button();
+ BtnCancel = new System.Windows.Forms.Button();
+ GroupStartScreen = new System.Windows.Forms.GroupBox();
+ BtnResetStartScreen = new System.Windows.Forms.Button();
+ RbEmptyStart = new System.Windows.Forms.RadioButton();
+ RbRecentFile = new System.Windows.Forms.RadioButton();
+ TrbWrongRight = new System.Windows.Forms.TrackBar();
+ TrbUnknown = new System.Windows.Forms.TrackBar();
+ TabControlMain = new System.Windows.Forms.TabControl();
+ TabGeneral = new System.Windows.Forms.TabPage();
+ GroupUserInterface = new System.Windows.Forms.GroupBox();
+ CbColorTheme = new System.Windows.Forms.ComboBox();
+ LbColorTheme = new System.Windows.Forms.Label();
+ LbLanguage = new System.Windows.Forms.Label();
+ CbLanguage = new System.Windows.Forms.ComboBox();
+ GroupVocabularyList = new System.Windows.Forms.GroupBox();
+ CbColumnResize = new System.Windows.Forms.CheckBox();
+ GroupVhrPath = new System.Windows.Forms.GroupBox();
+ BtnVhrPath = new System.Windows.Forms.Button();
+ TbVhrPath = new System.Windows.Forms.TextBox();
+ GroupVhfPath = new System.Windows.Forms.GroupBox();
+ BtnVhfPath = new System.Windows.Forms.Button();
+ TbVhfPath = new System.Windows.Forms.TextBox();
+ GroupUpdate = new System.Windows.Forms.GroupBox();
+ CbDisableInternetServices = new System.Windows.Forms.CheckBox();
+ GroupSave = new System.Windows.Forms.GroupBox();
+ CbAutoSave = new System.Windows.Forms.CheckBox();
+ TabPractice = new System.Windows.Forms.TabPage();
+ GroupEvaluation = new System.Windows.Forms.GroupBox();
+ CbOptionalExpressions = new System.Windows.Forms.CheckBox();
+ CbManualCheck = new System.Windows.Forms.CheckBox();
+ CbShowPracticeResult = new System.Windows.Forms.CheckBox();
+ GroupPracticeUserInterface = new System.Windows.Forms.GroupBox();
+ CbAcousticFeedback = new System.Windows.Forms.CheckBox();
+ CbSingleContinueButton = new System.Windows.Forms.CheckBox();
+ GroupNearlyCorrect = new System.Windows.Forms.GroupBox();
+ CbTolerateWhiteSpace = new System.Windows.Forms.CheckBox();
+ CbTolerateNoSynonym = new System.Windows.Forms.CheckBox();
+ CbTolerateArticle = new System.Windows.Forms.CheckBox();
+ CbToleratePunctuationMark = new System.Windows.Forms.CheckBox();
+ CbTolerateSpecialChar = new System.Windows.Forms.CheckBox();
+ TabPracticeSelect = new System.Windows.Forms.TabPage();
+ BtnResetPracticeSelect = new System.Windows.Forms.Button();
+ GroupSelectionMix = new System.Windows.Forms.GroupBox();
+ LbWronglyPracticed = new System.Windows.Forms.Label();
+ LbCorrectlyPracticed = new System.Windows.Forms.Label();
+ LbUnpracticed = new System.Windows.Forms.Label();
+ LbPercentageUnpracticed = new System.Windows.Forms.Label();
+ pictureBox2 = new System.Windows.Forms.PictureBox();
+ pictureBox1 = new System.Windows.Forms.PictureBox();
+ pictureBox3 = new System.Windows.Forms.PictureBox();
+ LbPercentageWrongCorrect = new System.Windows.Forms.Label();
+ GroupRepetitions = new System.Windows.Forms.GroupBox();
+ LbPracticeCount = new System.Windows.Forms.Label();
+ PnlPracticeCount = new System.Windows.Forms.Panel();
+ LbTrb6 = new System.Windows.Forms.Label();
+ LbTrb2 = new System.Windows.Forms.Label();
+ LbTrb5 = new System.Windows.Forms.Label();
+ LbTrb3 = new System.Windows.Forms.Label();
+ LbTrb4 = new System.Windows.Forms.Label();
+ TrbRepetitions = new System.Windows.Forms.TrackBar();
+ GroupStartScreen.SuspendLayout();
+ ((System.ComponentModel.ISupportInitialize)TrbWrongRight).BeginInit();
+ ((System.ComponentModel.ISupportInitialize)TrbUnknown).BeginInit();
+ TabControlMain.SuspendLayout();
+ TabGeneral.SuspendLayout();
+ GroupUserInterface.SuspendLayout();
+ GroupVocabularyList.SuspendLayout();
+ GroupVhrPath.SuspendLayout();
+ GroupVhfPath.SuspendLayout();
+ GroupUpdate.SuspendLayout();
+ GroupSave.SuspendLayout();
+ TabPractice.SuspendLayout();
+ GroupEvaluation.SuspendLayout();
+ GroupPracticeUserInterface.SuspendLayout();
+ GroupNearlyCorrect.SuspendLayout();
+ TabPracticeSelect.SuspendLayout();
+ GroupSelectionMix.SuspendLayout();
+ ((System.ComponentModel.ISupportInitialize)pictureBox2).BeginInit();
+ ((System.ComponentModel.ISupportInitialize)pictureBox1).BeginInit();
+ ((System.ComponentModel.ISupportInitialize)pictureBox3).BeginInit();
+ GroupRepetitions.SuspendLayout();
+ PnlPracticeCount.SuspendLayout();
+ ((System.ComponentModel.ISupportInitialize)TrbRepetitions).BeginInit();
+ SuspendLayout();
//
// BtnOk
//
- resources.ApplyResources(this.BtnOk, "BtnOk");
- this.BtnOk.Name = "BtnOk";
- this.BtnOk.UseVisualStyleBackColor = true;
- this.BtnOk.Click += new System.EventHandler(this.BtnOk_Click);
+ resources.ApplyResources(BtnOk, "BtnOk");
+ BtnOk.Name = "BtnOk";
+ BtnOk.UseVisualStyleBackColor = true;
+ BtnOk.Click += BtnOk_Click;
//
// BtnCancel
//
- resources.ApplyResources(this.BtnCancel, "BtnCancel");
- this.BtnCancel.DialogResult = System.Windows.Forms.DialogResult.Cancel;
- this.BtnCancel.Name = "BtnCancel";
- this.BtnCancel.UseVisualStyleBackColor = true;
+ resources.ApplyResources(BtnCancel, "BtnCancel");
+ BtnCancel.DialogResult = System.Windows.Forms.DialogResult.Cancel;
+ BtnCancel.Name = "BtnCancel";
+ BtnCancel.UseVisualStyleBackColor = true;
//
// GroupStartScreen
//
- this.GroupStartScreen.BackColor = System.Drawing.Color.Transparent;
- this.GroupStartScreen.Controls.Add(this.BtnResetStartScreen);
- this.GroupStartScreen.Controls.Add(this.RbEmptyStart);
- this.GroupStartScreen.Controls.Add(this.RbRecentFile);
- resources.ApplyResources(this.GroupStartScreen, "GroupStartScreen");
- this.GroupStartScreen.Name = "GroupStartScreen";
- this.GroupStartScreen.TabStop = false;
+ GroupStartScreen.BackColor = System.Drawing.Color.Transparent;
+ GroupStartScreen.Controls.Add(BtnResetStartScreen);
+ GroupStartScreen.Controls.Add(RbEmptyStart);
+ GroupStartScreen.Controls.Add(RbRecentFile);
+ resources.ApplyResources(GroupStartScreen, "GroupStartScreen");
+ GroupStartScreen.Name = "GroupStartScreen";
+ GroupStartScreen.TabStop = false;
//
// BtnResetStartScreen
//
- resources.ApplyResources(this.BtnResetStartScreen, "BtnResetStartScreen");
- this.BtnResetStartScreen.Name = "BtnResetStartScreen";
- this.BtnResetStartScreen.UseVisualStyleBackColor = true;
- this.BtnResetStartScreen.Click += new System.EventHandler(this.BtnResetStartScreen_Click);
+ resources.ApplyResources(BtnResetStartScreen, "BtnResetStartScreen");
+ BtnResetStartScreen.Name = "BtnResetStartScreen";
+ BtnResetStartScreen.UseVisualStyleBackColor = true;
+ BtnResetStartScreen.Click += BtnResetStartScreen_Click;
//
// RbEmptyStart
//
- resources.ApplyResources(this.RbEmptyStart, "RbEmptyStart");
- this.RbEmptyStart.Name = "RbEmptyStart";
- this.RbEmptyStart.TabStop = true;
- this.RbEmptyStart.UseVisualStyleBackColor = true;
+ resources.ApplyResources(RbEmptyStart, "RbEmptyStart");
+ RbEmptyStart.Name = "RbEmptyStart";
+ RbEmptyStart.TabStop = true;
+ RbEmptyStart.UseVisualStyleBackColor = true;
//
// RbRecentFile
//
- resources.ApplyResources(this.RbRecentFile, "RbRecentFile");
- this.RbRecentFile.Checked = true;
- this.RbRecentFile.Name = "RbRecentFile";
- this.RbRecentFile.TabStop = true;
- this.RbRecentFile.UseVisualStyleBackColor = true;
+ resources.ApplyResources(RbRecentFile, "RbRecentFile");
+ RbRecentFile.Checked = true;
+ RbRecentFile.Name = "RbRecentFile";
+ RbRecentFile.TabStop = true;
+ RbRecentFile.UseVisualStyleBackColor = true;
//
// TrbWrongRight
//
- this.TrbWrongRight.BackColor = System.Drawing.Color.White;
- resources.ApplyResources(this.TrbWrongRight, "TrbWrongRight");
- this.TrbWrongRight.Minimum = 1;
- this.TrbWrongRight.Name = "TrbWrongRight";
- this.TrbWrongRight.TickStyle = System.Windows.Forms.TickStyle.Both;
- this.TrbWrongRight.Value = 5;
- this.TrbWrongRight.ValueChanged += new System.EventHandler(this.TrbWrongRight_ValueChanged);
+ resources.ApplyResources(TrbWrongRight, "TrbWrongRight");
+ TrbWrongRight.Minimum = 1;
+ TrbWrongRight.Name = "TrbWrongRight";
+ TrbWrongRight.TickStyle = System.Windows.Forms.TickStyle.Both;
+ TrbWrongRight.Value = 5;
+ TrbWrongRight.ValueChanged += TrbWrongRight_ValueChanged;
//
// TrbUnknown
//
- this.TrbUnknown.BackColor = System.Drawing.Color.White;
- resources.ApplyResources(this.TrbUnknown, "TrbUnknown");
- this.TrbUnknown.Maximum = 8;
- this.TrbUnknown.Minimum = 1;
- this.TrbUnknown.Name = "TrbUnknown";
- this.TrbUnknown.TickStyle = System.Windows.Forms.TickStyle.Both;
- this.TrbUnknown.Value = 5;
- this.TrbUnknown.ValueChanged += new System.EventHandler(this.TrbUnknown_ValueChanged);
+ resources.ApplyResources(TrbUnknown, "TrbUnknown");
+ TrbUnknown.Maximum = 8;
+ TrbUnknown.Minimum = 1;
+ TrbUnknown.Name = "TrbUnknown";
+ TrbUnknown.TickStyle = System.Windows.Forms.TickStyle.Both;
+ TrbUnknown.Value = 5;
+ TrbUnknown.ValueChanged += TrbUnknown_ValueChanged;
//
// TabControlMain
//
- this.TabControlMain.Controls.Add(this.TabGeneral);
- this.TabControlMain.Controls.Add(this.TabPractice);
- this.TabControlMain.Controls.Add(this.TabPracticeSelect);
- resources.ApplyResources(this.TabControlMain, "TabControlMain");
- this.TabControlMain.Name = "TabControlMain";
- this.TabControlMain.SelectedIndex = 0;
- this.TabControlMain.Selected += new System.Windows.Forms.TabControlEventHandler(this.TabControlMain_Selected);
+ TabControlMain.Controls.Add(TabGeneral);
+ TabControlMain.Controls.Add(TabPractice);
+ TabControlMain.Controls.Add(TabPracticeSelect);
+ resources.ApplyResources(TabControlMain, "TabControlMain");
+ TabControlMain.Name = "TabControlMain";
+ TabControlMain.SelectedIndex = 0;
+ TabControlMain.Selected += TabControlMain_Selected;
//
// TabGeneral
//
- this.TabGeneral.BackColor = System.Drawing.Color.White;
- this.TabGeneral.Controls.Add(this.GroupLanguage);
- this.TabGeneral.Controls.Add(this.GroupVocabularyList);
- this.TabGeneral.Controls.Add(this.GroupVhrPath);
- this.TabGeneral.Controls.Add(this.GroupVhfPath);
- this.TabGeneral.Controls.Add(this.GroupUpdate);
- this.TabGeneral.Controls.Add(this.GroupSave);
- this.TabGeneral.Controls.Add(this.GroupStartScreen);
- resources.ApplyResources(this.TabGeneral, "TabGeneral");
- this.TabGeneral.Name = "TabGeneral";
- //
- // GroupLanguage
- //
- this.GroupLanguage.Controls.Add(this.LbLanguage);
- this.GroupLanguage.Controls.Add(this.CbLanguage);
- resources.ApplyResources(this.GroupLanguage, "GroupLanguage");
- this.GroupLanguage.Name = "GroupLanguage";
- this.GroupLanguage.TabStop = false;
+ TabGeneral.BackColor = System.Drawing.SystemColors.Window;
+ TabGeneral.Controls.Add(GroupUserInterface);
+ TabGeneral.Controls.Add(GroupVocabularyList);
+ TabGeneral.Controls.Add(GroupVhrPath);
+ TabGeneral.Controls.Add(GroupVhfPath);
+ TabGeneral.Controls.Add(GroupUpdate);
+ TabGeneral.Controls.Add(GroupSave);
+ TabGeneral.Controls.Add(GroupStartScreen);
+ resources.ApplyResources(TabGeneral, "TabGeneral");
+ TabGeneral.Name = "TabGeneral";
+ //
+ // GroupUserInterface
+ //
+ GroupUserInterface.Controls.Add(CbColorTheme);
+ GroupUserInterface.Controls.Add(LbColorTheme);
+ GroupUserInterface.Controls.Add(LbLanguage);
+ GroupUserInterface.Controls.Add(CbLanguage);
+ resources.ApplyResources(GroupUserInterface, "GroupUserInterface");
+ GroupUserInterface.Name = "GroupUserInterface";
+ GroupUserInterface.TabStop = false;
+ //
+ // CbColorTheme
+ //
+ CbColorTheme.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+ CbColorTheme.FormattingEnabled = true;
+ CbColorTheme.Items.AddRange(new object[] { resources.GetString("CbColorTheme.Items"), resources.GetString("CbColorTheme.Items1"), resources.GetString("CbColorTheme.Items2") });
+ resources.ApplyResources(CbColorTheme, "CbColorTheme");
+ CbColorTheme.Name = "CbColorTheme";
+ //
+ // LbColorTheme
+ //
+ resources.ApplyResources(LbColorTheme, "LbColorTheme");
+ LbColorTheme.Name = "LbColorTheme";
//
// LbLanguage
//
- resources.ApplyResources(this.LbLanguage, "LbLanguage");
- this.LbLanguage.Name = "LbLanguage";
+ resources.ApplyResources(LbLanguage, "LbLanguage");
+ LbLanguage.Name = "LbLanguage";
//
// CbLanguage
//
- this.CbLanguage.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
- this.CbLanguage.FormattingEnabled = true;
- this.CbLanguage.Items.AddRange(new object[] {
- resources.GetString("CbLanguage.Items"),
- resources.GetString("CbLanguage.Items1"),
- resources.GetString("CbLanguage.Items2"),
- resources.GetString("CbLanguage.Items3")});
- resources.ApplyResources(this.CbLanguage, "CbLanguage");
- this.CbLanguage.Name = "CbLanguage";
+ CbLanguage.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+ CbLanguage.FormattingEnabled = true;
+ CbLanguage.Items.AddRange(new object[] { resources.GetString("CbLanguage.Items"), resources.GetString("CbLanguage.Items1"), resources.GetString("CbLanguage.Items2"), resources.GetString("CbLanguage.Items3") });
+ resources.ApplyResources(CbLanguage, "CbLanguage");
+ CbLanguage.Name = "CbLanguage";
//
// GroupVocabularyList
//
- this.GroupVocabularyList.BackColor = System.Drawing.Color.Transparent;
- this.GroupVocabularyList.Controls.Add(this.CbColumnResize);
- resources.ApplyResources(this.GroupVocabularyList, "GroupVocabularyList");
- this.GroupVocabularyList.Name = "GroupVocabularyList";
- this.GroupVocabularyList.TabStop = false;
+ GroupVocabularyList.BackColor = System.Drawing.Color.Transparent;
+ GroupVocabularyList.Controls.Add(CbColumnResize);
+ resources.ApplyResources(GroupVocabularyList, "GroupVocabularyList");
+ GroupVocabularyList.Name = "GroupVocabularyList";
+ GroupVocabularyList.TabStop = false;
//
// CbColumnResize
//
- resources.ApplyResources(this.CbColumnResize, "CbColumnResize");
- this.CbColumnResize.Name = "CbColumnResize";
- this.CbColumnResize.UseVisualStyleBackColor = true;
+ resources.ApplyResources(CbColumnResize, "CbColumnResize");
+ CbColumnResize.Name = "CbColumnResize";
+ CbColumnResize.UseVisualStyleBackColor = true;
//
// GroupVhrPath
//
- this.GroupVhrPath.Controls.Add(this.BtnVhrPath);
- this.GroupVhrPath.Controls.Add(this.TbVhrPath);
- resources.ApplyResources(this.GroupVhrPath, "GroupVhrPath");
- this.GroupVhrPath.Name = "GroupVhrPath";
- this.GroupVhrPath.TabStop = false;
+ GroupVhrPath.Controls.Add(BtnVhrPath);
+ GroupVhrPath.Controls.Add(TbVhrPath);
+ resources.ApplyResources(GroupVhrPath, "GroupVhrPath");
+ GroupVhrPath.Name = "GroupVhrPath";
+ GroupVhrPath.TabStop = false;
//
// BtnVhrPath
//
- resources.ApplyResources(this.BtnVhrPath, "BtnVhrPath");
- this.BtnVhrPath.Name = "BtnVhrPath";
- this.BtnVhrPath.UseVisualStyleBackColor = true;
- this.BtnVhrPath.Click += new System.EventHandler(this.BtnVhrPath_Click);
+ resources.ApplyResources(BtnVhrPath, "BtnVhrPath");
+ BtnVhrPath.Name = "BtnVhrPath";
+ BtnVhrPath.UseVisualStyleBackColor = true;
+ BtnVhrPath.Click += BtnVhrPath_Click;
//
// TbVhrPath
//
- resources.ApplyResources(this.TbVhrPath, "TbVhrPath");
- this.TbVhrPath.Name = "TbVhrPath";
- this.TbVhrPath.ReadOnly = true;
+ resources.ApplyResources(TbVhrPath, "TbVhrPath");
+ TbVhrPath.Name = "TbVhrPath";
+ TbVhrPath.ReadOnly = true;
//
// GroupVhfPath
//
- this.GroupVhfPath.Controls.Add(this.BtnVhfPath);
- this.GroupVhfPath.Controls.Add(this.TbVhfPath);
- resources.ApplyResources(this.GroupVhfPath, "GroupVhfPath");
- this.GroupVhfPath.Name = "GroupVhfPath";
- this.GroupVhfPath.TabStop = false;
+ GroupVhfPath.Controls.Add(BtnVhfPath);
+ GroupVhfPath.Controls.Add(TbVhfPath);
+ resources.ApplyResources(GroupVhfPath, "GroupVhfPath");
+ GroupVhfPath.Name = "GroupVhfPath";
+ GroupVhfPath.TabStop = false;
//
// BtnVhfPath
//
- resources.ApplyResources(this.BtnVhfPath, "BtnVhfPath");
- this.BtnVhfPath.Name = "BtnVhfPath";
- this.BtnVhfPath.UseVisualStyleBackColor = true;
- this.BtnVhfPath.Click += new System.EventHandler(this.BtnVhfPath_Click);
+ resources.ApplyResources(BtnVhfPath, "BtnVhfPath");
+ BtnVhfPath.Name = "BtnVhfPath";
+ BtnVhfPath.UseVisualStyleBackColor = true;
+ BtnVhfPath.Click += BtnVhfPath_Click;
//
// TbVhfPath
//
- resources.ApplyResources(this.TbVhfPath, "TbVhfPath");
- this.TbVhfPath.Name = "TbVhfPath";
- this.TbVhfPath.ReadOnly = true;
+ resources.ApplyResources(TbVhfPath, "TbVhfPath");
+ TbVhfPath.Name = "TbVhfPath";
+ TbVhfPath.ReadOnly = true;
//
// GroupUpdate
//
- this.GroupUpdate.BackColor = System.Drawing.Color.Transparent;
- this.GroupUpdate.Controls.Add(this.CbDisableInternetServices);
- resources.ApplyResources(this.GroupUpdate, "GroupUpdate");
- this.GroupUpdate.Name = "GroupUpdate";
- this.GroupUpdate.TabStop = false;
+ GroupUpdate.BackColor = System.Drawing.Color.Transparent;
+ GroupUpdate.Controls.Add(CbDisableInternetServices);
+ resources.ApplyResources(GroupUpdate, "GroupUpdate");
+ GroupUpdate.Name = "GroupUpdate";
+ GroupUpdate.TabStop = false;
//
// CbDisableInternetServices
//
- resources.ApplyResources(this.CbDisableInternetServices, "CbDisableInternetServices");
- this.CbDisableInternetServices.Name = "CbDisableInternetServices";
- this.CbDisableInternetServices.UseVisualStyleBackColor = true;
+ resources.ApplyResources(CbDisableInternetServices, "CbDisableInternetServices");
+ CbDisableInternetServices.Name = "CbDisableInternetServices";
+ CbDisableInternetServices.UseVisualStyleBackColor = true;
//
// GroupSave
//
- this.GroupSave.BackColor = System.Drawing.Color.Transparent;
- this.GroupSave.Controls.Add(this.CbAutoSave);
- resources.ApplyResources(this.GroupSave, "GroupSave");
- this.GroupSave.Name = "GroupSave";
- this.GroupSave.TabStop = false;
+ GroupSave.BackColor = System.Drawing.Color.Transparent;
+ GroupSave.Controls.Add(CbAutoSave);
+ resources.ApplyResources(GroupSave, "GroupSave");
+ GroupSave.Name = "GroupSave";
+ GroupSave.TabStop = false;
//
// CbAutoSave
//
- resources.ApplyResources(this.CbAutoSave, "CbAutoSave");
- this.CbAutoSave.Name = "CbAutoSave";
- this.CbAutoSave.UseVisualStyleBackColor = true;
+ resources.ApplyResources(CbAutoSave, "CbAutoSave");
+ CbAutoSave.Name = "CbAutoSave";
+ CbAutoSave.UseVisualStyleBackColor = true;
//
// TabPractice
//
- this.TabPractice.BackColor = System.Drawing.Color.White;
- this.TabPractice.Controls.Add(this.GroupEvaluation);
- this.TabPractice.Controls.Add(this.GroupUserInterface);
- this.TabPractice.Controls.Add(this.GroupNearlyCorrect);
- resources.ApplyResources(this.TabPractice, "TabPractice");
- this.TabPractice.Name = "TabPractice";
+ TabPractice.BackColor = System.Drawing.SystemColors.Window;
+ TabPractice.Controls.Add(GroupEvaluation);
+ TabPractice.Controls.Add(GroupPracticeUserInterface);
+ TabPractice.Controls.Add(GroupNearlyCorrect);
+ resources.ApplyResources(TabPractice, "TabPractice");
+ TabPractice.Name = "TabPractice";
//
// GroupEvaluation
//
- this.GroupEvaluation.Controls.Add(this.CbOptionalExpressions);
- this.GroupEvaluation.Controls.Add(this.CbManualCheck);
- this.GroupEvaluation.Controls.Add(this.CbShowPracticeResult);
- resources.ApplyResources(this.GroupEvaluation, "GroupEvaluation");
- this.GroupEvaluation.Name = "GroupEvaluation";
- this.GroupEvaluation.TabStop = false;
+ GroupEvaluation.Controls.Add(CbOptionalExpressions);
+ GroupEvaluation.Controls.Add(CbManualCheck);
+ GroupEvaluation.Controls.Add(CbShowPracticeResult);
+ resources.ApplyResources(GroupEvaluation, "GroupEvaluation");
+ GroupEvaluation.Name = "GroupEvaluation";
+ GroupEvaluation.TabStop = false;
//
// CbOptionalExpressions
//
- resources.ApplyResources(this.CbOptionalExpressions, "CbOptionalExpressions");
- this.CbOptionalExpressions.Checked = true;
- this.CbOptionalExpressions.CheckState = System.Windows.Forms.CheckState.Checked;
- this.CbOptionalExpressions.Name = "CbOptionalExpressions";
- this.CbOptionalExpressions.UseVisualStyleBackColor = true;
+ resources.ApplyResources(CbOptionalExpressions, "CbOptionalExpressions");
+ CbOptionalExpressions.Checked = true;
+ CbOptionalExpressions.CheckState = System.Windows.Forms.CheckState.Checked;
+ CbOptionalExpressions.Name = "CbOptionalExpressions";
+ CbOptionalExpressions.UseVisualStyleBackColor = true;
//
// CbManualCheck
//
- resources.ApplyResources(this.CbManualCheck, "CbManualCheck");
- this.CbManualCheck.Name = "CbManualCheck";
- this.CbManualCheck.UseVisualStyleBackColor = true;
+ resources.ApplyResources(CbManualCheck, "CbManualCheck");
+ CbManualCheck.Name = "CbManualCheck";
+ CbManualCheck.UseVisualStyleBackColor = true;
//
// CbShowPracticeResult
//
- resources.ApplyResources(this.CbShowPracticeResult, "CbShowPracticeResult");
- this.CbShowPracticeResult.Checked = true;
- this.CbShowPracticeResult.CheckState = System.Windows.Forms.CheckState.Checked;
- this.CbShowPracticeResult.Name = "CbShowPracticeResult";
- this.CbShowPracticeResult.UseVisualStyleBackColor = true;
+ resources.ApplyResources(CbShowPracticeResult, "CbShowPracticeResult");
+ CbShowPracticeResult.Checked = true;
+ CbShowPracticeResult.CheckState = System.Windows.Forms.CheckState.Checked;
+ CbShowPracticeResult.Name = "CbShowPracticeResult";
+ CbShowPracticeResult.UseVisualStyleBackColor = true;
//
- // GroupUserInterface
+ // GroupPracticeUserInterface
//
- this.GroupUserInterface.Controls.Add(this.CbAcousticFeedback);
- this.GroupUserInterface.Controls.Add(this.CbSingleContinueButton);
- resources.ApplyResources(this.GroupUserInterface, "GroupUserInterface");
- this.GroupUserInterface.Name = "GroupUserInterface";
- this.GroupUserInterface.TabStop = false;
+ GroupPracticeUserInterface.Controls.Add(CbAcousticFeedback);
+ GroupPracticeUserInterface.Controls.Add(CbSingleContinueButton);
+ resources.ApplyResources(GroupPracticeUserInterface, "GroupPracticeUserInterface");
+ GroupPracticeUserInterface.Name = "GroupPracticeUserInterface";
+ GroupPracticeUserInterface.TabStop = false;
//
// CbAcousticFeedback
//
- resources.ApplyResources(this.CbAcousticFeedback, "CbAcousticFeedback");
- this.CbAcousticFeedback.Checked = true;
- this.CbAcousticFeedback.CheckState = System.Windows.Forms.CheckState.Checked;
- this.CbAcousticFeedback.Name = "CbAcousticFeedback";
- this.CbAcousticFeedback.UseVisualStyleBackColor = true;
+ resources.ApplyResources(CbAcousticFeedback, "CbAcousticFeedback");
+ CbAcousticFeedback.Checked = true;
+ CbAcousticFeedback.CheckState = System.Windows.Forms.CheckState.Checked;
+ CbAcousticFeedback.Name = "CbAcousticFeedback";
+ CbAcousticFeedback.UseVisualStyleBackColor = true;
//
// CbSingleContinueButton
//
- resources.ApplyResources(this.CbSingleContinueButton, "CbSingleContinueButton");
- this.CbSingleContinueButton.BackColor = System.Drawing.Color.Transparent;
- this.CbSingleContinueButton.Name = "CbSingleContinueButton";
- this.CbSingleContinueButton.UseVisualStyleBackColor = false;
+ resources.ApplyResources(CbSingleContinueButton, "CbSingleContinueButton");
+ CbSingleContinueButton.BackColor = System.Drawing.Color.Transparent;
+ CbSingleContinueButton.Name = "CbSingleContinueButton";
+ CbSingleContinueButton.UseVisualStyleBackColor = false;
//
// GroupNearlyCorrect
//
- this.GroupNearlyCorrect.Controls.Add(this.CbTolerateWhiteSpace);
- this.GroupNearlyCorrect.Controls.Add(this.CbTolerateNoSynonym);
- this.GroupNearlyCorrect.Controls.Add(this.CbTolerateArticle);
- this.GroupNearlyCorrect.Controls.Add(this.CbToleratePunctuationMark);
- this.GroupNearlyCorrect.Controls.Add(this.CbTolerateSpecialChar);
- resources.ApplyResources(this.GroupNearlyCorrect, "GroupNearlyCorrect");
- this.GroupNearlyCorrect.Name = "GroupNearlyCorrect";
- this.GroupNearlyCorrect.TabStop = false;
+ GroupNearlyCorrect.Controls.Add(CbTolerateWhiteSpace);
+ GroupNearlyCorrect.Controls.Add(CbTolerateNoSynonym);
+ GroupNearlyCorrect.Controls.Add(CbTolerateArticle);
+ GroupNearlyCorrect.Controls.Add(CbToleratePunctuationMark);
+ GroupNearlyCorrect.Controls.Add(CbTolerateSpecialChar);
+ resources.ApplyResources(GroupNearlyCorrect, "GroupNearlyCorrect");
+ GroupNearlyCorrect.Name = "GroupNearlyCorrect";
+ GroupNearlyCorrect.TabStop = false;
//
// CbTolerateWhiteSpace
//
- resources.ApplyResources(this.CbTolerateWhiteSpace, "CbTolerateWhiteSpace");
- this.CbTolerateWhiteSpace.Checked = true;
- this.CbTolerateWhiteSpace.CheckState = System.Windows.Forms.CheckState.Checked;
- this.CbTolerateWhiteSpace.Name = "CbTolerateWhiteSpace";
- this.CbTolerateWhiteSpace.UseVisualStyleBackColor = true;
+ resources.ApplyResources(CbTolerateWhiteSpace, "CbTolerateWhiteSpace");
+ CbTolerateWhiteSpace.Checked = true;
+ CbTolerateWhiteSpace.CheckState = System.Windows.Forms.CheckState.Checked;
+ CbTolerateWhiteSpace.Name = "CbTolerateWhiteSpace";
+ CbTolerateWhiteSpace.UseVisualStyleBackColor = true;
//
// CbTolerateNoSynonym
//
- resources.ApplyResources(this.CbTolerateNoSynonym, "CbTolerateNoSynonym");
- this.CbTolerateNoSynonym.Checked = true;
- this.CbTolerateNoSynonym.CheckState = System.Windows.Forms.CheckState.Checked;
- this.CbTolerateNoSynonym.Name = "CbTolerateNoSynonym";
- this.CbTolerateNoSynonym.UseVisualStyleBackColor = true;
+ resources.ApplyResources(CbTolerateNoSynonym, "CbTolerateNoSynonym");
+ CbTolerateNoSynonym.Checked = true;
+ CbTolerateNoSynonym.CheckState = System.Windows.Forms.CheckState.Checked;
+ CbTolerateNoSynonym.Name = "CbTolerateNoSynonym";
+ CbTolerateNoSynonym.UseVisualStyleBackColor = true;
//
// CbTolerateArticle
//
- resources.ApplyResources(this.CbTolerateArticle, "CbTolerateArticle");
- this.CbTolerateArticle.Checked = true;
- this.CbTolerateArticle.CheckState = System.Windows.Forms.CheckState.Checked;
- this.CbTolerateArticle.Name = "CbTolerateArticle";
- this.CbTolerateArticle.UseVisualStyleBackColor = true;
+ resources.ApplyResources(CbTolerateArticle, "CbTolerateArticle");
+ CbTolerateArticle.Checked = true;
+ CbTolerateArticle.CheckState = System.Windows.Forms.CheckState.Checked;
+ CbTolerateArticle.Name = "CbTolerateArticle";
+ CbTolerateArticle.UseVisualStyleBackColor = true;
//
// CbToleratePunctuationMark
//
- resources.ApplyResources(this.CbToleratePunctuationMark, "CbToleratePunctuationMark");
- this.CbToleratePunctuationMark.Checked = true;
- this.CbToleratePunctuationMark.CheckState = System.Windows.Forms.CheckState.Checked;
- this.CbToleratePunctuationMark.Name = "CbToleratePunctuationMark";
- this.CbToleratePunctuationMark.UseVisualStyleBackColor = true;
+ resources.ApplyResources(CbToleratePunctuationMark, "CbToleratePunctuationMark");
+ CbToleratePunctuationMark.Checked = true;
+ CbToleratePunctuationMark.CheckState = System.Windows.Forms.CheckState.Checked;
+ CbToleratePunctuationMark.Name = "CbToleratePunctuationMark";
+ CbToleratePunctuationMark.UseVisualStyleBackColor = true;
//
// CbTolerateSpecialChar
//
- resources.ApplyResources(this.CbTolerateSpecialChar, "CbTolerateSpecialChar");
- this.CbTolerateSpecialChar.Checked = true;
- this.CbTolerateSpecialChar.CheckState = System.Windows.Forms.CheckState.Checked;
- this.CbTolerateSpecialChar.Name = "CbTolerateSpecialChar";
- this.CbTolerateSpecialChar.UseVisualStyleBackColor = true;
+ resources.ApplyResources(CbTolerateSpecialChar, "CbTolerateSpecialChar");
+ CbTolerateSpecialChar.Checked = true;
+ CbTolerateSpecialChar.CheckState = System.Windows.Forms.CheckState.Checked;
+ CbTolerateSpecialChar.Name = "CbTolerateSpecialChar";
+ CbTolerateSpecialChar.UseVisualStyleBackColor = true;
//
// TabPracticeSelect
//
- this.TabPracticeSelect.BackColor = System.Drawing.Color.White;
- this.TabPracticeSelect.Controls.Add(this.BtnResetPracticeSelect);
- this.TabPracticeSelect.Controls.Add(this.GroupSelectionMix);
- this.TabPracticeSelect.Controls.Add(this.GroupRepetitions);
- resources.ApplyResources(this.TabPracticeSelect, "TabPracticeSelect");
- this.TabPracticeSelect.Name = "TabPracticeSelect";
+ TabPracticeSelect.BackColor = System.Drawing.SystemColors.Window;
+ TabPracticeSelect.Controls.Add(BtnResetPracticeSelect);
+ TabPracticeSelect.Controls.Add(GroupSelectionMix);
+ TabPracticeSelect.Controls.Add(GroupRepetitions);
+ resources.ApplyResources(TabPracticeSelect, "TabPracticeSelect");
+ TabPracticeSelect.Name = "TabPracticeSelect";
//
// BtnResetPracticeSelect
//
- resources.ApplyResources(this.BtnResetPracticeSelect, "BtnResetPracticeSelect");
- this.BtnResetPracticeSelect.Name = "BtnResetPracticeSelect";
- this.BtnResetPracticeSelect.UseVisualStyleBackColor = true;
- this.BtnResetPracticeSelect.Click += new System.EventHandler(this.BtnResetPractice_Click);
+ resources.ApplyResources(BtnResetPracticeSelect, "BtnResetPracticeSelect");
+ BtnResetPracticeSelect.Name = "BtnResetPracticeSelect";
+ BtnResetPracticeSelect.UseVisualStyleBackColor = true;
+ BtnResetPracticeSelect.Click += BtnResetPractice_Click;
//
// GroupSelectionMix
//
- this.GroupSelectionMix.Controls.Add(this.LbWronglyPracticed);
- this.GroupSelectionMix.Controls.Add(this.LbCorrectlyPracticed);
- this.GroupSelectionMix.Controls.Add(this.LbUnpracticed);
- this.GroupSelectionMix.Controls.Add(this.LbPercentageUnpracticed);
- this.GroupSelectionMix.Controls.Add(this.pictureBox2);
- this.GroupSelectionMix.Controls.Add(this.pictureBox1);
- this.GroupSelectionMix.Controls.Add(this.pictureBox3);
- this.GroupSelectionMix.Controls.Add(this.LbPercentageWrongCorrect);
- this.GroupSelectionMix.Controls.Add(this.TrbUnknown);
- this.GroupSelectionMix.Controls.Add(this.TrbWrongRight);
- resources.ApplyResources(this.GroupSelectionMix, "GroupSelectionMix");
- this.GroupSelectionMix.Name = "GroupSelectionMix";
- this.GroupSelectionMix.TabStop = false;
+ GroupSelectionMix.Controls.Add(LbWronglyPracticed);
+ GroupSelectionMix.Controls.Add(LbCorrectlyPracticed);
+ GroupSelectionMix.Controls.Add(LbUnpracticed);
+ GroupSelectionMix.Controls.Add(LbPercentageUnpracticed);
+ GroupSelectionMix.Controls.Add(pictureBox2);
+ GroupSelectionMix.Controls.Add(pictureBox1);
+ GroupSelectionMix.Controls.Add(pictureBox3);
+ GroupSelectionMix.Controls.Add(LbPercentageWrongCorrect);
+ GroupSelectionMix.Controls.Add(TrbUnknown);
+ GroupSelectionMix.Controls.Add(TrbWrongRight);
+ resources.ApplyResources(GroupSelectionMix, "GroupSelectionMix");
+ GroupSelectionMix.Name = "GroupSelectionMix";
+ GroupSelectionMix.TabStop = false;
//
// LbWronglyPracticed
//
- resources.ApplyResources(this.LbWronglyPracticed, "LbWronglyPracticed");
- this.LbWronglyPracticed.Name = "LbWronglyPracticed";
+ resources.ApplyResources(LbWronglyPracticed, "LbWronglyPracticed");
+ LbWronglyPracticed.Name = "LbWronglyPracticed";
//
// LbCorrectlyPracticed
//
- resources.ApplyResources(this.LbCorrectlyPracticed, "LbCorrectlyPracticed");
- this.LbCorrectlyPracticed.Name = "LbCorrectlyPracticed";
+ resources.ApplyResources(LbCorrectlyPracticed, "LbCorrectlyPracticed");
+ LbCorrectlyPracticed.Name = "LbCorrectlyPracticed";
//
// LbUnpracticed
//
- resources.ApplyResources(this.LbUnpracticed, "LbUnpracticed");
- this.LbUnpracticed.Name = "LbUnpracticed";
+ resources.ApplyResources(LbUnpracticed, "LbUnpracticed");
+ LbUnpracticed.Name = "LbUnpracticed";
//
// LbPercentageUnpracticed
//
- resources.ApplyResources(this.LbPercentageUnpracticed, "LbPercentageUnpracticed");
- this.LbPercentageUnpracticed.Name = "LbPercentageUnpracticed";
+ resources.ApplyResources(LbPercentageUnpracticed, "LbPercentageUnpracticed");
+ LbPercentageUnpracticed.Name = "LbPercentageUnpracticed";
//
// pictureBox2
//
- this.pictureBox2.Image = global::Vocup.Properties.Icons.WronglyPracticed;
- resources.ApplyResources(this.pictureBox2, "pictureBox2");
- this.pictureBox2.Name = "pictureBox2";
- this.pictureBox2.TabStop = false;
+ pictureBox2.Image = Properties.Icons.WronglyPracticed;
+ resources.ApplyResources(pictureBox2, "pictureBox2");
+ pictureBox2.Name = "pictureBox2";
+ pictureBox2.TabStop = false;
//
// pictureBox1
//
- this.pictureBox1.Image = global::Vocup.Properties.Icons.Unpracticed;
- resources.ApplyResources(this.pictureBox1, "pictureBox1");
- this.pictureBox1.Name = "pictureBox1";
- this.pictureBox1.TabStop = false;
+ pictureBox1.Image = Properties.Icons.Unpracticed;
+ resources.ApplyResources(pictureBox1, "pictureBox1");
+ pictureBox1.Name = "pictureBox1";
+ pictureBox1.TabStop = false;
//
// pictureBox3
//
- this.pictureBox3.Image = global::Vocup.Properties.Icons.CorrectlyPracticed;
- resources.ApplyResources(this.pictureBox3, "pictureBox3");
- this.pictureBox3.Name = "pictureBox3";
- this.pictureBox3.TabStop = false;
+ pictureBox3.Image = Properties.Icons.CorrectlyPracticed;
+ resources.ApplyResources(pictureBox3, "pictureBox3");
+ pictureBox3.Name = "pictureBox3";
+ pictureBox3.TabStop = false;
//
// LbPercentageWrongCorrect
//
- resources.ApplyResources(this.LbPercentageWrongCorrect, "LbPercentageWrongCorrect");
- this.LbPercentageWrongCorrect.Name = "LbPercentageWrongCorrect";
+ resources.ApplyResources(LbPercentageWrongCorrect, "LbPercentageWrongCorrect");
+ LbPercentageWrongCorrect.Name = "LbPercentageWrongCorrect";
//
// GroupRepetitions
//
- this.GroupRepetitions.Controls.Add(this.LbPracticeCount);
- this.GroupRepetitions.Controls.Add(this.PnlPracticeCount);
- resources.ApplyResources(this.GroupRepetitions, "GroupRepetitions");
- this.GroupRepetitions.Name = "GroupRepetitions";
- this.GroupRepetitions.TabStop = false;
+ GroupRepetitions.Controls.Add(LbPracticeCount);
+ GroupRepetitions.Controls.Add(PnlPracticeCount);
+ resources.ApplyResources(GroupRepetitions, "GroupRepetitions");
+ GroupRepetitions.Name = "GroupRepetitions";
+ GroupRepetitions.TabStop = false;
//
// LbPracticeCount
//
- this.LbPracticeCount.AutoEllipsis = true;
- resources.ApplyResources(this.LbPracticeCount, "LbPracticeCount");
- this.LbPracticeCount.Name = "LbPracticeCount";
+ LbPracticeCount.AutoEllipsis = true;
+ resources.ApplyResources(LbPracticeCount, "LbPracticeCount");
+ LbPracticeCount.Name = "LbPracticeCount";
//
// PnlPracticeCount
//
- this.PnlPracticeCount.Controls.Add(this.LbTrb6);
- this.PnlPracticeCount.Controls.Add(this.LbTrb2);
- this.PnlPracticeCount.Controls.Add(this.LbTrb5);
- this.PnlPracticeCount.Controls.Add(this.LbTrb3);
- this.PnlPracticeCount.Controls.Add(this.LbTrb4);
- this.PnlPracticeCount.Controls.Add(this.TrbRepetitions);
- resources.ApplyResources(this.PnlPracticeCount, "PnlPracticeCount");
- this.PnlPracticeCount.Name = "PnlPracticeCount";
+ PnlPracticeCount.Controls.Add(LbTrb6);
+ PnlPracticeCount.Controls.Add(LbTrb2);
+ PnlPracticeCount.Controls.Add(LbTrb5);
+ PnlPracticeCount.Controls.Add(LbTrb3);
+ PnlPracticeCount.Controls.Add(LbTrb4);
+ PnlPracticeCount.Controls.Add(TrbRepetitions);
+ resources.ApplyResources(PnlPracticeCount, "PnlPracticeCount");
+ PnlPracticeCount.Name = "PnlPracticeCount";
//
// LbTrb6
//
- resources.ApplyResources(this.LbTrb6, "LbTrb6");
- this.LbTrb6.Name = "LbTrb6";
+ resources.ApplyResources(LbTrb6, "LbTrb6");
+ LbTrb6.Name = "LbTrb6";
//
// LbTrb2
//
- resources.ApplyResources(this.LbTrb2, "LbTrb2");
- this.LbTrb2.Name = "LbTrb2";
+ resources.ApplyResources(LbTrb2, "LbTrb2");
+ LbTrb2.Name = "LbTrb2";
//
// LbTrb5
//
- resources.ApplyResources(this.LbTrb5, "LbTrb5");
- this.LbTrb5.Name = "LbTrb5";
+ resources.ApplyResources(LbTrb5, "LbTrb5");
+ LbTrb5.Name = "LbTrb5";
//
// LbTrb3
//
- resources.ApplyResources(this.LbTrb3, "LbTrb3");
- this.LbTrb3.Name = "LbTrb3";
+ resources.ApplyResources(LbTrb3, "LbTrb3");
+ LbTrb3.Name = "LbTrb3";
//
// LbTrb4
//
- resources.ApplyResources(this.LbTrb4, "LbTrb4");
- this.LbTrb4.Name = "LbTrb4";
+ resources.ApplyResources(LbTrb4, "LbTrb4");
+ LbTrb4.Name = "LbTrb4";
//
// TrbRepetitions
//
- this.TrbRepetitions.BackColor = System.Drawing.Color.White;
- this.TrbRepetitions.LargeChange = 1;
- resources.ApplyResources(this.TrbRepetitions, "TrbRepetitions");
- this.TrbRepetitions.Maximum = 6;
- this.TrbRepetitions.Minimum = 2;
- this.TrbRepetitions.Name = "TrbRepetitions";
- this.TrbRepetitions.Value = 3;
+ TrbRepetitions.LargeChange = 1;
+ resources.ApplyResources(TrbRepetitions, "TrbRepetitions");
+ TrbRepetitions.Maximum = 6;
+ TrbRepetitions.Minimum = 2;
+ TrbRepetitions.Name = "TrbRepetitions";
+ TrbRepetitions.Value = 3;
//
// SettingsDialog
//
- this.AcceptButton = this.BtnOk;
+ AcceptButton = BtnOk;
resources.ApplyResources(this, "$this");
- this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
- this.CancelButton = this.BtnCancel;
- this.Controls.Add(this.TabControlMain);
- this.Controls.Add(this.BtnCancel);
- this.Controls.Add(this.BtnOk);
- this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
- this.MaximizeBox = false;
- this.MinimizeBox = false;
- this.Name = "SettingsDialog";
- this.ShowInTaskbar = false;
- this.Load += new System.EventHandler(this.SettingsDialog_Load);
- this.GroupStartScreen.ResumeLayout(false);
- this.GroupStartScreen.PerformLayout();
- ((System.ComponentModel.ISupportInitialize)(this.TrbWrongRight)).EndInit();
- ((System.ComponentModel.ISupportInitialize)(this.TrbUnknown)).EndInit();
- this.TabControlMain.ResumeLayout(false);
- this.TabGeneral.ResumeLayout(false);
- this.GroupLanguage.ResumeLayout(false);
- this.GroupLanguage.PerformLayout();
- this.GroupVocabularyList.ResumeLayout(false);
- this.GroupVocabularyList.PerformLayout();
- this.GroupVhrPath.ResumeLayout(false);
- this.GroupVhrPath.PerformLayout();
- this.GroupVhfPath.ResumeLayout(false);
- this.GroupVhfPath.PerformLayout();
- this.GroupUpdate.ResumeLayout(false);
- this.GroupUpdate.PerformLayout();
- this.GroupSave.ResumeLayout(false);
- this.GroupSave.PerformLayout();
- this.TabPractice.ResumeLayout(false);
- this.GroupEvaluation.ResumeLayout(false);
- this.GroupEvaluation.PerformLayout();
- this.GroupUserInterface.ResumeLayout(false);
- this.GroupUserInterface.PerformLayout();
- this.GroupNearlyCorrect.ResumeLayout(false);
- this.GroupNearlyCorrect.PerformLayout();
- this.TabPracticeSelect.ResumeLayout(false);
- this.GroupSelectionMix.ResumeLayout(false);
- this.GroupSelectionMix.PerformLayout();
- ((System.ComponentModel.ISupportInitialize)(this.pictureBox2)).EndInit();
- ((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).EndInit();
- ((System.ComponentModel.ISupportInitialize)(this.pictureBox3)).EndInit();
- this.GroupRepetitions.ResumeLayout(false);
- this.GroupRepetitions.PerformLayout();
- this.PnlPracticeCount.ResumeLayout(false);
- this.PnlPracticeCount.PerformLayout();
- ((System.ComponentModel.ISupportInitialize)(this.TrbRepetitions)).EndInit();
- this.ResumeLayout(false);
-
+ AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+ CancelButton = BtnCancel;
+ Controls.Add(TabControlMain);
+ Controls.Add(BtnCancel);
+ Controls.Add(BtnOk);
+ FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
+ MaximizeBox = false;
+ MinimizeBox = false;
+ Name = "SettingsDialog";
+ ShowInTaskbar = false;
+ Load += SettingsDialog_Load;
+ GroupStartScreen.ResumeLayout(false);
+ GroupStartScreen.PerformLayout();
+ ((System.ComponentModel.ISupportInitialize)TrbWrongRight).EndInit();
+ ((System.ComponentModel.ISupportInitialize)TrbUnknown).EndInit();
+ TabControlMain.ResumeLayout(false);
+ TabGeneral.ResumeLayout(false);
+ GroupUserInterface.ResumeLayout(false);
+ GroupUserInterface.PerformLayout();
+ GroupVocabularyList.ResumeLayout(false);
+ GroupVocabularyList.PerformLayout();
+ GroupVhrPath.ResumeLayout(false);
+ GroupVhrPath.PerformLayout();
+ GroupVhfPath.ResumeLayout(false);
+ GroupVhfPath.PerformLayout();
+ GroupUpdate.ResumeLayout(false);
+ GroupUpdate.PerformLayout();
+ GroupSave.ResumeLayout(false);
+ GroupSave.PerformLayout();
+ TabPractice.ResumeLayout(false);
+ GroupEvaluation.ResumeLayout(false);
+ GroupEvaluation.PerformLayout();
+ GroupPracticeUserInterface.ResumeLayout(false);
+ GroupPracticeUserInterface.PerformLayout();
+ GroupNearlyCorrect.ResumeLayout(false);
+ GroupNearlyCorrect.PerformLayout();
+ TabPracticeSelect.ResumeLayout(false);
+ GroupSelectionMix.ResumeLayout(false);
+ GroupSelectionMix.PerformLayout();
+ ((System.ComponentModel.ISupportInitialize)pictureBox2).EndInit();
+ ((System.ComponentModel.ISupportInitialize)pictureBox1).EndInit();
+ ((System.ComponentModel.ISupportInitialize)pictureBox3).EndInit();
+ GroupRepetitions.ResumeLayout(false);
+ GroupRepetitions.PerformLayout();
+ PnlPracticeCount.ResumeLayout(false);
+ PnlPracticeCount.PerformLayout();
+ ((System.ComponentModel.ISupportInitialize)TrbRepetitions).EndInit();
+ ResumeLayout(false);
}
#endregion
@@ -660,7 +669,7 @@ private void InitializeComponent()
private System.Windows.Forms.CheckBox CbTolerateSpecialChar;
private System.Windows.Forms.CheckBox CbToleratePunctuationMark;
private System.Windows.Forms.CheckBox CbTolerateNoSynonym;
- private System.Windows.Forms.GroupBox GroupUserInterface;
+ private System.Windows.Forms.GroupBox GroupPracticeUserInterface;
private System.Windows.Forms.CheckBox CbSingleContinueButton;
private System.Windows.Forms.CheckBox CbAcousticFeedback;
private System.Windows.Forms.CheckBox CbManualCheck;
@@ -676,9 +685,11 @@ private void InitializeComponent()
private System.Windows.Forms.GroupBox GroupVocabularyList;
private System.Windows.Forms.CheckBox CbColumnResize;
private System.Windows.Forms.CheckBox CbTolerateWhiteSpace;
- private System.Windows.Forms.GroupBox GroupLanguage;
+ private System.Windows.Forms.GroupBox GroupUserInterface;
private System.Windows.Forms.Label LbLanguage;
private System.Windows.Forms.ComboBox CbLanguage;
private System.Windows.Forms.CheckBox CbOptionalExpressions;
+ private System.Windows.Forms.Label LbColorTheme;
+ private System.Windows.Forms.ComboBox CbColorTheme;
}
}
\ No newline at end of file
diff --git a/src/Vocup.WinForms/Forms/SettingsDialog.cs b/src/Vocup.WinForms/Forms/SettingsDialog.cs
index b5168e0..a3640c8 100644
--- a/src/Vocup.WinForms/Forms/SettingsDialog.cs
+++ b/src/Vocup.WinForms/Forms/SettingsDialog.cs
@@ -33,6 +33,15 @@ private void SettingsDialog_Load(object sender, EventArgs e)
TbVhfPath.Text = settings.VhfPath;
TbVhrPath.Text = settings.VhrPath;
+#pragma warning disable WFO5001 // Type is for evaluation purposes only and is subject to change or removal in future updates. Suppress this diagnostic to proceed.
+ CbColorTheme.SelectedIndex = settings.ColorMode switch
+ {
+ SystemColorMode.Classic => 1,
+ SystemColorMode.Dark => 2,
+ _ => 0,
+ };
+#pragma warning restore WFO5001 // Type is for evaluation purposes only and is subject to change or removal in future updates. Suppress this diagnostic to proceed.
+
CbLanguage.SelectedIndex = settings.OverrideCulture switch
{
"en-US" => 1,
@@ -84,6 +93,16 @@ private void BtnOk_Click(object sender, EventArgs e)
settings.VhfPath = TbVhfPath.Text;
settings.VhrPath = TbVhrPath.Text;
+#pragma warning disable WFO5001 // Type is for evaluation purposes only and is subject to change or removal in future updates. Suppress this diagnostic to proceed.
+ SystemColorMode oldColorMode = settings.ColorMode;
+ settings.ColorMode = CbColorTheme.SelectedIndex switch
+ {
+ 1 => SystemColorMode.Classic,
+ 2 => SystemColorMode.Dark,
+ _ => SystemColorMode.System,
+ };
+#pragma warning restore WFO5001 // Type is for evaluation purposes only and is subject to change or removal in future updates. Suppress this diagnostic to proceed.
+
string? oldCulture = settings.OverrideCulture;
settings.OverrideCulture = CbLanguage.SelectedIndex switch
{
@@ -92,7 +111,7 @@ private void BtnOk_Click(object sender, EventArgs e)
3 => "nl-NL",
_ => null, // System language
};
- if (settings.OverrideCulture != oldCulture)
+ if (settings.ColorMode != oldColorMode || settings.OverrideCulture != oldCulture)
MessageBox.Show(Messages.SettingsRestartRequired, Messages.SettingsRestartRequiredT, MessageBoxButtons.OK, MessageBoxIcon.Information);
// Evaluation
diff --git a/src/Vocup.WinForms/Forms/SettingsDialog.de.resx b/src/Vocup.WinForms/Forms/SettingsDialog.de.resx
index f71608a..5641bb0 100644
--- a/src/Vocup.WinForms/Forms/SettingsDialog.de.resx
+++ b/src/Vocup.WinForms/Forms/SettingsDialog.de.resx
@@ -117,38 +117,50 @@
System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
- Einstellungen
+
+ OK
Abbrechen
-
- OK
-
-
- Einstellungen zurücksetzen
+
+ Startbild
Startbild zurücksetzen
-
- Durchsuchen
+
+ Nichts anzeigen
-
- Durchsuchen
+
+ Zuletzt geöffnetes Vokabelheft
-
- Akustische Rückmeldungen aktivieren
+
+ Allgemein
-
- Vokabelheft bei Änderungen automatisch speichern
+
+ Übungsoptionen
-
- Spaltenbreite automatisch anpassen
+
+ Einstellungen zurücksetzen
-
- Internetdienste deaktivieren (nicht empfohlen)
+
+ Wie groß soll der Anteil an noch nicht geübten
+ Vokabeln sein?
+
+
+ Wie groß soll der Anteil an falsch und richtig geübten
+ Vokabeln sein?
+
+
+ Wie oft muss eine Vokabel richtig übersetzt werden,
+damit sie als gelernt eingestuft wird?
+
+
+ Übungszusammensetzung
+
+
+ Sprache
Systemsprache
@@ -162,91 +174,79 @@
Niederländisch
-
- Übersetzungen beim Üben selbst bewerten
+
+ Vokabelliste
-
- Ausdrücke in Klammers als optional behandeln
+
+ Spaltenbreite automatisch anpassen
-
- Nach einer Übung Auswertung anzeigen
+
+ Speicherpfad der Ergebnisse
-
- Nach einer Übersetzung nur einmal Button betätigen
+
+ Durchsuchen
-
- falsche Artikel verwendet werden
+
+ Speicherpfad der Vokabelhefte
-
- nur eines von zwei Synonymen korrekt ist
+
+ Durchsuchen
-
- Satzzeichen nicht stimmen
+
+ Updates
-
- Sonderzeichen nicht stimmen
+
+ Internetdienste deaktivieren (nicht empfohlen)
-
- die Leerzeichen nicht übereinstimmen
+
+ Speichern
+
+
+ Vokabelheft bei Änderungen automatisch speichern
Auswertung
-
- Sprache
-
-
- Als "Teilweise richtig" bewerten, wenn
+
+ Ausdrücke in Klammers als optional behandeln
-
- Speichern
+
+ Übersetzungen beim Üben selbst bewerten
-
- Startbild
+
+ Nach einer Übung Auswertung anzeigen
-
- Updates
+
+ Benutzeroberfläche
Benutzeroberfläche
-
- Speicherpfad der Vokabelhefte
-
-
- Speicherpfad der Ergebnisse
-
-
- Vokabelliste
-
-
- Setze Oberflächensprache
+
+ Akustische Rückmeldungen aktivieren
-
- Wie groß soll der Anteil an noch nicht geübten
- Vokabeln sein?
+
+ Nach einer Übersetzung nur einmal Button betätigen
-
- Wie groß soll der Anteil an falsch und richtig geübten
- Vokabeln sein?
+
+ Als "Teilweise richtig" bewerten, wenn
-
- Wie oft muss eine Vokabel richtig übersetzt werden,
-damit sie als gelernt eingestuft wird?
+
+ die Leerzeichen nicht übereinstimmen
-
- Nichts anzeigen
+
+ nur eines von zwei Synonymen korrekt ist
-
- Zuletzt geöffnetes Vokabelheft
+
+ falsche Artikel verwendet werden
-
- Allgemein
+
+ Satzzeichen nicht stimmen
-
- Übungsoptionen
+
+ Sonderzeichen nicht stimmen
-
- Übungszusammensetzung
+
+ Einstellungen
\ No newline at end of file
diff --git a/src/Vocup.WinForms/Forms/SettingsDialog.nl.resx b/src/Vocup.WinForms/Forms/SettingsDialog.nl.resx
index d578036..04429ec 100644
--- a/src/Vocup.WinForms/Forms/SettingsDialog.nl.resx
+++ b/src/Vocup.WinForms/Forms/SettingsDialog.nl.resx
@@ -117,38 +117,50 @@
System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
- Instellingen
+
+ OK
Annuleren
-
- OK
-
-
- Instellingen terugzetten
+
+ Startscherm
Startscherm terugzetten
-
- Bladeren
+
+ Leeg scherm
-
- Bladeren
+
+ Laatst geopende woordenboek
-
- Akoestische feedback inschakelen
+
+ Algemeen
-
- Wijzigingen automatisch opslaan in woordenboek
+
+ Oefen instellingen
-
- Kolombreedtes automatisch aanpassen
+
+ Instellingen terugzetten
-
- Internetdiensten deactiveren (niet aanbevolen)
+
+ Welk percentage van ongeoefende woorden
+wil je hebben?
+
+
+ Welk percentage van fout en goed beantwoorde
+woorden wil je hebben?
+
+
+ Hoe vaak moet een woord goed vertaald worden
+voordat het als geleerd wordt gezien?
+
+
+ Oefen samenstelling
+
+
+ Taal
Systeemtaal
@@ -162,91 +174,79 @@
Nederlands
-
- Evalueer vertalingen zelf tijdens het oefenen
+
+ Woordenlijst
-
- Tekst tussen haakjes als optioneel beschouwen
+
+ Kolombreedtes automatisch aanpassen
-
- Resultaten tonen na oefenen
+
+ Map voor resultaatbestanden
-
- Knop slechts eenmaal indrukken na vertalen
+
+ Bladeren
-
- foute lidwoorden gebruikt zijn
+
+ Map voor woordenboeken
-
- slechts een van de twee synoniemen goed is
+
+ Bladeren
-
- fouten met leestekens gemaakt zijn
+
+ Updates
-
- fouten met speciale tekens gemaakt zijn
+
+ Internetdiensten deactiveren (niet aanbevolen)
-
- fouten in witruimte gemaakt zijn
+
+ Opslaan
+
+
+ Wijzigingen automatisch opslaan in woordenboek
Evaluatie
-
- Taal
-
-
- Als "Gedeeltelijk goed" markeren als
+
+ Tekst tussen haakjes als optioneel beschouwen
-
- Opslaan
+
+ Evalueer vertalingen zelf tijdens het oefenen
-
- Startscherm
+
+ Resultaten tonen na oefenen
-
- Updates
+
+ User interface
User interface
-
- Map voor woordenboeken
-
-
- Map voor resultaatbestanden
-
-
- Woordenlijst
-
-
- Taal instellen
+
+ Akoestische feedback inschakelen
-
- Welk percentage van ongeoefende woorden
-wil je hebben?
+
+ Knop slechts eenmaal indrukken na vertalen
-
- Welk percentage van fout en goed beantwoorde
-woorden wil je hebben?
+
+ Als "Gedeeltelijk goed" markeren als
-
- Hoe vaak moet een woord goed vertaald worden
-voordat het als geleerd wordt gezien?
+
+ fouten in witruimte gemaakt zijn
-
- Leeg scherm
+
+ slechts een van de twee synoniemen goed is
-
- Laatst geopende woordenboek
+
+ foute lidwoorden gebruikt zijn
-
- Algemeen
+
+ fouten met leestekens gemaakt zijn
-
- Oefen instellingen
+
+ fouten met speciale tekens gemaakt zijn
-
- Oefen samenstelling
+
+ Instellingen
\ No newline at end of file
diff --git a/src/Vocup.WinForms/Forms/SettingsDialog.resx b/src/Vocup.WinForms/Forms/SettingsDialog.resx
index e1b0e00..c28f945 100644
--- a/src/Vocup.WinForms/Forms/SettingsDialog.resx
+++ b/src/Vocup.WinForms/Forms/SettingsDialog.resx
@@ -1,17 +1,17 @@
-
@@ -117,13 +117,13 @@
System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
+
Bottom, Right
- 151, 434
+ 151, 454
75, 23
@@ -151,7 +151,7 @@
Bottom, Right
- 232, 434
+ 232, 454
75, 23
@@ -174,6 +174,18 @@
1
+
+ 197, 36
+
+
+ 75, 23
+
+
+ 2
+
+
+ Reset
+
BtnResetStartScreen
@@ -186,6 +198,21 @@
0
+
+ True
+
+
+ 6, 42
+
+
+ 93, 17
+
+
+ 1
+
+
+ Empty window
+
RbEmptyStart
@@ -198,6 +225,21 @@
1
+
+ True
+
+
+ 6, 19
+
+
+ 142, 17
+
+
+ 0
+
+
+ Recent vocabulary book
+
RbRecentFile
@@ -234,48 +276,6 @@
6
-
- 197, 36
-
-
- 75, 23
-
-
- 2
-
-
- Reset
-
-
- True
-
-
- 6, 42
-
-
- 93, 17
-
-
- 1
-
-
- Empty window
-
-
- True
-
-
- 6, 19
-
-
- 142, 17
-
-
- 0
-
-
- Recent vocabulary book
-
67, 129
@@ -318,116 +318,137 @@
8
-
- GroupLanguage
+
+ System
-
- System.Windows.Forms.GroupBox, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+ Light
-
- TabGeneral
+
+ Dark
-
- 0
+
+ 150, 19
-
- GroupVocabularyList
+
+ 121, 21
-
- System.Windows.Forms.GroupBox, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+ 3
-
- TabGeneral
+
+ CbColorTheme
-
- 1
+
+ System.Windows.Forms.ComboBox, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
- GroupVhrPath
+
+ GroupUserInterface
-
- System.Windows.Forms.GroupBox, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+ 0
-
- TabGeneral
+
+ True
-
+
+ NoControl
+
+
+ 6, 22
+
+
+ 63, 13
+
+
2
-
- GroupVhfPath
+
+ Color theme
-
- System.Windows.Forms.GroupBox, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+ LbColorTheme
-
- TabGeneral
+
+ System.Windows.Forms.Label, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
- 3
+
+ GroupUserInterface
-
- GroupUpdate
+
+ 1
-
- System.Windows.Forms.GroupBox, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+ True
-
- TabGeneral
+
+ 6, 49
-
- 4
+
+ 55, 13
-
- GroupSave
+
+ 1
-
- System.Windows.Forms.GroupBox, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+ Language
-
- TabGeneral
+
+ LbLanguage
-
- 5
+
+ System.Windows.Forms.Label, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
- 4, 22
+
+ GroupUserInterface
-
- 3, 3, 3, 3
+
+ 2
-
- 289, 397
+
+ System language
-
- 0
+
+ English
-
- General
+
+ German
-
- TabGeneral
+
+ Dutch
-
- System.Windows.Forms.TabPage, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+ 150, 46
-
- TabControlMain
+
+ 121, 21
-
+
0
-
- GroupEvaluation
+
+ CbLanguage
-
- System.Windows.Forms.GroupBox, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+ System.Windows.Forms.ComboBox, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
- TabPractice
+
+ GroupUserInterface
-
- 0
+
+ 3
+
+
+ 6, 337
+
+
+ 277, 74
+
+
+ 6
+
+
+ User interface
GroupUserInterface
@@ -436,1135 +457,1013 @@
System.Windows.Forms.GroupBox, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
- TabPractice
+ TabGeneral
- 1
+ 0
-
- GroupNearlyCorrect
+
+ True
-
- System.Windows.Forms.GroupBox, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+ NoControl
-
- TabPractice
+
+ 6, 19
-
- 2
+
+ 160, 17
-
- 4, 22
+
+ 1
-
- 3, 3, 3, 3
+
+ Automatically resize columns
-
- 289, 397
+
+ CbColumnResize
-
- 2
-
-
- Practice settings
+
+ System.Windows.Forms.CheckBox, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
- TabPractice
+
+ GroupVocabularyList
-
- System.Windows.Forms.TabPage, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+ 0
-
- TabControlMain
+
+ 6, 181
-
- 1
+
+ 277, 42
-
- 8, 310
+
+ 3
-
- 276, 23
+
+ Vocabulary list
-
- 2
+
+ GroupVocabularyList
-
- Reset settings
+
+ System.Windows.Forms.GroupBox, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
- BtnResetPracticeSelect
+
+ TabGeneral
-
- System.Windows.Forms.Button, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+ 1
-
- TabPracticeSelect
+
+ NoControl
-
- 0
+
+ 189, 17
-
- True
+
+ 84, 23
-
- 38, 142
+
+ 1
-
- Yes
+
+ Browse
-
- 15, 13
+
+ BtnVhrPath
-
- 5
+
+ System.Windows.Forms.Button, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
- %
+
+ GroupVhrPath
-
- LbWronglyPracticed
+
+ 0
-
- System.Windows.Forms.Label, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+ 6, 19
-
- GroupSelectionMix
+
+ 178, 20
-
+
0
-
- True
-
-
- 175, 142
+
+ TbVhrPath
-
- 15, 13
+
+ System.Windows.Forms.TextBox, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
- 6
+
+ GroupVhrPath
-
- %
+
+ 1
-
- LbCorrectlyPracticed
+
+ 6, 284
-
- System.Windows.Forms.Label, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+ 277, 45
-
- GroupSelectionMix
+
+ 5
-
- 1
+
+ Folder for practice results
-
- True
+
+ GroupVhrPath
-
- 175, 60
+
+ System.Windows.Forms.GroupBox, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
- 15, 13
+
+ TabGeneral
-
+
2
-
- %
-
-
- LbUnpracticed
+
+ 189, 17
-
- System.Windows.Forms.Label, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+ 84, 23
-
- GroupSelectionMix
+
+ 1
-
- 2
+
+ Browse
-
- True
+
+ BtnVhfPath
-
- 6, 16
+
+ System.Windows.Forms.Button, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
- 197, 26
+
+ GroupVhfPath
-
+
0
-
- Which percentage of unpracticed words
- do you want to have?
-
-
- LbPercentageUnpracticed
-
-
- System.Windows.Forms.Label, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- GroupSelectionMix
+
+ 6, 19
-
- 3
+
+ 178, 20
-
- 6, 139
+
+ 0
-
- 16, 16
+
+ TbVhfPath
-
- Zoom
+
+ System.Windows.Forms.TextBox, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
- 21
+
+ GroupVhfPath
-
- pictureBox2
+
+ 1
-
- System.Windows.Forms.PictureBox, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+ 6, 231
-
- GroupSelectionMix
+
+ 277, 45
-
+
4
-
- 224, 57
-
-
- 16, 16
-
-
- Zoom
-
-
- 22
-
-
- pictureBox1
-
-
- System.Windows.Forms.PictureBox, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- GroupSelectionMix
-
-
- 5
-
-
- 224, 139
-
-
- 16, 16
-
-
- Zoom
-
-
- 23
+
+ Folder for vocabulary books
-
- pictureBox3
+
+ GroupVhfPath
-
- System.Windows.Forms.PictureBox, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+ System.Windows.Forms.GroupBox, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
- GroupSelectionMix
+
+ TabGeneral
-
- 6
+
+ 3
-
+
True
-
- 6, 95
+
+ 6, 19
-
- 257, 26
+
+ 236, 17
-
- 3
+
+ 0
-
- Which percentage of wronlgy and correctly practiced
- words do you want to have?
+
+ Disable Internet services (not recommended)
-
- LbPercentageWrongCorrect
+
+ CbDisableInternetServices
-
- System.Windows.Forms.Label, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+ System.Windows.Forms.CheckBox, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
- GroupSelectionMix
+
+ GroupUpdate
-
- 7
+
+ 0
-
- 8, 120
+
+ 6, 131
-
- 276, 177
+
+ 277, 42
-
- 1
+
+ 2
-
- GroupSelectionMix
+
+ Updates
-
+
+ GroupUpdate
+
+
System.Windows.Forms.GroupBox, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
- TabPracticeSelect
+
+ TabGeneral
-
- 1
+
+ 4
-
+
True
-
- 6, 16
+
+ 6, 19
-
- 242, 26
+
+ 274, 17
-
+
0
-
- How often needs a word to be translated correctly
- to be marked as learnt?
-
-
- LbPracticeCount
-
-
- System.Windows.Forms.Label, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- GroupRepetitions
-
-
- 0
+
+ Automatically save changes in your vocabulary book
-
- LbTrb6
+
+ CbAutoSave
-
- System.Windows.Forms.Label, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+ System.Windows.Forms.CheckBox, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
- PnlPracticeCount
+
+ GroupSave
-
+
0
-
- LbTrb2
-
-
- System.Windows.Forms.Label, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+ 6, 81
-
- PnlPracticeCount
+
+ 277, 42
-
+
1
-
- LbTrb5
-
-
- System.Windows.Forms.Label, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- PnlPracticeCount
-
-
- 2
-
-
- LbTrb3
-
-
- System.Windows.Forms.Label, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- PnlPracticeCount
-
-
- 3
-
-
- LbTrb4
-
-
- System.Windows.Forms.Label, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- PnlPracticeCount
-
-
- 4
+
+ Save
-
- TrbRepetitions
+
+ GroupSave
-
- System.Windows.Forms.TrackBar, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+ System.Windows.Forms.GroupBox, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
- PnlPracticeCount
+
+ TabGeneral
-
+
5
-
- 47, 45
-
-
- 178, 54
-
-
- 1
-
-
- PnlPracticeCount
-
-
- System.Windows.Forms.Panel, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- GroupRepetitions
-
-
- 1
+
+ 4, 22
-
- 8, 8
+
+
+ 3, 3, 3, 3
-
- 276, 103
+
+ 289, 417
-
+
0
-
- GroupRepetitions
-
-
- System.Windows.Forms.GroupBox, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- TabPracticeSelect
-
-
- 2
-
-
- 4, 22
-
-
- 3, 3, 3, 3
+
+ General
-
- 289, 397
+
+ TabGeneral
-
- 1
+
+ System.Windows.Forms.TabPage, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
- Practice composition
+
+ TabControlMain
-
- TabPracticeSelect
+
+ 0
-
- System.Windows.Forms.TabPage, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+ True
-
- TabControlMain
+
+ NoControl
-
- 2
+
+ 6, 65
-
- 10, 5
+
+ 235, 17
-
- 297, 423
+
+ 2
-
- 0
+
+ Treat expressions in parantheses as optional
-
- TabControlMain
+
+ CbOptionalExpressions
-
- System.Windows.Forms.TabControl, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+ System.Windows.Forms.CheckBox, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
- $this
+
+ GroupEvaluation
-
+
0
-
- LbLanguage
+
+ True
-
- System.Windows.Forms.Label, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+ NoControl
-
- GroupLanguage
+
+ 6, 19
-
- 0
+
+ 222, 17
-
- CbLanguage
+
+ 0
-
- System.Windows.Forms.ComboBox, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+ Self-evaluate translations when practicing
-
- GroupLanguage
+
+ CbManualCheck
-
- 1
+
+ System.Windows.Forms.CheckBox, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
- 6, 337
+
+ GroupEvaluation
-
- 277, 45
+
+ 1
-
- 6
+
+ True
-
- Language
+
+ NoControl
-
- True
+
+ 6, 42
-
- 6, 22
+
+ 159, 17
-
- 125, 13
+
+ 0
-
- 1
+
+ Show results after practicing
-
- Set user interface culture
+
+ CbShowPracticeResult
-
- System language
+
+ System.Windows.Forms.CheckBox, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
- English
+
+ GroupEvaluation
-
- German
+
+ 2
-
- Dutch
+
+ 6, 8
-
- 150, 19
+
+ 277, 88
-
- 121, 21
+
+ 5
-
- 0
+
+ Evaluation
-
- CbColumnResize
+
+ GroupEvaluation
-
- System.Windows.Forms.CheckBox, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+ System.Windows.Forms.GroupBox, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
- GroupVocabularyList
+
+ TabPractice
-
+
0
-
- 6, 181
-
-
- 277, 42
+
+ True
-
- 3
+
+ 6, 19
-
- Vocabulary list
+
+ 150, 17
-
- True
+
+ 0
-
- NoControl
+
+ Enable acoustic feedback
-
- 6, 19
+
+ CbAcousticFeedback
-
- 160, 17
+
+ System.Windows.Forms.CheckBox, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
- 1
+
+ GroupPracticeUserInterface
-
- Automatically resize columns
+
+ 0
-
- BtnVhrPath
+
+ True
-
- System.Windows.Forms.Button, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+ 6, 42
-
- GroupVhrPath
+
+ 209, 17
-
+
0
-
- TbVhrPath
+
+ Press button only once after transalting
-
- System.Windows.Forms.TextBox, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+ CbSingleContinueButton
-
- GroupVhrPath
+
+ System.Windows.Forms.CheckBox, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
+
+ GroupPracticeUserInterface
+
+
1
-
- 6, 284
+
+ 6, 251
-
- 277, 45
+
+ 277, 64
-
- 5
+
+ 3
-
- Folder for practice results
+
+ User interface
-
- NoControl
+
+ GroupPracticeUserInterface
-
- 189, 17
+
+ System.Windows.Forms.GroupBox, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
- 84, 23
+
+ TabPractice
-
+
1
-
- Browse
-
-
- 6, 19
+
+ True
-
- 178, 20
+
+ NoControl
-
- 0
+
+ 6, 19
-
- BtnVhfPath
+
+ 150, 17
-
- System.Windows.Forms.Button, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+ 5
-
- GroupVhfPath
+
+ whitespaces do not match
-
- 0
+
+ CbTolerateWhiteSpace
-
- TbVhfPath
+
+ System.Windows.Forms.CheckBox, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
- System.Windows.Forms.TextBox, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+ GroupNearlyCorrect
-
- GroupVhfPath
+
+ 0
-
- 1
+
+