Compare commits
3 Commits
2.5.5
...
feature/al
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
c251f568a9 | ||
|
|
8c2dd29f39 | ||
|
|
360f42868d |
@@ -1,4 +1,4 @@
|
||||
# Localization of ZRCola
|
||||
# Localization of ZRCola
|
||||
|
||||
In order to get ZRCola experience in your language the following resources should be translated:
|
||||
|
||||
|
||||
Submodule MSI/MSIBuild updated: 05edc2b598...320f7e9ee5
Submodule MSI/MSICA updated: f98cfef1e7...7ca8b9e7c9
Binary file not shown.
@@ -1,5 +1,21 @@
|
||||
# SPDX-License-Identifier: GPL-3.0-or-later
|
||||
# Copyright © 1991-2021 Amebis
|
||||
#
|
||||
# Copyright 1991-2018 Amebis
|
||||
#
|
||||
# This file is part of ZRCola.
|
||||
#
|
||||
# ZRCola is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation, either version 3 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# ZRCola is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with ZRCola. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
!INCLUDE "..\..\include\MSIBuildCfg.mak"
|
||||
!INCLUDE "..\MSIBuild\Makefile"
|
||||
|
||||
@@ -1,5 +1,3 @@
|
||||
# Translators:
|
||||
# Simon Rozman <simon@rozman.si>, 2018
|
||||
#
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
@@ -7,7 +5,7 @@ msgstr ""
|
||||
"Project-Id-Version: ZRCola MSI\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2018-09-19 08:59+0200\n"
|
||||
"PO-Revision-Date: 2018-09-19 07:19+0000\n"
|
||||
"PO-Revision-Date: \n"
|
||||
"Last-Translator: Simon Rozman <simon@rozman.si>, 2018\n"
|
||||
"Language-Team: German (Germany) (https://www.transifex.com/amebis/teams/91592/de_DE/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
|
||||
@@ -1,5 +1,3 @@
|
||||
# Translators:
|
||||
# Simon Rozman <simon@rozman.si>, 2018
|
||||
#
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
@@ -7,7 +5,7 @@ msgstr ""
|
||||
"Project-Id-Version: ZRCola MSI\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2018-09-19 08:59+0200\n"
|
||||
"PO-Revision-Date: 2018-09-19 07:19+0000\n"
|
||||
"PO-Revision-Date: \n"
|
||||
"Last-Translator: Simon Rozman <simon@rozman.si>, 2018\n"
|
||||
"Language-Team: Russian (Russia) (https://www.transifex.com/amebis/teams/91592/ru_RU/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
|
||||
@@ -1,5 +1,3 @@
|
||||
# Translators:
|
||||
# Simon Rozman <simon@rozman.si>, 2018
|
||||
#
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
@@ -7,7 +5,7 @@ msgstr ""
|
||||
"Project-Id-Version: ZRCola MSI\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2018-09-19 08:59+0200\n"
|
||||
"PO-Revision-Date: 2018-09-19 07:19+0000\n"
|
||||
"PO-Revision-Date: \n"
|
||||
"Last-Translator: Simon Rozman <simon@rozman.si>, 2018\n"
|
||||
"Language-Team: Slovenian (Slovenia) (https://www.transifex.com/amebis/teams/91592/sl_SI/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
|
||||
BIN
MakefileLang.mak
BIN
MakefileLang.mak
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
MakefilePlat.mak
BIN
MakefilePlat.mak
Binary file not shown.
Binary file not shown.
14
README.md
14
README.md
@@ -1,4 +1,4 @@
|
||||
# ZRCola
|
||||
# ZRCola
|
||||
|
||||
A Microsoft Windows application for composing texts using a wide range of Slavic (and general) letters from or beyond Unicode.
|
||||
|
||||
@@ -6,7 +6,7 @@ A Microsoft Windows application for composing texts using a wide range of Slavic
|
||||
http://zrcola.zrc-sazu.si/en/
|
||||
|
||||
## Binaries for Download
|
||||
https://prenos.amebis.si/ZRCola/
|
||||
https://www.amebis.si/prenos/ZRCola/
|
||||
|
||||
## Building
|
||||
|
||||
@@ -20,7 +20,7 @@ https://prenos.amebis.si/ZRCola/
|
||||
### wxWidgets
|
||||
ZRCola is using wxWidgets static libraries. You have to compile static libraries yourself.
|
||||
|
||||
#### Compiling wxWidgets Win32 static libraries
|
||||
#### Compiling wxWidgets x86 static libraries
|
||||
1. Start _x86 Native Tools Command Prompt for VS 2017_
|
||||
2. Change working folder to `build\msw`
|
||||
3. Run: `nmake /f makefile.vc /ls RUNTIME_LIBS=static SHARED=0 COMPILER_VERSION=141`
|
||||
@@ -33,15 +33,15 @@ ZRCola is using wxWidgets static libraries. You have to compile static libraries
|
||||
4. Run: `nmake /f makefile.vc /ls RUNTIME_LIBS=static SHARED=0 COMPILER_VERSION=141 TARGET_CPU=X64 BUILD=release`
|
||||
|
||||
#### Specifying wxWidgets path
|
||||
ZRCola compilation references wxWidgets libraries using `WXWIN` environment variable. Please set it to wxWidgets folder (e.g. `C:\SDK\wxWidgets`).
|
||||
ZRCola compilation references wxWidgets libraries using `WXWIN` environment variable. Please set it to wxWidgets folder (i.e. `C:\SDK\wxWidgets`).
|
||||
|
||||
### Digital Signing of Build Outputs
|
||||
In order to have the build process digitally sign output files, one should provide the following:
|
||||
|
||||
1. A signing certificate installed in the current user's certificate store.
|
||||
2. The following variables in the environment:
|
||||
- `ManifestCertificateThumbprint` - set the value to certificate's SHA1 thumbprint (hexadecimal, without spaces, e.g. `f61b973226c502a732d24f41aa85e192b009e7c0`).
|
||||
- `ManifestTimestampRFC3161Url` - set the value to URL used to perform RFC3161 timestamp signature (e.g. `http://time.certum.pl`). In order to perform timestamp signing successfully, the computer running the build should be online and able to access this URL.
|
||||
- `ManifestCertificateThumbprint` - set the value to certificate's SHA1 thumbprint (hexadecimal, without spaces, i.e. `bc0d8da45f9eeefcbe4e334e1fc262804df88d7e`).
|
||||
- `ManifestTimestampUrl` - set the value to URL used to perform timestamp signature (i.e. `http://timestamp.verisign.com/scripts/timstamp.dll`). In order to perform timestamp signing successfully, the computer running the build should be online and able to access this URL.
|
||||
|
||||
Please note that only Release builds are configured for timestamp signing. Debug configurations do not attempt to timestamp sign the resulting DLL and EXE files in order to speed up the building process and enable offline building.
|
||||
|
||||
@@ -54,7 +54,7 @@ Use Microsoft NMAKE to build the project. The resulting files can be found in ou
|
||||
- `nmake Register` Build a debug version of project, install fonts (reboot required), and Start Menu shortcuts. For development purposes only!
|
||||
- `nmake Unregister` Remove Start Menu shortcuts, and fonts. For development purposes only!
|
||||
|
||||
The `/ls` flag can be appended to the commands above to reduce NMAKE's verbosity. You can combine multiple targets (e.g. nmake Unregister Clean). Please, see NMAKE reference for further reading.
|
||||
The `/ls` flag can be appended to the commands above to reduce NMAKE's verbosity. You can combine multiple targets (i.e. nmake Unregister Clean). Please, see NMAKE reference for further reading.
|
||||
|
||||
## Translating ZRCola
|
||||
Instructions how to translate ZRCola to your language can be found [here](LOCALIZATION.md).
|
||||
|
||||
2
Updater
2
Updater
Submodule Updater updated: 0ba186c984...6fbcede83b
70
ZRCola.sln
70
ZRCola.sln
@@ -1,13 +1,13 @@
|
||||
|
||||
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||
# Visual Studio Version 16
|
||||
VisualStudioVersion = 16.0.29728.190
|
||||
# Visual Studio 15
|
||||
VisualStudioVersion = 15.0.28010.2016
|
||||
MinimumVisualStudioVersion = 10.0.40219.1
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ZRCola", "ZRCola\ZRCola.vcxproj", "{CD9E4170-92DD-440E-980C-D15F62032249}"
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Libraries", "Libraries", "{6D85AD6A-69D6-40EB-BF0C-7495479DDCE5}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "wxExtend", "lib\wxExtend\build\wxExtendLib.vcxproj", "{D3E29951-D9F5-486D-A167-20AE8E90B1FA}"
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "wxExtend", "lib\wxExtend\build\wxExtendLib-15.0.vcxproj", "{D3E29951-D9F5-486D-A167-20AE8E90B1FA}"
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{CFEBC17E-C840-4507-BDE6-1EF5B52DDCC5}"
|
||||
ProjectSection(SolutionItems) = preProject
|
||||
@@ -18,106 +18,106 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libZRCola", "lib\libZRCola\
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libZRColaUI", "lib\libZRColaUI\build\libZRColaUI.vcxproj", "{C0A84BD2-3870-4CD6-B281-0AB322E3C579}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "stdex", "lib\stdex\build\stdex.vcxproj", "{518777CC-0A59-4415-A12A-82751ED75343}"
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "stdex", "lib\stdex\build\stdex-15.0.vcxproj", "{518777CC-0A59-4415-A12A-82751ED75343}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Updater", "Updater\Updater\build\Updater.vcxproj", "{990D8CF9-4457-4DC0-AA18-4968EF434741}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "WinStd", "lib\WinStd\build\WinStd.vcxproj", "{47399D91-7EB9-41DE-B521-514BA5DB0C43}"
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "WinStd", "lib\WinStd\build\WinStd-15.0.vcxproj", "{47399D91-7EB9-41DE-B521-514BA5DB0C43}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|ARM64 = Debug|ARM64
|
||||
Debug|Win32 = Debug|Win32
|
||||
Debug|x64 = Debug|x64
|
||||
Debug|x86 = Debug|x86
|
||||
Release|ARM64 = Release|ARM64
|
||||
Release|Win32 = Release|Win32
|
||||
Release|x64 = Release|x64
|
||||
Release|x86 = Release|x86
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
{CD9E4170-92DD-440E-980C-D15F62032249}.Debug|ARM64.ActiveCfg = Debug|ARM64
|
||||
{CD9E4170-92DD-440E-980C-D15F62032249}.Debug|ARM64.Build.0 = Debug|ARM64
|
||||
{CD9E4170-92DD-440E-980C-D15F62032249}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{CD9E4170-92DD-440E-980C-D15F62032249}.Debug|Win32.Build.0 = Debug|Win32
|
||||
{CD9E4170-92DD-440E-980C-D15F62032249}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{CD9E4170-92DD-440E-980C-D15F62032249}.Debug|x64.Build.0 = Debug|x64
|
||||
{CD9E4170-92DD-440E-980C-D15F62032249}.Debug|x86.ActiveCfg = Debug|Win32
|
||||
{CD9E4170-92DD-440E-980C-D15F62032249}.Debug|x86.Build.0 = Debug|Win32
|
||||
{CD9E4170-92DD-440E-980C-D15F62032249}.Release|ARM64.ActiveCfg = Release|ARM64
|
||||
{CD9E4170-92DD-440E-980C-D15F62032249}.Release|ARM64.Build.0 = Release|ARM64
|
||||
{CD9E4170-92DD-440E-980C-D15F62032249}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{CD9E4170-92DD-440E-980C-D15F62032249}.Release|Win32.Build.0 = Release|Win32
|
||||
{CD9E4170-92DD-440E-980C-D15F62032249}.Release|x64.ActiveCfg = Release|x64
|
||||
{CD9E4170-92DD-440E-980C-D15F62032249}.Release|x64.Build.0 = Release|x64
|
||||
{CD9E4170-92DD-440E-980C-D15F62032249}.Release|x86.ActiveCfg = Release|Win32
|
||||
{CD9E4170-92DD-440E-980C-D15F62032249}.Release|x86.Build.0 = Release|Win32
|
||||
{D3E29951-D9F5-486D-A167-20AE8E90B1FA}.Debug|ARM64.ActiveCfg = Debug|ARM64
|
||||
{D3E29951-D9F5-486D-A167-20AE8E90B1FA}.Debug|ARM64.Build.0 = Debug|ARM64
|
||||
{D3E29951-D9F5-486D-A167-20AE8E90B1FA}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{D3E29951-D9F5-486D-A167-20AE8E90B1FA}.Debug|Win32.Build.0 = Debug|Win32
|
||||
{D3E29951-D9F5-486D-A167-20AE8E90B1FA}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{D3E29951-D9F5-486D-A167-20AE8E90B1FA}.Debug|x64.Build.0 = Debug|x64
|
||||
{D3E29951-D9F5-486D-A167-20AE8E90B1FA}.Debug|x86.ActiveCfg = Debug|Win32
|
||||
{D3E29951-D9F5-486D-A167-20AE8E90B1FA}.Debug|x86.Build.0 = Debug|Win32
|
||||
{D3E29951-D9F5-486D-A167-20AE8E90B1FA}.Release|ARM64.ActiveCfg = Release|ARM64
|
||||
{D3E29951-D9F5-486D-A167-20AE8E90B1FA}.Release|ARM64.Build.0 = Release|ARM64
|
||||
{D3E29951-D9F5-486D-A167-20AE8E90B1FA}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{D3E29951-D9F5-486D-A167-20AE8E90B1FA}.Release|Win32.Build.0 = Release|Win32
|
||||
{D3E29951-D9F5-486D-A167-20AE8E90B1FA}.Release|x64.ActiveCfg = Release|x64
|
||||
{D3E29951-D9F5-486D-A167-20AE8E90B1FA}.Release|x64.Build.0 = Release|x64
|
||||
{D3E29951-D9F5-486D-A167-20AE8E90B1FA}.Release|x86.ActiveCfg = Release|Win32
|
||||
{D3E29951-D9F5-486D-A167-20AE8E90B1FA}.Release|x86.Build.0 = Release|Win32
|
||||
{3C61929E-7289-4101-8D0A-DA22D6E1AEA8}.Debug|ARM64.ActiveCfg = Debug|ARM64
|
||||
{3C61929E-7289-4101-8D0A-DA22D6E1AEA8}.Debug|ARM64.Build.0 = Debug|ARM64
|
||||
{3C61929E-7289-4101-8D0A-DA22D6E1AEA8}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{3C61929E-7289-4101-8D0A-DA22D6E1AEA8}.Debug|Win32.Build.0 = Debug|Win32
|
||||
{3C61929E-7289-4101-8D0A-DA22D6E1AEA8}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{3C61929E-7289-4101-8D0A-DA22D6E1AEA8}.Debug|x64.Build.0 = Debug|x64
|
||||
{3C61929E-7289-4101-8D0A-DA22D6E1AEA8}.Debug|x86.ActiveCfg = Debug|Win32
|
||||
{3C61929E-7289-4101-8D0A-DA22D6E1AEA8}.Debug|x86.Build.0 = Debug|Win32
|
||||
{3C61929E-7289-4101-8D0A-DA22D6E1AEA8}.Release|ARM64.ActiveCfg = Release|ARM64
|
||||
{3C61929E-7289-4101-8D0A-DA22D6E1AEA8}.Release|ARM64.Build.0 = Release|ARM64
|
||||
{3C61929E-7289-4101-8D0A-DA22D6E1AEA8}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{3C61929E-7289-4101-8D0A-DA22D6E1AEA8}.Release|Win32.Build.0 = Release|Win32
|
||||
{3C61929E-7289-4101-8D0A-DA22D6E1AEA8}.Release|x64.ActiveCfg = Release|x64
|
||||
{3C61929E-7289-4101-8D0A-DA22D6E1AEA8}.Release|x64.Build.0 = Release|x64
|
||||
{3C61929E-7289-4101-8D0A-DA22D6E1AEA8}.Release|x86.ActiveCfg = Release|Win32
|
||||
{3C61929E-7289-4101-8D0A-DA22D6E1AEA8}.Release|x86.Build.0 = Release|Win32
|
||||
{C0A84BD2-3870-4CD6-B281-0AB322E3C579}.Debug|ARM64.ActiveCfg = Debug|ARM64
|
||||
{C0A84BD2-3870-4CD6-B281-0AB322E3C579}.Debug|ARM64.Build.0 = Debug|ARM64
|
||||
{C0A84BD2-3870-4CD6-B281-0AB322E3C579}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{C0A84BD2-3870-4CD6-B281-0AB322E3C579}.Debug|Win32.Build.0 = Debug|Win32
|
||||
{C0A84BD2-3870-4CD6-B281-0AB322E3C579}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{C0A84BD2-3870-4CD6-B281-0AB322E3C579}.Debug|x64.Build.0 = Debug|x64
|
||||
{C0A84BD2-3870-4CD6-B281-0AB322E3C579}.Debug|x86.ActiveCfg = Debug|Win32
|
||||
{C0A84BD2-3870-4CD6-B281-0AB322E3C579}.Debug|x86.Build.0 = Debug|Win32
|
||||
{C0A84BD2-3870-4CD6-B281-0AB322E3C579}.Release|ARM64.ActiveCfg = Release|ARM64
|
||||
{C0A84BD2-3870-4CD6-B281-0AB322E3C579}.Release|ARM64.Build.0 = Release|ARM64
|
||||
{C0A84BD2-3870-4CD6-B281-0AB322E3C579}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{C0A84BD2-3870-4CD6-B281-0AB322E3C579}.Release|Win32.Build.0 = Release|Win32
|
||||
{C0A84BD2-3870-4CD6-B281-0AB322E3C579}.Release|x64.ActiveCfg = Release|x64
|
||||
{C0A84BD2-3870-4CD6-B281-0AB322E3C579}.Release|x64.Build.0 = Release|x64
|
||||
{C0A84BD2-3870-4CD6-B281-0AB322E3C579}.Release|x86.ActiveCfg = Release|Win32
|
||||
{C0A84BD2-3870-4CD6-B281-0AB322E3C579}.Release|x86.Build.0 = Release|Win32
|
||||
{518777CC-0A59-4415-A12A-82751ED75343}.Debug|ARM64.ActiveCfg = Debug|ARM64
|
||||
{518777CC-0A59-4415-A12A-82751ED75343}.Debug|ARM64.Build.0 = Debug|ARM64
|
||||
{518777CC-0A59-4415-A12A-82751ED75343}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{518777CC-0A59-4415-A12A-82751ED75343}.Debug|Win32.Build.0 = Debug|Win32
|
||||
{518777CC-0A59-4415-A12A-82751ED75343}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{518777CC-0A59-4415-A12A-82751ED75343}.Debug|x64.Build.0 = Debug|x64
|
||||
{518777CC-0A59-4415-A12A-82751ED75343}.Debug|x86.ActiveCfg = Debug|Win32
|
||||
{518777CC-0A59-4415-A12A-82751ED75343}.Debug|x86.Build.0 = Debug|Win32
|
||||
{518777CC-0A59-4415-A12A-82751ED75343}.Release|ARM64.ActiveCfg = Release|ARM64
|
||||
{518777CC-0A59-4415-A12A-82751ED75343}.Release|ARM64.Build.0 = Release|ARM64
|
||||
{518777CC-0A59-4415-A12A-82751ED75343}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{518777CC-0A59-4415-A12A-82751ED75343}.Release|Win32.Build.0 = Release|Win32
|
||||
{518777CC-0A59-4415-A12A-82751ED75343}.Release|x64.ActiveCfg = Release|x64
|
||||
{518777CC-0A59-4415-A12A-82751ED75343}.Release|x64.Build.0 = Release|x64
|
||||
{518777CC-0A59-4415-A12A-82751ED75343}.Release|x86.ActiveCfg = Release|Win32
|
||||
{518777CC-0A59-4415-A12A-82751ED75343}.Release|x86.Build.0 = Release|Win32
|
||||
{990D8CF9-4457-4DC0-AA18-4968EF434741}.Debug|ARM64.ActiveCfg = Debug|ARM64
|
||||
{990D8CF9-4457-4DC0-AA18-4968EF434741}.Debug|ARM64.Build.0 = Debug|ARM64
|
||||
{990D8CF9-4457-4DC0-AA18-4968EF434741}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{990D8CF9-4457-4DC0-AA18-4968EF434741}.Debug|Win32.Build.0 = Debug|Win32
|
||||
{990D8CF9-4457-4DC0-AA18-4968EF434741}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{990D8CF9-4457-4DC0-AA18-4968EF434741}.Debug|x64.Build.0 = Debug|x64
|
||||
{990D8CF9-4457-4DC0-AA18-4968EF434741}.Debug|x86.ActiveCfg = Debug|Win32
|
||||
{990D8CF9-4457-4DC0-AA18-4968EF434741}.Debug|x86.Build.0 = Debug|Win32
|
||||
{990D8CF9-4457-4DC0-AA18-4968EF434741}.Release|ARM64.ActiveCfg = Release|ARM64
|
||||
{990D8CF9-4457-4DC0-AA18-4968EF434741}.Release|ARM64.Build.0 = Release|ARM64
|
||||
{990D8CF9-4457-4DC0-AA18-4968EF434741}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{990D8CF9-4457-4DC0-AA18-4968EF434741}.Release|Win32.Build.0 = Release|Win32
|
||||
{990D8CF9-4457-4DC0-AA18-4968EF434741}.Release|x64.ActiveCfg = Release|x64
|
||||
{990D8CF9-4457-4DC0-AA18-4968EF434741}.Release|x64.Build.0 = Release|x64
|
||||
{990D8CF9-4457-4DC0-AA18-4968EF434741}.Release|x86.ActiveCfg = Release|Win32
|
||||
{990D8CF9-4457-4DC0-AA18-4968EF434741}.Release|x86.Build.0 = Release|Win32
|
||||
{47399D91-7EB9-41DE-B521-514BA5DB0C43}.Debug|ARM64.ActiveCfg = Debug|ARM64
|
||||
{47399D91-7EB9-41DE-B521-514BA5DB0C43}.Debug|ARM64.Build.0 = Debug|ARM64
|
||||
{47399D91-7EB9-41DE-B521-514BA5DB0C43}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{47399D91-7EB9-41DE-B521-514BA5DB0C43}.Debug|Win32.Build.0 = Debug|Win32
|
||||
{47399D91-7EB9-41DE-B521-514BA5DB0C43}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{47399D91-7EB9-41DE-B521-514BA5DB0C43}.Debug|x64.Build.0 = Debug|x64
|
||||
{47399D91-7EB9-41DE-B521-514BA5DB0C43}.Debug|x86.ActiveCfg = Debug|Win32
|
||||
{47399D91-7EB9-41DE-B521-514BA5DB0C43}.Debug|x86.Build.0 = Debug|Win32
|
||||
{47399D91-7EB9-41DE-B521-514BA5DB0C43}.Release|ARM64.ActiveCfg = Release|ARM64
|
||||
{47399D91-7EB9-41DE-B521-514BA5DB0C43}.Release|ARM64.Build.0 = Release|ARM64
|
||||
{47399D91-7EB9-41DE-B521-514BA5DB0C43}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{47399D91-7EB9-41DE-B521-514BA5DB0C43}.Release|Win32.Build.0 = Release|Win32
|
||||
{47399D91-7EB9-41DE-B521-514BA5DB0C43}.Release|x64.ActiveCfg = Release|x64
|
||||
{47399D91-7EB9-41DE-B521-514BA5DB0C43}.Release|x64.Build.0 = Release|x64
|
||||
{47399D91-7EB9-41DE-B521-514BA5DB0C43}.Release|x86.ActiveCfg = Release|Win32
|
||||
{47399D91-7EB9-41DE-B521-514BA5DB0C43}.Release|x86.Build.0 = Release|Win32
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
|
||||
Binary file not shown.
20
ZRCola/ZRCola.props
Normal file
20
ZRCola/ZRCola.props
Normal file
@@ -0,0 +1,20 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ImportGroup Label="PropertySheets" />
|
||||
<PropertyGroup Label="UserMacros" />
|
||||
<PropertyGroup>
|
||||
<OutDir>..\output\$(Platform).$(Configuration)\</OutDir>
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup>
|
||||
<ClCompile>
|
||||
<AdditionalIncludeDirectories>..\lib\wxExtend\include;..\Updater\Updater\include;..\lib\stdex\include;..\lib\WinStd\include;..\lib\libZRCola\include;..\lib\libZRColaUI\include</AdditionalIncludeDirectories>
|
||||
</ClCompile>
|
||||
<Manifest>
|
||||
<EnableDpiAwareness>true</EnableDpiAwareness>
|
||||
</Manifest>
|
||||
<ResourceCompile>
|
||||
<AdditionalIncludeDirectories>..\Updater\Updater\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
</ResourceCompile>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemGroup />
|
||||
</Project>
|
||||
BIN
ZRCola/ZRCola.rc
BIN
ZRCola/ZRCola.rc
Binary file not shown.
@@ -29,47 +29,98 @@
|
||||
<PropertyGroup Label="Globals">
|
||||
<ProjectGuid>{CD9E4170-92DD-440E-980C-D15F62032249}</ProjectGuid>
|
||||
<RootNamespace>ZRCola</RootNamespace>
|
||||
<WindowsTargetPlatformVersion>10.0.17134.0</WindowsTargetPlatformVersion>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||
<PropertyGroup Label="Configuration">
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Label="Configuration" Condition="'$(Configuration)'=='Debug'">
|
||||
<UseDebugLibraries>true</UseDebugLibraries>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
<PlatformToolset>v141</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Label="Configuration" Condition="'$(Configuration)'=='Release'">
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<UseDebugLibraries>true</UseDebugLibraries>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
<PlatformToolset>v141</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<UseDebugLibraries>true</UseDebugLibraries>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
<PlatformToolset>v141</PlatformToolset>
|
||||
<WindowsSDKDesktopARM64Support>true</WindowsSDKDesktopARM64Support>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<UseDebugLibraries>false</UseDebugLibraries>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
<PlatformToolset>v141</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Label="Configuration" Condition="'$(Platform)'=='ARM64'">
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<UseDebugLibraries>false</UseDebugLibraries>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
<PlatformToolset>v141</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<UseDebugLibraries>false</UseDebugLibraries>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
<PlatformToolset>v141</PlatformToolset>
|
||||
<WindowsSDKDesktopARM64Support>true</WindowsSDKDesktopARM64Support>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||
<ImportGroup Label="ExtensionSettings" />
|
||||
<ImportGroup Label="PropertySheets">
|
||||
<ImportGroup Label="ExtensionSettings">
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="..\include\$(Platform).props" />
|
||||
<Import Project="..\include\$(Configuration).props" />
|
||||
<Import Project="ZRCola.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="..\include\$(Platform).props" />
|
||||
<Import Project="..\include\$(Configuration).props" />
|
||||
<Import Project="ZRCola.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="..\include\$(Platform).props" />
|
||||
<Import Project="..\include\$(Configuration).props" />
|
||||
<Import Project="ZRCola.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="..\include\$(Platform).props" />
|
||||
<Import Project="..\include\$(Configuration).props" />
|
||||
<Import Project="ZRCola.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="..\include\$(Platform).props" />
|
||||
<Import Project="..\include\$(Configuration).props" />
|
||||
<Import Project="ZRCola.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="..\include\$(Platform).props" />
|
||||
<Import Project="..\include\$(Configuration).props" />
|
||||
<Import Project="ZRCola.props" />
|
||||
</ImportGroup>
|
||||
<PropertyGroup Label="UserMacros" />
|
||||
<PropertyGroup>
|
||||
<OutDir>..\output\$(Platform).$(Configuration)\</OutDir>
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup>
|
||||
<ClCompile>
|
||||
<AdditionalIncludeDirectories>..\lib\wxExtend\include;..\Updater\Updater\include;..\lib\stdex\include;..\lib\WinStd\include;..\lib\libZRCola\include;..\lib\libZRColaUI\include</AdditionalIncludeDirectories>
|
||||
</ClCompile>
|
||||
<Manifest>
|
||||
<EnableDpiAwareness>true</EnableDpiAwareness>
|
||||
</Manifest>
|
||||
<ResourceCompile>
|
||||
<AdditionalIncludeDirectories>..\Updater\Updater\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
</ResourceCompile>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="pch.cpp">
|
||||
<PrecompiledHeader>Create</PrecompiledHeader>
|
||||
<ClCompile Include="stdafx.cpp">
|
||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Create</PrecompiledHeader>
|
||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Create</PrecompiledHeader>
|
||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Create</PrecompiledHeader>
|
||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">Create</PrecompiledHeader>
|
||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Create</PrecompiledHeader>
|
||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">Create</PrecompiledHeader>
|
||||
</ClCompile>
|
||||
<ClCompile Include="zrcolaabout.cpp" />
|
||||
<ClCompile Include="zrcolaapp.cpp" />
|
||||
@@ -86,7 +137,7 @@
|
||||
<ClCompile Include="zrcolaupdater.cpp" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClInclude Include="pch.h" />
|
||||
<ClInclude Include="stdafx.h" />
|
||||
<ClInclude Include="zrcolaabout.h" />
|
||||
<ClInclude Include="zrcolaapp.h" />
|
||||
<ClInclude Include="zrcolachrcatpnl.h" />
|
||||
@@ -108,10 +159,10 @@
|
||||
<ProjectReference Include="..\lib\libZRCola\build\libZRCola.vcxproj">
|
||||
<Project>{3c61929e-7289-4101-8d0a-da22d6e1aea8}</Project>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="..\lib\WinStd\build\WinStd.vcxproj">
|
||||
<ProjectReference Include="..\lib\WinStd\build\WinStd-15.0.vcxproj">
|
||||
<Project>{47399d91-7eb9-41de-b521-514ba5db0c43}</Project>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="..\lib\wxExtend\build\wxExtendLib.vcxproj">
|
||||
<ProjectReference Include="..\lib\wxExtend\build\wxExtendLib-15.0.vcxproj">
|
||||
<Project>{D3E29951-D9F5-486D-A167-20AE8E90B1FA}</Project>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="..\Updater\Updater\build\Updater.vcxproj">
|
||||
|
||||
@@ -19,7 +19,7 @@
|
||||
</Filter>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="pch.cpp">
|
||||
<ClCompile Include="stdafx.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="zrcolaapp.cpp">
|
||||
@@ -63,7 +63,7 @@
|
||||
</ClCompile>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClInclude Include="pch.h">
|
||||
<ClInclude Include="stdafx.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="zrcolaapp.h">
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -1,6 +0,0 @@
|
||||
/*
|
||||
SPDX-License-Identifier: GPL-3.0-or-later
|
||||
Copyright © 2015-2021 Amebis
|
||||
*/
|
||||
|
||||
#include "pch.h"
|
||||
File diff suppressed because it is too large
Load Diff
Binary file not shown.
|
Before Width: | Height: | Size: 51 KiB |
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large
Load Diff
@@ -1,11 +1,12 @@
|
||||
///////////////////////////////////////////////////////////////////////////
|
||||
// C++ code generated with wxFormBuilder (version Oct 26 2018)
|
||||
// C++ code generated with wxFormBuilder (version Aug 8 2018)
|
||||
// http://www.wxformbuilder.org/
|
||||
//
|
||||
// PLEASE DO *NOT* EDIT THIS FILE!
|
||||
///////////////////////////////////////////////////////////////////////////
|
||||
|
||||
#pragma once
|
||||
#ifndef __ZRCOLAGUI_H__
|
||||
#define __ZRCOLAGUI_H__
|
||||
|
||||
#include <wx/artprov.h>
|
||||
#include <wx/xrc/xmlres.h>
|
||||
@@ -54,10 +55,10 @@ class wxZRColaComposerPanel;
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
/// Class wxZRColaFrameBase
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
class wxZRColaFrameBase : public wxFrame
|
||||
class wxZRColaFrameBase : public wxFrame
|
||||
{
|
||||
private:
|
||||
|
||||
|
||||
protected:
|
||||
enum
|
||||
{
|
||||
@@ -67,10 +68,7 @@ class wxZRColaFrameBase : public wxFrame
|
||||
wxID_SEND_SOURCE,
|
||||
wxID_COPY_SOURCE_AND_RETURN,
|
||||
wxID_SEND_ABORT,
|
||||
wxID_COMPOSITION_NONE,
|
||||
wxID_COMPOSITION_ZRCOLA,
|
||||
wxID_COMPOSITION_UNICODE,
|
||||
wxID_WARN_PUA,
|
||||
wxID_COMPOSITION_MENU,
|
||||
wxID_SETTINGS,
|
||||
wxID_TOOLBAR_EDIT,
|
||||
wxID_TOOLBAR_TRANSLATE,
|
||||
@@ -78,64 +76,60 @@ class wxZRColaFrameBase : public wxFrame
|
||||
wxID_HELP_INSTRUCTIONS,
|
||||
wxID_HELP_SHORTCUTS,
|
||||
wxID_HELP_REQCHAR,
|
||||
wxID_HELP_UPDATE
|
||||
wxID_HELP_UPDATE,
|
||||
wxID_COMPOSITION_TOOLBAR
|
||||
};
|
||||
|
||||
|
||||
wxMenuBar* m_menubar;
|
||||
wxMenu* m_menuProgram;
|
||||
wxMenu* m_menuEdit;
|
||||
wxMenuItem* m_menuItemCompositionNone;
|
||||
wxMenuItem* m_menuItemCompositionZRCola;
|
||||
wxMenuItem* m_menuItemCompositionUnicode;
|
||||
wxMenuItem* m_menuItemComposition;
|
||||
wxMenu* m_menuTranslationSeq;
|
||||
wxMenuItem* m_menuItemWarnPUA;
|
||||
wxMenu* m_menuView;
|
||||
wxMenu* m_menuHelp;
|
||||
wxAuiToolBar* m_toolbarEdit;
|
||||
wxAuiToolBarItem* m_toolEditCut;
|
||||
wxAuiToolBarItem* m_toolEditCopy;
|
||||
wxAuiToolBarItem* m_toolEditPaste;
|
||||
wxAuiToolBarItem* m_toolEditCut;
|
||||
wxAuiToolBarItem* m_toolEditCopy;
|
||||
wxAuiToolBarItem* m_toolEditPaste;
|
||||
wxAuiToolBar* m_toolbarTranslate;
|
||||
wxAuiToolBarItem* m_toolCharSelect;
|
||||
wxAuiToolBarItem* m_toolSendDestination;
|
||||
wxAuiToolBarItem* m_toolSendSource;
|
||||
wxChoice* m_toolComposition;
|
||||
wxAuiToolBarItem* m_toolCharSelect;
|
||||
wxAuiToolBarItem* m_toolSendDestination;
|
||||
wxAuiToolBarItem* m_toolSendSource;
|
||||
wxAuiToolBarItem* m_toolComposition;
|
||||
wxChoice* m_toolTranslationSeq;
|
||||
wxAuiToolBarItem* m_toolWarnPUA;
|
||||
wxZRColaCharacterCatalogPanel* m_panelChrCat;
|
||||
wxStatusBar* m_statusBar;
|
||||
|
||||
|
||||
// Virtual event handlers, overide them in your derived class
|
||||
virtual void OnClose( wxCloseEvent& event ) { event.Skip(); }
|
||||
virtual void OnIconize( wxIconizeEvent& event ) { event.Skip(); }
|
||||
virtual void OnIdle( wxIdleEvent& event ) { event.Skip(); }
|
||||
virtual void OnCompositionChoice( wxCommandEvent& event ) { event.Skip(); }
|
||||
virtual void OnTranslationSeqChoice( wxCommandEvent& event ) { event.Skip(); }
|
||||
|
||||
|
||||
|
||||
|
||||
public:
|
||||
wxZRColaComposerPanel* m_panel;
|
||||
|
||||
|
||||
wxZRColaFrameBase( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("ZRCola"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize( 600,400 ), long style = wxDEFAULT_FRAME_STYLE|wxTAB_TRAVERSAL, const wxString& name = wxT("ZRCola") );
|
||||
wxAuiManager m_mgr;
|
||||
|
||||
|
||||
~wxZRColaFrameBase();
|
||||
|
||||
|
||||
};
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
/// Class wxZRColaComposerPanelBase
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
class wxZRColaComposerPanelBase : public wxPanel
|
||||
class wxZRColaComposerPanelBase : public wxPanel
|
||||
{
|
||||
private:
|
||||
|
||||
|
||||
protected:
|
||||
enum
|
||||
{
|
||||
wxID_TIMER_SAVE = 1000
|
||||
};
|
||||
|
||||
|
||||
wxSplitterWindow* m_splitterSource;
|
||||
wxPanel* m_panelSourceEdit;
|
||||
wxPanel* m_panelSourceHex;
|
||||
@@ -145,7 +139,7 @@ class wxZRColaComposerPanelBase : public wxPanel
|
||||
wxPanel* m_panelDestinationHex;
|
||||
wxTextCtrl* m_destinationHex;
|
||||
wxTimer m_timerSave;
|
||||
|
||||
|
||||
// Virtual event handlers, overide them in your derived class
|
||||
virtual void OnSourcePaint( wxPaintEvent& event ) { event.Skip(); }
|
||||
virtual void OnSourceText( wxCommandEvent& event ) { event.Skip(); }
|
||||
@@ -154,62 +148,62 @@ class wxZRColaComposerPanelBase : public wxPanel
|
||||
virtual void OnDestinationText( wxCommandEvent& event ) { event.Skip(); }
|
||||
virtual void OnDestinationHexPaint( wxPaintEvent& event ) { event.Skip(); }
|
||||
virtual void OnSaveTimer( wxTimerEvent& event ) { event.Skip(); }
|
||||
|
||||
|
||||
|
||||
|
||||
public:
|
||||
wxTextCtrl* m_source;
|
||||
wxTextCtrl* m_destination;
|
||||
|
||||
wxZRColaComposerPanelBase( wxWindow* parent, wxWindowID id = wxID_ANY, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize( -1,-1 ), long style = wxTAB_TRAVERSAL, const wxString& name = wxT("ZRColaComposerPanel") );
|
||||
|
||||
wxZRColaComposerPanelBase( wxWindow* parent, wxWindowID id = wxID_ANY, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize( -1,-1 ), long style = wxTAB_TRAVERSAL, const wxString& name = wxT("ZRColaComposerPanel") );
|
||||
~wxZRColaComposerPanelBase();
|
||||
|
||||
|
||||
void m_splitterSourceOnIdle( wxIdleEvent& )
|
||||
{
|
||||
m_splitterSource->SetSashPosition( -5 );
|
||||
m_splitterSource->Disconnect( wxEVT_IDLE, wxIdleEventHandler( wxZRColaComposerPanelBase::m_splitterSourceOnIdle ), NULL, this );
|
||||
}
|
||||
|
||||
|
||||
void m_splitterDestinationOnIdle( wxIdleEvent& )
|
||||
{
|
||||
m_splitterDestination->SetSashPosition( -5 );
|
||||
m_splitterDestination->Disconnect( wxEVT_IDLE, wxIdleEventHandler( wxZRColaComposerPanelBase::m_splitterDestinationOnIdle ), NULL, this );
|
||||
}
|
||||
|
||||
|
||||
};
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
/// Class wxZRColaCharacterCatalogPanelBase
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
class wxZRColaCharacterCatalogPanelBase : public wxPanel
|
||||
class wxZRColaCharacterCatalogPanelBase : public wxPanel
|
||||
{
|
||||
private:
|
||||
|
||||
|
||||
protected:
|
||||
wxChoice* m_choice;
|
||||
wxZRColaCharGrid* m_grid;
|
||||
wxCheckBox* m_show_all;
|
||||
|
||||
|
||||
// Virtual event handlers, overide them in your derived class
|
||||
virtual void OnChoice( wxCommandEvent& event ) { event.Skip(); }
|
||||
virtual void OnGridClick( wxGridEvent& event ) { event.Skip(); }
|
||||
virtual void OnGridKeyDown( wxKeyEvent& event ) { event.Skip(); }
|
||||
virtual void OnShowAll( wxCommandEvent& event ) { event.Skip(); }
|
||||
|
||||
|
||||
|
||||
|
||||
public:
|
||||
|
||||
wxZRColaCharacterCatalogPanelBase( wxWindow* parent, wxWindowID id = wxID_ANY, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize( -1,-1 ), long style = wxTAB_TRAVERSAL, const wxString& name = wxT("ZRColaCharacterCatalog") );
|
||||
|
||||
wxZRColaCharacterCatalogPanelBase( wxWindow* parent, wxWindowID id = wxID_ANY, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize( -1,-1 ), long style = wxTAB_TRAVERSAL, const wxString& name = wxT("ZRColaCharacterCatalog") );
|
||||
~wxZRColaCharacterCatalogPanelBase();
|
||||
|
||||
|
||||
};
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
/// Class wxZRColaCharSelectBase
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
class wxZRColaCharSelectBase : public wxDialog
|
||||
class wxZRColaCharSelectBase : public wxDialog
|
||||
{
|
||||
private:
|
||||
|
||||
|
||||
protected:
|
||||
wxSearchCtrl* m_search;
|
||||
wxHyperlinkCtrl* m_search_more;
|
||||
@@ -230,8 +224,10 @@ class wxZRColaCharSelectBase : public wxDialog
|
||||
wxHyperlinkCtrl* m_navigateBack;
|
||||
wxHyperlinkCtrl* m_navigateForward;
|
||||
wxZRColaCharGrid* m_gridRelated;
|
||||
wxButton* m_buttonInsert;
|
||||
|
||||
wxStdDialogButtonSizer* m_sdbSizerButtons;
|
||||
wxButton* m_sdbSizerButtonsOK;
|
||||
wxButton* m_sdbSizerButtonsCancel;
|
||||
|
||||
// Virtual event handlers, overide them in your derived class
|
||||
virtual void OnIdle( wxIdleEvent& event ) { event.Skip(); }
|
||||
virtual void OnSearchText( wxCommandEvent& event ) { event.Skip(); }
|
||||
@@ -251,24 +247,23 @@ class wxZRColaCharSelectBase : public wxDialog
|
||||
virtual void OnNavigateBack( wxHyperlinkEvent& event ) { event.Skip(); }
|
||||
virtual void OnNavigateForward( wxHyperlinkEvent& event ) { event.Skip(); }
|
||||
virtual void OnRelatedSelectCell( wxGridEvent& event ) { event.Skip(); }
|
||||
virtual void OnInsert( wxCommandEvent& event ) { event.Skip(); }
|
||||
virtual void OnInsertUpdateUI( wxUpdateUIEvent& event ) { event.Skip(); }
|
||||
|
||||
|
||||
virtual void OnOKButtonClick( wxCommandEvent& event ) { event.Skip(); }
|
||||
|
||||
|
||||
public:
|
||||
|
||||
wxZRColaCharSelectBase( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("Character Search"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxDEFAULT_DIALOG_STYLE, const wxString& name = wxT("ZRColaCharSelect") );
|
||||
|
||||
wxZRColaCharSelectBase( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("Character Search"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxDEFAULT_DIALOG_STYLE, const wxString& name = wxT("ZRColaCharSelect") );
|
||||
~wxZRColaCharSelectBase();
|
||||
|
||||
|
||||
};
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
/// Class wxZRColaSettingsBase
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
class wxZRColaSettingsBase : public wxDialog
|
||||
class wxZRColaSettingsBase : public wxDialog
|
||||
{
|
||||
private:
|
||||
|
||||
|
||||
protected:
|
||||
wxListbook* m_listbook;
|
||||
wxPanel* m_panelLanguage;
|
||||
@@ -283,28 +278,28 @@ class wxZRColaSettingsBase : public wxDialog
|
||||
wxButton* m_sdbSizerButtonsOK;
|
||||
wxButton* m_sdbSizerButtonsApply;
|
||||
wxButton* m_sdbSizerButtonsCancel;
|
||||
|
||||
|
||||
// Virtual event handlers, overide them in your derived class
|
||||
virtual void OnInitDialog( wxInitDialogEvent& event ) { event.Skip(); }
|
||||
virtual void OnLanguageUpdate( wxUpdateUIEvent& event ) { event.Skip(); }
|
||||
virtual void OnApplyButtonClick( wxCommandEvent& event ) { event.Skip(); }
|
||||
virtual void OnOKButtonClick( wxCommandEvent& event ) { event.Skip(); }
|
||||
|
||||
|
||||
|
||||
|
||||
public:
|
||||
|
||||
wxZRColaSettingsBase( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("Settings"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize( -1,-1 ), long style = wxDEFAULT_DIALOG_STYLE, const wxString& name = wxT("ZRColaSettings") );
|
||||
|
||||
wxZRColaSettingsBase( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("Settings"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize( -1,-1 ), long style = wxDEFAULT_DIALOG_STYLE, const wxString& name = wxT("ZRColaSettings") );
|
||||
~wxZRColaSettingsBase();
|
||||
|
||||
|
||||
};
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
/// Class wxZRColaAboutBase
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
class wxZRColaAboutBase : public wxDialog
|
||||
class wxZRColaAboutBase : public wxDialog
|
||||
{
|
||||
private:
|
||||
|
||||
|
||||
protected:
|
||||
wxStaticBitmap* m_bitmapIcon;
|
||||
wxStaticText* m_staticTextZRCola;
|
||||
@@ -316,46 +311,46 @@ class wxZRColaAboutBase : public wxDialog
|
||||
wxTextCtrl* m_declaration;
|
||||
wxStdDialogButtonSizer* m_sdbSizerButtons;
|
||||
wxButton* m_sdbSizerButtonsOK;
|
||||
|
||||
|
||||
public:
|
||||
|
||||
wxZRColaAboutBase( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("About ZRCola"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxDEFAULT_DIALOG_STYLE, const wxString& name = wxT("ZRColaAbout") );
|
||||
|
||||
wxZRColaAboutBase( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("About ZRCola"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxDEFAULT_DIALOG_STYLE, const wxString& name = wxT("ZRColaAbout") );
|
||||
~wxZRColaAboutBase();
|
||||
|
||||
|
||||
};
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
/// Class wxZRColaUpdaterBase
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
class wxZRColaUpdaterBase : public wxDialog
|
||||
class wxZRColaUpdaterBase : public wxDialog
|
||||
{
|
||||
private:
|
||||
|
||||
|
||||
protected:
|
||||
wxTextCtrl* m_log;
|
||||
wxButton* m_buttonUpdate;
|
||||
wxButton* m_buttonClose;
|
||||
|
||||
|
||||
// Virtual event handlers, overide them in your derived class
|
||||
virtual void OnIdle( wxIdleEvent& event ) { event.Skip(); }
|
||||
virtual void OnUpdate( wxCommandEvent& event ) { event.Skip(); }
|
||||
virtual void OnClose( wxCommandEvent& event ) { event.Skip(); }
|
||||
|
||||
|
||||
|
||||
|
||||
public:
|
||||
|
||||
wxZRColaUpdaterBase( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("Product Update"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxDEFAULT_DIALOG_STYLE, const wxString& name = wxT("ZRColaUpdater") );
|
||||
|
||||
wxZRColaUpdaterBase( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("Product Update"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxDEFAULT_DIALOG_STYLE, const wxString& name = wxT("ZRColaUpdater") );
|
||||
~wxZRColaUpdaterBase();
|
||||
|
||||
|
||||
};
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
/// Class wxZRColaCharRequestBase
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
class wxZRColaCharRequestBase : public wxDialog
|
||||
class wxZRColaCharRequestBase : public wxDialog
|
||||
{
|
||||
private:
|
||||
|
||||
|
||||
protected:
|
||||
wxStaticText* m_characterLbl;
|
||||
wxTextCtrl* m_character;
|
||||
@@ -366,25 +361,25 @@ class wxZRColaCharRequestBase : public wxDialog
|
||||
wxStdDialogButtonSizer* m_sdbSizerButtons;
|
||||
wxButton* m_sdbSizerButtonsOK;
|
||||
wxButton* m_sdbSizerButtonsCancel;
|
||||
|
||||
|
||||
// Virtual event handlers, overide them in your derived class
|
||||
virtual void OnOKButtonClick( wxCommandEvent& event ) { event.Skip(); }
|
||||
|
||||
|
||||
|
||||
|
||||
public:
|
||||
|
||||
wxZRColaCharRequestBase( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("Request a New Character"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxDEFAULT_DIALOG_STYLE, const wxString& name = wxT("ZRColaCharRequest") );
|
||||
|
||||
wxZRColaCharRequestBase( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("Request a New Character"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxDEFAULT_DIALOG_STYLE, const wxString& name = wxT("ZRColaCharRequest") );
|
||||
~wxZRColaCharRequestBase();
|
||||
|
||||
|
||||
};
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
/// Class wxZRColaTranslationSeqBase
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
class wxZRColaTranslationSeqBase : public wxDialog
|
||||
class wxZRColaTranslationSeqBase : public wxDialog
|
||||
{
|
||||
private:
|
||||
|
||||
|
||||
protected:
|
||||
wxStaticText* m_transLbl;
|
||||
wxStaticText* m_availableLbl;
|
||||
@@ -398,7 +393,7 @@ class wxZRColaTranslationSeqBase : public wxDialog
|
||||
wxStdDialogButtonSizer* m_sdbSizerButtons;
|
||||
wxButton* m_sdbSizerButtonsOK;
|
||||
wxButton* m_sdbSizerButtonsCancel;
|
||||
|
||||
|
||||
// Virtual event handlers, overide them in your derived class
|
||||
virtual void OnInitDialog( wxInitDialogEvent& event ) { event.Skip(); }
|
||||
virtual void OnUpdate( wxUpdateUIEvent& event ) { event.Skip(); }
|
||||
@@ -411,12 +406,13 @@ class wxZRColaTranslationSeqBase : public wxDialog
|
||||
virtual void OnSelectedUp( wxCommandEvent& event ) { event.Skip(); }
|
||||
virtual void OnSelectedDown( wxCommandEvent& event ) { event.Skip(); }
|
||||
virtual void OnOKButtonClick( wxCommandEvent& event ) { event.Skip(); }
|
||||
|
||||
|
||||
|
||||
|
||||
public:
|
||||
|
||||
wxZRColaTranslationSeqBase( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("Custom Translation Sequence"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxDEFAULT_DIALOG_STYLE, const wxString& name = wxT("ZRColaTranslationSeq") );
|
||||
|
||||
wxZRColaTranslationSeqBase( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("Custom Translation Sequence"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxDEFAULT_DIALOG_STYLE, const wxString& name = wxT("ZRColaTranslationSeq") );
|
||||
~wxZRColaTranslationSeqBase();
|
||||
|
||||
|
||||
};
|
||||
|
||||
#endif //__ZRCOLAGUI_H__
|
||||
|
||||
20
ZRCola/stdafx.cpp
Normal file
20
ZRCola/stdafx.cpp
Normal file
@@ -0,0 +1,20 @@
|
||||
/*
|
||||
Copyright 2015-2018 Amebis
|
||||
|
||||
This file is part of ZRCola.
|
||||
|
||||
ZRCola is free software: you can redistribute it and/or modify it
|
||||
under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
ZRCola is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with ZRCola. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include "stdafx.h"
|
||||
@@ -1,55 +1,66 @@
|
||||
/*
|
||||
SPDX-License-Identifier: GPL-3.0-or-later
|
||||
Copyright © 2015-2021 Amebis
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "../include/version.h"
|
||||
#include "zrcolaabout.h"
|
||||
#include "zrcolaapp.h"
|
||||
#include "zrcolachrcatpnl.h"
|
||||
#include "zrcolachrgrid.h"
|
||||
#include "zrcolachrreq.h"
|
||||
#include "zrcolacomppnl.h"
|
||||
#include "zrcolafrm.h"
|
||||
#include "zrcolakeyhndlr.h"
|
||||
#include "zrcolasettings.h"
|
||||
#include "zrcolatranseq.h"
|
||||
#include "zrcolaupdater.h"
|
||||
|
||||
#include <Updater/chkthread.h>
|
||||
|
||||
#include <wxex/common.h>
|
||||
#include <wxex/url.h>
|
||||
#include <wxex/persist/auimanager.h>
|
||||
#include <wxex/persist/toplevel.h>
|
||||
|
||||
#pragma warning(push)
|
||||
#pragma warning(disable: WXWIDGETS_CODE_ANALYSIS_WARNINGS)
|
||||
#include <wx/clipbrd.h>
|
||||
#include <wx/dcclient.h>
|
||||
#include <wx/ffile.h>
|
||||
#include <wx/msgdlg.h>
|
||||
#include <wx/persist.h>
|
||||
#include <wx/persist/toplevel.h>
|
||||
#include <wx/socket.h>
|
||||
#include <wx/tokenzr.h>
|
||||
#include <wx/utils.h>
|
||||
#include <wx/valtext.h>
|
||||
#pragma warning(pop)
|
||||
|
||||
#include <WinStd/MSI.h>
|
||||
|
||||
#include <fstream>
|
||||
#include <string>
|
||||
#include <utility>
|
||||
#include <vector>
|
||||
|
||||
#include <stdex/idrec.h>
|
||||
|
||||
#if defined(__WXMSW__)
|
||||
#include <Msi.h>
|
||||
#include <ShObjIdl.h>
|
||||
#include <ShlGuid.h>
|
||||
#endif
|
||||
/*
|
||||
Copyright 2015-2018 Amebis
|
||||
|
||||
This file is part of ZRCola.
|
||||
|
||||
ZRCola is free software: you can redistribute it and/or modify it
|
||||
under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
ZRCola is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with ZRCola. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "../include/version.h"
|
||||
#include "zrcolaabout.h"
|
||||
#include "zrcolaapp.h"
|
||||
#include "zrcolachrcatpnl.h"
|
||||
#include "zrcolachrgrid.h"
|
||||
#include "zrcolachrreq.h"
|
||||
#include "zrcolacomppnl.h"
|
||||
#include "zrcolafrm.h"
|
||||
#include "zrcolakeyhndlr.h"
|
||||
#include "zrcolasettings.h"
|
||||
#include "zrcolatranseq.h"
|
||||
#include "zrcolaupdater.h"
|
||||
|
||||
#include <Updater/chkthread.h>
|
||||
|
||||
#include <wxex/common.h>
|
||||
#include <wxex/url.h>
|
||||
#include <wxex/persist/auimanager.h>
|
||||
#include <wxex/persist/toplevel.h>
|
||||
|
||||
#include <wx/clipbrd.h>
|
||||
#include <wx/dcclient.h>
|
||||
#include <wx/ffile.h>
|
||||
#include <wx/msgdlg.h>
|
||||
#include <wx/persist.h>
|
||||
#include <wx/persist/toplevel.h>
|
||||
#include <wx/socket.h>
|
||||
#include <wx/tokenzr.h>
|
||||
#include <wx/utils.h>
|
||||
#include <wx/valtext.h>
|
||||
|
||||
#include <WinStd/MSI.h>
|
||||
|
||||
#include <fstream>
|
||||
#include <string>
|
||||
#include <utility>
|
||||
#include <vector>
|
||||
|
||||
#include <stdex/idrec.h>
|
||||
|
||||
#if defined(__WXMSW__)
|
||||
#include <Msi.h>
|
||||
#include <ShObjIdl.h>
|
||||
#include <ShlGuid.h>
|
||||
#endif
|
||||
@@ -1,9 +1,23 @@
|
||||
/*
|
||||
SPDX-License-Identifier: GPL-3.0-or-later
|
||||
Copyright © 2015-2021 Amebis
|
||||
Copyright 2015-2018 Amebis
|
||||
|
||||
This file is part of ZRCola.
|
||||
|
||||
ZRCola is free software: you can redistribute it and/or modify it
|
||||
under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
ZRCola is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with ZRCola. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include "pch.h"
|
||||
#include "stdafx.h"
|
||||
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
|
||||
@@ -1,6 +1,20 @@
|
||||
/*
|
||||
SPDX-License-Identifier: GPL-3.0-or-later
|
||||
Copyright © 2015-2021 Amebis
|
||||
/*
|
||||
Copyright 2015-2018 Amebis
|
||||
|
||||
This file is part of ZRCola.
|
||||
|
||||
ZRCola is free software: you can redistribute it and/or modify it
|
||||
under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
ZRCola is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with ZRCola. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
///
|
||||
@@ -11,11 +25,7 @@ class wxZRColaAbout;
|
||||
|
||||
#pragma once
|
||||
|
||||
#include <wxex/common.h>
|
||||
#pragma warning(push)
|
||||
#pragma warning(disable: WXWIDGETS_CODE_ANALYSIS_WARNINGS)
|
||||
#include "zrcolagui.h"
|
||||
#pragma warning(pop)
|
||||
|
||||
|
||||
///
|
||||
|
||||
@@ -1,9 +1,23 @@
|
||||
/*
|
||||
SPDX-License-Identifier: GPL-3.0-or-later
|
||||
Copyright © 2015-2021 Amebis
|
||||
/*
|
||||
Copyright 2015-2018 Amebis
|
||||
|
||||
This file is part of ZRCola.
|
||||
|
||||
ZRCola is free software: you can redistribute it and/or modify it
|
||||
under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
ZRCola is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with ZRCola. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include "pch.h"
|
||||
#include "stdafx.h"
|
||||
#if defined(__WXMSW__)
|
||||
#pragma comment(lib, "msi.lib")
|
||||
#endif
|
||||
@@ -13,13 +27,11 @@
|
||||
// ZRColaApp
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
|
||||
#pragma warning(suppress: 28251) // wxWidgets implement WinMain without code analysis annotations.
|
||||
wxIMPLEMENT_APP(ZRColaApp);
|
||||
|
||||
|
||||
ZRColaApp::ZRColaApp() :
|
||||
m_mainWnd(NULL),
|
||||
#pragma warning(suppress: 26812) // wxLanguage is unscoped
|
||||
m_lang_ui(wxLANGUAGE_DEFAULT),
|
||||
wxApp()
|
||||
{
|
||||
@@ -144,12 +156,6 @@ bool ZRColaApp::OnInit()
|
||||
wxFAIL_MSG(wxT("Error reading tag name data from ZRCola.zrcdb."));
|
||||
m_tn_db.clear();
|
||||
}
|
||||
} else if (id == ZRCola::highlight_rec::id) {
|
||||
dat >> ZRCola::highlight_rec(m_h_db);
|
||||
if (!dat.good()) {
|
||||
wxFAIL_MSG(wxT("Error reading highlight data from ZRCola.zrcdb."));
|
||||
m_h_db.clear();
|
||||
}
|
||||
} else
|
||||
stdex::idrec::ignore<ZRCola::recordsize_t, ZRCOLA_RECORD_ALIGN>(dat);
|
||||
}
|
||||
@@ -159,14 +165,12 @@ bool ZRColaApp::OnInit()
|
||||
}
|
||||
} else
|
||||
wxFAIL_MSG(wxT("ZRCola.zrcdb is not a valid ZRCola database."));
|
||||
} else
|
||||
wxFAIL_MSG(wxT("ZRCola.zrcdb not found or cannot be opened."));
|
||||
}
|
||||
|
||||
// Initialize sockets. Otherwise Updater thread will not work.
|
||||
wxSocketBase::Initialize();
|
||||
|
||||
m_mainWnd = new wxZRColaFrame();
|
||||
m_mainWnd->m_panel->RestoreFromStateFile();
|
||||
m_mainWnd->Show();
|
||||
|
||||
return true;
|
||||
|
||||
@@ -1,6 +1,20 @@
|
||||
/*
|
||||
SPDX-License-Identifier: GPL-3.0-or-later
|
||||
Copyright © 2015-2021 Amebis
|
||||
/*
|
||||
Copyright 2015-2018 Amebis
|
||||
|
||||
This file is part of ZRCola.
|
||||
|
||||
ZRCola is free software: you can redistribute it and/or modify it
|
||||
under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
ZRCola is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with ZRCola. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
///
|
||||
@@ -13,15 +27,10 @@ class ZRColaApp;
|
||||
|
||||
#include "zrcolafrm.h"
|
||||
#include <WinStd/Win.h>
|
||||
#include <wxex/common.h>
|
||||
#pragma warning(push)
|
||||
#pragma warning(disable: WXWIDGETS_CODE_ANALYSIS_WARNINGS)
|
||||
#include <wx/app.h>
|
||||
#include <wx/config.h>
|
||||
#include <wx/intl.h>
|
||||
#pragma warning(pop)
|
||||
#include <zrcola/character.h>
|
||||
#include <zrcola/highlight.h>
|
||||
#include <zrcola/language.h>
|
||||
#include <zrcola/translate.h>
|
||||
#include <zrcola/tag.h>
|
||||
@@ -73,7 +82,6 @@ public:
|
||||
ZRCola::chrcat_db m_cc_db; ///< Characted category database
|
||||
ZRCola::chrtag_db m_ct_db; ///< Character tag database
|
||||
ZRCola::tagname_db m_tn_db; ///< Tag name database
|
||||
ZRCola::highlight_db m_h_db; ///< Highlight database
|
||||
|
||||
wxZRColaFrame *m_mainWnd; ///< Main window
|
||||
|
||||
|
||||
@@ -1,9 +1,23 @@
|
||||
/*
|
||||
SPDX-License-Identifier: GPL-3.0-or-later
|
||||
Copyright © 2015-2021 Amebis
|
||||
/*
|
||||
Copyright 2015-2018 Amebis
|
||||
|
||||
This file is part of ZRCola.
|
||||
|
||||
ZRCola is free software: you can redistribute it and/or modify it
|
||||
under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
ZRCola is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with ZRCola. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include "pch.h"
|
||||
#include "stdafx.h"
|
||||
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
@@ -15,9 +29,7 @@ BEGIN_EVENT_TABLE(wxZRColaCharacterCatalogPanel, wxZRColaCharacterCatalogPanelBa
|
||||
END_EVENT_TABLE()
|
||||
|
||||
|
||||
wxZRColaCharacterCatalogPanel::wxZRColaCharacterCatalogPanel(wxWindow* parent) :
|
||||
m_cg_id(0),
|
||||
wxZRColaCharacterCatalogPanelBase(parent)
|
||||
wxZRColaCharacterCatalogPanel::wxZRColaCharacterCatalogPanel(wxWindow* parent) : wxZRColaCharacterCatalogPanelBase(parent)
|
||||
{
|
||||
std::fstream dat((LPCTSTR)dynamic_cast<ZRColaApp*>(wxTheApp)->GetDatabaseFilePath(), std::ios_base::in | std::ios_base::binary);
|
||||
if (dat.good()) {
|
||||
@@ -38,8 +50,7 @@ wxZRColaCharacterCatalogPanel::wxZRColaCharacterCatalogPanel(wxWindow* parent) :
|
||||
}
|
||||
} else
|
||||
wxFAIL_MSG(wxT("ZRCola.zrcdb is not a valid ZRCola database."));
|
||||
} else
|
||||
wxFAIL_MSG(wxT("ZRCola.zrcdb not found or cannot be opened."));
|
||||
}
|
||||
|
||||
if (!m_cg_db.idxRank.empty()) {
|
||||
// Populate character group list.
|
||||
@@ -48,7 +59,7 @@ wxZRColaCharacterCatalogPanel::wxZRColaCharacterCatalogPanel(wxWindow* parent) :
|
||||
wxString
|
||||
label(cg.name(), cg.name_len()),
|
||||
label_tran2(wxGetTranslation(label, wxT("ZRCola-zrcdb")));
|
||||
m_choice->Insert(label_tran2, (unsigned int)i);
|
||||
m_choice->Insert(label_tran2, i);
|
||||
}
|
||||
m_cg_id = m_cg_db.idxRank[0].grp;
|
||||
m_choice->Select(0);
|
||||
@@ -204,7 +215,7 @@ bool wxPersistentZRColaCharacterCatalogPanel::Restore()
|
||||
if (cg.grp == cg_id) {
|
||||
if (wnd->m_cg_id != cg.grp) {
|
||||
wnd->m_cg_id = cg.grp;
|
||||
wnd->m_choice->Select((int)i);
|
||||
wnd->m_choice->Select(i);
|
||||
update = true;
|
||||
}
|
||||
|
||||
|
||||
@@ -1,6 +1,20 @@
|
||||
/*
|
||||
SPDX-License-Identifier: GPL-3.0-or-later
|
||||
Copyright © 2015-2021 Amebis
|
||||
/*
|
||||
Copyright 2015-2018 Amebis
|
||||
|
||||
This file is part of ZRCola.
|
||||
|
||||
ZRCola is free software: you can redistribute it and/or modify it
|
||||
under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
ZRCola is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with ZRCola. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
///
|
||||
@@ -11,16 +25,9 @@ class wxZRColaCharacterCatalogPanel;
|
||||
|
||||
#pragma once
|
||||
|
||||
#include <wxex/common.h>
|
||||
#pragma warning(push)
|
||||
#pragma warning(disable: WXWIDGETS_CODE_ANALYSIS_WARNINGS)
|
||||
#include "zrcolagui.h"
|
||||
#pragma warning(pop)
|
||||
#include <zrcolaui/chargroup.h>
|
||||
#pragma warning(push)
|
||||
#pragma warning(disable: WXWIDGETS_CODE_ANALYSIS_WARNINGS)
|
||||
#include <wx/persist/window.h>
|
||||
#pragma warning(pop)
|
||||
|
||||
|
||||
///
|
||||
|
||||
@@ -1,9 +1,23 @@
|
||||
/*
|
||||
SPDX-License-Identifier: GPL-3.0-or-later
|
||||
Copyright © 2015-2021 Amebis
|
||||
/*
|
||||
Copyright 2015-2018 Amebis
|
||||
|
||||
This file is part of ZRCola.
|
||||
|
||||
ZRCola is free software: you can redistribute it and/or modify it
|
||||
under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
ZRCola is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with ZRCola. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include "pch.h"
|
||||
#include "stdafx.h"
|
||||
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
@@ -142,13 +156,13 @@ void wxZRColaCharGrid::OnSize(wxSizeEvent& event)
|
||||
row_height = FromDIP(wxZRColaCharacterGridRowHeight),
|
||||
width = size.GetWidth() - m_rowLabelWidth - m_extraWidth,
|
||||
cols = std::max<int>(width / col_width, 1),
|
||||
rows = std::max<int>((int)((char_count + cols - 1) / cols), 1);
|
||||
rows = std::max<int>((char_count + cols - 1) / cols, 1);
|
||||
|
||||
if (m_colLabelHeight + rows*row_height + m_extraHeight > size.GetHeight()) {
|
||||
// Vertical scrollbar will be shown. Adjust the width and recalculate layout to avoid horizontal scrollbar.
|
||||
width = std::max<int>(width - wxSystemSettings::GetMetric(wxSYS_VSCROLL_X, this), 0);
|
||||
cols = std::max<int>(width / col_width, 1);
|
||||
rows = std::max<int>((int)((char_count + cols - 1) / cols), 1);
|
||||
rows = std::max<int>((char_count + cols - 1) / cols, 1);
|
||||
}
|
||||
|
||||
BeginBatch();
|
||||
@@ -228,7 +242,7 @@ void wxZRColaCharGrid::OnMotion(wxMouseEvent& event)
|
||||
if (col == wxNOT_FOUND || row == wxNOT_FOUND )
|
||||
return;
|
||||
|
||||
size_t toolTipIdx = (size_t)row*m_numCols + col;
|
||||
size_t toolTipIdx = row*m_numCols + col;
|
||||
if (toolTipIdx >= m_chars.GetCount()) {
|
||||
// Index out of range.
|
||||
m_toolTipIdx = (size_t)-1;
|
||||
@@ -240,7 +254,7 @@ void wxZRColaCharGrid::OnMotion(wxMouseEvent& event)
|
||||
wxWindow *gridWnd = GetGridWindow();
|
||||
if (gridWnd->GetToolTip()) {
|
||||
// The tooltip is already shown. Update it immediately.
|
||||
gridWnd->SetToolTip(GetToolTipText((int)m_toolTipIdx));
|
||||
gridWnd->SetToolTip(GetToolTipText(m_toolTipIdx));
|
||||
} else {
|
||||
// This must be our initial entry. Schedule tooltip display after 1s.
|
||||
m_timerToolTip.Start(1000, true);
|
||||
@@ -256,5 +270,5 @@ void wxZRColaCharGrid::OnTooltipTimer(wxTimerEvent& event)
|
||||
if (m_toolTipIdx >= m_chars.GetCount())
|
||||
return;
|
||||
|
||||
GetGridWindow()->SetToolTip(GetToolTipText((int)m_toolTipIdx));
|
||||
GetGridWindow()->SetToolTip(GetToolTipText(m_toolTipIdx));
|
||||
}
|
||||
|
||||
@@ -1,6 +1,20 @@
|
||||
/*
|
||||
SPDX-License-Identifier: GPL-3.0-or-later
|
||||
Copyright © 2015-2021 Amebis
|
||||
/*
|
||||
Copyright 2015-2018 Amebis
|
||||
|
||||
This file is part of ZRCola.
|
||||
|
||||
ZRCola is free software: you can redistribute it and/or modify it
|
||||
under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
ZRCola is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with ZRCola. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
///
|
||||
@@ -11,11 +25,7 @@ class wxZRColaCharGrid;
|
||||
|
||||
#pragma once
|
||||
|
||||
#include <wxex/common.h>
|
||||
#pragma warning(push)
|
||||
#pragma warning(disable: WXWIDGETS_CODE_ANALYSIS_WARNINGS)
|
||||
#include <wx/grid.h>
|
||||
#pragma warning(pop)
|
||||
|
||||
|
||||
///
|
||||
@@ -86,7 +96,7 @@ public:
|
||||
if (i >= n)
|
||||
return wxGridCellCoords(-1, -1);
|
||||
else if (m_chars[i] == c)
|
||||
return wxGridCellCoords((int)(i / m_numCols), i % m_numCols);
|
||||
return wxGridCellCoords(i / m_numCols, i % m_numCols);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -1,9 +1,23 @@
|
||||
/*
|
||||
SPDX-License-Identifier: GPL-3.0-or-later
|
||||
Copyright © 2015-2021 Amebis
|
||||
/*
|
||||
Copyright 2015-2018 Amebis
|
||||
|
||||
This file is part of ZRCola.
|
||||
|
||||
ZRCola is free software: you can redistribute it and/or modify it
|
||||
under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
ZRCola is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with ZRCola. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include "pch.h"
|
||||
#include "stdafx.h"
|
||||
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
|
||||
@@ -1,6 +1,20 @@
|
||||
/*
|
||||
SPDX-License-Identifier: GPL-3.0-or-later
|
||||
Copyright © 2015-2021 Amebis
|
||||
/*
|
||||
Copyright 2015-2018 Amebis
|
||||
|
||||
This file is part of ZRCola.
|
||||
|
||||
ZRCola is free software: you can redistribute it and/or modify it
|
||||
under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
ZRCola is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with ZRCola. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
///
|
||||
@@ -12,11 +26,7 @@ class wxPersistentZRColaCharRequest;
|
||||
|
||||
#pragma once
|
||||
|
||||
#include <wxex/common.h>
|
||||
#pragma warning(push)
|
||||
#pragma warning(disable: WXWIDGETS_CODE_ANALYSIS_WARNINGS)
|
||||
#include "zrcolagui.h"
|
||||
#pragma warning(pop)
|
||||
#include "zrcolakeyhndlr.h"
|
||||
#include <wxex/persist/toplevel.h>
|
||||
|
||||
|
||||
@@ -1,9 +1,23 @@
|
||||
/*
|
||||
SPDX-License-Identifier: GPL-3.0-or-later
|
||||
Copyright © 2015-2021 Amebis
|
||||
Copyright 2015-2018 Amebis
|
||||
|
||||
This file is part of ZRCola.
|
||||
|
||||
ZRCola is free software: you can redistribute it and/or modify it
|
||||
under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
ZRCola is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with ZRCola. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include "pch.h"
|
||||
#include "stdafx.h"
|
||||
|
||||
|
||||
//////////////////////////////////////////////////////////////////////
|
||||
@@ -71,7 +85,7 @@ bool wxZRColaUTF16CharValidator::Parse(const wxString &val_in, size_t i_start, s
|
||||
} else if (i >= i_start + 4) {
|
||||
// Maximum characters exceeded.
|
||||
ctrl->SetFocus();
|
||||
ctrl->SetSelection((int)i, (int)i_end);
|
||||
ctrl->SetSelection(i, i_end);
|
||||
wxMessageBox(_("Too many digits in Unicode."), _("Validation conflict"), wxOK | wxICON_EXCLAMATION, parent);
|
||||
return false;
|
||||
} else if (_T('0') <= buf[i] && buf[i] <= _T('9')) {
|
||||
@@ -89,7 +103,7 @@ bool wxZRColaUTF16CharValidator::Parse(const wxString &val_in, size_t i_start, s
|
||||
} else {
|
||||
// Invalid character found.
|
||||
ctrl->SetFocus();
|
||||
ctrl->SetSelection((long)i, (long)(i + 1));
|
||||
ctrl->SetSelection(i, i + 1);
|
||||
wxMessageBox(wxString::Format(_("Invalid character in Unicode found: %c"), buf[i]), _("Validation conflict"), wxOK | wxICON_EXCLAMATION, parent);
|
||||
return false;
|
||||
}
|
||||
@@ -188,7 +202,6 @@ wxZRColaCharSelect::wxZRColaCharSelect(wxWindow* parent) :
|
||||
wxZRColaCharSelectBase(parent)
|
||||
{
|
||||
// Set tag lookup locale.
|
||||
#pragma warning(suppress: 26812) // wxLanguage is unscoped
|
||||
wxLanguage language = dynamic_cast<ZRColaApp*>(wxTheApp)->m_lang_ui;
|
||||
if (wxLANGUAGE_DEFAULT == language ||
|
||||
wxLANGUAGE_ENGLISH <= language && language <= wxLANGUAGE_ENGLISH_ZIMBABWE) m_locale = MAKELCID(MAKELANGID(LANG_ENGLISH , SUBLANG_DEFAULT), SORT_DEFAULT);
|
||||
@@ -206,7 +219,7 @@ wxZRColaCharSelect::wxZRColaCharSelect(wxWindow* parent) :
|
||||
auto app = dynamic_cast<ZRColaApp*>(wxTheApp);
|
||||
for (size_t i = 0, n = app->m_cc_db.idxRank.size(); i < n; i++) {
|
||||
const auto &cc = app->m_cc_db.idxRank[i];
|
||||
int idx = m_categories->Insert(wxGetTranslation(wxString(cc.name(), cc.name_len()), wxT("ZRCola-zrcdb")), (unsigned int)i);
|
||||
int idx = m_categories->Insert(wxGetTranslation(wxString(cc.name(), cc.name_len()), wxT("ZRCola-zrcdb")), i);
|
||||
m_categories->Check(idx);
|
||||
m_ccOrder.insert(std::make_pair(cc.cat, idx));
|
||||
}
|
||||
@@ -223,10 +236,8 @@ wxZRColaCharSelect::wxZRColaCharSelect(wxWindow* parent) :
|
||||
|
||||
wxZRColaCharSelect::~wxZRColaCharSelect()
|
||||
{
|
||||
if (m_searchThread) {
|
||||
#pragma warning(suppress: 26812) // wxThreadError is unscoped.
|
||||
if (m_searchThread)
|
||||
m_searchThread->Delete();
|
||||
}
|
||||
|
||||
Disconnect(wxID_ANY, wxEVT_SEARCH_COMPLETE, wxThreadEventHandler(wxZRColaCharSelect::OnSearchComplete), NULL, this);
|
||||
}
|
||||
@@ -343,7 +354,7 @@ void wxZRColaCharSelect::OnIdle(wxIdleEvent& event)
|
||||
// Select categories.
|
||||
for (size_t i = 0, n = app->m_cc_db.idxRank.size(); i < n; i++) {
|
||||
const auto &cc = app->m_cc_db.idxRank[i];
|
||||
if (m_categories->IsChecked((unsigned int)i))
|
||||
if (m_categories->IsChecked(i))
|
||||
m_searchThread->m_cats.insert(cc.cat);
|
||||
}
|
||||
|
||||
@@ -390,7 +401,7 @@ void wxZRColaCharSelect::OnCategoriesAll(wxHyperlinkEvent& event)
|
||||
|
||||
auto app = dynamic_cast<ZRColaApp*>(wxTheApp);
|
||||
for (size_t i = 0, n = app->m_cc_db.idxRank.size(); i < n; i++)
|
||||
m_categories->Check((unsigned int)i, true);
|
||||
m_categories->Check(i, true);
|
||||
|
||||
m_searchChanged = true;
|
||||
}
|
||||
@@ -402,7 +413,7 @@ void wxZRColaCharSelect::OnCategoriesNone(wxHyperlinkEvent& event)
|
||||
|
||||
auto app = dynamic_cast<ZRColaApp*>(wxTheApp);
|
||||
for (size_t i = 0, n = app->m_cc_db.idxRank.size(); i < n; i++)
|
||||
m_categories->Check((unsigned int)i, false);
|
||||
m_categories->Check(i, false);
|
||||
|
||||
m_searchChanged = true;
|
||||
}
|
||||
@@ -414,7 +425,7 @@ void wxZRColaCharSelect::OnCategoriesInvert(wxHyperlinkEvent& event)
|
||||
|
||||
auto app = dynamic_cast<ZRColaApp*>(wxTheApp);
|
||||
for (size_t i = 0, n = app->m_cc_db.idxRank.size(); i < n; i++)
|
||||
m_categories->Check((unsigned int)i, !m_categories->IsChecked((unsigned int)i));
|
||||
m_categories->Check(i, !m_categories->IsChecked(i));
|
||||
|
||||
m_searchChanged = true;
|
||||
}
|
||||
@@ -466,7 +477,7 @@ void wxZRColaCharSelect::OnResultCellDClick(wxGridEvent& event)
|
||||
if (!val.IsEmpty()) {
|
||||
NavigateTo(val);
|
||||
wxCommandEvent e(wxEVT_COMMAND_BUTTON_CLICKED, wxID_OK);
|
||||
m_buttonInsert->GetEventHandler()->ProcessEvent(e);
|
||||
m_sdbSizerButtonsOK->GetEventHandler()->ProcessEvent(e);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -480,7 +491,7 @@ void wxZRColaCharSelect::OnResultsKeyDown(wxKeyEvent& event)
|
||||
if (!val.IsEmpty()) {
|
||||
NavigateTo(val);
|
||||
wxCommandEvent e(wxEVT_COMMAND_BUTTON_CLICKED, wxID_OK);
|
||||
m_buttonInsert->GetEventHandler()->ProcessEvent(e);
|
||||
m_sdbSizerButtonsOK->GetEventHandler()->ProcessEvent(e);
|
||||
|
||||
event.StopPropagation();
|
||||
return;
|
||||
@@ -509,7 +520,7 @@ void wxZRColaCharSelect::OnRecentCellDClick(wxGridEvent& event)
|
||||
if (!val.IsEmpty()) {
|
||||
NavigateTo(val);
|
||||
wxCommandEvent e(wxEVT_COMMAND_BUTTON_CLICKED, wxID_OK);
|
||||
m_buttonInsert->GetEventHandler()->ProcessEvent(e);
|
||||
m_sdbSizerButtonsOK->GetEventHandler()->ProcessEvent(e);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -523,7 +534,7 @@ void wxZRColaCharSelect::OnRecentKeyDown(wxKeyEvent& event)
|
||||
if (!val.IsEmpty()) {
|
||||
NavigateTo(val);
|
||||
wxCommandEvent e(wxEVT_COMMAND_BUTTON_CLICKED, wxID_OK);
|
||||
m_buttonInsert->GetEventHandler()->ProcessEvent(e);
|
||||
m_sdbSizerButtonsOK->GetEventHandler()->ProcessEvent(e);
|
||||
|
||||
event.StopPropagation();
|
||||
return;
|
||||
@@ -585,13 +596,7 @@ void wxZRColaCharSelect::OnRelatedSelectCell(wxGridEvent& event)
|
||||
}
|
||||
|
||||
|
||||
void wxZRColaCharSelect::OnInsertUpdateUI(wxUpdateUIEvent& event)
|
||||
{
|
||||
event.Enable(!m_char.empty());
|
||||
}
|
||||
|
||||
|
||||
void wxZRColaCharSelect::OnInsert(wxCommandEvent& event)
|
||||
void wxZRColaCharSelect::OnOKButtonClick(wxCommandEvent& event)
|
||||
{
|
||||
event.Skip();
|
||||
|
||||
@@ -605,14 +610,6 @@ void wxZRColaCharSelect::OnInsert(wxCommandEvent& event)
|
||||
val.Add(c);
|
||||
}
|
||||
m_gridRecent->SetCharacters(val);
|
||||
|
||||
auto app = dynamic_cast<ZRColaApp*>(wxTheApp);
|
||||
if (app->m_mainWnd) {
|
||||
app->m_mainWnd->m_panel->m_source->WriteText(m_char);
|
||||
app->m_mainWnd->m_panel->m_source->SetFocus();
|
||||
}
|
||||
|
||||
Show(false);
|
||||
}
|
||||
|
||||
|
||||
@@ -824,7 +821,7 @@ void wxPersistentZRColaCharSelect::Save() const
|
||||
const auto &cc = app->m_cc_db.idxRank[i];
|
||||
wxString name(wxT("category"));
|
||||
name.Append(cc.cat.data, _countof(cc.cat.data));
|
||||
SaveValue(name, wnd->m_categories->IsChecked((unsigned int)i));
|
||||
SaveValue(name, wnd->m_categories->IsChecked(i));
|
||||
}
|
||||
|
||||
SaveValue(wxT("searchPanel"), wnd->m_search_panel->IsShown());
|
||||
@@ -861,7 +858,7 @@ bool wxPersistentZRColaCharSelect::Restore()
|
||||
name.Append(cc.cat.data, _countof(cc.cat.data));
|
||||
bool val;
|
||||
if (RestoreValue(name, &val))
|
||||
wnd->m_categories->Check((unsigned int)i, val);
|
||||
wnd->m_categories->Check(i, val);
|
||||
}
|
||||
|
||||
bool search_panel;
|
||||
|
||||
@@ -1,6 +1,20 @@
|
||||
/*
|
||||
SPDX-License-Identifier: GPL-3.0-or-later
|
||||
Copyright © 2015-2021 Amebis
|
||||
/*
|
||||
Copyright 2015-2018 Amebis
|
||||
|
||||
This file is part of ZRCola.
|
||||
|
||||
ZRCola is free software: you can redistribute it and/or modify it
|
||||
under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
ZRCola is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with ZRCola. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
///
|
||||
@@ -12,19 +26,12 @@ class wxPersistentZRColaCharSelect;
|
||||
|
||||
#pragma once
|
||||
|
||||
#include <wxex/common.h>
|
||||
#pragma warning(push)
|
||||
#pragma warning(disable: WXWIDGETS_CODE_ANALYSIS_WARNINGS)
|
||||
#include "zrcolagui.h"
|
||||
#pragma warning(pop)
|
||||
#include <zrcola/character.h>
|
||||
#include <wxex/persist/toplevel.h>
|
||||
#pragma warning(push)
|
||||
#pragma warning(disable: WXWIDGETS_CODE_ANALYSIS_WARNINGS)
|
||||
#include <wx/validate.h>
|
||||
#include <wx/event.h>
|
||||
#include <wx/thread.h>
|
||||
#pragma warning(pop)
|
||||
#include <list>
|
||||
#include <map>
|
||||
#include <string>
|
||||
@@ -156,8 +163,7 @@ protected:
|
||||
virtual void OnUnicodeText(wxCommandEvent& event);
|
||||
virtual void OnPreviewKeyDown(wxKeyEvent& event);
|
||||
virtual void OnRelatedSelectCell(wxGridEvent& event);
|
||||
virtual void OnInsertUpdateUI(wxUpdateUIEvent& event);
|
||||
virtual void OnInsert(wxCommandEvent& event);
|
||||
virtual void OnOKButtonClick(wxCommandEvent& event);
|
||||
|
||||
void ResetResults();
|
||||
void NavigateBy(int offset);
|
||||
|
||||
@@ -1,9 +1,23 @@
|
||||
/*
|
||||
SPDX-License-Identifier: GPL-3.0-or-later
|
||||
Copyright © 2015-2021 Amebis
|
||||
/*
|
||||
Copyright 2015-2018 Amebis
|
||||
|
||||
This file is part of ZRCola.
|
||||
|
||||
ZRCola is free software: you can redistribute it and/or modify it
|
||||
under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
ZRCola is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with ZRCola. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include "pch.h"
|
||||
#include "stdafx.h"
|
||||
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
@@ -13,36 +27,12 @@
|
||||
wxZRColaComposerPanel::wxZRColaComposerPanel(wxWindow* parent) :
|
||||
m_sourceChanged(false),
|
||||
m_destinationChanged(false),
|
||||
m_sourceRestyled(false),
|
||||
m_destinationRestyled(false),
|
||||
m_styleNormal(*wxBLACK, *wxWHITE, wxFont(20, wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_NORMAL, false, wxT("ZRCola"))),
|
||||
m_stylePUA(*wxBLUE, *wxWHITE, wxFont(20, wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_NORMAL, false, wxT("ZRCola"))),
|
||||
m_styleZRColaUnicodeComposedIssues(*wxRED, *wxWHITE, wxFont(20, wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_NORMAL, false, wxT("ZRCola"))),
|
||||
m_selSource(0, 0),
|
||||
m_selDestination(0, 0),
|
||||
wxZRColaComposerPanelBase(parent)
|
||||
{
|
||||
// RichEdit control has no inner margins by default.
|
||||
m_source->SetMargins(FromDIP(wxPoint(5, 2)));
|
||||
m_destination->SetMargins(FromDIP(wxPoint(5, 2)));
|
||||
|
||||
m_source->PushEventHandler(&m_keyhandler);
|
||||
}
|
||||
|
||||
|
||||
wxZRColaComposerPanel::~wxZRColaComposerPanel()
|
||||
{
|
||||
m_source->PopEventHandler();
|
||||
|
||||
// This is a controlled exit. Purge saved state.
|
||||
wxString fileName(GetStateFileName());
|
||||
if (wxFileExists(fileName))
|
||||
wxRemoveFile(fileName);
|
||||
}
|
||||
|
||||
|
||||
void wxZRColaComposerPanel::RestoreFromStateFile()
|
||||
{
|
||||
// Restore the previously saved state (if exists).
|
||||
wxString fileName(GetStateFileName());
|
||||
if (wxFileExists(fileName)) {
|
||||
@@ -53,13 +43,13 @@ void wxZRColaComposerPanel::RestoreFromStateFile()
|
||||
file.Read(&n, sizeof(n));
|
||||
if (!file.Error()) {
|
||||
wxString source;
|
||||
file.Read(wxStringBuffer(source, (size_t)n), sizeof(wchar_t)*(size_t)n);
|
||||
file.Read(wxStringBuffer(source, n), sizeof(wchar_t)*n);
|
||||
if (!file.Error()) {
|
||||
// Load destination text.
|
||||
file.Read(&n, sizeof(n));
|
||||
if (!file.Error()) {
|
||||
wxString destination;
|
||||
file.Read(wxStringBuffer(destination, (size_t)n), sizeof(wchar_t)*(size_t)n);
|
||||
file.Read(wxStringBuffer(destination, n), sizeof(wchar_t)*n);
|
||||
if (!file.Error()) {
|
||||
// Restore state.
|
||||
m_source->SetValue(source);
|
||||
@@ -80,6 +70,17 @@ void wxZRColaComposerPanel::RestoreFromStateFile()
|
||||
}
|
||||
|
||||
|
||||
wxZRColaComposerPanel::~wxZRColaComposerPanel()
|
||||
{
|
||||
m_source->PopEventHandler();
|
||||
|
||||
// This is a controlled exit. Purge saved state.
|
||||
wxString fileName(GetStateFileName());
|
||||
if (wxFileExists(fileName))
|
||||
wxRemoveFile(fileName);
|
||||
}
|
||||
|
||||
|
||||
void wxZRColaComposerPanel::SynchronizePanels()
|
||||
{
|
||||
if (m_sourceChanged) {
|
||||
@@ -87,19 +88,19 @@ void wxZRColaComposerPanel::SynchronizePanels()
|
||||
|
||||
auto app = dynamic_cast<ZRColaApp*>(wxTheApp);
|
||||
|
||||
wxString src = m_source->GetValue();
|
||||
size_t len = src.Length();
|
||||
wxString src;
|
||||
size_t len = GetValue(m_source, src);
|
||||
std::wstring dst(src.data(), len), dst2;
|
||||
ZRCola::mapping_vector map;
|
||||
|
||||
m_mapping.clear();
|
||||
|
||||
if (app->m_mainWnd->m_composition) {
|
||||
// ZRCola decompose first, then re-compose.
|
||||
app->m_t_db.TranslateInv(app->m_mainWnd->m_composition_id, dst.data(), dst.size(), dst2, &map);
|
||||
// ZRCola Decomposed => ZRCola Composed should decompose first.
|
||||
app->m_t_db.TranslateInv(ZRCOLA_TRANSEQID_DEFAULT, dst.data(), dst.size(), dst2, &map);
|
||||
m_mapping.push_back(std::move(map));
|
||||
|
||||
app->m_t_db.Translate(app->m_mainWnd->m_composition_id, dst2.data(), dst2.size(), dst, &map);
|
||||
app->m_t_db.Translate(ZRCOLA_TRANSEQID_DEFAULT, dst2.data(), dst2.size(), dst, &map);
|
||||
m_mapping.push_back(std::move(map));
|
||||
}
|
||||
|
||||
@@ -120,8 +121,8 @@ void wxZRColaComposerPanel::SynchronizePanels()
|
||||
// Update destination text, and its HEX dump.
|
||||
m_destination->SetValue(dst);
|
||||
m_destination->SetSelection(
|
||||
m_selDestination.first = (long)MapToDestination(m_selSource.first ),
|
||||
m_selDestination.second = (long)MapToDestination(m_selSource.second));
|
||||
m_selDestination.first = MapToDestination(m_selSource.first ),
|
||||
m_selDestination.second = MapToDestination(m_selSource.second));
|
||||
SetHexValue(m_destinationHex, m_selDestinationHex, m_mappingDestinationHex, dst.data(), dst.length(), m_selDestination.first, m_selDestination.second);
|
||||
|
||||
// Schedule state save after 3s.
|
||||
@@ -131,8 +132,8 @@ void wxZRColaComposerPanel::SynchronizePanels()
|
||||
|
||||
auto app = dynamic_cast<ZRColaApp*>(wxTheApp);
|
||||
|
||||
wxString src = m_destination->GetValue();
|
||||
size_t len = src.Length();
|
||||
wxString src;
|
||||
size_t len = GetValue(m_destination, src);
|
||||
std::wstring dst(src.data(), len), dst2;
|
||||
ZRCola::mapping_vector map;
|
||||
|
||||
@@ -150,12 +151,8 @@ void wxZRColaComposerPanel::SynchronizePanels()
|
||||
}
|
||||
|
||||
if (app->m_mainWnd->m_composition) {
|
||||
// ZRCola decompose.
|
||||
app->m_t_db.TranslateInv(app->m_mainWnd->m_composition_id, dst.data(), dst.size(), &app->m_lc_db, app->m_mainWnd->m_settings->m_lang, dst2, &map);
|
||||
dst = std::move(dst2);
|
||||
|
||||
map.invert();
|
||||
m_mapping.push_back(std::move(map));
|
||||
// ZRCola Decomposed => ZRCola Composed
|
||||
app->m_t_db.TranslateInv(ZRCOLA_TRANSEQID_DEFAULT, dst.data(), dst.size(), &app->m_lc_db, app->m_mainWnd->m_settings->m_lang, dst2, &map);
|
||||
}
|
||||
|
||||
m_destination->GetSelection(&m_selDestination.first, &m_selDestination.second);
|
||||
@@ -166,8 +163,8 @@ void wxZRColaComposerPanel::SynchronizePanels()
|
||||
// Update source text, and its HEX dump.
|
||||
m_source->SetValue(dst);
|
||||
m_source->SetSelection(
|
||||
m_selSource.first = (long)MapToSource(m_selDestination.first ),
|
||||
m_selSource.second = (long)MapToSource(m_selDestination.second));
|
||||
m_selSource.first = MapToSource(m_selDestination.first ),
|
||||
m_selSource.second = MapToSource(m_selDestination.second));
|
||||
SetHexValue(m_sourceHex, m_selSourceHex, m_mappingSourceHex, dst.data(), dst.length(), m_selSource.first, m_selSource.second);
|
||||
|
||||
// Schedule state save after 3s.
|
||||
@@ -179,13 +176,11 @@ void wxZRColaComposerPanel::SynchronizePanels()
|
||||
}
|
||||
|
||||
|
||||
|
||||
void wxZRColaComposerPanel::OnSourcePaint(wxPaintEvent& event)
|
||||
{
|
||||
event.Skip();
|
||||
|
||||
if (m_sourceRestyled)
|
||||
return;
|
||||
|
||||
long from, to;
|
||||
m_source->GetSelection(&from, &to);
|
||||
|
||||
@@ -195,16 +190,16 @@ void wxZRColaComposerPanel::OnSourcePaint(wxPaintEvent& event)
|
||||
m_selSource.second = to;
|
||||
|
||||
m_sourceHex->SetSelection(
|
||||
m_selSourceHex.first = (long)m_mappingSourceHex.to_dst(from),
|
||||
m_selSourceHex.second = (long)m_mappingSourceHex.to_dst(to ));
|
||||
m_selSourceHex.first = m_mappingSourceHex.to_dst(from),
|
||||
m_selSourceHex.second = m_mappingSourceHex.to_dst(to ));
|
||||
|
||||
m_destination->SetSelection(
|
||||
m_selDestination.first = (long)MapToDestination(from),
|
||||
m_selDestination.second = (long)MapToDestination(to ));
|
||||
m_selDestination.first = MapToDestination(from),
|
||||
m_selDestination.second = MapToDestination(to ));
|
||||
|
||||
m_destinationHex->SetSelection(
|
||||
m_selDestinationHex.first = (long)m_mappingDestinationHex.to_dst(m_selDestination.first ),
|
||||
m_selDestinationHex.second = (long)m_mappingDestinationHex.to_dst(m_selDestination.second));
|
||||
m_selDestinationHex.first = m_mappingDestinationHex.to_dst(m_selDestination.first ),
|
||||
m_selDestinationHex.second = m_mappingDestinationHex.to_dst(m_selDestination.second));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -222,16 +217,16 @@ void wxZRColaComposerPanel::OnSourceHexPaint(wxPaintEvent& event)
|
||||
m_selSourceHex.second = to;
|
||||
|
||||
m_source->SetSelection(
|
||||
m_selSource.first = (long)m_mappingSourceHex.to_src(from),
|
||||
m_selSource.second = (long)m_mappingSourceHex.to_src(to ));
|
||||
m_selSource.first = m_mappingSourceHex.to_src(from),
|
||||
m_selSource.second = m_mappingSourceHex.to_src(to ));
|
||||
|
||||
m_destination->SetSelection(
|
||||
m_selDestination.first = (long)MapToDestination(m_selSource.first ),
|
||||
m_selDestination.second = (long)MapToDestination(m_selSource.second));
|
||||
m_selDestination.first = MapToDestination(m_selSource.first ),
|
||||
m_selDestination.second = MapToDestination(m_selSource.second));
|
||||
|
||||
m_destinationHex->SetSelection(
|
||||
m_selDestinationHex.first = (long)m_mappingDestinationHex.to_dst(m_selDestination.first ),
|
||||
m_selDestinationHex.second = (long)m_mappingDestinationHex.to_dst(m_selDestination.second));
|
||||
m_selDestinationHex.first = m_mappingDestinationHex.to_dst(m_selDestination.first ),
|
||||
m_selDestinationHex.second = m_mappingDestinationHex.to_dst(m_selDestination.second));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -240,15 +235,8 @@ void wxZRColaComposerPanel::OnSourceText(wxCommandEvent& event)
|
||||
{
|
||||
event.Skip();
|
||||
|
||||
if (m_sourceRestyled)
|
||||
return;
|
||||
|
||||
// Set the flag the source text changed to trigger idle-time translation.
|
||||
m_sourceChanged = true;
|
||||
|
||||
m_sourceRestyled = true;
|
||||
m_source->SetStyle(0, GetWindowTextLength(m_source->GetHWND()), m_styleNormal);
|
||||
m_sourceRestyled = false;
|
||||
}
|
||||
|
||||
|
||||
@@ -256,9 +244,6 @@ void wxZRColaComposerPanel::OnDestinationPaint(wxPaintEvent& event)
|
||||
{
|
||||
event.Skip();
|
||||
|
||||
if (m_destinationRestyled)
|
||||
return;
|
||||
|
||||
long from, to;
|
||||
m_destination->GetSelection(&from, &to);
|
||||
|
||||
@@ -268,16 +253,16 @@ void wxZRColaComposerPanel::OnDestinationPaint(wxPaintEvent& event)
|
||||
m_selDestination.second = to;
|
||||
|
||||
m_destinationHex->SetSelection(
|
||||
m_selDestinationHex.first = (long)m_mappingDestinationHex.to_dst(from),
|
||||
m_selDestinationHex.second = (long)m_mappingDestinationHex.to_dst(to ));
|
||||
m_selDestinationHex.first = m_mappingDestinationHex.to_dst(from),
|
||||
m_selDestinationHex.second = m_mappingDestinationHex.to_dst(to ));
|
||||
|
||||
m_source->SetSelection(
|
||||
m_selSource.first = (long)MapToSource(from),
|
||||
m_selSource.second = (long)MapToSource(to ));
|
||||
m_selSource.first = MapToSource(from),
|
||||
m_selSource.second = MapToSource(to ));
|
||||
|
||||
m_sourceHex->SetSelection(
|
||||
m_selSourceHex.first = (long)m_mappingSourceHex.to_dst(m_selSource.first ),
|
||||
m_selSourceHex.second = (long)m_mappingSourceHex.to_dst(m_selSource.second));
|
||||
m_selSourceHex.first = m_mappingSourceHex.to_dst(m_selSource.first ),
|
||||
m_selSourceHex.second = m_mappingSourceHex.to_dst(m_selSource.second));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -295,16 +280,16 @@ void wxZRColaComposerPanel::OnDestinationHexPaint(wxPaintEvent& event)
|
||||
m_selDestinationHex.second = to;
|
||||
|
||||
m_destination->SetSelection(
|
||||
m_selDestination.first = (long)m_mappingDestinationHex.to_src(from),
|
||||
m_selDestination.second = (long)m_mappingDestinationHex.to_src(to ));
|
||||
m_selDestination.first = m_mappingDestinationHex.to_src(from),
|
||||
m_selDestination.second = m_mappingDestinationHex.to_src(to ));
|
||||
|
||||
m_source->SetSelection(
|
||||
m_selSource.first = (long)MapToSource(m_selDestination.first ),
|
||||
m_selSource.second = (long)MapToSource(m_selDestination.second));
|
||||
m_selSource.first = MapToSource(m_selDestination.first ),
|
||||
m_selSource.second = MapToSource(m_selDestination.second));
|
||||
|
||||
m_sourceHex->SetSelection(
|
||||
m_selSourceHex.first = (long)m_mappingSourceHex.to_dst(m_selSource.first ),
|
||||
m_selSourceHex.second = (long)m_mappingSourceHex.to_dst(m_selSource.second));
|
||||
m_selSourceHex.first = m_mappingSourceHex.to_dst(m_selSource.first ),
|
||||
m_selSourceHex.second = m_mappingSourceHex.to_dst(m_selSource.second));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -313,34 +298,8 @@ void wxZRColaComposerPanel::OnDestinationText(wxCommandEvent& event)
|
||||
{
|
||||
event.Skip();
|
||||
|
||||
if (m_destinationRestyled)
|
||||
return;
|
||||
|
||||
// Set the flag the destination text changed to trigger idle-time inverse translation.
|
||||
m_destinationChanged = true;
|
||||
|
||||
auto app = dynamic_cast<ZRColaApp*>(wxTheApp);
|
||||
m_destinationRestyled = true;
|
||||
wxString src = m_destination->GetValue();
|
||||
app->m_h_db.Highlight(src, src.Length(), [this, app, src](ZRCola::hlghtsetid_t set, size_t start, size_t end) {
|
||||
switch (set) {
|
||||
case ZRCOLA_HLGHTSETID_ZRCOLA_UNICODE_COMPOSED_ISSUES:
|
||||
m_destination->SetStyle((long)start, (long)end, m_styleZRColaUnicodeComposedIssues);
|
||||
break;
|
||||
|
||||
default:
|
||||
if (app->m_mainWnd->m_warnPUA) {
|
||||
for (size_t i = start, j; i < end;) {
|
||||
bool pua_i = ZRCola::ispua(src[i]);
|
||||
for (j = i + 1; j < end && pua_i == ZRCola::ispua(src[j]); j++);
|
||||
m_destination->SetStyle((long)i, (long)j, pua_i ? m_stylePUA : m_styleNormal);
|
||||
i = j;
|
||||
}
|
||||
} else
|
||||
m_destination->SetStyle((long)start, (long)end, m_styleNormal);
|
||||
}
|
||||
});
|
||||
m_destinationRestyled = false;
|
||||
}
|
||||
|
||||
|
||||
@@ -349,21 +308,18 @@ void wxZRColaComposerPanel::OnSaveTimer(wxTimerEvent& event)
|
||||
wxString fileName(GetStateFileName());
|
||||
wxFFile file(fileName, wxT("wb"));
|
||||
if (file.IsOpened()) {
|
||||
{
|
||||
// Save source text.
|
||||
wxString text = m_source->GetValue();
|
||||
size_t len = text.Length();
|
||||
file.Write(&len, sizeof(len));
|
||||
file.Write((const wchar_t*)text, sizeof(wchar_t)*len);
|
||||
}
|
||||
wxString text;
|
||||
size_t len;
|
||||
|
||||
{
|
||||
// Save destination text.
|
||||
wxString text = m_destination->GetValue();
|
||||
size_t len = text.Length();
|
||||
file.Write(&len, sizeof(len));
|
||||
file.Write((const wchar_t*)text, sizeof(wchar_t)*len);
|
||||
}
|
||||
// Save source text.
|
||||
len = GetValue(m_source, text);
|
||||
file.Write(&len, sizeof(len));
|
||||
file.Write((const wchar_t*)text, sizeof(wchar_t)*len);
|
||||
|
||||
// Save destination text.
|
||||
len = GetValue(m_destination, text);
|
||||
file.Write(&len, sizeof(len));
|
||||
file.Write((const wchar_t*)text, sizeof(wchar_t)*len);
|
||||
}
|
||||
|
||||
event.Skip();
|
||||
@@ -388,6 +344,31 @@ wxString wxZRColaComposerPanel::GetStateFileName()
|
||||
}
|
||||
|
||||
|
||||
size_t wxZRColaComposerPanel::GetValue(wxTextCtrl *wnd, wxString &text)
|
||||
{
|
||||
#ifdef __WINDOWS__
|
||||
// Use Windows GetWindowText() function to avoid line ending conversion incompletely imposed by wxWidgets.
|
||||
WXHWND hWnd = wnd->GetHWND();
|
||||
size_t len = ::GetWindowTextLengthW(hWnd);
|
||||
if (len < 0x100) {
|
||||
WCHAR buf[0x100];
|
||||
::GetWindowTextW(hWnd, buf, len + 1);
|
||||
text.assign(buf, len);
|
||||
} else {
|
||||
LPWSTR buf = new WCHAR[len + 1];
|
||||
::GetWindowTextW(hWnd, buf, len + 1);
|
||||
text.assign(buf, len);
|
||||
delete [] buf;
|
||||
}
|
||||
|
||||
return len;
|
||||
#else
|
||||
text = wnd->GetValue();
|
||||
return text.Length();
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
void wxZRColaComposerPanel::SetHexValue(wxTextCtrl *wnd, std::pair<long, long> &range, ZRCola::mapping_vector &mapping, const wchar_t *src, size_t len, long from, long to)
|
||||
{
|
||||
wxString hex;
|
||||
@@ -396,8 +377,8 @@ void wxZRColaComposerPanel::SetHexValue(wxTextCtrl *wnd, std::pair<long, long> &
|
||||
mapping.clear();
|
||||
for (size_t i = 0; i < len && src[i]; i++) {
|
||||
wchar_t c = src[i];
|
||||
if (c == L'\n') {
|
||||
hex += L"\r\n";
|
||||
if (c == L'\n' || c == '\r') {
|
||||
hex += c;
|
||||
first = true;
|
||||
} else {
|
||||
hex += wxString::Format(first ? wxT("%04X") : wxT(" %04X"), src[i]);
|
||||
@@ -408,8 +389,8 @@ void wxZRColaComposerPanel::SetHexValue(wxTextCtrl *wnd, std::pair<long, long> &
|
||||
|
||||
wnd->SetValue(hex);
|
||||
wnd->SetSelection(
|
||||
range.first = (long)mapping.to_dst(from),
|
||||
range.second = (long)mapping.to_dst(to ));
|
||||
range.first = mapping.to_dst(from),
|
||||
range.second = mapping.to_dst(to ));
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -1,6 +1,20 @@
|
||||
/*
|
||||
SPDX-License-Identifier: GPL-3.0-or-later
|
||||
Copyright © 2015-2021 Amebis
|
||||
/*
|
||||
Copyright 2015-2018 Amebis
|
||||
|
||||
This file is part of ZRCola.
|
||||
|
||||
ZRCola is free software: you can redistribute it and/or modify it
|
||||
under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
ZRCola is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with ZRCola. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
///
|
||||
@@ -11,17 +25,10 @@ class wxZRColaComposerPanel;
|
||||
|
||||
#pragma once
|
||||
|
||||
#include <wxex/common.h>
|
||||
#pragma warning(push)
|
||||
#pragma warning(disable: WXWIDGETS_CODE_ANALYSIS_WARNINGS)
|
||||
#include "zrcolagui.h"
|
||||
#pragma warning(pop)
|
||||
#include "zrcolakeyhndlr.h"
|
||||
#pragma warning(push)
|
||||
#pragma warning(disable: WXWIDGETS_CODE_ANALYSIS_WARNINGS)
|
||||
#include <wx/persist/window.h>
|
||||
#include <wx/timer.h>
|
||||
#pragma warning(pop)
|
||||
#include <utility>
|
||||
#include <vector>
|
||||
|
||||
@@ -35,7 +42,6 @@ public:
|
||||
wxZRColaComposerPanel(wxWindow* parent);
|
||||
virtual ~wxZRColaComposerPanel();
|
||||
|
||||
void RestoreFromStateFile();
|
||||
void SynchronizePanels();
|
||||
|
||||
friend class wxPersistentZRColaComposerPanel; // Allow saving/restoring window state.
|
||||
@@ -53,18 +59,12 @@ protected:
|
||||
inline void GetTranslationSeq(_Out_ const ZRCola::transetid_t *&sets_begin, _Out_ const ZRCola::transetid_t *&sets_end) const;
|
||||
|
||||
static wxString GetStateFileName();
|
||||
static size_t GetValue(wxTextCtrl *wnd, wxString &text);
|
||||
static void SetHexValue(wxTextCtrl *wnd, std::pair<long, long> &range, ZRCola::mapping_vector &mapping, const wchar_t *src, size_t len, long from, long to);
|
||||
|
||||
protected:
|
||||
bool m_sourceChanged; ///< Boolean flag to mark source text "dirty" to trigger translation
|
||||
bool m_destinationChanged; ///< Boolean flag to mark destination text "dirty" to trigger inverse translation
|
||||
volatile bool
|
||||
m_sourceRestyled, ///< Boolean flag to mark source text is being restyled
|
||||
m_destinationRestyled; ///< Boolean flag to mark destination text is being restyled
|
||||
wxTextAttr
|
||||
m_styleNormal, ///< Normal text style
|
||||
m_stylePUA, ///< PUA character text style
|
||||
m_styleZRColaUnicodeComposedIssues; ///< ZRCola Unicode Composed issues character text style
|
||||
std::vector<ZRCola::mapping_vector> m_mapping; ///< Character index mapping vector between source and normalized text
|
||||
std::pair<long, long>
|
||||
m_selSource, ///< Character index of selected text in source text control
|
||||
|
||||
@@ -1,9 +1,23 @@
|
||||
/*
|
||||
SPDX-License-Identifier: GPL-3.0-or-later
|
||||
Copyright © 2015-2021 Amebis
|
||||
/*
|
||||
Copyright 2015-2018 Amebis
|
||||
|
||||
This file is part of ZRCola.
|
||||
|
||||
ZRCola is free software: you can redistribute it and/or modify it
|
||||
under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
ZRCola is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with ZRCola. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include "pch.h"
|
||||
#include "stdafx.h"
|
||||
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
@@ -18,7 +32,6 @@ wxBEGIN_EVENT_TABLE(wxZRColaFrame, wxZRColaFrameBase)
|
||||
EVT_UPDATE_UI (wxID_SELECTALL , wxZRColaFrame::OnForwardEventUpdate )
|
||||
EVT_MENU (wxID_SELECTALL , wxZRColaFrame::OnForwardEvent )
|
||||
|
||||
EVT_UPDATE_UI (wxID_CHARACTER_SELECTOR , wxZRColaFrame::OnInsertCharacterUpdate )
|
||||
EVT_MENU (wxID_CHARACTER_SELECTOR , wxZRColaFrame::OnInsertCharacter )
|
||||
|
||||
EVT_UPDATE_UI_RANGE(wxID_SEND_DESTINATION , wxID_SEND_ABORT , wxZRColaFrame::OnSendUpdate )
|
||||
@@ -28,10 +41,8 @@ wxBEGIN_EVENT_TABLE(wxZRColaFrame, wxZRColaFrameBase)
|
||||
EVT_MENU (wxID_SEND_SOURCE , wxZRColaFrame::OnSendSource )
|
||||
EVT_MENU (wxID_SEND_ABORT , wxZRColaFrame::OnSendAbort )
|
||||
|
||||
EVT_MENU (wxID_COMPOSITION_NONE , wxZRColaFrame::OnCompositionNone )
|
||||
EVT_MENU (wxID_COMPOSITION_ZRCOLA , wxZRColaFrame::OnCompositionZRCola )
|
||||
EVT_MENU (wxID_COMPOSITION_UNICODE , wxZRColaFrame::OnCompositionUnicode )
|
||||
EVT_MENU (wxID_WARN_PUA , wxZRColaFrame::OnWarnPUA )
|
||||
EVT_MENU (wxID_COMPOSITION_MENU , wxZRColaFrame::OnCompositionMenu )
|
||||
EVT_MENU (wxID_COMPOSITION_TOOLBAR , wxZRColaFrame::OnCompositionToolbar )
|
||||
EVT_MENU_RANGE (wxID_TRANSLATION_SEQ_DEFAULT, wxID_TRANSLATION_SEQ_END, wxZRColaFrame::OnTranslationSeqMenu )
|
||||
|
||||
EVT_MENU (wxID_SETTINGS , wxZRColaFrame::OnSettings )
|
||||
@@ -63,8 +74,6 @@ wxZRColaFrame::wxZRColaFrame() :
|
||||
m_settings(NULL),
|
||||
m_chrReq(NULL),
|
||||
m_composition(true),
|
||||
m_composition_id(ZRCOLA_TRANSETID_DEFAULT),
|
||||
m_warnPUA(false),
|
||||
m_transeq_id(ZRCOLA_TRANSEQID_DEFAULT),
|
||||
m_transeq(NULL),
|
||||
wxZRColaFrameBase(NULL)
|
||||
@@ -91,11 +100,11 @@ wxZRColaFrame::wxZRColaFrame() :
|
||||
wxString
|
||||
name(ts.name(), ts.name_len()),
|
||||
name_tran(wxGetTranslation(name, wxT("ZRCola-zrcdb")));
|
||||
m_menuTranslationSeq->AppendRadioItem((int)(wxID_TRANSLATION_SEQ_START + i), name_tran);
|
||||
m_menuTranslationSeq->AppendRadioItem(wxID_TRANSLATION_SEQ_START + i, name_tran);
|
||||
m_toolTranslationSeq->Append(name_tran, reinterpret_cast<void*>(ts.seq));
|
||||
} else {
|
||||
wxString name_tran(_("Custom Translation..."));
|
||||
m_menuTranslationSeq->AppendRadioItem((int)(wxID_TRANSLATION_SEQ_START + i), name_tran);
|
||||
m_menuTranslationSeq->AppendRadioItem(wxID_TRANSLATION_SEQ_START + i, name_tran);
|
||||
m_toolTranslationSeq->Append(name_tran, reinterpret_cast<void*>(ZRCOLA_TRANSEQID_CUSTOM));
|
||||
break;
|
||||
}
|
||||
@@ -144,14 +153,13 @@ wxZRColaFrame::wxZRColaFrame() :
|
||||
// Register notification sink for language detection.
|
||||
m_ulRefCount = 1;
|
||||
m_tfSource = NULL;
|
||||
m_dwCookie = MAXDWORD;
|
||||
ITfInputProcessorProfiles *pProfiles;
|
||||
HRESULT hr = CoCreateInstance(CLSID_TF_InputProcessorProfiles, NULL, CLSCTX_INPROC_SERVER, IID_ITfInputProcessorProfiles, (LPVOID*)&pProfiles);
|
||||
if(SUCCEEDED(hr)) {
|
||||
hr = pProfiles->QueryInterface(IID_ITfSource, (LPVOID*)&m_tfSource);
|
||||
if(SUCCEEDED(hr)) {
|
||||
hr = m_tfSource->AdviseSink(IID_ITfLanguageProfileNotifySink, (ITfLanguageProfileNotifySink*)this, &m_dwCookie);
|
||||
if (FAILED(hr) || m_dwCookie == MAXDWORD) {
|
||||
if (FAILED(hr) || m_dwCookie == -1) {
|
||||
m_tfSource->Release();
|
||||
m_tfSource = NULL;
|
||||
}
|
||||
@@ -177,23 +185,12 @@ wxZRColaFrame::wxZRColaFrame() :
|
||||
persist_mgr.RegisterAndRestore(this, new wxPersistentZRColaFrame(this));
|
||||
|
||||
// Update (de)composition selection.
|
||||
if (m_composition && m_composition_id == ZRCOLA_TRANSETID_DEFAULT) {
|
||||
m_menuItemCompositionZRCola->Check(true);
|
||||
m_toolComposition->Select(1);
|
||||
} else if (m_composition && m_composition_id == ZRCOLA_TRANSETID_UNICODE) {
|
||||
m_menuItemCompositionUnicode->Check(true);
|
||||
m_toolComposition->Select(2);
|
||||
if (m_composition) {
|
||||
m_menuItemComposition->Check(true);
|
||||
m_toolComposition->SetState(m_toolComposition->GetState() | wxAUI_BUTTON_STATE_CHECKED);
|
||||
} else {
|
||||
m_menuItemCompositionNone->Check(true);
|
||||
m_toolComposition->Select(0);
|
||||
}
|
||||
|
||||
if (m_warnPUA) {
|
||||
m_menuItemWarnPUA->Check(true);
|
||||
m_toolWarnPUA->SetState(m_toolWarnPUA->GetState() | wxAUI_BUTTON_STATE_CHECKED);
|
||||
} else {
|
||||
m_menuItemWarnPUA->Check(false);
|
||||
m_toolWarnPUA->SetState(m_toolWarnPUA->GetState() & ~wxAUI_BUTTON_STATE_CHECKED);
|
||||
m_menuItemComposition->Check(false);
|
||||
m_toolComposition->SetState(m_toolComposition->GetState() & ~wxAUI_BUTTON_STATE_CHECKED);
|
||||
}
|
||||
|
||||
// Update translation sequence selection.
|
||||
@@ -272,15 +269,12 @@ void wxZRColaFrame::OnForwardEvent(wxCommandEvent& event)
|
||||
}
|
||||
|
||||
|
||||
void wxZRColaFrame::OnInsertCharacterUpdate(wxUpdateUIEvent& event)
|
||||
{
|
||||
event.Check(m_chrSelect->IsVisible());
|
||||
}
|
||||
|
||||
|
||||
void wxZRColaFrame::OnInsertCharacter(wxCommandEvent& event)
|
||||
{
|
||||
m_chrSelect->Show(!m_chrSelect->IsVisible());
|
||||
if (m_chrSelect->ShowModal() == wxID_OK && !m_chrSelect->m_char.empty()) {
|
||||
m_panel->m_source->WriteText(m_chrSelect->m_char);
|
||||
m_panel->m_source->SetFocus();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -330,6 +324,7 @@ void wxZRColaFrame::OnSendAbort(wxCommandEvent& event)
|
||||
{
|
||||
if (m_hWndSource) {
|
||||
// Return focus to the source window.
|
||||
::SetWindowPos(m_hWnd, HWND_NOTOPMOST, 0, 0, 0, 0, SWP_NOMOVE | SWP_NOSIZE);
|
||||
if (m_wasIconised) Iconize();
|
||||
::SetActiveWindow(m_hWndSource);
|
||||
::SetForegroundWindow(m_hWndSource);
|
||||
@@ -344,53 +339,28 @@ void wxZRColaFrame::OnSendAbort(wxCommandEvent& event)
|
||||
}
|
||||
|
||||
|
||||
void wxZRColaFrame::OnCompositionNone(wxCommandEvent& event)
|
||||
void wxZRColaFrame::OnCompositionMenu(wxCommandEvent& event)
|
||||
{
|
||||
DoSetComposition(false, ZRCOLA_TRANSETID_DEFAULT);
|
||||
m_composition = m_menuItemComposition->IsChecked();
|
||||
m_toolComposition->SetState((m_toolComposition->GetState() & ~wxAUI_BUTTON_STATE_CHECKED) | (m_composition ? wxAUI_BUTTON_STATE_CHECKED : 0));
|
||||
m_toolbarTranslate->Refresh();
|
||||
|
||||
event.Skip();
|
||||
}
|
||||
|
||||
|
||||
void wxZRColaFrame::OnCompositionZRCola(wxCommandEvent& event)
|
||||
{
|
||||
DoSetComposition(true, ZRCOLA_TRANSETID_DEFAULT);
|
||||
m_toolbarTranslate->Refresh();
|
||||
|
||||
event.Skip();
|
||||
}
|
||||
|
||||
|
||||
void wxZRColaFrame::OnCompositionUnicode(wxCommandEvent& event)
|
||||
{
|
||||
DoSetComposition(true, ZRCOLA_TRANSETID_UNICODE);
|
||||
m_toolbarTranslate->Refresh();
|
||||
|
||||
event.Skip();
|
||||
}
|
||||
|
||||
|
||||
void wxZRColaFrame::OnCompositionChoice(wxCommandEvent& event)
|
||||
{
|
||||
switch (event.GetSelection()) {
|
||||
case 0: DoSetComposition(false, ZRCOLA_TRANSETID_DEFAULT); break;
|
||||
case 1: DoSetComposition(true, ZRCOLA_TRANSETID_DEFAULT); break;
|
||||
case 2: DoSetComposition(true, ZRCOLA_TRANSETID_UNICODE); break;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
void wxZRColaFrame::OnWarnPUA(wxCommandEvent& event)
|
||||
{
|
||||
m_warnPUA = !m_warnPUA;
|
||||
m_menuItemWarnPUA->Check(m_warnPUA);
|
||||
m_toolWarnPUA->SetState((m_toolWarnPUA->GetState() & ~wxAUI_BUTTON_STATE_CHECKED) | (m_warnPUA ? wxAUI_BUTTON_STATE_CHECKED : 0));
|
||||
m_toolbarTranslate->Refresh();
|
||||
|
||||
// Notify destination text something changed and should re-paint.
|
||||
// Notify source text something changed and should re-translate.
|
||||
wxCommandEvent event2(wxEVT_COMMAND_TEXT_UPDATED);
|
||||
m_panel->m_destination->ProcessWindowEvent(event2);
|
||||
m_panel->m_source->ProcessWindowEvent(event2);
|
||||
|
||||
event.Skip();
|
||||
}
|
||||
|
||||
|
||||
void wxZRColaFrame::OnCompositionToolbar(wxCommandEvent& event)
|
||||
{
|
||||
m_composition = (m_toolComposition->GetState() & wxAUI_BUTTON_STATE_CHECKED) ? true : false;
|
||||
m_menuItemComposition->Check(m_composition);
|
||||
|
||||
// Notify source text something changed and should re-translate.
|
||||
wxCommandEvent event2(wxEVT_COMMAND_TEXT_UPDATED);
|
||||
m_panel->m_source->ProcessWindowEvent(event2);
|
||||
|
||||
event.Skip();
|
||||
}
|
||||
@@ -520,7 +490,6 @@ void wxZRColaFrame::OnHelpShortcuts(wxCommandEvent& event)
|
||||
|
||||
#ifdef __WXMSW__
|
||||
// Search and try to launch installed PDF.
|
||||
#pragma warning(suppress: 26812) // INSTALLSTATE is unscoped.
|
||||
INSTALLSTATE pdf_is = ::MsiGetComponentPath(_T(PRODUCT_VERSION_GUID), _T("{68AC2C38-10E2-41A3-B92C-844C03FFDF6A}"), pdf_path);
|
||||
if ((pdf_is == INSTALLSTATE_LOCAL || pdf_is == INSTALLSTATE_SOURCE) &&
|
||||
wxFileExists(pdf_path) &&
|
||||
@@ -622,10 +591,10 @@ void wxZRColaFrame::DoSend(const wxString& str)
|
||||
{
|
||||
// Prepare the INPUT table.
|
||||
wxString::size_type n = str.length();
|
||||
wxString::const_iterator i_str = str.begin();
|
||||
auto i_str = str.begin();
|
||||
std::vector<INPUT> input;
|
||||
input.reserve(n*2);
|
||||
for (std::vector<INPUT>::size_type i = 0; i < n; i++, ++i_str) {
|
||||
for (std::vector<INPUT>::size_type i = 0; i < n; i++, i_str++) {
|
||||
wxString::char_type c = *i_str;
|
||||
|
||||
// Add key down event.
|
||||
@@ -640,11 +609,12 @@ void wxZRColaFrame::DoSend(const wxString& str)
|
||||
}
|
||||
|
||||
// Return focus to the source window and send the input.
|
||||
::SetWindowPos(m_hWnd, HWND_NOTOPMOST, 0, 0, 0, 0, SWP_NOMOVE | SWP_NOSIZE);
|
||||
if (m_wasIconised) Iconize();
|
||||
::SetActiveWindow(m_hWndSource);
|
||||
::SetForegroundWindow(m_hWndSource);
|
||||
::Sleep(200);
|
||||
::SendInput((UINT)input.size(), input.data(), sizeof(INPUT));
|
||||
::SendInput(input.size(), input.data(), sizeof(INPUT));
|
||||
m_hWndSource = NULL;
|
||||
|
||||
// Select all input in source and destination to prepare for the overwrite next time.
|
||||
@@ -661,6 +631,7 @@ void wxZRColaFrame::DoCopyAndReturn(const wxString& str)
|
||||
}
|
||||
|
||||
// Return focus to the source window.
|
||||
::SetWindowPos(m_hWnd, HWND_NOTOPMOST, 0, 0, 0, 0, SWP_NOMOVE | SWP_NOSIZE);
|
||||
if (m_wasIconised) Iconize();
|
||||
::SetActiveWindow(m_hWndSource);
|
||||
::SetForegroundWindow(m_hWndSource);
|
||||
@@ -672,30 +643,6 @@ void wxZRColaFrame::DoCopyAndReturn(const wxString& str)
|
||||
}
|
||||
|
||||
|
||||
void wxZRColaFrame::DoSetComposition(bool enable, ZRCola::transetid_t transet_id)
|
||||
{
|
||||
if (enable && transet_id == ZRCOLA_TRANSETID_DEFAULT) {
|
||||
m_composition = true;
|
||||
m_composition_id = ZRCOLA_TRANSETID_DEFAULT;
|
||||
m_menuItemCompositionZRCola->Check(true);
|
||||
m_toolComposition->Select(1);
|
||||
} else if (enable && transet_id == ZRCOLA_TRANSETID_UNICODE) {
|
||||
m_composition = true;
|
||||
m_composition_id = ZRCOLA_TRANSETID_UNICODE;
|
||||
m_menuItemCompositionUnicode->Check(true);
|
||||
m_toolComposition->Select(2);
|
||||
} else {
|
||||
m_composition = false;
|
||||
m_menuItemCompositionNone->Check(true);
|
||||
m_toolComposition->Select(0);
|
||||
}
|
||||
|
||||
// Notify source text something changed and should re-translate.
|
||||
wxCommandEvent event2(wxEVT_COMMAND_TEXT_UPDATED);
|
||||
m_panel->m_source->ProcessWindowEvent(event2);
|
||||
}
|
||||
|
||||
|
||||
void wxZRColaFrame::DoSetTranslationSeq(int idx, ZRCola::transeqid_t transeq_id)
|
||||
{
|
||||
if (transeq_id == ZRCOLA_TRANSEQID_CUSTOM) {
|
||||
@@ -753,6 +700,7 @@ WXLRESULT wxZRColaFrame::MSWWindowProc(WXUINT message, WXWPARAM wParam, WXLPARAM
|
||||
Show(true);
|
||||
Iconize(false);
|
||||
Raise();
|
||||
::SetWindowPos(m_hWnd, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOMOVE | SWP_NOSIZE);
|
||||
::SetActiveWindow(m_hWnd);
|
||||
//} else if (wxAppBarIsDocked(m_state)) {
|
||||
// // ZRCola window is currently docked.
|
||||
@@ -796,8 +744,6 @@ void wxPersistentZRColaFrame::Save() const
|
||||
auto wnd = static_cast<const wxZRColaFrame*>(GetWindow()); // dynamic_cast is not reliable as we are typically called late in the wxTopLevelWindowMSW destructor.
|
||||
|
||||
SaveValue(wxT("composition"), wnd->m_composition);
|
||||
SaveValue(wxT("compositionId"), static_cast<int>(wnd->m_composition_id));
|
||||
SaveValue(wxT("warnPUA"), wnd->m_warnPUA);
|
||||
SaveValue(wxT("transeqId"), static_cast<int>(wnd->m_transeq_id));
|
||||
|
||||
wxPersistentZRColaComposerPanel(wnd->m_panel).Save();
|
||||
@@ -814,19 +760,13 @@ bool wxPersistentZRColaFrame::Restore()
|
||||
|
||||
int num;
|
||||
if (RestoreValue(wxT("transeqId"), &num))
|
||||
wnd->m_transeq_id = (ZRCola::transeqid_t)num;
|
||||
wnd->m_transeq_id = num;
|
||||
|
||||
bool b;
|
||||
if (RestoreValue(wxT("composition"), &b))
|
||||
wnd->m_composition = b;
|
||||
else
|
||||
wnd->m_composition = wnd->m_transeq_id == ZRCOLA_TRANSEQID_DEFAULT;
|
||||
if (RestoreValue(wxT("compositionId"), &num))
|
||||
wnd->m_composition_id = (ZRCola::transetid_t)num;
|
||||
if (RestoreValue(wxT("warnPUA"), &b))
|
||||
wnd->m_warnPUA = b;
|
||||
else
|
||||
wnd->m_warnPUA = false;
|
||||
|
||||
int guiLevel;
|
||||
return RestoreValue(wxT("guiLevel"), &guiLevel) && guiLevel == s_guiLevel ? wxPersistentTLWEx::Restore() : true;
|
||||
|
||||
@@ -1,6 +1,20 @@
|
||||
/*
|
||||
SPDX-License-Identifier: GPL-3.0-or-later
|
||||
Copyright © 2015-2021 Amebis
|
||||
/*
|
||||
Copyright 2015-2018 Amebis
|
||||
|
||||
This file is part of ZRCola.
|
||||
|
||||
ZRCola is free software: you can redistribute it and/or modify it
|
||||
under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
ZRCola is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with ZRCola. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
///
|
||||
@@ -12,11 +26,7 @@ class wxPersistentZRColaFrame;
|
||||
|
||||
#pragma once
|
||||
|
||||
#include <wxex/common.h>
|
||||
#pragma warning(push)
|
||||
#pragma warning(disable: WXWIDGETS_CODE_ANALYSIS_WARNINGS)
|
||||
#include "zrcolagui.h"
|
||||
#pragma warning(pop)
|
||||
#include "zrcolachrslct.h"
|
||||
#include "zrcolachrreq.h"
|
||||
#include "zrcolasettings.h"
|
||||
@@ -24,10 +34,7 @@ class wxPersistentZRColaFrame;
|
||||
#include <zrcola/language.h>
|
||||
#include <zrcola/translate.h>
|
||||
#include <wxex/persist/toplevel.h>
|
||||
#pragma warning(push)
|
||||
#pragma warning(disable: WXWIDGETS_CODE_ANALYSIS_WARNINGS)
|
||||
#include <wx/taskbar.h>
|
||||
#pragma warning(pop)
|
||||
#if defined(__WXMSW__)
|
||||
#include <msctf.h>
|
||||
#endif
|
||||
@@ -68,7 +75,6 @@ protected:
|
||||
void OnExit(wxCommandEvent& event);
|
||||
void OnForwardEventUpdate(wxUpdateUIEvent& event);
|
||||
void OnForwardEvent(wxCommandEvent& event);
|
||||
void OnInsertCharacterUpdate(wxUpdateUIEvent& event);
|
||||
void OnInsertCharacter(wxCommandEvent& event);
|
||||
void OnSendUpdate(wxUpdateUIEvent& event);
|
||||
void OnSendDestination(wxCommandEvent& event);
|
||||
@@ -76,11 +82,8 @@ protected:
|
||||
void OnSendSource(wxCommandEvent& event);
|
||||
void OnCopySourceAndReturn(wxCommandEvent& event);
|
||||
void OnSendAbort(wxCommandEvent& event);
|
||||
void OnCompositionNone(wxCommandEvent& event);
|
||||
void OnCompositionZRCola(wxCommandEvent& event);
|
||||
void OnCompositionUnicode(wxCommandEvent& event);
|
||||
virtual void OnCompositionChoice(wxCommandEvent& event);
|
||||
void OnWarnPUA(wxCommandEvent& event);
|
||||
void OnCompositionMenu(wxCommandEvent& event);
|
||||
void OnCompositionToolbar(wxCommandEvent& event);
|
||||
void OnSettings(wxCommandEvent& event);
|
||||
virtual void OnIdle(wxIdleEvent& event);
|
||||
void OnTaskbarIconClick(wxTaskBarIconEvent& event);
|
||||
@@ -120,7 +123,6 @@ protected:
|
||||
private:
|
||||
void DoSend(const wxString& str);
|
||||
void DoCopyAndReturn(const wxString& str);
|
||||
void DoSetComposition(bool enable, ZRCola::transetid_t transet_id);
|
||||
void DoSetTranslationSeq(int idx, ZRCola::transeqid_t transeq_id);
|
||||
|
||||
protected:
|
||||
@@ -132,17 +134,15 @@ protected:
|
||||
static const int s_guiLevel; ///< Persisted placements/sizing are considered incompatible between different GUI levels
|
||||
|
||||
protected:
|
||||
WXHWND m_hWndSource; ///< Handle of the active window, when the ZRCola hotkey was pressed
|
||||
bool m_wasIconised; ///< Was the ZRCola window iconized, when the ZRCola hotkey was pressed
|
||||
wxTaskBarIcon *m_taskBarIcon; ///< Taskbar icon
|
||||
wxZRColaCharSelect *m_chrSelect; ///< Character selection dialog
|
||||
wxZRColaCharRequest *m_chrReq; ///< Request a New Character dialog
|
||||
wxZRColaSettings *m_settings; ///< Configuration dialog
|
||||
bool m_composition; ///< Is (de)composition enabled?
|
||||
ZRCola::transetid_t m_composition_id; ///< Which (de)composition is enabled
|
||||
bool m_warnPUA; ///< Mark Private-Use-Area characters in destination text
|
||||
ZRCola::transeqid_t m_transeq_id; ///< Translation sequence ID
|
||||
wxZRColaTranslationSeq *m_transeq; ///< Custom translation sequence dialog
|
||||
WXHWND m_hWndSource; ///< Handle of the active window, when the ZRCola hotkey was pressed
|
||||
bool m_wasIconised; ///< Was the ZRCola window iconized, when the ZRCola hotkey was pressed
|
||||
wxTaskBarIcon *m_taskBarIcon; ///< Taskbar icon
|
||||
wxZRColaCharSelect *m_chrSelect; ///< Character selection dialog
|
||||
wxZRColaCharRequest *m_chrReq; ///< Request a New Character dialog
|
||||
wxZRColaSettings *m_settings; ///< Configuration dialog
|
||||
bool m_composition; ///< Is (de)composition enabled?
|
||||
ZRCola::transeqid_t m_transeq_id; ///< Translation sequence ID
|
||||
wxZRColaTranslationSeq *m_transeq; ///< Custom translation sequence dialog
|
||||
};
|
||||
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,11 +1,12 @@
|
||||
///////////////////////////////////////////////////////////////////////////
|
||||
// C++ code generated with wxFormBuilder (version Oct 26 2018)
|
||||
// C++ code generated with wxFormBuilder (version Aug 8 2018)
|
||||
// http://www.wxformbuilder.org/
|
||||
//
|
||||
// PLEASE DO *NOT* EDIT THIS FILE!
|
||||
///////////////////////////////////////////////////////////////////////////
|
||||
|
||||
#pragma once
|
||||
#ifndef __ZRCOLAGUI_H__
|
||||
#define __ZRCOLAGUI_H__
|
||||
|
||||
#include <wx/artprov.h>
|
||||
#include <wx/xrc/xmlres.h>
|
||||
@@ -54,10 +55,10 @@ class wxZRColaComposerPanel;
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
/// Class wxZRColaFrameBase
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
class wxZRColaFrameBase : public wxFrame
|
||||
class wxZRColaFrameBase : public wxFrame
|
||||
{
|
||||
private:
|
||||
|
||||
|
||||
protected:
|
||||
enum
|
||||
{
|
||||
@@ -67,10 +68,7 @@ class wxZRColaFrameBase : public wxFrame
|
||||
wxID_SEND_SOURCE,
|
||||
wxID_COPY_SOURCE_AND_RETURN,
|
||||
wxID_SEND_ABORT,
|
||||
wxID_COMPOSITION_NONE,
|
||||
wxID_COMPOSITION_ZRCOLA,
|
||||
wxID_COMPOSITION_UNICODE,
|
||||
wxID_WARN_PUA,
|
||||
wxID_COMPOSITION_MENU,
|
||||
wxID_SETTINGS,
|
||||
wxID_TOOLBAR_EDIT,
|
||||
wxID_TOOLBAR_TRANSLATE,
|
||||
@@ -78,64 +76,60 @@ class wxZRColaFrameBase : public wxFrame
|
||||
wxID_HELP_INSTRUCTIONS,
|
||||
wxID_HELP_SHORTCUTS,
|
||||
wxID_HELP_REQCHAR,
|
||||
wxID_HELP_UPDATE
|
||||
wxID_HELP_UPDATE,
|
||||
wxID_COMPOSITION_TOOLBAR
|
||||
};
|
||||
|
||||
|
||||
wxMenuBar* m_menubar;
|
||||
wxMenu* m_menuProgram;
|
||||
wxMenu* m_menuEdit;
|
||||
wxMenuItem* m_menuItemCompositionNone;
|
||||
wxMenuItem* m_menuItemCompositionZRCola;
|
||||
wxMenuItem* m_menuItemCompositionUnicode;
|
||||
wxMenuItem* m_menuItemComposition;
|
||||
wxMenu* m_menuTranslationSeq;
|
||||
wxMenuItem* m_menuItemWarnPUA;
|
||||
wxMenu* m_menuView;
|
||||
wxMenu* m_menuHelp;
|
||||
wxAuiToolBar* m_toolbarEdit;
|
||||
wxAuiToolBarItem* m_toolEditCut;
|
||||
wxAuiToolBarItem* m_toolEditCopy;
|
||||
wxAuiToolBarItem* m_toolEditPaste;
|
||||
wxAuiToolBarItem* m_toolEditCut;
|
||||
wxAuiToolBarItem* m_toolEditCopy;
|
||||
wxAuiToolBarItem* m_toolEditPaste;
|
||||
wxAuiToolBar* m_toolbarTranslate;
|
||||
wxAuiToolBarItem* m_toolCharSelect;
|
||||
wxAuiToolBarItem* m_toolSendDestination;
|
||||
wxAuiToolBarItem* m_toolSendSource;
|
||||
wxChoice* m_toolComposition;
|
||||
wxAuiToolBarItem* m_toolCharSelect;
|
||||
wxAuiToolBarItem* m_toolSendDestination;
|
||||
wxAuiToolBarItem* m_toolSendSource;
|
||||
wxAuiToolBarItem* m_toolComposition;
|
||||
wxChoice* m_toolTranslationSeq;
|
||||
wxAuiToolBarItem* m_toolWarnPUA;
|
||||
wxZRColaCharacterCatalogPanel* m_panelChrCat;
|
||||
wxStatusBar* m_statusBar;
|
||||
|
||||
|
||||
// Virtual event handlers, overide them in your derived class
|
||||
virtual void OnClose( wxCloseEvent& event ) { event.Skip(); }
|
||||
virtual void OnIconize( wxIconizeEvent& event ) { event.Skip(); }
|
||||
virtual void OnIdle( wxIdleEvent& event ) { event.Skip(); }
|
||||
virtual void OnCompositionChoice( wxCommandEvent& event ) { event.Skip(); }
|
||||
virtual void OnTranslationSeqChoice( wxCommandEvent& event ) { event.Skip(); }
|
||||
|
||||
|
||||
|
||||
|
||||
public:
|
||||
wxZRColaComposerPanel* m_panel;
|
||||
|
||||
|
||||
wxZRColaFrameBase( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("ZRCola"), const wxPoint& pos = wxDefaultPosition, long style = wxDEFAULT_FRAME_STYLE|wxTAB_TRAVERSAL, const wxString& name = wxT("ZRCola") );
|
||||
wxAuiManager m_mgr;
|
||||
|
||||
|
||||
~wxZRColaFrameBase();
|
||||
|
||||
|
||||
};
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
/// Class wxZRColaComposerPanelBase
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
class wxZRColaComposerPanelBase : public wxPanel
|
||||
class wxZRColaComposerPanelBase : public wxPanel
|
||||
{
|
||||
private:
|
||||
|
||||
|
||||
protected:
|
||||
enum
|
||||
{
|
||||
wxID_TIMER_SAVE = 1000
|
||||
};
|
||||
|
||||
|
||||
wxSplitterWindow* m_splitterSource;
|
||||
wxPanel* m_panelSourceEdit;
|
||||
wxPanel* m_panelSourceHex;
|
||||
@@ -145,7 +139,7 @@ class wxZRColaComposerPanelBase : public wxPanel
|
||||
wxPanel* m_panelDestinationHex;
|
||||
wxTextCtrl* m_destinationHex;
|
||||
wxTimer m_timerSave;
|
||||
|
||||
|
||||
// Virtual event handlers, overide them in your derived class
|
||||
virtual void OnSourcePaint( wxPaintEvent& event ) { event.Skip(); }
|
||||
virtual void OnSourceText( wxCommandEvent& event ) { event.Skip(); }
|
||||
@@ -154,62 +148,62 @@ class wxZRColaComposerPanelBase : public wxPanel
|
||||
virtual void OnDestinationText( wxCommandEvent& event ) { event.Skip(); }
|
||||
virtual void OnDestinationHexPaint( wxPaintEvent& event ) { event.Skip(); }
|
||||
virtual void OnSaveTimer( wxTimerEvent& event ) { event.Skip(); }
|
||||
|
||||
|
||||
|
||||
|
||||
public:
|
||||
wxTextCtrl* m_source;
|
||||
wxTextCtrl* m_destination;
|
||||
|
||||
wxZRColaComposerPanelBase( wxWindow* parent, wxWindowID id = wxID_ANY, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize( -1,-1 ), long style = wxTAB_TRAVERSAL, const wxString& name = wxT("ZRColaComposerPanel") );
|
||||
|
||||
wxZRColaComposerPanelBase( wxWindow* parent, wxWindowID id = wxID_ANY, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxTAB_TRAVERSAL, const wxString& name = wxT("ZRColaComposerPanel") );
|
||||
~wxZRColaComposerPanelBase();
|
||||
|
||||
|
||||
void m_splitterSourceOnIdle( wxIdleEvent& )
|
||||
{
|
||||
m_splitterSource->SetSashPosition( FromDIP(-5) );
|
||||
m_splitterSource->Disconnect( wxEVT_IDLE, wxIdleEventHandler( wxZRColaComposerPanelBase::m_splitterSourceOnIdle ), NULL, this );
|
||||
}
|
||||
|
||||
|
||||
void m_splitterDestinationOnIdle( wxIdleEvent& )
|
||||
{
|
||||
m_splitterDestination->SetSashPosition( FromDIP(-5) );
|
||||
m_splitterDestination->Disconnect( wxEVT_IDLE, wxIdleEventHandler( wxZRColaComposerPanelBase::m_splitterDestinationOnIdle ), NULL, this );
|
||||
}
|
||||
|
||||
|
||||
};
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
/// Class wxZRColaCharacterCatalogPanelBase
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
class wxZRColaCharacterCatalogPanelBase : public wxPanel
|
||||
class wxZRColaCharacterCatalogPanelBase : public wxPanel
|
||||
{
|
||||
private:
|
||||
|
||||
|
||||
protected:
|
||||
wxChoice* m_choice;
|
||||
wxZRColaCharGrid* m_grid;
|
||||
wxCheckBox* m_show_all;
|
||||
|
||||
|
||||
// Virtual event handlers, overide them in your derived class
|
||||
virtual void OnChoice( wxCommandEvent& event ) { event.Skip(); }
|
||||
virtual void OnGridClick( wxGridEvent& event ) { event.Skip(); }
|
||||
virtual void OnGridKeyDown( wxKeyEvent& event ) { event.Skip(); }
|
||||
virtual void OnShowAll( wxCommandEvent& event ) { event.Skip(); }
|
||||
|
||||
|
||||
|
||||
|
||||
public:
|
||||
|
||||
wxZRColaCharacterCatalogPanelBase( wxWindow* parent, wxWindowID id = wxID_ANY, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize( -1,-1 ), long style = wxTAB_TRAVERSAL, const wxString& name = wxT("ZRColaCharacterCatalog") );
|
||||
|
||||
wxZRColaCharacterCatalogPanelBase( wxWindow* parent, wxWindowID id = wxID_ANY, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxTAB_TRAVERSAL, const wxString& name = wxT("ZRColaCharacterCatalog") );
|
||||
~wxZRColaCharacterCatalogPanelBase();
|
||||
|
||||
|
||||
};
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
/// Class wxZRColaCharSelectBase
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
class wxZRColaCharSelectBase : public wxDialog
|
||||
class wxZRColaCharSelectBase : public wxDialog
|
||||
{
|
||||
private:
|
||||
|
||||
|
||||
protected:
|
||||
wxSearchCtrl* m_search;
|
||||
wxHyperlinkCtrl* m_search_more;
|
||||
@@ -230,8 +224,10 @@ class wxZRColaCharSelectBase : public wxDialog
|
||||
wxHyperlinkCtrl* m_navigateBack;
|
||||
wxHyperlinkCtrl* m_navigateForward;
|
||||
wxZRColaCharGrid* m_gridRelated;
|
||||
wxButton* m_buttonInsert;
|
||||
|
||||
wxStdDialogButtonSizer* m_sdbSizerButtons;
|
||||
wxButton* m_sdbSizerButtonsOK;
|
||||
wxButton* m_sdbSizerButtonsCancel;
|
||||
|
||||
// Virtual event handlers, overide them in your derived class
|
||||
virtual void OnIdle( wxIdleEvent& event ) { event.Skip(); }
|
||||
virtual void OnSearchText( wxCommandEvent& event ) { event.Skip(); }
|
||||
@@ -251,24 +247,23 @@ class wxZRColaCharSelectBase : public wxDialog
|
||||
virtual void OnNavigateBack( wxHyperlinkEvent& event ) { event.Skip(); }
|
||||
virtual void OnNavigateForward( wxHyperlinkEvent& event ) { event.Skip(); }
|
||||
virtual void OnRelatedSelectCell( wxGridEvent& event ) { event.Skip(); }
|
||||
virtual void OnInsert( wxCommandEvent& event ) { event.Skip(); }
|
||||
virtual void OnInsertUpdateUI( wxUpdateUIEvent& event ) { event.Skip(); }
|
||||
|
||||
|
||||
virtual void OnOKButtonClick( wxCommandEvent& event ) { event.Skip(); }
|
||||
|
||||
|
||||
public:
|
||||
|
||||
wxZRColaCharSelectBase( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("Character Search"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxDEFAULT_DIALOG_STYLE, const wxString& name = wxT("ZRColaCharSelect") );
|
||||
|
||||
wxZRColaCharSelectBase( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("Character Search"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxDEFAULT_DIALOG_STYLE, const wxString& name = wxT("ZRColaCharSelect") );
|
||||
~wxZRColaCharSelectBase();
|
||||
|
||||
|
||||
};
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
/// Class wxZRColaSettingsBase
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
class wxZRColaSettingsBase : public wxDialog
|
||||
class wxZRColaSettingsBase : public wxDialog
|
||||
{
|
||||
private:
|
||||
|
||||
|
||||
protected:
|
||||
wxListbook* m_listbook;
|
||||
wxPanel* m_panelLanguage;
|
||||
@@ -283,28 +278,28 @@ class wxZRColaSettingsBase : public wxDialog
|
||||
wxButton* m_sdbSizerButtonsOK;
|
||||
wxButton* m_sdbSizerButtonsApply;
|
||||
wxButton* m_sdbSizerButtonsCancel;
|
||||
|
||||
|
||||
// Virtual event handlers, overide them in your derived class
|
||||
virtual void OnInitDialog( wxInitDialogEvent& event ) { event.Skip(); }
|
||||
virtual void OnLanguageUpdate( wxUpdateUIEvent& event ) { event.Skip(); }
|
||||
virtual void OnApplyButtonClick( wxCommandEvent& event ) { event.Skip(); }
|
||||
virtual void OnOKButtonClick( wxCommandEvent& event ) { event.Skip(); }
|
||||
|
||||
|
||||
|
||||
|
||||
public:
|
||||
|
||||
wxZRColaSettingsBase( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("Settings"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize( -1,-1 ), long style = wxDEFAULT_DIALOG_STYLE, const wxString& name = wxT("ZRColaSettings") );
|
||||
|
||||
wxZRColaSettingsBase( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("Settings"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxDEFAULT_DIALOG_STYLE, const wxString& name = wxT("ZRColaSettings") );
|
||||
~wxZRColaSettingsBase();
|
||||
|
||||
|
||||
};
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
/// Class wxZRColaAboutBase
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
class wxZRColaAboutBase : public wxDialog
|
||||
class wxZRColaAboutBase : public wxDialog
|
||||
{
|
||||
private:
|
||||
|
||||
|
||||
protected:
|
||||
wxStaticBitmap* m_bitmapIcon;
|
||||
wxStaticText* m_staticTextZRCola;
|
||||
@@ -316,46 +311,46 @@ class wxZRColaAboutBase : public wxDialog
|
||||
wxTextCtrl* m_declaration;
|
||||
wxStdDialogButtonSizer* m_sdbSizerButtons;
|
||||
wxButton* m_sdbSizerButtonsOK;
|
||||
|
||||
|
||||
public:
|
||||
|
||||
wxZRColaAboutBase( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("About ZRCola"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxDEFAULT_DIALOG_STYLE, const wxString& name = wxT("ZRColaAbout") );
|
||||
|
||||
wxZRColaAboutBase( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("About ZRCola"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxDEFAULT_DIALOG_STYLE, const wxString& name = wxT("ZRColaAbout") );
|
||||
~wxZRColaAboutBase();
|
||||
|
||||
|
||||
};
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
/// Class wxZRColaUpdaterBase
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
class wxZRColaUpdaterBase : public wxDialog
|
||||
class wxZRColaUpdaterBase : public wxDialog
|
||||
{
|
||||
private:
|
||||
|
||||
|
||||
protected:
|
||||
wxTextCtrl* m_log;
|
||||
wxButton* m_buttonUpdate;
|
||||
wxButton* m_buttonClose;
|
||||
|
||||
|
||||
// Virtual event handlers, overide them in your derived class
|
||||
virtual void OnIdle( wxIdleEvent& event ) { event.Skip(); }
|
||||
virtual void OnUpdate( wxCommandEvent& event ) { event.Skip(); }
|
||||
virtual void OnClose( wxCommandEvent& event ) { event.Skip(); }
|
||||
|
||||
|
||||
|
||||
|
||||
public:
|
||||
|
||||
wxZRColaUpdaterBase( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("Product Update"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxDEFAULT_DIALOG_STYLE, const wxString& name = wxT("ZRColaUpdater") );
|
||||
|
||||
wxZRColaUpdaterBase( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("Product Update"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxDEFAULT_DIALOG_STYLE, const wxString& name = wxT("ZRColaUpdater") );
|
||||
~wxZRColaUpdaterBase();
|
||||
|
||||
|
||||
};
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
/// Class wxZRColaCharRequestBase
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
class wxZRColaCharRequestBase : public wxDialog
|
||||
class wxZRColaCharRequestBase : public wxDialog
|
||||
{
|
||||
private:
|
||||
|
||||
|
||||
protected:
|
||||
wxStaticText* m_characterLbl;
|
||||
wxTextCtrl* m_character;
|
||||
@@ -366,25 +361,25 @@ class wxZRColaCharRequestBase : public wxDialog
|
||||
wxStdDialogButtonSizer* m_sdbSizerButtons;
|
||||
wxButton* m_sdbSizerButtonsOK;
|
||||
wxButton* m_sdbSizerButtonsCancel;
|
||||
|
||||
|
||||
// Virtual event handlers, overide them in your derived class
|
||||
virtual void OnOKButtonClick( wxCommandEvent& event ) { event.Skip(); }
|
||||
|
||||
|
||||
|
||||
|
||||
public:
|
||||
|
||||
wxZRColaCharRequestBase( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("Request a New Character"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxDEFAULT_DIALOG_STYLE, const wxString& name = wxT("ZRColaCharRequest") );
|
||||
|
||||
wxZRColaCharRequestBase( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("Request a New Character"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxDEFAULT_DIALOG_STYLE, const wxString& name = wxT("ZRColaCharRequest") );
|
||||
~wxZRColaCharRequestBase();
|
||||
|
||||
|
||||
};
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
/// Class wxZRColaTranslationSeqBase
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
class wxZRColaTranslationSeqBase : public wxDialog
|
||||
class wxZRColaTranslationSeqBase : public wxDialog
|
||||
{
|
||||
private:
|
||||
|
||||
|
||||
protected:
|
||||
wxStaticText* m_transLbl;
|
||||
wxStaticText* m_availableLbl;
|
||||
@@ -398,7 +393,7 @@ class wxZRColaTranslationSeqBase : public wxDialog
|
||||
wxStdDialogButtonSizer* m_sdbSizerButtons;
|
||||
wxButton* m_sdbSizerButtonsOK;
|
||||
wxButton* m_sdbSizerButtonsCancel;
|
||||
|
||||
|
||||
// Virtual event handlers, overide them in your derived class
|
||||
virtual void OnInitDialog( wxInitDialogEvent& event ) { event.Skip(); }
|
||||
virtual void OnUpdate( wxUpdateUIEvent& event ) { event.Skip(); }
|
||||
@@ -411,12 +406,13 @@ class wxZRColaTranslationSeqBase : public wxDialog
|
||||
virtual void OnSelectedUp( wxCommandEvent& event ) { event.Skip(); }
|
||||
virtual void OnSelectedDown( wxCommandEvent& event ) { event.Skip(); }
|
||||
virtual void OnOKButtonClick( wxCommandEvent& event ) { event.Skip(); }
|
||||
|
||||
|
||||
|
||||
|
||||
public:
|
||||
|
||||
wxZRColaTranslationSeqBase( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("Custom Translation Sequence"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxDEFAULT_DIALOG_STYLE, const wxString& name = wxT("ZRColaTranslationSeq") );
|
||||
|
||||
wxZRColaTranslationSeqBase( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("Custom Translation Sequence"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxDEFAULT_DIALOG_STYLE, const wxString& name = wxT("ZRColaTranslationSeq") );
|
||||
~wxZRColaTranslationSeqBase();
|
||||
|
||||
|
||||
};
|
||||
|
||||
#endif //__ZRCOLAGUI_H__
|
||||
|
||||
@@ -1,9 +1,23 @@
|
||||
/*
|
||||
SPDX-License-Identifier: GPL-3.0-or-later
|
||||
Copyright © 2015-2021 Amebis
|
||||
/*
|
||||
Copyright 2015-2018 Amebis
|
||||
|
||||
This file is part of ZRCola.
|
||||
|
||||
ZRCola is free software: you can redistribute it and/or modify it
|
||||
under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
ZRCola is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with ZRCola. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include "pch.h"
|
||||
#include "stdafx.h"
|
||||
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
@@ -33,7 +47,7 @@ bool wxZRColaKeyHandler::ProcessEvent(wxEvent& event)
|
||||
if (!chr) {
|
||||
int key = e.GetKeyCode();
|
||||
if (WXK_NUMPAD0 <= key && key <= WXK_NUMPAD9)
|
||||
chr = '0' + (wxChar)(key - WXK_NUMPAD0);
|
||||
chr = '0' + (key - WXK_NUMPAD0);
|
||||
}
|
||||
wxFrame *pFrame = wxDynamicCast(dynamic_cast<ZRColaApp*>(wxTheApp)->m_mainWnd, wxFrame);
|
||||
if (('0' <= chr && chr <= '9' || 'A' <= chr && chr <= 'F') && m_insert_seq.size() < 4) {
|
||||
@@ -67,14 +81,14 @@ bool wxZRColaKeyHandler::ProcessEvent(wxEvent& event)
|
||||
{
|
||||
// Parse key event and save it at the end of the key sequence.
|
||||
ZRCola::keyseq_db::keyseq::key_t key;
|
||||
key.key = (wchar_t)e.GetRawKeyCode();
|
||||
key.key = e.GetRawKeyCode();
|
||||
#if defined(__WXMSW__)
|
||||
// Translate from local keyboard to scan code.
|
||||
key.key = static_cast<wchar_t>(::MapVirtualKey(key.key, MAPVK_VK_TO_VSC) & 0xffff);
|
||||
key.key = ::MapVirtualKey(key.key, MAPVK_VK_TO_VSC);
|
||||
|
||||
// Translate from scan code to U.S. Keyboard.
|
||||
static const HKL s_hkl = ::LoadKeyboardLayout(_T("00000409"), 0);
|
||||
key.key = static_cast<wchar_t>(::MapVirtualKeyEx(key.key, MAPVK_VSC_TO_VK, s_hkl) & 0xffff);
|
||||
key.key = ::MapVirtualKeyEx(key.key, MAPVK_VSC_TO_VK, s_hkl);
|
||||
#endif
|
||||
key.modifiers =
|
||||
(e.ShiftDown() ? ZRCola::keyseq_db::keyseq::SHIFT : 0) |
|
||||
@@ -133,7 +147,7 @@ bool wxZRColaKeyHandler::ProcessEvent(wxEvent& event)
|
||||
if (count) {
|
||||
// Zero terminate sequence and parse the Unicode value.
|
||||
m_insert_seq.push_back(0);
|
||||
wchar_t chr = (wchar_t)strtoul(m_insert_seq.data(), NULL, 16);
|
||||
wchar_t chr = strtoul(m_insert_seq.data(), NULL, 16);
|
||||
|
||||
if (chr) {
|
||||
wxObject *obj = event.GetEventObject();
|
||||
|
||||
@@ -1,6 +1,20 @@
|
||||
/*
|
||||
SPDX-License-Identifier: GPL-3.0-or-later
|
||||
Copyright © 2015-2021 Amebis
|
||||
/*
|
||||
Copyright 2015-2018 Amebis
|
||||
|
||||
This file is part of ZRCola.
|
||||
|
||||
ZRCola is free software: you can redistribute it and/or modify it
|
||||
under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
ZRCola is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with ZRCola. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
///
|
||||
@@ -13,11 +27,7 @@ class wxZRColaKeyHandler;
|
||||
|
||||
#include <zrcolaui/keyboard.h>
|
||||
|
||||
#include <wxex/common.h>
|
||||
#pragma warning(push)
|
||||
#pragma warning(disable: WXWIDGETS_CODE_ANALYSIS_WARNINGS)
|
||||
#include <wx/event.h>
|
||||
#pragma warning(pop)
|
||||
#include <vector>
|
||||
|
||||
|
||||
|
||||
@@ -1,9 +1,23 @@
|
||||
/*
|
||||
SPDX-License-Identifier: GPL-3.0-or-later
|
||||
Copyright © 2015-2021 Amebis
|
||||
/*
|
||||
Copyright 2015-2018 Amebis
|
||||
|
||||
This file is part of ZRCola.
|
||||
|
||||
ZRCola is free software: you can redistribute it and/or modify it
|
||||
under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
ZRCola is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with ZRCola. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include "pch.h"
|
||||
#include "stdafx.h"
|
||||
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
@@ -22,7 +36,7 @@ wxZRColaSettings::wxZRColaSettings(wxWindow* parent) :
|
||||
wxString
|
||||
label(lang.name(), lang.name_len()),
|
||||
label_tran(wxGetTranslation(label, wxT("ZRCola-zrcdb")));
|
||||
m_languages->Insert(label_tran, (unsigned int)i);
|
||||
m_languages->Insert(label_tran, i);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -45,7 +59,7 @@ void wxZRColaSettings::OnInitDialog(wxInitDialogEvent& event)
|
||||
|
||||
auto app = dynamic_cast<ZRColaApp*>(wxTheApp);
|
||||
ZRCola::language_db::indexLang::size_type start;
|
||||
m_languages->Select(app->m_lang_db.idxLang.find(ZRCola::language_db::language(m_lang), start) ? (int)start : -1);
|
||||
m_languages->Select(app->m_lang_db.idxLang.find(ZRCola::language_db::language(m_lang), start) ? start : -1);
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -1,6 +1,20 @@
|
||||
/*
|
||||
SPDX-License-Identifier: GPL-3.0-or-later
|
||||
Copyright © 2015-2021 Amebis
|
||||
/*
|
||||
Copyright 2015-2018 Amebis
|
||||
|
||||
This file is part of ZRCola.
|
||||
|
||||
ZRCola is free software: you can redistribute it and/or modify it
|
||||
under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
ZRCola is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with ZRCola. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
///
|
||||
@@ -12,11 +26,7 @@ class wxPersistentZRColaSettings;
|
||||
|
||||
#pragma once
|
||||
|
||||
#include <wxex/common.h>
|
||||
#pragma warning(push)
|
||||
#pragma warning(disable: WXWIDGETS_CODE_ANALYSIS_WARNINGS)
|
||||
#include "zrcolagui.h"
|
||||
#pragma warning(pop)
|
||||
#include <wxex/persist/toplevel.h>
|
||||
#include <vector>
|
||||
|
||||
|
||||
@@ -1,9 +1,23 @@
|
||||
/*
|
||||
SPDX-License-Identifier: GPL-3.0-or-later
|
||||
Copyright © 2015-2021 Amebis
|
||||
/*
|
||||
Copyright 2015-2018 Amebis
|
||||
|
||||
This file is part of ZRCola.
|
||||
|
||||
ZRCola is free software: you can redistribute it and/or modify it
|
||||
under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
ZRCola is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with ZRCola. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include "pch.h"
|
||||
#include "stdafx.h"
|
||||
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
@@ -226,7 +240,7 @@ bool wxPersistentZRColaTranslationSeq::Restore()
|
||||
if (RestoreValue(wxT("transeq"), &str)) {
|
||||
std::vector<ZRCola::transetid_t> transet;
|
||||
for (wxStringTokenizer tok(str, wxT("|")); tok.HasMoreTokens(); ) {
|
||||
ZRCola::transetid_t val = (ZRCola::transetid_t)_tcstoul(tok.GetNextToken().c_str(), NULL, 10);
|
||||
unsigned long val = _tcstoul(tok.GetNextToken().c_str(), NULL, 10);
|
||||
for (size_t i = 0, n = app->m_ts_db.idxTranSet.size(); i < n; i++) {
|
||||
const ZRCola::transet_db::transet &cg = app->m_ts_db.idxTranSet[i];
|
||||
if (cg.set == val) {
|
||||
|
||||
@@ -1,6 +1,20 @@
|
||||
/*
|
||||
SPDX-License-Identifier: GPL-3.0-or-later
|
||||
Copyright © 2015-2021 Amebis
|
||||
/*
|
||||
Copyright 2015-2018 Amebis
|
||||
|
||||
This file is part of ZRCola.
|
||||
|
||||
ZRCola is free software: you can redistribute it and/or modify it
|
||||
under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
ZRCola is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with ZRCola. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
///
|
||||
@@ -12,11 +26,7 @@ class wxPersistentZRColaTranslationSeq;
|
||||
|
||||
#pragma once
|
||||
|
||||
#include <wxex/common.h>
|
||||
#pragma warning(push)
|
||||
#pragma warning(disable: WXWIDGETS_CODE_ANALYSIS_WARNINGS)
|
||||
#include "zrcolagui.h"
|
||||
#pragma warning(pop)
|
||||
#include <zrcola/translate.h>
|
||||
#include <wxex/persist/toplevel.h>
|
||||
#include <vector>
|
||||
|
||||
@@ -1,9 +1,23 @@
|
||||
/*
|
||||
SPDX-License-Identifier: GPL-3.0-or-later
|
||||
Copyright © 2015-2021 Amebis
|
||||
/*
|
||||
Copyright 2015-2018 Amebis
|
||||
|
||||
This file is part of ZRCola.
|
||||
|
||||
ZRCola is free software: you can redistribute it and/or modify it
|
||||
under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
ZRCola is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with ZRCola. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include "pch.h"
|
||||
#include "stdafx.h"
|
||||
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
@@ -27,7 +41,6 @@ wxZRColaUpdater::wxZRColaUpdater(wxWindow* parent) :
|
||||
|
||||
// Prepare Updater.
|
||||
auto app = dynamic_cast<ZRColaApp*>(wxTheApp);
|
||||
#pragma warning(suppress: 26812) // wxLanguage is unscoped.
|
||||
m_updater = new wxUpdCheckThread(app->m_lang_ui == wxLANGUAGE_DEFAULT ? wxT("en_US") : wxLocale::GetLanguageCanonicalName(app->m_lang_ui), this);
|
||||
//if (m_updater->Run() != wxTHREAD_NO_ERROR) {
|
||||
// wxFAIL_MSG(wxT("Can't create the thread!"));
|
||||
@@ -67,7 +80,7 @@ wxZRColaUpdater::~wxZRColaUpdater()
|
||||
void wxZRColaUpdater::OnIdle(wxIdleEvent& event)
|
||||
{
|
||||
if (!m_finished) {
|
||||
m_buttonUpdate->Enable(m_updater->CheckForUpdate() == wxUpdCheckThread::wxResult::UpdateAvailable);
|
||||
m_buttonUpdate->Enable(m_updater->CheckForUpdate() == wxUpdCheckThread::wxUpdUpdateAvailable);
|
||||
m_finished = true;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,6 +1,20 @@
|
||||
/*
|
||||
SPDX-License-Identifier: GPL-3.0-or-later
|
||||
Copyright © 2015-2021 Amebis
|
||||
/*
|
||||
Copyright 2015-2018 Amebis
|
||||
|
||||
This file is part of ZRCola.
|
||||
|
||||
ZRCola is free software: you can redistribute it and/or modify it
|
||||
under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
ZRCola is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with ZRCola. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
///
|
||||
@@ -11,16 +25,11 @@ class wxZRColaUpdater;
|
||||
|
||||
#pragma once
|
||||
|
||||
#include <wxex/common.h>
|
||||
#pragma warning(push)
|
||||
#pragma warning(disable: WXWIDGETS_CODE_ANALYSIS_WARNINGS)
|
||||
#include "zrcolagui.h"
|
||||
#pragma warning(pop)
|
||||
|
||||
#include <Updater/chkthread.h>
|
||||
#pragma warning(push)
|
||||
#pragma warning(disable: WXWIDGETS_CODE_ANALYSIS_WARNINGS)
|
||||
|
||||
#include <wx/log.h>
|
||||
#pragma warning(pop)
|
||||
|
||||
|
||||
///
|
||||
|
||||
18
ZRColaCompile/ZRColaCompile.props
Normal file
18
ZRColaCompile/ZRColaCompile.props
Normal file
@@ -0,0 +1,18 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ImportGroup Label="PropertySheets" />
|
||||
<PropertyGroup Label="UserMacros" />
|
||||
<PropertyGroup>
|
||||
<OutDir>..\output\$(Platform).$(Configuration)\</OutDir>
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup>
|
||||
<ClCompile>
|
||||
<AdditionalIncludeDirectories>..\lib\wxExtend\include;..\lib\WinStd\include;..\lib\stdex\include;..\lib\libZRCola\include;..\lib\libZRColaUI\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<SubSystem>Console</SubSystem>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemGroup />
|
||||
</Project>
|
||||
Binary file not shown.
@@ -13,51 +13,51 @@
|
||||
<PropertyGroup Label="Globals">
|
||||
<ProjectGuid>{87A3ADEC-1BE4-42E4-92B8-B742F3D21BC4}</ProjectGuid>
|
||||
<RootNamespace>ZRColaCompile</RootNamespace>
|
||||
<WindowsTargetPlatformVersion>10.0.17134.0</WindowsTargetPlatformVersion>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||
<PropertyGroup Label="Configuration">
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Label="Configuration" Condition="'$(Configuration)'=='Debug'">
|
||||
<UseDebugLibraries>true</UseDebugLibraries>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
<PlatformToolset>v141</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Label="Configuration" Condition="'$(Configuration)'=='Release'">
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<UseDebugLibraries>false</UseDebugLibraries>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
<PlatformToolset>v141</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||
<ImportGroup Label="ExtensionSettings" />
|
||||
<ImportGroup Label="PropertySheets">
|
||||
<ImportGroup Label="ExtensionSettings">
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="..\include\$(Platform).props" />
|
||||
<Import Project="..\include\$(Configuration).props" />
|
||||
<Import Project="ZRColaCompile.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="..\include\$(Platform).props" />
|
||||
<Import Project="..\include\$(Configuration).props" />
|
||||
<Import Project="ZRColaCompile.props" />
|
||||
</ImportGroup>
|
||||
<PropertyGroup Label="UserMacros" />
|
||||
<PropertyGroup>
|
||||
<OutDir>..\output\$(Platform).$(Configuration)\</OutDir>
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup>
|
||||
<ClCompile>
|
||||
<AdditionalIncludeDirectories>..\lib\wxExtend\include;..\lib\WinStd\include;..\lib\stdex\include;..\lib\libZRCola\include;..\lib\libZRColaUI\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<SubSystem>Console</SubSystem>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="dbsource.cpp" />
|
||||
<ClCompile Include="main.cpp" />
|
||||
<ClCompile Include="parse.cpp" />
|
||||
<ClCompile Include="pch.cpp">
|
||||
<PrecompiledHeader>Create</PrecompiledHeader>
|
||||
<ClCompile Include="stdafx.cpp">
|
||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Create</PrecompiledHeader>
|
||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Create</PrecompiledHeader>
|
||||
</ClCompile>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClInclude Include="dbsource.h" />
|
||||
<ClInclude Include="parse.h" />
|
||||
<ClInclude Include="pch.h" />
|
||||
<ClInclude Include="stdafx.h" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\lib\libZRColaUI\build\libZRColaUI.vcxproj">
|
||||
@@ -66,10 +66,10 @@
|
||||
<ProjectReference Include="..\lib\libZRCola\build\libZRCola.vcxproj">
|
||||
<Project>{3c61929e-7289-4101-8d0a-da22d6e1aea8}</Project>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="..\lib\WinStd\build\WinStd.vcxproj">
|
||||
<ProjectReference Include="..\lib\WinStd\build\WinStd-15.0.vcxproj">
|
||||
<Project>{47399d91-7eb9-41de-b521-514ba5db0c43}</Project>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="..\lib\wxExtend\build\wxExtendLib.vcxproj">
|
||||
<ProjectReference Include="..\lib\wxExtend\build\wxExtendLib-15.0.vcxproj">
|
||||
<Project>{D3E29951-D9F5-486D-A167-20AE8E90B1FA}</Project>
|
||||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
|
||||
@@ -19,7 +19,7 @@
|
||||
</Filter>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="pch.cpp">
|
||||
<ClCompile Include="stdafx.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="main.cpp">
|
||||
@@ -33,7 +33,7 @@
|
||||
</ClCompile>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClInclude Include="pch.h">
|
||||
<ClInclude Include="stdafx.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="dbsource.h">
|
||||
|
||||
@@ -1,9 +1,23 @@
|
||||
/*
|
||||
SPDX-License-Identifier: GPL-3.0-or-later
|
||||
Copyright © 2015-2021 Amebis
|
||||
/*
|
||||
Copyright 2015-2018 Amebis
|
||||
|
||||
This file is part of ZRCola.
|
||||
|
||||
ZRCola is free software: you can redistribute it and/or modify it
|
||||
under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
ZRCola is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with ZRCola. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include "pch.h"
|
||||
#include "stdafx.h"
|
||||
|
||||
using namespace std;
|
||||
using namespace stdex;
|
||||
@@ -37,7 +51,7 @@ void ZRCola::DBSource::character_bank::build_related()
|
||||
}
|
||||
}
|
||||
|
||||
delete [] workers; // This line of code sounds horrible, I know.
|
||||
delete workers; // This line of code sounds horrible, I know.
|
||||
}
|
||||
|
||||
|
||||
@@ -120,7 +134,7 @@ unsigned int __stdcall ZRCola::DBSource::character_bank::build_related_worker::p
|
||||
// ZRCola::DBSource::character_desc_idx
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
|
||||
void ZRCola::DBSource::character_desc_idx::parse_keywords(_In_ const wchar_t *str, _Inout_ set<wstring> &terms)
|
||||
void ZRCola::DBSource::character_desc_idx::parse_keywords(const wchar_t *str, set<wstring> &terms)
|
||||
{
|
||||
wxASSERT_MSG(str, wxT("string is NULL"));
|
||||
|
||||
@@ -217,8 +231,7 @@ void ZRCola::DBSource::character_desc_idx::save(ZRCola::textindex<wchar_t, wchar
|
||||
// ZRCola::DBSource
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
|
||||
ZRCola::DBSource::DBSource() :
|
||||
m_locale(nullptr)
|
||||
ZRCola::DBSource::DBSource()
|
||||
{
|
||||
// Initialize ignore list.
|
||||
m_terms_ignore.insert(L"letter");
|
||||
@@ -242,8 +255,6 @@ ZRCola::DBSource::~DBSource()
|
||||
m_comTranslation.free();
|
||||
m_pCharacterGroup1.free();
|
||||
m_comCharacterGroup.free();
|
||||
m_pHighlight1.free();
|
||||
m_comHighlight.free();
|
||||
|
||||
if (m_db)
|
||||
m_db->Close();
|
||||
@@ -266,10 +277,7 @@ bool ZRCola::DBSource::Open(LPCTSTR filename)
|
||||
cn += L"Dbq=";
|
||||
cn += filename;
|
||||
cn += L";Uid=;Pwd=;";
|
||||
#pragma warning(push)
|
||||
#pragma warning(disable: 6387) // Connection15::Open() declaration is wrong: it defaults username and password parameters to NULL, but annotates them as required non-NULL.
|
||||
hr = m_db->Open(bstr(cn.c_str()));
|
||||
#pragma warning(pop)
|
||||
if (SUCCEEDED(hr)) {
|
||||
// Database open and ready.
|
||||
m_filename = filename;
|
||||
@@ -307,7 +315,7 @@ bool ZRCola::DBSource::Open(LPCTSTR filename)
|
||||
com_obj<ADOParameters> params;
|
||||
wxVERIFY(SUCCEEDED(m_comTranslation->get_Parameters(¶ms)));
|
||||
wxASSERT_MSG(!m_pTranslation1, wxT("ADO command parameter already created"));
|
||||
wxVERIFY(SUCCEEDED(m_comTranslation->CreateParameter(bstr(L"@Script"), adSmallInt, adParamInput, 0, variant(DISP_E_PARAMNOTFOUND, VT_ERROR), &m_pTranslation1)));
|
||||
wxVERIFY(SUCCEEDED(m_comTranslation->CreateParameter(bstr(L"@Script"), adInteger, adParamInput, 0, variant(DISP_E_PARAMNOTFOUND, VT_ERROR), &m_pTranslation1)));
|
||||
wxVERIFY(SUCCEEDED(params->Append(m_pTranslation1)));
|
||||
}
|
||||
|
||||
@@ -324,27 +332,10 @@ bool ZRCola::DBSource::Open(LPCTSTR filename)
|
||||
com_obj<ADOParameters> params;
|
||||
wxVERIFY(SUCCEEDED(m_comTranslationSets->get_Parameters(¶ms)));
|
||||
wxASSERT_MSG(!m_pTranslationSets1, wxT("ADO command parameter already created"));
|
||||
wxVERIFY(SUCCEEDED(m_comTranslationSets->CreateParameter(bstr(L"@ID"), adSmallInt, adParamInput, 0, variant(DISP_E_PARAMNOTFOUND, VT_ERROR), &m_pTranslationSets1)));
|
||||
wxVERIFY(SUCCEEDED(m_comTranslationSets->CreateParameter(bstr(L"@ID"), adInteger, adParamInput, 0, variant(DISP_E_PARAMNOTFOUND, VT_ERROR), &m_pTranslationSets1)));
|
||||
wxVERIFY(SUCCEEDED(params->Append(m_pTranslationSets1)));
|
||||
}
|
||||
|
||||
wxASSERT_MSG(!m_comHighlight, wxT("ADO command already created"));
|
||||
wxVERIFY(SUCCEEDED(::CoCreateInstance(CLSID_CADOCommand, NULL, CLSCTX_ALL, IID_IADOCommand, (LPVOID*)&m_comHighlight)));
|
||||
wxVERIFY(SUCCEEDED(m_comHighlight->put_ActiveConnection(variant(m_db))));
|
||||
wxVERIFY(SUCCEEDED(m_comHighlight->put_CommandType(adCmdText)));
|
||||
wxVERIFY(SUCCEEDED(m_comHighlight->put_CommandText(bstr(L"SELECT [komb] "
|
||||
L"FROM [VRS_HighlightChars2] "
|
||||
L"WHERE [group]=? "
|
||||
L"ORDER BY [komb]"))));
|
||||
{
|
||||
// Create and add command parameters.
|
||||
com_obj<ADOParameters> params;
|
||||
wxVERIFY(SUCCEEDED(m_comHighlight->get_Parameters(¶ms)));
|
||||
wxASSERT_MSG(!m_pHighlight1, wxT("ADO command parameter already created"));
|
||||
wxVERIFY(SUCCEEDED(m_comHighlight->CreateParameter(bstr(L"@group"), adSmallInt, adParamInput, 0, variant(DISP_E_PARAMNOTFOUND, VT_ERROR), &m_pHighlight1)));
|
||||
wxVERIFY(SUCCEEDED(params->Append(m_pHighlight1)));
|
||||
}
|
||||
|
||||
return true;
|
||||
} else {
|
||||
_ftprintf(stderr, wxT("%s: error ZCC0011: Could not open database (0x%x).\n"), (LPCTSTR)filename, hr);
|
||||
@@ -405,15 +396,15 @@ bool ZRCola::DBSource::GetValue(const com_obj<ADOField>& f, bool& val) const
|
||||
}
|
||||
|
||||
|
||||
bool ZRCola::DBSource::GetValue(const com_obj<ADOField>& f, short& val) const
|
||||
bool ZRCola::DBSource::GetValue(const com_obj<ADOField>& f, int& val) const
|
||||
{
|
||||
wxASSERT_MSG(f, wxT("field is empty"));
|
||||
|
||||
variant v;
|
||||
wxVERIFY(SUCCEEDED(f->get_Value(&v)));
|
||||
wxCHECK(SUCCEEDED(v.change_type(VT_I2)), false);
|
||||
wxCHECK(SUCCEEDED(v.change_type(VT_I4)), false);
|
||||
|
||||
val = V_I2(&v);
|
||||
val = V_I4(&v);
|
||||
|
||||
return true;
|
||||
}
|
||||
@@ -756,7 +747,7 @@ bool ZRCola::DBSource::SelectTranslations(com_obj<ADORecordset> &rs) const
|
||||
}
|
||||
|
||||
|
||||
bool ZRCola::DBSource::SelectTranslations(short set, winstd::com_obj<ADORecordset>& rs) const
|
||||
bool ZRCola::DBSource::SelectTranslations(int set, winstd::com_obj<ADORecordset>& rs) const
|
||||
{
|
||||
// Create a new recordset.
|
||||
rs.free();
|
||||
@@ -942,7 +933,7 @@ bool ZRCola::DBSource::GetTranslationSeq(const com_obj<ADORecordset>& rs, ZRCola
|
||||
wxVERIFY(SUCCEEDED(flds2->get_Item(variant(L"Script"), &f_set)));
|
||||
size_t n = 0;
|
||||
for (VARIANT_BOOL eof = VARIANT_TRUE; SUCCEEDED(rs_chars->get_EOF(&eof)) && !eof; rs_chars->MoveNext(), n++) {
|
||||
short set;
|
||||
int set;
|
||||
wxCHECK(GetValue(f_set, set), false);
|
||||
ts.sets.push_back(set);
|
||||
}
|
||||
@@ -986,21 +977,21 @@ bool ZRCola::DBSource::GetKeySequence(const com_obj<ADORecordset>& rs, ZRCola::D
|
||||
wxCHECK(GetUnicodeString(f, ks.chr), false);
|
||||
}
|
||||
|
||||
short modifiers;
|
||||
int modifiers;
|
||||
{
|
||||
com_obj<ADOField> f;
|
||||
wxVERIFY(SUCCEEDED(flds->get_Item(variant(L"Modifiers"), &f)));
|
||||
wxCHECK(GetValue(f, modifiers), false);
|
||||
}
|
||||
|
||||
short keycode1;
|
||||
int keycode1;
|
||||
{
|
||||
com_obj<ADOField> f;
|
||||
wxVERIFY(SUCCEEDED(flds->get_Item(variant(L"KeyCodePre"), &f)));
|
||||
wxCHECK(GetValue(f, keycode1), false);
|
||||
}
|
||||
|
||||
short keycode;
|
||||
int keycode;
|
||||
{
|
||||
com_obj<ADOField> f;
|
||||
wxVERIFY(SUCCEEDED(flds->get_Item(variant(L"KeyCode"), &f)));
|
||||
@@ -1018,18 +1009,18 @@ bool ZRCola::DBSource::GetKeySequence(const com_obj<ADORecordset>& rs, ZRCola::D
|
||||
if (keycode1) {
|
||||
// First key in the sequence is complete.
|
||||
keyseq::keycode kc1 = {
|
||||
keyseq::keycode::translate_slen(static_cast<wchar_t>(keycode1)),
|
||||
keyseq::keycode::translate_slen(keycode1),
|
||||
(modifiers & 0x100) != 0,
|
||||
(modifiers & 0x200) != 0,
|
||||
(modifiers & 0x400) != 0 };
|
||||
ks.seq.push_back(kc1);
|
||||
|
||||
keyseq::keycode kc2 = { keyseq::keycode::translate_slen(static_cast<wchar_t>(keycode)), shift };
|
||||
keyseq::keycode kc2 = { keyseq::keycode::translate_slen(keycode), shift };
|
||||
ks.seq.push_back(kc2);
|
||||
} else {
|
||||
// First key in the sequence is only modifier(s).
|
||||
keyseq::keycode kc1 = {
|
||||
keyseq::keycode::translate_slen(static_cast<wchar_t>(keycode)),
|
||||
keyseq::keycode::translate_slen(keycode),
|
||||
shift || (modifiers & 0x100) != 0,
|
||||
(modifiers & 0x200) != 0,
|
||||
(modifiers & 0x400) != 0 };
|
||||
@@ -1458,41 +1449,3 @@ bool ZRCola::DBSource::GetTagName(const winstd::com_obj<ADORecordset>& rs, tagna
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
bool ZRCola::DBSource::SelectHighlights(short set, winstd::com_obj<ADORecordset>& rs) const
|
||||
{
|
||||
// Create a new recordset.
|
||||
rs.free();
|
||||
wxVERIFY(SUCCEEDED(::CoCreateInstance(CLSID_CADORecordset, NULL, CLSCTX_ALL, IID_IADORecordset, (LPVOID*)&rs)));
|
||||
wxVERIFY(SUCCEEDED(rs->put_CursorLocation(adUseClient)));
|
||||
wxVERIFY(SUCCEEDED(rs->put_CursorType(adOpenForwardOnly)));
|
||||
wxVERIFY(SUCCEEDED(rs->put_LockType(adLockReadOnly)));
|
||||
|
||||
// Open it.
|
||||
wxVERIFY(SUCCEEDED(m_pHighlight1->put_Value(variant(set))));
|
||||
if (FAILED(rs->Open(variant(m_comHighlight), variant(DISP_E_PARAMNOTFOUND, VT_ERROR)))) {
|
||||
_ftprintf(stderr, wxT("%s: error ZCC0101: Error loading highlights from database. Please make sure the file is ZRCola.zrc compatible.\n"), m_filename.c_str());
|
||||
LogErrors();
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
bool ZRCola::DBSource::GetHighlight(const com_obj<ADORecordset>& rs, ZRCola::DBSource::highlight& h) const
|
||||
{
|
||||
wxASSERT_MSG(rs, wxT("recordset is empty"));
|
||||
|
||||
com_obj<ADOFields> flds;
|
||||
wxVERIFY(SUCCEEDED(rs->get_Fields(&flds)));
|
||||
|
||||
{
|
||||
com_obj<ADOField> f;
|
||||
wxVERIFY(SUCCEEDED(flds->get_Item(variant(L"komb"), &f)));
|
||||
wxCHECK(GetUnicodeString(f, h.chr), false);
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -1,12 +1,26 @@
|
||||
/*
|
||||
SPDX-License-Identifier: GPL-3.0-or-later
|
||||
Copyright © 2015-2021 Amebis
|
||||
/*
|
||||
Copyright 2015-2018 Amebis
|
||||
|
||||
This file is part of ZRCola.
|
||||
|
||||
ZRCola is free software: you can redistribute it and/or modify it
|
||||
under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
ZRCola is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with ZRCola. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
#include <zrcola/character.h>
|
||||
#include <zrcola/highlight.h>
|
||||
#include <zrcola/common.h>
|
||||
#include <zrcola/language.h>
|
||||
#include <zrcola/tag.h>
|
||||
#include <zrcola/translate.h>
|
||||
@@ -17,11 +31,7 @@
|
||||
#include <WinStd/COM.h>
|
||||
#include <WinStd/Win.h>
|
||||
|
||||
#include <wxex/common.h>
|
||||
#pragma warning(push)
|
||||
#pragma warning(disable: WXWIDGETS_CODE_ANALYSIS_WARNINGS)
|
||||
#include <wx/debug.h>
|
||||
#pragma warning(pop)
|
||||
|
||||
#pragma warning(push)
|
||||
#pragma warning(disable: 4091)
|
||||
@@ -47,27 +57,26 @@ namespace ZRCola {
|
||||
///
|
||||
class charseq {
|
||||
public:
|
||||
short rank; ///< Sequence rank
|
||||
int rank; ///< Sequence rank
|
||||
std::wstring str; ///< Sequence string
|
||||
|
||||
inline charseq() :
|
||||
rank(0)
|
||||
inline charseq()
|
||||
{
|
||||
}
|
||||
|
||||
inline charseq(_In_ short _rank, _In_z_ const wchar_t *_str) :
|
||||
inline charseq(_In_ int _rank, _In_z_ const wchar_t *_str) :
|
||||
rank(_rank),
|
||||
str (_str)
|
||||
{
|
||||
}
|
||||
|
||||
inline charseq(_In_ short _rank, _In_ const std::wstring &_str) :
|
||||
inline charseq(_In_ int _rank, _In_ const std::wstring &_str) :
|
||||
rank(_rank),
|
||||
str (_str)
|
||||
{
|
||||
}
|
||||
|
||||
inline charseq(_In_ short _rank, _Inout_ std::wstring &&_str) :
|
||||
inline charseq(_In_ int _rank, _Inout_ std::wstring &&_str) :
|
||||
rank(_rank),
|
||||
str (std::move(_str))
|
||||
{
|
||||
@@ -113,12 +122,10 @@ namespace ZRCola {
|
||||
///
|
||||
class translation {
|
||||
public:
|
||||
short set; ///< Translation set ID
|
||||
int set; ///< Translation set ID
|
||||
charseq src; ///< Source sequence
|
||||
std::string norm; ///< Normalization footprint
|
||||
charseq dst; ///< Destination sequence
|
||||
|
||||
inline translation() : set((short)ZRCOLA_TRANSETID_DEFAULT) {}
|
||||
};
|
||||
|
||||
|
||||
@@ -127,11 +134,9 @@ namespace ZRCola {
|
||||
///
|
||||
class transet {
|
||||
public:
|
||||
short set; ///< ID
|
||||
int set; ///< ID
|
||||
std::wstring src; ///< Source name
|
||||
std::wstring dst; ///< Destination name
|
||||
|
||||
inline transet() : set((short)ZRCOLA_TRANSETID_DEFAULT) {}
|
||||
};
|
||||
|
||||
|
||||
@@ -140,15 +145,10 @@ namespace ZRCola {
|
||||
///
|
||||
class transeq {
|
||||
public:
|
||||
short seq; ///< ID
|
||||
short rank; ///< Rank
|
||||
std::wstring name; ///< Name
|
||||
std::vector<short> sets; ///< Sets
|
||||
|
||||
inline transeq() :
|
||||
seq(0),
|
||||
rank(0)
|
||||
{}
|
||||
int seq; ///< ID
|
||||
int rank; ///< Rank
|
||||
std::wstring name; ///< Name
|
||||
std::vector<int> sets; ///< Sets
|
||||
};
|
||||
|
||||
|
||||
@@ -200,8 +200,6 @@ namespace ZRCola {
|
||||
public:
|
||||
ZRCola::langid_t lang; ///< Language ID
|
||||
std::wstring name; ///< Name
|
||||
|
||||
inline language() : lang(ZRCola::langid_t::blank) {}
|
||||
};
|
||||
|
||||
|
||||
@@ -212,8 +210,6 @@ namespace ZRCola {
|
||||
public:
|
||||
std::wstring chr; ///> Character
|
||||
ZRCola::langid_t lang; ///< Language ID
|
||||
|
||||
inline langchar() : lang(ZRCola::langid_t::blank) {}
|
||||
};
|
||||
|
||||
|
||||
@@ -222,13 +218,11 @@ namespace ZRCola {
|
||||
///
|
||||
class chrgrp {
|
||||
public:
|
||||
short grp; ///< Character group ID
|
||||
short rank; ///< Rank
|
||||
int grp; ///< Character group ID
|
||||
int rank; ///< Rank
|
||||
std::wstring name; ///< Name
|
||||
std::vector<wchar_t> chars; ///< Characters (zero-delimited)
|
||||
std::vector<unsigned __int16> show; ///< Bit vector if particular character from \c chars is displayed initially
|
||||
|
||||
inline chrgrp() : grp(0), rank(0) {}
|
||||
};
|
||||
|
||||
|
||||
@@ -331,7 +325,7 @@ namespace ZRCola {
|
||||
class character_desc_idx : public std::map<std::wstring, std::vector<wchar_t>, character_desc_idx_less>
|
||||
{
|
||||
public:
|
||||
static void parse_keywords(_In_ const wchar_t *str, _Inout_ std::set<std::wstring> &terms);
|
||||
static void parse_keywords(const wchar_t *str, std::set<std::wstring> &terms);
|
||||
void add_keywords(const std::set<std::wstring> &terms, const std::wstring &chr, size_t sub = 0);
|
||||
inline void add_keywords(const wchar_t *str, const std::wstring &chr, size_t sub = 0)
|
||||
{
|
||||
@@ -373,10 +367,8 @@ namespace ZRCola {
|
||||
class chrcat {
|
||||
public:
|
||||
ZRCola::chrcatid_t cat; ///> Category ID
|
||||
short rank; ///< Rank
|
||||
int rank; ///< Rank
|
||||
std::wstring name; ///< Name
|
||||
|
||||
inline chrcat() : cat(ZRCola::chrcatid_t::blank), rank(0) {}
|
||||
};
|
||||
|
||||
|
||||
@@ -386,9 +378,7 @@ namespace ZRCola {
|
||||
class chrtag {
|
||||
public:
|
||||
std::wstring chr; ///> Character
|
||||
short tag; ///< Tag ID
|
||||
|
||||
inline chrtag() : tag(0) {}
|
||||
int tag; ///< Tag ID
|
||||
};
|
||||
|
||||
|
||||
@@ -397,22 +387,8 @@ namespace ZRCola {
|
||||
///
|
||||
class tagname {
|
||||
public:
|
||||
short tag; ///< Tag ID
|
||||
int tag; ///< Tag ID
|
||||
std::map<LCID, std::list<std::wstring> > names; ///< Names
|
||||
|
||||
inline tagname() : tag(0) {}
|
||||
};
|
||||
|
||||
|
||||
///
|
||||
/// Highlight
|
||||
///
|
||||
class highlight {
|
||||
public:
|
||||
short set; ///< Highlight set ID
|
||||
std::wstring chr; ///< Character sequence
|
||||
|
||||
inline highlight() : set((short)ZRCOLA_HLGHTSETID_DEFAULT) {}
|
||||
};
|
||||
|
||||
|
||||
@@ -464,6 +440,18 @@ namespace ZRCola {
|
||||
return SUCCEEDED(rs->get_RecordCount(&count)) ? count : (size_t)-1;
|
||||
}
|
||||
|
||||
///
|
||||
/// Splits string to individual keywords
|
||||
///
|
||||
/// \param[in ] str String
|
||||
/// \param[out] keywords Array of keywords
|
||||
///
|
||||
/// \returns
|
||||
/// - true when successful
|
||||
/// - false otherwise
|
||||
///
|
||||
static bool GetKeywords(const wchar_t *str, std::vector< std::wstring > &keywords);
|
||||
|
||||
///
|
||||
/// Gets boolean from ZRCola.zrc database
|
||||
///
|
||||
@@ -486,7 +474,7 @@ namespace ZRCola {
|
||||
/// - true when successful
|
||||
/// - false otherwise
|
||||
///
|
||||
bool GetValue(const winstd::com_obj<ADOField>& f, short& val) const;
|
||||
bool GetValue(const winstd::com_obj<ADOField>& f, int& val) const;
|
||||
|
||||
///
|
||||
/// Gets string from ZRCola.zrc database
|
||||
@@ -628,7 +616,7 @@ namespace ZRCola {
|
||||
/// - true when query succeeds
|
||||
/// - false otherwise
|
||||
///
|
||||
bool SelectTranslations(short set, winstd::com_obj<ADORecordset>& rs) const;
|
||||
bool SelectTranslations(int set, winstd::com_obj<ADORecordset>& rs) const;
|
||||
|
||||
///
|
||||
/// Returns translation data
|
||||
@@ -872,30 +860,6 @@ namespace ZRCola {
|
||||
///
|
||||
bool GetTagName(const winstd::com_obj<ADORecordset>& rs, tagname& tn) const;
|
||||
|
||||
///
|
||||
/// Returns character highlights by set
|
||||
///
|
||||
/// \param[in ] set Highlight set ID
|
||||
/// \param[out] rs Recordset with results
|
||||
///
|
||||
/// \returns
|
||||
/// - true when query succeeds
|
||||
/// - false otherwise
|
||||
///
|
||||
bool SelectHighlights(short set, winstd::com_obj<ADORecordset>& rs) const;
|
||||
|
||||
///
|
||||
/// Returns highlight data
|
||||
///
|
||||
/// \param[in] rs Recordset with results
|
||||
/// \param[out] h Highlight
|
||||
///
|
||||
/// \returns
|
||||
/// - true when succeeded
|
||||
/// - false otherwise
|
||||
///
|
||||
bool GetHighlight(const winstd::com_obj<ADORecordset>& rs, highlight& h) const;
|
||||
|
||||
protected:
|
||||
std::basic_string<TCHAR> m_filename; ///< Database filename
|
||||
winstd::com_obj<ADOConnection> m_db; ///< Database
|
||||
@@ -910,9 +874,6 @@ namespace ZRCola {
|
||||
winstd::com_obj<ADOCommand> m_comTranslationSets; ///< ADO Command for GetTranslationSeq subquery
|
||||
winstd::com_obj<ADOParameter> m_pTranslationSets1; ///< \c m_comTranslationSets parameter
|
||||
|
||||
winstd::com_obj<ADOCommand> m_comHighlight; ///< ADO Command for SelectHighlights subquery
|
||||
winstd::com_obj<ADOParameter> m_pHighlight1; ///< \c m_comHighlights parameter
|
||||
|
||||
std::set<std::wstring> m_terms_ignore; ///< Terms to ignore when comparing characters
|
||||
};
|
||||
};
|
||||
@@ -921,8 +882,11 @@ namespace ZRCola {
|
||||
inline ZRCola::translation_db& operator<<(_Inout_ ZRCola::translation_db &db, _In_ const ZRCola::DBSource::translation &rec)
|
||||
{
|
||||
unsigned __int32 idx = db.data.size();
|
||||
wxASSERT_MSG((int)0xffff8000 <= rec.set && rec.set <= (int)0x00007fff, wxT("translation set id out of bounds"));
|
||||
db.data.push_back((unsigned __int16)rec.set);
|
||||
wxASSERT_MSG((int)0xffff8000 <= rec.dst.rank && rec.dst.rank <= (int)0x00007fff, wxT("destination character rank out of bounds"));
|
||||
db.data.push_back((unsigned __int16)rec.dst.rank);
|
||||
wxASSERT_MSG((int)0xffff8000 <= rec.src.rank && rec.src.rank <= (int)0x00007fff, wxT("source character rank out of bounds"));
|
||||
db.data.push_back((unsigned __int16)rec.src.rank);
|
||||
std::wstring::size_type n = rec.dst.str.length();
|
||||
wxASSERT_MSG(n <= 0xffff, wxT("destination overflow"));
|
||||
@@ -942,6 +906,7 @@ inline ZRCola::translation_db& operator<<(_Inout_ ZRCola::translation_db &db, _I
|
||||
inline ZRCola::transet_db& operator<<(_Inout_ ZRCola::transet_db &db, _In_ const ZRCola::DBSource::transet &rec)
|
||||
{
|
||||
unsigned __int32 idx = db.data.size();
|
||||
wxASSERT_MSG((int)0xffff8000 <= rec.set && rec.set <= (int)0x00007fff, wxT("translation set id out of bounds"));
|
||||
db.data.push_back((unsigned __int16)rec.set);
|
||||
std::wstring::size_type n = rec.src.length();
|
||||
wxASSERT_MSG(n <= 0xffff, wxT("translation set source name overflow"));
|
||||
@@ -960,7 +925,9 @@ inline ZRCola::transet_db& operator<<(_Inout_ ZRCola::transet_db &db, _In_ const
|
||||
inline ZRCola::transeq_db& operator<<(_Inout_ ZRCola::transeq_db &db, _In_ const ZRCola::DBSource::transeq &rec)
|
||||
{
|
||||
unsigned __int32 idx = db.data.size();
|
||||
wxASSERT_MSG((int)0xffff8000 <= rec.seq && rec.seq <= (int)0x00007fff, wxT("translation sequence id out of bounds"));
|
||||
db.data.push_back((unsigned __int16)rec.seq);
|
||||
wxASSERT_MSG((int)0xffff8000 <= rec.rank && rec.rank <= (int)0x00007fff, wxT("translation rank id out of bounds"));
|
||||
db.data.push_back((unsigned __int16)rec.rank);
|
||||
std::wstring::size_type n = rec.name.length();
|
||||
wxASSERT_MSG(n <= 0xffff, wxT("translation sequence name overflow"));
|
||||
@@ -969,8 +936,11 @@ inline ZRCola::transeq_db& operator<<(_Inout_ ZRCola::transeq_db &db, _In_ const
|
||||
wxASSERT_MSG(n <= 0xffff, wxT("translation sequence sets overflow"));
|
||||
db.data.push_back((unsigned __int16)n);
|
||||
db.data.insert(db.data.end(), rec.name.cbegin(), rec.name.cend());
|
||||
for (auto s = rec.sets.cbegin(), s_end = rec.sets.cend(); s != s_end; ++s)
|
||||
db.data.push_back((unsigned __int16)*s);
|
||||
for (auto s = rec.sets.cbegin(), s_end = rec.sets.cend(); s != s_end; ++s) {
|
||||
int val = *s;
|
||||
wxASSERT_MSG(val <= 0xffff, wxT("translation sequence ID overflow"));
|
||||
db.data.push_back((unsigned __int16)val);
|
||||
}
|
||||
db.idxTranSeq.push_back(idx);
|
||||
db.idxRank .push_back(idx);
|
||||
|
||||
@@ -1036,7 +1006,9 @@ inline ZRCola::langchar_db& operator<<(_Inout_ ZRCola::langchar_db &db, _In_ con
|
||||
inline ZRCola::chrgrp_db& operator<<(_Inout_ ZRCola::chrgrp_db &db, _In_ const ZRCola::DBSource::chrgrp &rec)
|
||||
{
|
||||
unsigned __int32 idx = db.data.size();
|
||||
wxASSERT_MSG((int)0xffff8000 <= rec.grp && rec.grp <= (int)0x00007fff, wxT("character group ID out of bounds"));
|
||||
db.data.push_back((unsigned __int16)rec.grp);
|
||||
wxASSERT_MSG((int)0xffff8000 <= rec.rank && rec.rank <= (int)0x00007fff, wxT("character group rank out of bounds"));
|
||||
db.data.push_back((unsigned __int16)rec.rank);
|
||||
std::wstring::size_type n = rec.name.length();
|
||||
wxASSERT_MSG(n <= 0xffff, wxT("character group name overflow"));
|
||||
@@ -1079,6 +1051,7 @@ inline ZRCola::chrcat_db& operator<<(_Inout_ ZRCola::chrcat_db &db, _In_ const Z
|
||||
{
|
||||
unsigned __int32 idx = db.data.size();
|
||||
db.data.insert(db.data.end(), reinterpret_cast<const unsigned __int16*>(&rec.cat), reinterpret_cast<const unsigned __int16*>(&rec.cat + 1));
|
||||
wxASSERT_MSG((int)0xffff8000 <= rec.rank && rec.rank <= (int)0x00007fff, wxT("character category rank out of bounds"));
|
||||
db.data.push_back((unsigned __int16)rec.rank);
|
||||
std::wstring::size_type n = rec.name.length();
|
||||
wxASSERT_MSG(n <= 0xffff, wxT("character category name overflow"));
|
||||
@@ -1094,6 +1067,7 @@ inline ZRCola::chrcat_db& operator<<(_Inout_ ZRCola::chrcat_db &db, _In_ const Z
|
||||
inline ZRCola::chrtag_db& operator<<(_Inout_ ZRCola::chrtag_db &db, _In_ const ZRCola::DBSource::chrtag &rec)
|
||||
{
|
||||
unsigned __int32 idx = db.data.size();
|
||||
wxASSERT_MSG((int)0xffff8000 <= rec.tag && rec.tag <= (int)0x00007fff, wxT("tag out of bounds"));
|
||||
db.data.push_back((unsigned __int16)rec.tag);
|
||||
std::wstring::size_type n = rec.chr.length();
|
||||
wxASSERT_MSG(n <= 0xffff, wxT("character overflow"));
|
||||
@@ -1111,6 +1085,7 @@ inline ZRCola::tagname_db& operator<<(_Inout_ ZRCola::tagname_db &db, _In_ const
|
||||
for (auto ln = rec.names.cbegin(), ln_end = rec.names.cend(); ln != ln_end; ++ln) {
|
||||
for (auto nm = ln->second.cbegin(), nm_end = ln->second.cend(); nm != nm_end; ++nm) {
|
||||
unsigned __int32 idx = db.data.size();
|
||||
wxASSERT_MSG((int)0xffff8000 <= rec.tag && rec.tag <= (int)0x00007fff, wxT("tag out of bounds"));
|
||||
db.data.push_back((unsigned __int16)rec.tag);
|
||||
db.data.push_back(LOWORD(ln->first));
|
||||
db.data.push_back(HIWORD(ln->first));
|
||||
@@ -1125,17 +1100,3 @@ inline ZRCola::tagname_db& operator<<(_Inout_ ZRCola::tagname_db &db, _In_ const
|
||||
|
||||
return db;
|
||||
}
|
||||
|
||||
|
||||
inline ZRCola::highlight_db& operator<<(_Inout_ ZRCola::highlight_db &db, _In_ const ZRCola::DBSource::highlight &rec)
|
||||
{
|
||||
unsigned __int32 idx = db.data.size();
|
||||
db.data.push_back((unsigned __int16)rec.set);
|
||||
std::wstring::size_type n = rec.chr.length();
|
||||
wxASSERT_MSG(n <= 0xffff, wxT("character overflow"));
|
||||
db.data.push_back((unsigned __int16)n);
|
||||
db.data.insert(db.data.end(), rec.chr.cbegin(), rec.chr.cend());
|
||||
db.idxChr.push_back(idx);
|
||||
|
||||
return db;
|
||||
}
|
||||
|
||||
@@ -1,9 +1,23 @@
|
||||
/*
|
||||
SPDX-License-Identifier: GPL-3.0-or-later
|
||||
Copyright © 2015-2021 Amebis
|
||||
/*
|
||||
Copyright 2015-2018 Amebis
|
||||
|
||||
This file is part of ZRCola.
|
||||
|
||||
ZRCola is free software: you can redistribute it and/or modify it
|
||||
under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
ZRCola is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with ZRCola. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include "pch.h"
|
||||
#include "stdafx.h"
|
||||
|
||||
using namespace std;
|
||||
using namespace stdex;
|
||||
@@ -16,30 +30,28 @@ using namespace winstd;
|
||||
class com_translation
|
||||
{
|
||||
public:
|
||||
short rank_src; ///< Source sequence rank
|
||||
short rank_dst; ///< Destination character rank
|
||||
int rank_src; ///< Source sequence rank
|
||||
int rank_dst; ///< Destination character rank
|
||||
string norm; ///< Normalization footprint
|
||||
|
||||
inline com_translation() :
|
||||
rank_src(0),
|
||||
rank_dst(0)
|
||||
inline com_translation()
|
||||
{
|
||||
}
|
||||
|
||||
inline com_translation(short _rank_src, short _rank_dst) :
|
||||
inline com_translation(int _rank_src, int _rank_dst) :
|
||||
rank_src(_rank_src),
|
||||
rank_dst(_rank_dst)
|
||||
{
|
||||
}
|
||||
|
||||
inline com_translation(short _rank_src, short _rank_dst, const char *_norm) :
|
||||
inline com_translation(int _rank_src, int _rank_dst, const char *_norm) :
|
||||
rank_src(_rank_src),
|
||||
rank_dst(_rank_dst),
|
||||
norm (_norm )
|
||||
{
|
||||
}
|
||||
|
||||
inline com_translation(short _rank_src, short _rank_dst, string &&_norm) :
|
||||
inline com_translation(int _rank_src, int _rank_dst, string &&_norm) :
|
||||
rank_src( _rank_src ),
|
||||
rank_dst( _rank_dst ),
|
||||
norm (std::move(_norm ))
|
||||
@@ -53,7 +65,7 @@ public:
|
||||
{
|
||||
}
|
||||
|
||||
inline com_translation(com_translation &&other) noexcept :
|
||||
inline com_translation(com_translation &&other) :
|
||||
rank_src( other.rank_src ),
|
||||
rank_dst( other.rank_dst ),
|
||||
norm (std::move(other.norm ))
|
||||
@@ -70,7 +82,7 @@ public:
|
||||
return *this;
|
||||
}
|
||||
|
||||
inline com_translation& operator=(com_translation &&other) noexcept
|
||||
inline com_translation& operator=(com_translation &&other)
|
||||
{
|
||||
if (this != std::addressof(other)) {
|
||||
rank_src = other.rank_src ;
|
||||
@@ -201,8 +213,8 @@ static inline set<ZRCola::DBSource::charseq> permutate_and_translate_inv(_In_ co
|
||||
|
||||
// Secondary permutation inverse translate.
|
||||
auto res_perm = translate_inv(db_trans, db_np, str_perm.c_str(), path);
|
||||
for (auto r = res_perm.cbegin(), r_end = res_perm.cend(); r != r_end; ++r)
|
||||
res.insert(ZRCola::DBSource::charseq(r->rank + 1, r->str));
|
||||
for (auto r = res_perm.begin(), r_end = res_perm.end(); r != r_end; ++r)
|
||||
res.insert(ZRCola::DBSource::charseq(r->rank + 1, std::move(r->str)));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -236,10 +248,10 @@ int _tmain(int argc, _TCHAR *argv[])
|
||||
// Parse command line.
|
||||
static const wxCmdLineEntryDesc cmdLineDesc[] =
|
||||
{
|
||||
{ wxCMD_LINE_SWITCH, "h" , "help" , _("Show this help message"), wxCMD_LINE_VAL_NONE , wxCMD_LINE_OPTION_HELP },
|
||||
{ wxCMD_LINE_PARAM , NULL, NULL , _("<Input file>" ), wxCMD_LINE_VAL_STRING, wxCMD_LINE_OPTION_MANDATORY },
|
||||
{ wxCMD_LINE_PARAM , NULL, NULL , _("<Output file>" ), wxCMD_LINE_VAL_STRING, wxCMD_LINE_OPTION_MANDATORY },
|
||||
{ wxCMD_LINE_OPTION, NULL, "pot-cat", _("Output POT catalog" ), wxCMD_LINE_VAL_STRING, wxCMD_LINE_PARAM_OPTIONAL },
|
||||
{ wxCMD_LINE_SWITCH, "h" , "help", _("Show this help message"), wxCMD_LINE_VAL_NONE , wxCMD_LINE_OPTION_HELP },
|
||||
{ wxCMD_LINE_PARAM , NULL, NULL , _("<input file>" ), wxCMD_LINE_VAL_STRING, wxCMD_LINE_OPTION_MANDATORY },
|
||||
{ wxCMD_LINE_PARAM , NULL, NULL , _("<output file>" ), wxCMD_LINE_VAL_STRING, wxCMD_LINE_OPTION_MANDATORY },
|
||||
{ wxCMD_LINE_PARAM , NULL, NULL , _("<output POT catalog>" ), wxCMD_LINE_VAL_STRING, wxCMD_LINE_OPTION },
|
||||
|
||||
{ wxCMD_LINE_NONE }
|
||||
};
|
||||
@@ -282,15 +294,13 @@ int _tmain(int argc, _TCHAR *argv[])
|
||||
bool has_errors = false;
|
||||
|
||||
// Set of strings to translate.
|
||||
wxString filenamePot;
|
||||
bool build_pot = parser.Found("pot-cat", &filenamePot);
|
||||
bool build_pot = parser.GetParamCount() > 2;
|
||||
set<wstring> pot;
|
||||
|
||||
// Open file ID.
|
||||
streamoff dst_start = idrec::open<ZRCola::recordid_t, ZRCola::recordsize_t>(dst, ZRCOLA_DB_ID);
|
||||
|
||||
ZRCola::translation_db db_trans;
|
||||
ZRCola::transet_db db_transset;
|
||||
normperm_db db_np;
|
||||
|
||||
{
|
||||
@@ -361,47 +371,34 @@ int _tmain(int argc, _TCHAR *argv[])
|
||||
assert(!res.empty());
|
||||
|
||||
// Add translation to temporary database.
|
||||
for (auto r = res.cbegin(), r_end = res.cend(); r != r_end; ++r) {
|
||||
for (auto r = res.begin(), r_end = res.end(); r != r_end; ++r) {
|
||||
translation_db::mapped_type::mapped_type ct(d1->second.rank_src + r->rank, d1->second.rank_dst);
|
||||
auto hit = t2->second.find(r->str);
|
||||
if (hit != t2->second.end()) {
|
||||
hit->second.rank_src = std::min<short>(hit->second.rank_src, ct.rank_src);
|
||||
hit->second.rank_dst = std::max<short>(hit->second.rank_dst, ct.rank_dst);
|
||||
hit->second.rank_src = std::min<int>(hit->second.rank_src, ct.rank_src);
|
||||
hit->second.rank_dst = std::max<int>(hit->second.rank_dst, ct.rank_dst);
|
||||
} else
|
||||
t2->second.insert(pair<translation_db::mapped_type::key_type, translation_db::mapped_type::mapped_type>(r->str, std::move(ct)));
|
||||
t2->second.insert(pair<translation_db::mapped_type::key_type, translation_db::mapped_type::mapped_type>(std::move(r->str), std::move(ct)));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Preallocate memory.
|
||||
db_trans.idxSrc.reserve(count*2);
|
||||
db_trans.idxDst.reserve(count*2);
|
||||
db_trans.data .reserve(count*2*8);
|
||||
db_trans.idxSrc.reserve(count);
|
||||
db_trans.idxDst.reserve(count);
|
||||
db_trans.data .reserve(count*5);
|
||||
|
||||
// Parse translations and build index and data.
|
||||
ZRCola::DBSource::translation trans;
|
||||
trans.set = 0;
|
||||
for (auto t = db_temp2.cbegin(), t_end = db_temp2.cend(); t != t_end; ++t) {
|
||||
// Add translation to index and data.
|
||||
trans.dst.str = t->first;
|
||||
trans.dst.str = std::move(t->first);
|
||||
for (auto d = t->second.cbegin(), d_end = t->second.cend(); d != d_end; ++d) {
|
||||
trans.set = (short)ZRCOLA_TRANSETID_DEFAULT;
|
||||
trans.dst.rank = d->second.rank_dst;
|
||||
trans.src.rank = d->second.rank_src;
|
||||
trans.src.str = d->first;
|
||||
trans.src.str = std::move(d->first);
|
||||
db_trans << trans;
|
||||
|
||||
// If destination contains no PUA characters, add it to the ZRCola » Unicode transliteration too.
|
||||
bool has_pua = false;
|
||||
for (auto ch = trans.dst.str.cbegin(), ch_end = trans.dst.str.cend(); ch != ch_end; ++ch)
|
||||
if (ZRCola::ispua(*ch)) {
|
||||
has_pua = true;
|
||||
break;
|
||||
}
|
||||
if (!has_pua) {
|
||||
trans.set = (short)ZRCOLA_TRANSETID_UNICODE;
|
||||
trans.dst.rank += 50;
|
||||
db_trans << trans;
|
||||
}
|
||||
}
|
||||
}
|
||||
} else {
|
||||
@@ -414,73 +411,35 @@ int _tmain(int argc, _TCHAR *argv[])
|
||||
}
|
||||
}
|
||||
|
||||
{
|
||||
com_obj<ADORecordset> rs_tran;
|
||||
if (src.SelectTranslations(static_cast<short>(ZRCOLA_TRANSETID_UNICODE), rs_tran)) {
|
||||
size_t count = src.GetRecordsetCount(rs_tran);
|
||||
if (count < 0xffffffff) { // 4G check (-1 is reserved for error condition)
|
||||
// Preallocate memory.
|
||||
db_trans.idxSrc.reserve(db_trans.idxSrc.size() + count);
|
||||
db_trans.idxDst.reserve(db_trans.idxDst.size() + count);
|
||||
db_trans.data .reserve(db_trans.data.size() + count*8);
|
||||
|
||||
// Parse translations and build temporary database.
|
||||
ZRCola::DBSource::translation trans;
|
||||
trans.set = (short)ZRCOLA_TRANSETID_UNICODE;
|
||||
for (; !ZRCola::DBSource::IsEOF(rs_tran); rs_tran->MoveNext()) {
|
||||
// Read translation from the database.
|
||||
if (src.GetTranslation(rs_tran, trans)) {
|
||||
// Add translation to index and data.
|
||||
db_trans << trans;
|
||||
} else
|
||||
has_errors = true;
|
||||
}
|
||||
} else {
|
||||
_ftprintf(stderr, wxT("%s: error ZCC0004: Error getting Unicode translation count from database or too many translations.\n"), (LPCTSTR)filenameIn.c_str());
|
||||
has_errors = true;
|
||||
}
|
||||
} else {
|
||||
_ftprintf(stderr, wxT("%s: error ZCC0003: Error getting Unicode translations from database. Please make sure the file is ZRCola.zrc compatible.\n"), (LPCTSTR)filenameIn.c_str());
|
||||
has_errors = true;
|
||||
}
|
||||
}
|
||||
|
||||
{
|
||||
// Get translation sets.
|
||||
com_obj<ADORecordset> rs;
|
||||
if (src.SelectTranlationSets(rs)) {
|
||||
size_t count = src.GetRecordsetCount(rs);
|
||||
if (count < 0xffffffff) { // 4G check (-1 is reserved for error condition)
|
||||
ZRCola::transet_db db;
|
||||
|
||||
// Preallocate memory.
|
||||
db_transset.idxTranSet.reserve((count+1));
|
||||
db_transset.data .reserve((count+1)*4);
|
||||
db.idxTranSet.reserve((count+1));
|
||||
db.data .reserve((count+1)*4);
|
||||
|
||||
// Parse translation sets and build index and data.
|
||||
for (; !ZRCola::DBSource::IsEOF(rs); rs->MoveNext()) {
|
||||
// Read translation set from the database.
|
||||
ZRCola::DBSource::transet ts;
|
||||
if (src.GetTranslationSet(rs, ts)) {
|
||||
if (ts.set <= (short)ZRCOLA_TRANSETID_DEFAULT || (short)ZRCOLA_TRANSETID_UNICODE <= ts.set)
|
||||
continue;
|
||||
|
||||
if (build_pot) {
|
||||
pot.insert(ts.src);
|
||||
pot.insert(ts.dst);
|
||||
}
|
||||
|
||||
// Add translation set to index and data.
|
||||
db_transset << ts;
|
||||
db << ts;
|
||||
|
||||
// Get translations.
|
||||
com_obj<ADORecordset> rs_tran;
|
||||
if (src.SelectTranslations(ts.set, rs_tran)) {
|
||||
count = src.GetRecordsetCount(rs_tran);
|
||||
if (count < 0xffffffff) { // 4G check (-1 is reserved for error condition)
|
||||
// Preallocate memory.
|
||||
db_trans.idxSrc.reserve(db_trans.idxSrc.size() + count);
|
||||
db_trans.idxDst.reserve(db_trans.idxDst.size() + count);
|
||||
db_trans.data .reserve(db_trans.data.size() + count*8);
|
||||
|
||||
if (src.GetRecordsetCount(rs_tran) < 0xffffffff) { // 4G check (-1 is reserved for error condition)
|
||||
// Parse translations and build temporary database.
|
||||
ZRCola::DBSource::translation trans;
|
||||
trans.set = ts.set;
|
||||
@@ -503,6 +462,12 @@ int _tmain(int argc, _TCHAR *argv[])
|
||||
} else
|
||||
has_errors = true;
|
||||
}
|
||||
|
||||
// Sort indices.
|
||||
db.idxTranSet.sort();
|
||||
|
||||
// Write translation sets to file.
|
||||
dst << ZRCola::transet_rec(db);
|
||||
} else {
|
||||
_ftprintf(stderr, wxT("%s: error ZCC0009: Error getting translation set count from database or too many translation sets.\n"), (LPCTSTR)filenameIn.c_str());
|
||||
has_errors = true;
|
||||
@@ -513,13 +478,11 @@ int _tmain(int argc, _TCHAR *argv[])
|
||||
}
|
||||
}
|
||||
|
||||
// Write translation sets to file.
|
||||
db_transset.idxTranSet.sort();
|
||||
dst << ZRCola::transet_rec(db_transset);
|
||||
|
||||
// Write translations to file.
|
||||
// Sort indices.
|
||||
db_trans.idxSrc.sort();
|
||||
db_trans.idxDst.sort();
|
||||
|
||||
// Write translations to file.
|
||||
dst << ZRCola::translation_rec(db_trans);
|
||||
|
||||
{
|
||||
@@ -549,9 +512,11 @@ int _tmain(int argc, _TCHAR *argv[])
|
||||
has_errors = true;
|
||||
}
|
||||
|
||||
// Write translation sequences to file.
|
||||
// Sort indices.
|
||||
db.idxTranSeq.sort();
|
||||
db.idxRank .sort();
|
||||
|
||||
// Write translation sequences to file.
|
||||
dst << ZRCola::transeq_rec(db);
|
||||
} else {
|
||||
_ftprintf(stderr, wxT("%s: error ZCC0025: Error getting translation sequence count from database or too many translation sequences.\n"), (LPCTSTR)filenameIn.c_str());
|
||||
@@ -646,8 +611,10 @@ int _tmain(int argc, _TCHAR *argv[])
|
||||
has_errors = true;
|
||||
}
|
||||
|
||||
// Write languages to file.
|
||||
// Sort indices.
|
||||
db.idxLang.sort();
|
||||
|
||||
// Write languages to file.
|
||||
dst << ZRCola::language_rec(db);
|
||||
} else {
|
||||
_ftprintf(stderr, wxT("%s: error ZCC0009: Error getting language count from database or too many languages.\n"), (LPCTSTR)filenameIn.c_str());
|
||||
@@ -685,11 +652,13 @@ int _tmain(int argc, _TCHAR *argv[])
|
||||
has_errors = true;
|
||||
}
|
||||
|
||||
// Write language characters to file.
|
||||
// Sort indices.
|
||||
db.idxChr .sort();
|
||||
#ifdef ZRCOLA_LANGCHAR_LANG_IDX
|
||||
db.idxLang.sort();
|
||||
#endif
|
||||
|
||||
// Write language characters to file.
|
||||
dst << ZRCola::langchar_rec(db);
|
||||
} else {
|
||||
_ftprintf(stderr, wxT("%s: error ZCC0011: Error getting language characters count from database or too many langchars.\n"), (LPCTSTR)filenameIn.c_str());
|
||||
@@ -732,8 +701,10 @@ int _tmain(int argc, _TCHAR *argv[])
|
||||
has_errors = true;
|
||||
}
|
||||
|
||||
// Write character groups to file.
|
||||
// Sort indices.
|
||||
db.idxRank.sort();
|
||||
|
||||
// Write character groups to file.
|
||||
dst << ZRCola::chrgrp_rec(db);
|
||||
} else {
|
||||
_ftprintf(stderr, wxT("%s: error ZCC0015: Error getting character group count from database or too many character groups.\n"), (LPCTSTR)filenameIn.c_str());
|
||||
@@ -754,6 +725,7 @@ int _tmain(int argc, _TCHAR *argv[])
|
||||
size_t count = src.GetRecordsetCount(rs);
|
||||
if (count < 0xffffffff) { // 4G check (-1 is reserved for error condition)
|
||||
ZRCola::DBSource::character_desc_idx idxChrDsc, idxChrDscSub;
|
||||
|
||||
ZRCola::DBSource::character_bank chrs;
|
||||
|
||||
// Phase 1: Parse characters and build indexes.
|
||||
@@ -788,10 +760,14 @@ int _tmain(int argc, _TCHAR *argv[])
|
||||
categories_used.insert(chr->second.cat);
|
||||
}
|
||||
|
||||
// Write characters to file.
|
||||
// Sort indices.
|
||||
db.idxChr.sort();
|
||||
|
||||
// Save text indices.
|
||||
idxChrDsc .save(db.idxDsc );
|
||||
idxChrDscSub.save(db.idxDscSub);
|
||||
|
||||
// Write characters to file.
|
||||
dst << ZRCola::character_rec(db);
|
||||
} else {
|
||||
_ftprintf(stderr, wxT("%s: error ZCC0017: Error getting character count from database or too many characters.\n"), (LPCTSTR)filenameIn.c_str());
|
||||
@@ -835,9 +811,11 @@ int _tmain(int argc, _TCHAR *argv[])
|
||||
has_errors = true;
|
||||
}
|
||||
|
||||
// Write character categories to file.
|
||||
// Sort indices.
|
||||
db.idxChrCat.sort();
|
||||
db.idxRank .sort();
|
||||
|
||||
// Write character categories to file.
|
||||
dst << ZRCola::chrcat_rec(db);
|
||||
} else {
|
||||
_ftprintf(stderr, wxT("%s: error ZCC0019: Error getting character category count from database or too many character categories.\n"), (LPCTSTR)filenameIn.c_str());
|
||||
@@ -873,9 +851,11 @@ int _tmain(int argc, _TCHAR *argv[])
|
||||
has_errors = true;
|
||||
}
|
||||
|
||||
// Write characters tags to file.
|
||||
// Sort indices.
|
||||
db.idxChr.sort();
|
||||
db.idxTag.sort();
|
||||
|
||||
// Write characters tags to file.
|
||||
dst << ZRCola::chrtag_rec(db);
|
||||
} else {
|
||||
_ftprintf(stderr, wxT("%s: error ZCC0021: Error getting characters tags count from database or too many character tags.\n"), (LPCTSTR)filenameIn.c_str());
|
||||
@@ -911,9 +891,11 @@ int _tmain(int argc, _TCHAR *argv[])
|
||||
has_errors = true;
|
||||
}
|
||||
|
||||
// Write tags to file.
|
||||
// Sort indices.
|
||||
db.idxName.sort();
|
||||
db.idxTag .sort();
|
||||
|
||||
// Write tags to file.
|
||||
dst << ZRCola::tagname_rec(db);
|
||||
} else {
|
||||
_ftprintf(stderr, wxT("%s: error ZCC0023: Error getting tag name count from database or too many tags.\n"), (LPCTSTR)filenameIn.c_str());
|
||||
@@ -925,43 +907,6 @@ int _tmain(int argc, _TCHAR *argv[])
|
||||
}
|
||||
}
|
||||
|
||||
{
|
||||
// Get highlights.
|
||||
com_obj<ADORecordset> rs;
|
||||
if (src.SelectHighlights((short)ZRCOLA_HLGHTSETID_ZRCOLA_UNICODE_COMPOSED_ISSUES, rs)) {
|
||||
size_t count = src.GetRecordsetCount(rs);
|
||||
if (count < 0xffffffff) { // 4G check (-1 is reserved for error condition)
|
||||
ZRCola::DBSource::highlight h;
|
||||
ZRCola::highlight_db db;
|
||||
|
||||
// Preallocate memory.
|
||||
db.idxChr.reserve(count);
|
||||
db.data .reserve(count*5);
|
||||
|
||||
// Parse highlights and build index and data.
|
||||
h.set = (short)ZRCOLA_HLGHTSETID_ZRCOLA_UNICODE_COMPOSED_ISSUES;
|
||||
for (; !ZRCola::DBSource::IsEOF(rs); rs->MoveNext()) {
|
||||
// Read tag name from the database.
|
||||
if (src.GetHighlight(rs, h)) {
|
||||
// Add highlight to index and data.
|
||||
db << h;
|
||||
} else
|
||||
has_errors = true;
|
||||
}
|
||||
|
||||
// Write highlights to file.
|
||||
db.idxChr.sort();
|
||||
dst << ZRCola::highlight_rec(db);
|
||||
} else {
|
||||
_ftprintf(stderr, wxT("%s: error ZCC0027: Error getting highlight count from database or too many tags.\n"), (LPCTSTR)filenameIn.c_str());
|
||||
has_errors = true;
|
||||
}
|
||||
} else {
|
||||
_ftprintf(stderr, wxT("%s: error ZCC0026: Error getting highlights from database. Please make sure the file is ZRCola.zrc compatible.\n"), (LPCTSTR)filenameIn.c_str());
|
||||
has_errors = true;
|
||||
}
|
||||
}
|
||||
|
||||
idrec::close<ZRCola::recordid_t, ZRCola::recordsize_t, ZRCOLA_RECORD_ALIGN>(dst, dst_start);
|
||||
|
||||
if (dst.fail()) {
|
||||
@@ -970,6 +915,7 @@ int _tmain(int argc, _TCHAR *argv[])
|
||||
}
|
||||
|
||||
if (!has_errors && build_pot) {
|
||||
const wxString& filenamePot = parser.GetParam(2);
|
||||
fstream dst_pot((LPCTSTR)filenamePot, ios_base::out | ios_base::trunc);
|
||||
if (dst_pot.good()) {
|
||||
dst_pot << "msgid \"\"" << endl
|
||||
|
||||
@@ -1,9 +1,23 @@
|
||||
/*
|
||||
SPDX-License-Identifier: GPL-3.0-or-later
|
||||
Copyright © 2018-2021 Amebis
|
||||
/*
|
||||
Copyright 2018 Amebis
|
||||
|
||||
This file is part of ZRCola.
|
||||
|
||||
ZRCola is free software: you can redistribute it and/or modify it
|
||||
under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
ZRCola is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with ZRCola. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include "pch.h"
|
||||
#include "stdafx.h"
|
||||
|
||||
using namespace std;
|
||||
using namespace stdex;
|
||||
|
||||
@@ -1,6 +1,20 @@
|
||||
/*
|
||||
SPDX-License-Identifier: GPL-3.0-or-later
|
||||
Copyright © 2018-2021 Amebis
|
||||
/*
|
||||
Copyright 2018 Amebis
|
||||
|
||||
This file is part of ZRCola.
|
||||
|
||||
ZRCola is free software: you can redistribute it and/or modify it
|
||||
under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
ZRCola is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with ZRCola. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
@@ -1,6 +0,0 @@
|
||||
/*
|
||||
SPDX-License-Identifier: GPL-3.0-or-later
|
||||
Copyright © 2015-2021 Amebis
|
||||
*/
|
||||
|
||||
#include "pch.h"
|
||||
@@ -1,45 +0,0 @@
|
||||
/*
|
||||
SPDX-License-Identifier: GPL-3.0-or-later
|
||||
Copyright © 2015-2021 Amebis
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "../include/version.h"
|
||||
#include "dbsource.h"
|
||||
#include "parse.h"
|
||||
|
||||
#include <wxex/common.h>
|
||||
#include <wxex/comutils.h>
|
||||
|
||||
#pragma warning(push)
|
||||
#pragma warning(disable: WXWIDGETS_CODE_ANALYSIS_WARNINGS)
|
||||
#include <wx/app.h>
|
||||
#include <wx/cmdline.h>
|
||||
#include <wx/config.h>
|
||||
#include <wx/intl.h>
|
||||
#pragma warning(pop)
|
||||
|
||||
#include <stdex/idrec.h>
|
||||
|
||||
#include <WinStd/Common.h>
|
||||
|
||||
#include <initguid.h> // GUID helper to prevent LNK2001 errors (unresolved external symbol IID_IADO...)
|
||||
#pragma warning(push)
|
||||
#pragma warning(disable: 4091)
|
||||
#include <adoint.h>
|
||||
#include <adoid.h>
|
||||
#pragma warning(pop)
|
||||
|
||||
#include <process.h>
|
||||
#include <tchar.h>
|
||||
|
||||
#include <stdlib.h>
|
||||
|
||||
#include <algorithm>
|
||||
#include <codecvt>
|
||||
#include <cwctype>
|
||||
#include <fstream>
|
||||
#include <memory>
|
||||
#include <set>
|
||||
#include <vector>
|
||||
20
ZRColaCompile/stdafx.cpp
Normal file
20
ZRColaCompile/stdafx.cpp
Normal file
@@ -0,0 +1,20 @@
|
||||
/*
|
||||
Copyright 2015-2018 Amebis
|
||||
|
||||
This file is part of ZRCola.
|
||||
|
||||
ZRCola is free software: you can redistribute it and/or modify it
|
||||
under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
ZRCola is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with ZRCola. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include "stdafx.h"
|
||||
56
ZRColaCompile/stdafx.h
Normal file
56
ZRColaCompile/stdafx.h
Normal file
@@ -0,0 +1,56 @@
|
||||
/*
|
||||
Copyright 2015-2018 Amebis
|
||||
|
||||
This file is part of ZRCola.
|
||||
|
||||
ZRCola is free software: you can redistribute it and/or modify it
|
||||
under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
ZRCola is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with ZRCola. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "../include/version.h"
|
||||
#include "dbsource.h"
|
||||
#include "parse.h"
|
||||
|
||||
#include <wx/app.h>
|
||||
#include <wx/cmdline.h>
|
||||
#include <wx/config.h>
|
||||
#include <wx/intl.h>
|
||||
|
||||
#include <wxex/common.h>
|
||||
#include <wxex/comutils.h>
|
||||
|
||||
#include <stdex/idrec.h>
|
||||
|
||||
#include <WinStd/Common.h>
|
||||
|
||||
#include <initguid.h> // GUID helper to prevent LNK2001 errors (unresolved external symbol IID_IADO...)
|
||||
#pragma warning(push)
|
||||
#pragma warning(disable: 4091)
|
||||
#include <adoint.h>
|
||||
#include <adoid.h>
|
||||
#pragma warning(pop)
|
||||
|
||||
#include <process.h>
|
||||
#include <tchar.h>
|
||||
|
||||
#include <stdlib.h>
|
||||
|
||||
#include <algorithm>
|
||||
#include <codecvt>
|
||||
#include <cwctype>
|
||||
#include <fstream>
|
||||
#include <memory>
|
||||
#include <set>
|
||||
#include <vector>
|
||||
46
ZRColaInstall/ZRColaInstall.props
Normal file
46
ZRColaInstall/ZRColaInstall.props
Normal file
@@ -0,0 +1,46 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ImportGroup Label="PropertySheets">
|
||||
<Import Project="..\include\$(Platform).props" />
|
||||
<Import Project="..\include\$(Configuration).props" />
|
||||
</ImportGroup>
|
||||
<PropertyGroup Label="UserMacros" />
|
||||
<PropertyGroup>
|
||||
<OutDir>..\output\$(Platform).$(Configuration)\</OutDir>
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup>
|
||||
<ClCompile>
|
||||
<CompileAsManaged>false</CompileAsManaged>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
|
||||
<SmallerTypeCheck>false</SmallerTypeCheck>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<IgnoreAllDefaultLibraries>true</IgnoreAllDefaultLibraries>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)'=='Debug'">
|
||||
<ClCompile>
|
||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||
</ClCompile>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)'=='Release'">
|
||||
<ClCompile>
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
</ClCompile>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="main.cpp" />
|
||||
<ClCompile Include="stdafx.cpp">
|
||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Create</PrecompiledHeader>
|
||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Create</PrecompiledHeader>
|
||||
</ClCompile>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClInclude Include="stdafx.h" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ResourceCompile Include="ZRColaInstall.rc" />
|
||||
</ItemGroup>
|
||||
</Project>
|
||||
Binary file not shown.
@@ -1,74 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup Label="ProjectConfigurations">
|
||||
<ProjectConfiguration Include="Debug|Win32">
|
||||
<Configuration>Debug</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release|Win32">
|
||||
<Configuration>Release</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
</ItemGroup>
|
||||
<PropertyGroup Label="Globals">
|
||||
<Language Condition="'$(Language)'==''">En</Language>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Label="Globals">
|
||||
<ProjectGuid>{5BD95B95-38B0-4C7D-9471-F99CA1203DF4}</ProjectGuid>
|
||||
<RootNamespace>ZRColaInstall$(Language)</RootNamespace>
|
||||
<ProjectName>ZRColaInstall$(Language)</ProjectName>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||
<PropertyGroup Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Label="Configuration" Condition="'$(Configuration)'=='Debug'">
|
||||
<UseDebugLibraries>true</UseDebugLibraries>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Label="Configuration" Condition="'$(Configuration)'=='Release'">
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||
<ImportGroup Label="ExtensionSettings" />
|
||||
<ImportGroup Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="..\include\$(Platform).props" />
|
||||
<Import Project="..\include\$(Configuration).props" />
|
||||
</ImportGroup>
|
||||
<PropertyGroup Label="UserMacros" />
|
||||
<PropertyGroup>
|
||||
<IntDir>temp\$(ProjectName).$(Platform).$(Configuration).$(PlatformToolset)\</IntDir>
|
||||
<OutDir>..\output\$(Platform).$(Configuration)\</OutDir>
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup>
|
||||
<ClCompile>
|
||||
<PreprocessorDefinitions>ZRCOLA_INSTALL_LANG="$(Language)";%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)'=='Debug'">
|
||||
<ClCompile>
|
||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||
</ClCompile>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)'=='Release'">
|
||||
<ClCompile>
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
</ClCompile>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="main.cpp" />
|
||||
<ClCompile Include="pch.cpp">
|
||||
<PrecompiledHeader>Create</PrecompiledHeader>
|
||||
</ClCompile>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClInclude Include="pch.h" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ResourceCompile Include="ZRColaInstall.rc" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||
<ImportGroup Label="ExtensionTargets" />
|
||||
</Project>
|
||||
59
ZRColaInstall/ZRColaInstallDe.vcxproj
Normal file
59
ZRColaInstall/ZRColaInstallDe.vcxproj
Normal file
@@ -0,0 +1,59 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup Label="ProjectConfigurations">
|
||||
<ProjectConfiguration Include="Debug|Win32">
|
||||
<Configuration>Debug</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release|Win32">
|
||||
<Configuration>Release</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
</ItemGroup>
|
||||
<PropertyGroup Label="Globals">
|
||||
<ProjectGuid>{620D6AC0-C8FF-4185-B820-DB1503ACB95C}</ProjectGuid>
|
||||
<Keyword>Win32Proj</Keyword>
|
||||
<RootNamespace>ZRColaInstallDe</RootNamespace>
|
||||
<WindowsTargetPlatformVersion>10.0.17134.0</WindowsTargetPlatformVersion>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<UseDebugLibraries>true</UseDebugLibraries>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
<PlatformToolset>v141</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<UseDebugLibraries>false</UseDebugLibraries>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
<PlatformToolset>v141</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||
<ImportGroup Label="ExtensionSettings">
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="ZRColaInstall.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="ZRColaInstall.props" />
|
||||
</ImportGroup>
|
||||
<PropertyGroup Label="UserMacros" />
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<ClCompile>
|
||||
<PreprocessorDefinitions>ZRCOLA_INSTALL_LANG="De";%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<ClCompile>
|
||||
<PreprocessorDefinitions>ZRCOLA_INSTALL_LANG="De";%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemGroup />
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||
<ImportGroup Label="ExtensionTargets">
|
||||
</ImportGroup>
|
||||
</Project>
|
||||
@@ -15,7 +15,7 @@
|
||||
</Filter>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="pch.cpp">
|
||||
<ClCompile Include="stdafx.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="main.cpp">
|
||||
@@ -23,7 +23,7 @@
|
||||
</ClCompile>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClInclude Include="pch.h">
|
||||
<ClInclude Include="stdafx.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
</ItemGroup>
|
||||
59
ZRColaInstall/ZRColaInstallEn.vcxproj
Normal file
59
ZRColaInstall/ZRColaInstallEn.vcxproj
Normal file
@@ -0,0 +1,59 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup Label="ProjectConfigurations">
|
||||
<ProjectConfiguration Include="Debug|Win32">
|
||||
<Configuration>Debug</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release|Win32">
|
||||
<Configuration>Release</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
</ItemGroup>
|
||||
<PropertyGroup Label="Globals">
|
||||
<ProjectGuid>{5BD95B95-38B0-4C7D-9471-F99CA1203DF4}</ProjectGuid>
|
||||
<Keyword>Win32Proj</Keyword>
|
||||
<RootNamespace>ZRColaInstallEn</RootNamespace>
|
||||
<WindowsTargetPlatformVersion>10.0.17134.0</WindowsTargetPlatformVersion>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<UseDebugLibraries>true</UseDebugLibraries>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
<PlatformToolset>v141</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<UseDebugLibraries>false</UseDebugLibraries>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
<PlatformToolset>v141</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||
<ImportGroup Label="ExtensionSettings">
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="ZRColaInstall.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="ZRColaInstall.props" />
|
||||
</ImportGroup>
|
||||
<PropertyGroup Label="UserMacros" />
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<ClCompile>
|
||||
<PreprocessorDefinitions>ZRCOLA_INSTALL_LANG="En";%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<ClCompile>
|
||||
<PreprocessorDefinitions>ZRCOLA_INSTALL_LANG="En";%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemGroup />
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||
<ImportGroup Label="ExtensionTargets">
|
||||
</ImportGroup>
|
||||
</Project>
|
||||
35
ZRColaInstall/ZRColaInstallEn.vcxproj.filters
Normal file
35
ZRColaInstall/ZRColaInstallEn.vcxproj.filters
Normal file
@@ -0,0 +1,35 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup>
|
||||
<Filter Include="Source Files">
|
||||
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
|
||||
<Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
|
||||
</Filter>
|
||||
<Filter Include="Header Files">
|
||||
<UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
|
||||
<Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
|
||||
</Filter>
|
||||
<Filter Include="Resource Files">
|
||||
<UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
|
||||
<Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
|
||||
</Filter>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="stdafx.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="main.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClInclude Include="stdafx.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ResourceCompile Include="ZRColaInstall.rc">
|
||||
<Filter>Resource Files</Filter>
|
||||
</ResourceCompile>
|
||||
</ItemGroup>
|
||||
</Project>
|
||||
59
ZRColaInstall/ZRColaInstallRu.vcxproj
Normal file
59
ZRColaInstall/ZRColaInstallRu.vcxproj
Normal file
@@ -0,0 +1,59 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup Label="ProjectConfigurations">
|
||||
<ProjectConfiguration Include="Debug|Win32">
|
||||
<Configuration>Debug</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release|Win32">
|
||||
<Configuration>Release</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
</ItemGroup>
|
||||
<PropertyGroup Label="Globals">
|
||||
<ProjectGuid>{2551B561-5E5B-497E-AE01-11519F91EF19}</ProjectGuid>
|
||||
<Keyword>Win32Proj</Keyword>
|
||||
<RootNamespace>ZRColaInstallRu</RootNamespace>
|
||||
<WindowsTargetPlatformVersion>10.0.17134.0</WindowsTargetPlatformVersion>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<UseDebugLibraries>true</UseDebugLibraries>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
<PlatformToolset>v141</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<UseDebugLibraries>false</UseDebugLibraries>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
<PlatformToolset>v141</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||
<ImportGroup Label="ExtensionSettings">
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="ZRColaInstall.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="ZRColaInstall.props" />
|
||||
</ImportGroup>
|
||||
<PropertyGroup Label="UserMacros" />
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<ClCompile>
|
||||
<PreprocessorDefinitions>ZRCOLA_INSTALL_LANG="Ru";%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<ClCompile>
|
||||
<PreprocessorDefinitions>ZRCOLA_INSTALL_LANG="Ru";%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemGroup />
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||
<ImportGroup Label="ExtensionTargets">
|
||||
</ImportGroup>
|
||||
</Project>
|
||||
35
ZRColaInstall/ZRColaInstallRu.vcxproj.filters
Normal file
35
ZRColaInstall/ZRColaInstallRu.vcxproj.filters
Normal file
@@ -0,0 +1,35 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup>
|
||||
<Filter Include="Source Files">
|
||||
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
|
||||
<Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
|
||||
</Filter>
|
||||
<Filter Include="Header Files">
|
||||
<UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
|
||||
<Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
|
||||
</Filter>
|
||||
<Filter Include="Resource Files">
|
||||
<UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
|
||||
<Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
|
||||
</Filter>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="stdafx.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="main.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClInclude Include="stdafx.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ResourceCompile Include="ZRColaInstall.rc">
|
||||
<Filter>Resource Files</Filter>
|
||||
</ResourceCompile>
|
||||
</ItemGroup>
|
||||
</Project>
|
||||
59
ZRColaInstall/ZRColaInstallSl.vcxproj
Normal file
59
ZRColaInstall/ZRColaInstallSl.vcxproj
Normal file
@@ -0,0 +1,59 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup Label="ProjectConfigurations">
|
||||
<ProjectConfiguration Include="Debug|Win32">
|
||||
<Configuration>Debug</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release|Win32">
|
||||
<Configuration>Release</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
</ItemGroup>
|
||||
<PropertyGroup Label="Globals">
|
||||
<ProjectGuid>{0C2C89C2-C96B-41B6-AA99-7E7741E20F3A}</ProjectGuid>
|
||||
<Keyword>Win32Proj</Keyword>
|
||||
<RootNamespace>ZRColaInstallSl</RootNamespace>
|
||||
<WindowsTargetPlatformVersion>10.0.17134.0</WindowsTargetPlatformVersion>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<UseDebugLibraries>true</UseDebugLibraries>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
<PlatformToolset>v141</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<UseDebugLibraries>false</UseDebugLibraries>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
<PlatformToolset>v141</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||
<ImportGroup Label="ExtensionSettings">
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="ZRColaInstall.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="ZRColaInstall.props" />
|
||||
</ImportGroup>
|
||||
<PropertyGroup Label="UserMacros" />
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<ClCompile>
|
||||
<PreprocessorDefinitions>ZRCOLA_INSTALL_LANG="Sl";%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<ClCompile>
|
||||
<PreprocessorDefinitions>ZRCOLA_INSTALL_LANG="Sl";%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemGroup />
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||
<ImportGroup Label="ExtensionTargets">
|
||||
</ImportGroup>
|
||||
</Project>
|
||||
35
ZRColaInstall/ZRColaInstallSl.vcxproj.filters
Normal file
35
ZRColaInstall/ZRColaInstallSl.vcxproj.filters
Normal file
@@ -0,0 +1,35 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup>
|
||||
<Filter Include="Source Files">
|
||||
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
|
||||
<Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
|
||||
</Filter>
|
||||
<Filter Include="Header Files">
|
||||
<UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
|
||||
<Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
|
||||
</Filter>
|
||||
<Filter Include="Resource Files">
|
||||
<UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
|
||||
<Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
|
||||
</Filter>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="stdafx.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="main.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClInclude Include="stdafx.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ResourceCompile Include="ZRColaInstall.rc">
|
||||
<Filter>Resource Files</Filter>
|
||||
</ResourceCompile>
|
||||
</ItemGroup>
|
||||
</Project>
|
||||
@@ -1,62 +1,64 @@
|
||||
/*
|
||||
SPDX-License-Identifier: GPL-3.0-or-later
|
||||
Copyright © 2015-2021 Amebis
|
||||
/*
|
||||
Copyright 2015-2018 Amebis
|
||||
|
||||
This file is part of ZRCola.
|
||||
|
||||
ZRCola is free software: you can redistribute it and/or modify it
|
||||
under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
ZRCola is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with ZRCola. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include "pch.h"
|
||||
#include "stdafx.h"
|
||||
|
||||
|
||||
///
|
||||
/// Main function
|
||||
///
|
||||
int CALLBACK WinMain(_In_ HINSTANCE hInstance, _In_opt_ HINSTANCE hPrevInstance, _In_ LPSTR lpCmdLine, _In_ int nCmdShow)
|
||||
extern "C" void WinMainCRTStartup()
|
||||
{
|
||||
UNREFERENCED_PARAMETER(hInstance);
|
||||
UNREFERENCED_PARAMETER(hPrevInstance);
|
||||
UNREFERENCED_PARAMETER(lpCmdLine);
|
||||
UNREFERENCED_PARAMETER(nCmdShow);
|
||||
// Load "KERNEL32.DLL".
|
||||
HMODULE hKernel32 = LoadLibrary(TEXT("KERNEL32.DLL"));
|
||||
if (!hKernel32)
|
||||
ExitProcess(1);
|
||||
|
||||
TCHAR szArchProc[MAX_PATH];
|
||||
if (!GetEnvironmentVariable(TEXT("PROCESSOR_ARCHITECTURE"), szArchProc, _countof(szArchProc)))
|
||||
szArchProc[0] = 0;
|
||||
szArchProc[_countof(szArchProc) - 1] = 0;
|
||||
// Get IsWow64Process() address.
|
||||
BOOL (WINAPI *_IsWow64Process)(__in HANDLE hProcess, __out PBOOL Wow64Process) = (BOOL(WINAPI*)(__in HANDLE, __out PBOOL))::GetProcAddress(hKernel32, "IsWow64Process");
|
||||
|
||||
TCHAR szArchWin[MAX_PATH];
|
||||
if (!GetEnvironmentVariable(TEXT("PROCESSOR_ARCHITEW6432"), szArchWin, _countof(szArchWin)))
|
||||
szArchWin[0] = 0;
|
||||
szArchWin[_countof(szArchWin) - 1] = 0;
|
||||
|
||||
// If PROCESSOR_ARCHITEW6432 is defined, this is a Windows-on-Windows
|
||||
// guest of some kind. szArchWin is the host's architecture and szArchProc
|
||||
// is the current process' architecture.
|
||||
|
||||
// If PROCESSOR_ARCHITEW6432 is not defined, then PROCESSOR_ARCHITECTURE
|
||||
// is both the process and OS architecture.
|
||||
if (szArchWin[0] == 0)
|
||||
memcpy_s(szArchWin, sizeof(szArchWin), szArchProc, sizeof(szArchProc));
|
||||
|
||||
// If PROCESSOR_ARCHITECTURE is not defined, then either we're running on
|
||||
// Windows 9x or something is messing with the environment. Make the
|
||||
// Windows 9x assumption.
|
||||
if (szArchProc[0] == 0) {
|
||||
memcpy_s(szArchProc, sizeof(szArchProc), TEXT("x86"), sizeof(TEXT("x86")));
|
||||
memcpy_s(szArchWin , sizeof(szArchWin ), TEXT("x86"), sizeof(TEXT("x86")));
|
||||
BOOL bIs64Bit;
|
||||
#ifndef _WIN64
|
||||
// Determine if this is a 32-bit process under Windows-over-Windows64.
|
||||
if (_IsWow64Process) {
|
||||
// See what IsWow64Process() says.
|
||||
if (!_IsWow64Process(::GetCurrentProcess(), &bIs64Bit)) {
|
||||
// IsWow64Process() returned an error. Assume not 64-bit Windows.
|
||||
bIs64Bit = FALSE;
|
||||
}
|
||||
} else {
|
||||
// This platform does not have IsWow64Process(). Therefore, this is definitely not 64-bit Windows.
|
||||
bIs64Bit = FALSE;
|
||||
}
|
||||
#else
|
||||
// This is a running 64-bit process. The Windows must be 64 bit then.
|
||||
bIs64Bit = TRUE;
|
||||
#endif
|
||||
|
||||
LPCTSTR pszPlatSuffix;
|
||||
if (_tcsicmp(szArchWin, TEXT("amd64")) == 0)
|
||||
pszPlatSuffix = TEXT("-amd64");
|
||||
else if (_tcsicmp(szArchWin, TEXT("arm64")) == 0)
|
||||
pszPlatSuffix = TEXT("-arm64");
|
||||
else
|
||||
pszPlatSuffix = TEXT("-x86");
|
||||
FreeLibrary(hKernel32);
|
||||
|
||||
// Get temporary folder path.
|
||||
static const LPTSTR pszTempFolderDefault = TEXT("");
|
||||
LPTSTR pszTempFolder;
|
||||
DWORD dwLength;
|
||||
if ((dwLength = GetEnvironmentVariable(TEXT("TEMP"), NULL, 0)) != 0 &&
|
||||
(pszTempFolder = (LPTSTR)LocalAlloc(LMEM_FIXED, (dwLength + 2)*sizeof(TCHAR))) != NULL) // +1 for trailing backslash when missing, +1 for zero terminator
|
||||
(pszTempFolder = (LPTSTR)LocalAlloc(LMEM_FIXED, (dwLength + 1)*sizeof(TCHAR))) != NULL) // +1 is for trailing backslash when missing!
|
||||
{
|
||||
dwLength = ::GetEnvironmentVariable(TEXT("TEMP"), pszTempFolder, dwLength);
|
||||
|
||||
@@ -72,12 +74,12 @@ int CALLBACK WinMain(_In_ HINSTANCE hInstance, _In_opt_ HINSTANCE hPrevInstance,
|
||||
LPTSTR pszParams;
|
||||
DWORD_PTR aArgs[] = {
|
||||
(DWORD_PTR)TEXT(ZRCOLA_INSTALL_LANG),
|
||||
(DWORD_PTR)pszPlatSuffix,
|
||||
(DWORD_PTR)(bIs64Bit ? TEXT("64") : TEXT("32")),
|
||||
(DWORD_PTR)pszTempFolder,
|
||||
};
|
||||
FormatMessage(
|
||||
FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_ARGUMENT_ARRAY | FORMAT_MESSAGE_FROM_STRING,
|
||||
TEXT("/i \"https://prenos.amebis.si/ZRCola/_latest/ZRCola%1%2.msi\" /l* \"%3ZRCola%1%2.log\""),
|
||||
TEXT("/i \"http://www.amebis.si/prenos/ZRCola/_latest/ZRCola%1%2.msi\" /l* \"%3ZRCola%1%2.log\""),
|
||||
0,
|
||||
0,
|
||||
(LPTSTR)&pszParams,
|
||||
|
||||
@@ -1,6 +0,0 @@
|
||||
/*
|
||||
SPDX-License-Identifier: GPL-3.0-or-later
|
||||
Copyright © 2015-2021 Amebis
|
||||
*/
|
||||
|
||||
#include "pch.h"
|
||||
@@ -1,9 +0,0 @@
|
||||
/*
|
||||
SPDX-License-Identifier: GPL-3.0-or-later
|
||||
Copyright © 2015-2021 Amebis
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
#include <Windows.h>
|
||||
#include <tchar.h>
|
||||
20
ZRColaInstall/stdafx.cpp
Normal file
20
ZRColaInstall/stdafx.cpp
Normal file
@@ -0,0 +1,20 @@
|
||||
/*
|
||||
Copyright 2015-2018 Amebis
|
||||
|
||||
This file is part of ZRCola.
|
||||
|
||||
ZRCola is free software: you can redistribute it and/or modify it
|
||||
under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
ZRCola is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with ZRCola. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include "stdafx.h"
|
||||
22
ZRColaInstall/stdafx.h
Normal file
22
ZRColaInstall/stdafx.h
Normal file
@@ -0,0 +1,22 @@
|
||||
/*
|
||||
Copyright 2015-2018 Amebis
|
||||
|
||||
This file is part of ZRCola.
|
||||
|
||||
ZRCola is free software: you can redistribute it and/or modify it
|
||||
under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
ZRCola is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with ZRCola. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
#include <Windows.h>
|
||||
@@ -1,7 +1,7 @@
|
||||
|
||||
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||
# Visual Studio Version 16
|
||||
VisualStudioVersion = 16.0.29728.190
|
||||
# Visual Studio 15
|
||||
VisualStudioVersion = 15.0.28010.2016
|
||||
MinimumVisualStudioVersion = 10.0.40219.1
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Libraries", "Libraries", "{A7D28E0C-BB96-444D-AAB0-F22A6483FE5F}"
|
||||
EndProject
|
||||
@@ -14,50 +14,70 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ZRColaCompile", "ZRColaCompile\ZRColaCompile.vcxproj", "{87A3ADEC-1BE4-42E4-92B8-B742F3D21BC4}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "wxExtend", "lib\wxExtend\build\wxExtendLib.vcxproj", "{D3E29951-D9F5-486D-A167-20AE8E90B1FA}"
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "wxExtend", "lib\wxExtend\build\wxExtendLib-15.0.vcxproj", "{D3E29951-D9F5-486D-A167-20AE8E90B1FA}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "stdex", "lib\stdex\build\stdex.vcxproj", "{518777CC-0A59-4415-A12A-82751ED75343}"
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "stdex", "lib\stdex\build\stdex-15.0.vcxproj", "{518777CC-0A59-4415-A12A-82751ED75343}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libZRColaUI", "lib\libZRColaUI\build\libZRColaUI.vcxproj", "{C0A84BD2-3870-4CD6-B281-0AB322E3C579}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ZRColaInstall", "ZRColaInstall\ZRColaInstall.vcxproj", "{5BD95B95-38B0-4C7D-9471-F99CA1203DF4}"
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "ZRColaInstall", "ZRColaInstall", "{7F5D45A3-B3D2-4B1D-B258-9B83395786E6}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "WinStd", "lib\WinStd\build\WinStd.vcxproj", "{47399D91-7EB9-41DE-B521-514BA5DB0C43}"
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ZRColaInstallSl", "ZRColaInstall\ZRColaInstallSl.vcxproj", "{0C2C89C2-C96B-41B6-AA99-7E7741E20F3A}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ZRColaInstallDe", "ZRColaInstall\ZRColaInstallDe.vcxproj", "{620D6AC0-C8FF-4185-B820-DB1503ACB95C}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ZRColaInstallEn", "ZRColaInstall\ZRColaInstallEn.vcxproj", "{5BD95B95-38B0-4C7D-9471-F99CA1203DF4}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ZRColaInstallRu", "ZRColaInstall\ZRColaInstallRu.vcxproj", "{2551B561-5E5B-497E-AE01-11519F91EF19}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "WinStd", "lib\WinStd\build\WinStd-15.0.vcxproj", "{47399D91-7EB9-41DE-B521-514BA5DB0C43}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|Win32 = Debug|Win32
|
||||
Release|Win32 = Release|Win32
|
||||
Debug|x86 = Debug|x86
|
||||
Release|x86 = Release|x86
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
{3C61929E-7289-4101-8D0A-DA22D6E1AEA8}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{3C61929E-7289-4101-8D0A-DA22D6E1AEA8}.Debug|Win32.Build.0 = Debug|Win32
|
||||
{3C61929E-7289-4101-8D0A-DA22D6E1AEA8}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{3C61929E-7289-4101-8D0A-DA22D6E1AEA8}.Release|Win32.Build.0 = Release|Win32
|
||||
{87A3ADEC-1BE4-42E4-92B8-B742F3D21BC4}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{87A3ADEC-1BE4-42E4-92B8-B742F3D21BC4}.Debug|Win32.Build.0 = Debug|Win32
|
||||
{87A3ADEC-1BE4-42E4-92B8-B742F3D21BC4}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{87A3ADEC-1BE4-42E4-92B8-B742F3D21BC4}.Release|Win32.Build.0 = Release|Win32
|
||||
{D3E29951-D9F5-486D-A167-20AE8E90B1FA}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{D3E29951-D9F5-486D-A167-20AE8E90B1FA}.Debug|Win32.Build.0 = Debug|Win32
|
||||
{D3E29951-D9F5-486D-A167-20AE8E90B1FA}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{D3E29951-D9F5-486D-A167-20AE8E90B1FA}.Release|Win32.Build.0 = Release|Win32
|
||||
{518777CC-0A59-4415-A12A-82751ED75343}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{518777CC-0A59-4415-A12A-82751ED75343}.Debug|Win32.Build.0 = Debug|Win32
|
||||
{518777CC-0A59-4415-A12A-82751ED75343}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{518777CC-0A59-4415-A12A-82751ED75343}.Release|Win32.Build.0 = Release|Win32
|
||||
{C0A84BD2-3870-4CD6-B281-0AB322E3C579}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{C0A84BD2-3870-4CD6-B281-0AB322E3C579}.Debug|Win32.Build.0 = Debug|Win32
|
||||
{C0A84BD2-3870-4CD6-B281-0AB322E3C579}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{C0A84BD2-3870-4CD6-B281-0AB322E3C579}.Release|Win32.Build.0 = Release|Win32
|
||||
{5BD95B95-38B0-4C7D-9471-F99CA1203DF4}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{5BD95B95-38B0-4C7D-9471-F99CA1203DF4}.Debug|Win32.Build.0 = Debug|Win32
|
||||
{5BD95B95-38B0-4C7D-9471-F99CA1203DF4}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{5BD95B95-38B0-4C7D-9471-F99CA1203DF4}.Release|Win32.Build.0 = Release|Win32
|
||||
{47399D91-7EB9-41DE-B521-514BA5DB0C43}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{47399D91-7EB9-41DE-B521-514BA5DB0C43}.Debug|Win32.Build.0 = Debug|Win32
|
||||
{47399D91-7EB9-41DE-B521-514BA5DB0C43}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{47399D91-7EB9-41DE-B521-514BA5DB0C43}.Release|Win32.Build.0 = Release|Win32
|
||||
{3C61929E-7289-4101-8D0A-DA22D6E1AEA8}.Debug|x86.ActiveCfg = Debug|Win32
|
||||
{3C61929E-7289-4101-8D0A-DA22D6E1AEA8}.Debug|x86.Build.0 = Debug|Win32
|
||||
{3C61929E-7289-4101-8D0A-DA22D6E1AEA8}.Release|x86.ActiveCfg = Release|Win32
|
||||
{3C61929E-7289-4101-8D0A-DA22D6E1AEA8}.Release|x86.Build.0 = Release|Win32
|
||||
{87A3ADEC-1BE4-42E4-92B8-B742F3D21BC4}.Debug|x86.ActiveCfg = Debug|Win32
|
||||
{87A3ADEC-1BE4-42E4-92B8-B742F3D21BC4}.Debug|x86.Build.0 = Debug|Win32
|
||||
{87A3ADEC-1BE4-42E4-92B8-B742F3D21BC4}.Release|x86.ActiveCfg = Release|Win32
|
||||
{87A3ADEC-1BE4-42E4-92B8-B742F3D21BC4}.Release|x86.Build.0 = Release|Win32
|
||||
{D3E29951-D9F5-486D-A167-20AE8E90B1FA}.Debug|x86.ActiveCfg = Debug|Win32
|
||||
{D3E29951-D9F5-486D-A167-20AE8E90B1FA}.Debug|x86.Build.0 = Debug|Win32
|
||||
{D3E29951-D9F5-486D-A167-20AE8E90B1FA}.Release|x86.ActiveCfg = Release|Win32
|
||||
{D3E29951-D9F5-486D-A167-20AE8E90B1FA}.Release|x86.Build.0 = Release|Win32
|
||||
{518777CC-0A59-4415-A12A-82751ED75343}.Debug|x86.ActiveCfg = Debug|Win32
|
||||
{518777CC-0A59-4415-A12A-82751ED75343}.Debug|x86.Build.0 = Debug|Win32
|
||||
{518777CC-0A59-4415-A12A-82751ED75343}.Release|x86.ActiveCfg = Release|Win32
|
||||
{518777CC-0A59-4415-A12A-82751ED75343}.Release|x86.Build.0 = Release|Win32
|
||||
{C0A84BD2-3870-4CD6-B281-0AB322E3C579}.Debug|x86.ActiveCfg = Debug|Win32
|
||||
{C0A84BD2-3870-4CD6-B281-0AB322E3C579}.Debug|x86.Build.0 = Debug|Win32
|
||||
{C0A84BD2-3870-4CD6-B281-0AB322E3C579}.Release|x86.ActiveCfg = Release|Win32
|
||||
{C0A84BD2-3870-4CD6-B281-0AB322E3C579}.Release|x86.Build.0 = Release|Win32
|
||||
{0C2C89C2-C96B-41B6-AA99-7E7741E20F3A}.Debug|x86.ActiveCfg = Debug|Win32
|
||||
{0C2C89C2-C96B-41B6-AA99-7E7741E20F3A}.Debug|x86.Build.0 = Debug|Win32
|
||||
{0C2C89C2-C96B-41B6-AA99-7E7741E20F3A}.Release|x86.ActiveCfg = Release|Win32
|
||||
{0C2C89C2-C96B-41B6-AA99-7E7741E20F3A}.Release|x86.Build.0 = Release|Win32
|
||||
{620D6AC0-C8FF-4185-B820-DB1503ACB95C}.Debug|x86.ActiveCfg = Debug|Win32
|
||||
{620D6AC0-C8FF-4185-B820-DB1503ACB95C}.Debug|x86.Build.0 = Debug|Win32
|
||||
{620D6AC0-C8FF-4185-B820-DB1503ACB95C}.Release|x86.ActiveCfg = Release|Win32
|
||||
{620D6AC0-C8FF-4185-B820-DB1503ACB95C}.Release|x86.Build.0 = Release|Win32
|
||||
{5BD95B95-38B0-4C7D-9471-F99CA1203DF4}.Debug|x86.ActiveCfg = Debug|Win32
|
||||
{5BD95B95-38B0-4C7D-9471-F99CA1203DF4}.Debug|x86.Build.0 = Debug|Win32
|
||||
{5BD95B95-38B0-4C7D-9471-F99CA1203DF4}.Release|x86.ActiveCfg = Release|Win32
|
||||
{5BD95B95-38B0-4C7D-9471-F99CA1203DF4}.Release|x86.Build.0 = Release|Win32
|
||||
{2551B561-5E5B-497E-AE01-11519F91EF19}.Debug|x86.ActiveCfg = Debug|Win32
|
||||
{2551B561-5E5B-497E-AE01-11519F91EF19}.Debug|x86.Build.0 = Debug|Win32
|
||||
{2551B561-5E5B-497E-AE01-11519F91EF19}.Release|x86.ActiveCfg = Release|Win32
|
||||
{2551B561-5E5B-497E-AE01-11519F91EF19}.Release|x86.Build.0 = Release|Win32
|
||||
{47399D91-7EB9-41DE-B521-514BA5DB0C43}.Debug|x86.ActiveCfg = Debug|Win32
|
||||
{47399D91-7EB9-41DE-B521-514BA5DB0C43}.Debug|x86.Build.0 = Debug|Win32
|
||||
{47399D91-7EB9-41DE-B521-514BA5DB0C43}.Release|x86.ActiveCfg = Release|Win32
|
||||
{47399D91-7EB9-41DE-B521-514BA5DB0C43}.Release|x86.Build.0 = Release|Win32
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
@@ -67,6 +87,10 @@ Global
|
||||
{D3E29951-D9F5-486D-A167-20AE8E90B1FA} = {A7D28E0C-BB96-444D-AAB0-F22A6483FE5F}
|
||||
{518777CC-0A59-4415-A12A-82751ED75343} = {A7D28E0C-BB96-444D-AAB0-F22A6483FE5F}
|
||||
{C0A84BD2-3870-4CD6-B281-0AB322E3C579} = {A7D28E0C-BB96-444D-AAB0-F22A6483FE5F}
|
||||
{0C2C89C2-C96B-41B6-AA99-7E7741E20F3A} = {7F5D45A3-B3D2-4B1D-B258-9B83395786E6}
|
||||
{620D6AC0-C8FF-4185-B820-DB1503ACB95C} = {7F5D45A3-B3D2-4B1D-B258-9B83395786E6}
|
||||
{5BD95B95-38B0-4C7D-9471-F99CA1203DF4} = {7F5D45A3-B3D2-4B1D-B258-9B83395786E6}
|
||||
{2551B561-5E5B-497E-AE01-11519F91EF19} = {7F5D45A3-B3D2-4B1D-B258-9B83395786E6}
|
||||
{47399D91-7EB9-41DE-B521-514BA5DB0C43} = {A7D28E0C-BB96-444D-AAB0-F22A6483FE5F}
|
||||
EndGlobalSection
|
||||
GlobalSection(ExtensibilityGlobals) = postSolution
|
||||
|
||||
235
bin/CanoPerm.wsf
235
bin/CanoPerm.wsf
@@ -1,12 +1,26 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?xml version="1.0"?>
|
||||
<!--
|
||||
SPDX-License-Identifier: GPL-3.0-or-later
|
||||
Copyright © 2017-2021 Amebis
|
||||
Copyright 2017 Amebis
|
||||
|
||||
This file is part of ZRCola.
|
||||
|
||||
ZRCola is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
ZRCola is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with ZRCola. If not, see <http://www.gnu.org/licenses/>.
|
||||
-->
|
||||
<package>
|
||||
<job id="CanoPerm">
|
||||
<runtime>
|
||||
<description>Generates character index permutations - Amebis, Copyright © 2017-2021</description>
|
||||
<description>Generates character index permutations - Amebis, Copyright © 2017</description>
|
||||
<unnamed name="<Pattern>" required="true" helpstring="Cannonical form (X=unmoveable character; 0-9=moveable character, characters of the same number must preserve global order of appearance; maximum 10 characters)"/>
|
||||
<example>
|
||||
Example:
|
||||
@@ -90,4 +104,217 @@ CanoPerm.wsf "X01112"
|
||||
]]></script>
|
||||
</job>
|
||||
|
||||
<signature>
|
||||
** SIG ** MIIbHwYJKoZIhvcNAQcCoIIbEDCCGwwCAQExCzAJBgUr
|
||||
** SIG ** DgMCGgUAMGcGCisGAQQBgjcCAQSgWTBXMDIGCisGAQQB
|
||||
** SIG ** gjcCAR4wJAIBAQQQcAVhGs441BGiowAQS9NQkAIBAAIB
|
||||
** SIG ** AAIBAAIBAAIBADAhMAkGBSsOAwIaBQAEFHAC354udFC3
|
||||
** SIG ** lTRyP4Y74iqurVPyoIIKLzCCBM4wggO2oAMCAQICEDB6
|
||||
** SIG ** NnqqPmiBpvlPCMs7OWQwDQYJKoZIhvcNAQELBQAwfzEL
|
||||
** SIG ** MAkGA1UEBhMCVVMxHTAbBgNVBAoTFFN5bWFudGVjIENv
|
||||
** SIG ** cnBvcmF0aW9uMR8wHQYDVQQLExZTeW1hbnRlYyBUcnVz
|
||||
** SIG ** dCBOZXR3b3JrMTAwLgYDVQQDEydTeW1hbnRlYyBDbGFz
|
||||
** SIG ** cyAzIFNIQTI1NiBDb2RlIFNpZ25pbmcgQ0EwHhcNMTUx
|
||||
** SIG ** MDA5MDAwMDAwWhcNMTgxMTA3MjM1OTU5WjBhMQswCQYD
|
||||
** SIG ** VQQGEwJTSTERMA8GA1UECBMIU2xvdmVuaWExDzANBgNV
|
||||
** SIG ** BAcTBkthbW5pazEWMBQGA1UEChQNQW1lYmlzIGQuby5v
|
||||
** SIG ** LjEWMBQGA1UEAxQNQW1lYmlzIGQuby5vLjCCASIwDQYJ
|
||||
** SIG ** KoZIhvcNAQEBBQADggEPADCCAQoCggEBAJfy6Bdwx2kq
|
||||
** SIG ** yGhtaYAZgcA8pWLe7EbyLqBHRq/8jIVfUX1CH7fsbEz1
|
||||
** SIG ** UDgIq74BvilG3BNyjJxh/lbiu2Pr2M0ad3WEy4p0kM9T
|
||||
** SIG ** SmABC8k3Vc5pmJlNy1++uMpNwAbUmbGcD6Igsvk1xPWb
|
||||
** SIG ** ApLoAdnO0KfTfzvRI40A0cGZVGt5y6GPemN6jT8JAp9O
|
||||
** SIG ** KaWIqj3iF00c/FwS7ODZf2w/cMphLjUle+b86GyewVGE
|
||||
** SIG ** MEVO5ZjS9ksEWBDWn9A6XYshSwbDWnx4xmIl0B4DcWVA
|
||||
** SIG ** aY+zqEQzQbzEGC/izPDq44RiCtbhi+QqgQ/6fNXm3hbA
|
||||
** SIG ** GVcYPYa4J5D1UMO+1NC2cPMCAwEAAaOCAWIwggFeMAkG
|
||||
** SIG ** A1UdEwQCMAAwDgYDVR0PAQH/BAQDAgeAMCsGA1UdHwQk
|
||||
** SIG ** MCIwIKAeoByGGmh0dHA6Ly9zdi5zeW1jYi5jb20vc3Yu
|
||||
** SIG ** Y3JsMGYGA1UdIARfMF0wWwYLYIZIAYb4RQEHFwMwTDAj
|
||||
** SIG ** BggrBgEFBQcCARYXaHR0cHM6Ly9kLnN5bWNiLmNvbS9j
|
||||
** SIG ** cHMwJQYIKwYBBQUHAgIwGQwXaHR0cHM6Ly9kLnN5bWNi
|
||||
** SIG ** LmNvbS9ycGEwEwYDVR0lBAwwCgYIKwYBBQUHAwMwVwYI
|
||||
** SIG ** KwYBBQUHAQEESzBJMB8GCCsGAQUFBzABhhNodHRwOi8v
|
||||
** SIG ** c3Yuc3ltY2QuY29tMCYGCCsGAQUFBzAChhpodHRwOi8v
|
||||
** SIG ** c3Yuc3ltY2IuY29tL3N2LmNydDAfBgNVHSMEGDAWgBSW
|
||||
** SIG ** O1PweTOXr32D7y4rzMq3hh5yZjAdBgNVHQ4EFgQU9we9
|
||||
** SIG ** loCaLXTEfww9PSfd1JAKn8wwDQYJKoZIhvcNAQELBQAD
|
||||
** SIG ** ggEBAIpxL0AvtcrbShLKgI7dmLn6WJbpdzkB9e2Cm1Mu
|
||||
** SIG ** AAIiogLFF1n07l0VXZE+gqxGHB8ji2h33t+o1R8PLyyI
|
||||
** SIG ** kdnMhHAd78HsqyZzabfmWuCP12TKBv77wiZkpbTo/Av+
|
||||
** SIG ** z0SlpJRoMpzzXhyPPtHdby80bSu+4RXlewiDCH56aGE4
|
||||
** SIG ** SSk0i8Xa9JJ/ozPKLX3Szdmg6J58XtDH/tq5K1/ABSCB
|
||||
** SIG ** z6SF2Y9l9lRJpGXchSDYCPipSVUGP0WPQRTDNobSwCJD
|
||||
** SIG ** XAz9UFcxWo4Rh8o/gvlLWUH+T3HhmLSRzXqt3JuqJo5x
|
||||
** SIG ** H8s4vPzcGBZZFob8yRB98KD6ioFK2pjRRSw9FucwggVZ
|
||||
** SIG ** MIIEQaADAgECAhA9eNf5dklgsmF99PAeyoYqMA0GCSqG
|
||||
** SIG ** SIb3DQEBCwUAMIHKMQswCQYDVQQGEwJVUzEXMBUGA1UE
|
||||
** SIG ** ChMOVmVyaVNpZ24sIEluYy4xHzAdBgNVBAsTFlZlcmlT
|
||||
** SIG ** aWduIFRydXN0IE5ldHdvcmsxOjA4BgNVBAsTMShjKSAy
|
||||
** SIG ** MDA2IFZlcmlTaWduLCBJbmMuIC0gRm9yIGF1dGhvcml6
|
||||
** SIG ** ZWQgdXNlIG9ubHkxRTBDBgNVBAMTPFZlcmlTaWduIENs
|
||||
** SIG ** YXNzIDMgUHVibGljIFByaW1hcnkgQ2VydGlmaWNhdGlv
|
||||
** SIG ** biBBdXRob3JpdHkgLSBHNTAeFw0xMzEyMTAwMDAwMDBa
|
||||
** SIG ** Fw0yMzEyMDkyMzU5NTlaMH8xCzAJBgNVBAYTAlVTMR0w
|
||||
** SIG ** GwYDVQQKExRTeW1hbnRlYyBDb3Jwb3JhdGlvbjEfMB0G
|
||||
** SIG ** A1UECxMWU3ltYW50ZWMgVHJ1c3QgTmV0d29yazEwMC4G
|
||||
** SIG ** A1UEAxMnU3ltYW50ZWMgQ2xhc3MgMyBTSEEyNTYgQ29k
|
||||
** SIG ** ZSBTaWduaW5nIENBMIIBIjANBgkqhkiG9w0BAQEFAAOC
|
||||
** SIG ** AQ8AMIIBCgKCAQEAl4MeABavLLHSCMTXaJNRYB5x9uJH
|
||||
** SIG ** tNtYTSNiarS/WhtR96MNGHdou9g2qy8hUNqe8+dfJ04L
|
||||
** SIG ** wpfICXCTqdpcDU6kDZGgtOwUzpFyVC7Oo9tE6VIbP0E8
|
||||
** SIG ** ykrkqsDoOatTzCHQzM9/m+bCzFhqghXuPTbPHMWXBySO
|
||||
** SIG ** 8Xu+MS09bty1mUKfS2GVXxxw7hd924vlYYl4x2gbrxF4
|
||||
** SIG ** GpiuxFVHU9mzMtahDkZAxZeSitFTp5lbhTVX0+qTYmEg
|
||||
** SIG ** CscwdyQRTWKDtrp7aIIx7mXK3/nVjbI13Iwrb2pyXGCE
|
||||
** SIG ** nPIMlF7AVlIASMzT+KV93i/XE+Q4qITVRrgThsIbnepa
|
||||
** SIG ** ON2b2wIDAQABo4IBgzCCAX8wLwYIKwYBBQUHAQEEIzAh
|
||||
** SIG ** MB8GCCsGAQUFBzABhhNodHRwOi8vczIuc3ltY2IuY29t
|
||||
** SIG ** MBIGA1UdEwEB/wQIMAYBAf8CAQAwbAYDVR0gBGUwYzBh
|
||||
** SIG ** BgtghkgBhvhFAQcXAzBSMCYGCCsGAQUFBwIBFhpodHRw
|
||||
** SIG ** Oi8vd3d3LnN5bWF1dGguY29tL2NwczAoBggrBgEFBQcC
|
||||
** SIG ** AjAcGhpodHRwOi8vd3d3LnN5bWF1dGguY29tL3JwYTAw
|
||||
** SIG ** BgNVHR8EKTAnMCWgI6Ahhh9odHRwOi8vczEuc3ltY2Iu
|
||||
** SIG ** Y29tL3BjYTMtZzUuY3JsMB0GA1UdJQQWMBQGCCsGAQUF
|
||||
** SIG ** BwMCBggrBgEFBQcDAzAOBgNVHQ8BAf8EBAMCAQYwKQYD
|
||||
** SIG ** VR0RBCIwIKQeMBwxGjAYBgNVBAMTEVN5bWFudGVjUEtJ
|
||||
** SIG ** LTEtNTY3MB0GA1UdDgQWBBSWO1PweTOXr32D7y4rzMq3
|
||||
** SIG ** hh5yZjAfBgNVHSMEGDAWgBR/02Wnwt3su/AwCfNDOfoC
|
||||
** SIG ** rzMxMzANBgkqhkiG9w0BAQsFAAOCAQEAE4UaHmmpN/eg
|
||||
** SIG ** vaSvfh1hU/6djF4MpnUeeBcj3f3sGgNVOftxlcdlWqeO
|
||||
** SIG ** MNJEWmHbcG/aIQXCLnO6SfHRk/5dyc1eA+CJnj90Htf3
|
||||
** SIG ** OIup1s+7NS8zWKiSVtHITTuC5nmEFvwosLFH8x2iPu6H
|
||||
** SIG ** 2aZ/pFalP62ELinefLyoqqM9BAHqupOiDlAiKRdMh+Q6
|
||||
** SIG ** EV/WpCWJmwVrL7TJAUwnewusGQUioGAVP9rJ+01Mj/ty
|
||||
** SIG ** Z3f9J5THujUOiEn+jf0or0oSvQ2zlwXeRAwV+jYrA9zB
|
||||
** SIG ** UAHxoRFdFOXivSdLVL4rhF4PpsN0BQrvl8OJIrEfd/O9
|
||||
** SIG ** zUPU8UypP7WLhK9k8tAUITGCEFwwghBYAgEBMIGTMH8x
|
||||
** SIG ** CzAJBgNVBAYTAlVTMR0wGwYDVQQKExRTeW1hbnRlYyBD
|
||||
** SIG ** b3Jwb3JhdGlvbjEfMB0GA1UECxMWU3ltYW50ZWMgVHJ1
|
||||
** SIG ** c3QgTmV0d29yazEwMC4GA1UEAxMnU3ltYW50ZWMgQ2xh
|
||||
** SIG ** c3MgMyBTSEEyNTYgQ29kZSBTaWduaW5nIENBAhAwejZ6
|
||||
** SIG ** qj5ogab5TwjLOzlkMAkGBSsOAwIaBQCgcDAQBgorBgEE
|
||||
** SIG ** AYI3AgEMMQIwADAZBgkqhkiG9w0BCQMxDAYKKwYBBAGC
|
||||
** SIG ** NwIBBDAcBgorBgEEAYI3AgELMQ4wDAYKKwYBBAGCNwIB
|
||||
** SIG ** FTAjBgkqhkiG9w0BCQQxFgQUdlEhxAuBWm0MlKArFsW7
|
||||
** SIG ** wUJuFFgwDQYJKoZIhvcNAQEBBQAEggEAOMbNA+eBRdXb
|
||||
** SIG ** PwzUC3rlnPZpzU2U9GE4Px79FkQav1Ml8uAeyxtGA4Tr
|
||||
** SIG ** 0e/f5AX4HS12RIwmd7yOOuUvbyJcNp8+F/ThfGouS/tl
|
||||
** SIG ** UKUCJ4kHtF19H3MBUU2qdG1DAzFFwwzH/8ZT5ekodidY
|
||||
** SIG ** yFW2K09+1hIm83WxsL9+61bdLRjzz6FNNhIX1UXvrMf2
|
||||
** SIG ** IioYdJjA/nlL7ot3FOflIvvHRbxMCkaUWpb+AKI5jnB5
|
||||
** SIG ** CBBMhYL6vKy6gv9d5Kgqtiwy9AJF8w8gxJWcQ0tAKkGT
|
||||
** SIG ** AE4sUBjPrHzwjT66hscTWT5KAVkG8CT1JLiMKMxWKu7z
|
||||
** SIG ** IrolLvLRlSDa5Vvep3mLY6GCDiswgg4nBgorBgEEAYI3
|
||||
** SIG ** AwMBMYIOFzCCDhMGCSqGSIb3DQEHAqCCDgQwgg4AAgED
|
||||
** SIG ** MQ0wCwYJYIZIAWUDBAIBMIH+BgsqhkiG9w0BCRABBKCB
|
||||
** SIG ** 7gSB6zCB6AIBAQYLYIZIAYb4RQEHFwMwITAJBgUrDgMC
|
||||
** SIG ** GgUABBREu5UsXoPHdh84kBIceHhZTKaw7QIUbmqb3qOo
|
||||
** SIG ** cAbKtAp5GBBU4Yf8xy0YDzIwMTcwNzEyMTM0NTIzWjAD
|
||||
** SIG ** AgEeoIGGpIGDMIGAMQswCQYDVQQGEwJVUzEdMBsGA1UE
|
||||
** SIG ** ChMUU3ltYW50ZWMgQ29ycG9yYXRpb24xHzAdBgNVBAsT
|
||||
** SIG ** FlN5bWFudGVjIFRydXN0IE5ldHdvcmsxMTAvBgNVBAMT
|
||||
** SIG ** KFN5bWFudGVjIFNIQTI1NiBUaW1lU3RhbXBpbmcgU2ln
|
||||
** SIG ** bmVyIC0gRzKgggqLMIIFODCCBCCgAwIBAgIQewWx1Elo
|
||||
** SIG ** UUT3yYnSnBmdEjANBgkqhkiG9w0BAQsFADCBvTELMAkG
|
||||
** SIG ** A1UEBhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMu
|
||||
** SIG ** MR8wHQYDVQQLExZWZXJpU2lnbiBUcnVzdCBOZXR3b3Jr
|
||||
** SIG ** MTowOAYDVQQLEzEoYykgMjAwOCBWZXJpU2lnbiwgSW5j
|
||||
** SIG ** LiAtIEZvciBhdXRob3JpemVkIHVzZSBvbmx5MTgwNgYD
|
||||
** SIG ** VQQDEy9WZXJpU2lnbiBVbml2ZXJzYWwgUm9vdCBDZXJ0
|
||||
** SIG ** aWZpY2F0aW9uIEF1dGhvcml0eTAeFw0xNjAxMTIwMDAw
|
||||
** SIG ** MDBaFw0zMTAxMTEyMzU5NTlaMHcxCzAJBgNVBAYTAlVT
|
||||
** SIG ** MR0wGwYDVQQKExRTeW1hbnRlYyBDb3Jwb3JhdGlvbjEf
|
||||
** SIG ** MB0GA1UECxMWU3ltYW50ZWMgVHJ1c3QgTmV0d29yazEo
|
||||
** SIG ** MCYGA1UEAxMfU3ltYW50ZWMgU0hBMjU2IFRpbWVTdGFt
|
||||
** SIG ** cGluZyBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCC
|
||||
** SIG ** AQoCggEBALtZnVlVT52Mcl0agaLrVfOwAa08cawyjwVr
|
||||
** SIG ** hponADKXak3JZBRLKbvC2Sm5Luxjs+HPPwtWkPhiG37r
|
||||
** SIG ** pgfi3n9ebUA41JEG50F8eRzLy60bv9iVkfPw7mz4rZY5
|
||||
** SIG ** Ln/BJ7h4OcWEpe3tr4eOzo3HberSmLU6Hx45ncP0mqj0
|
||||
** SIG ** hOHE0XxxxgYptD/kgw0mw3sIPk35CrczSf/KO9T1sptL
|
||||
** SIG ** 4YiZGvXA6TMU1t/HgNuR7v68kldyd/TNqMz+CfWTN76V
|
||||
** SIG ** iGrF3PSxS9TO6AmRX7WEeTWKeKwZMo8jwTJBG1kOqT6x
|
||||
** SIG ** zPnWK++32OTVHW0ROpL2k8mc40juu1MO1DaXhnjFoTcC
|
||||
** SIG ** AwEAAaOCAXcwggFzMA4GA1UdDwEB/wQEAwIBBjASBgNV
|
||||
** SIG ** HRMBAf8ECDAGAQH/AgEAMGYGA1UdIARfMF0wWwYLYIZI
|
||||
** SIG ** AYb4RQEHFwMwTDAjBggrBgEFBQcCARYXaHR0cHM6Ly9k
|
||||
** SIG ** LnN5bWNiLmNvbS9jcHMwJQYIKwYBBQUHAgIwGRoXaHR0
|
||||
** SIG ** cHM6Ly9kLnN5bWNiLmNvbS9ycGEwLgYIKwYBBQUHAQEE
|
||||
** SIG ** IjAgMB4GCCsGAQUFBzABhhJodHRwOi8vcy5zeW1jZC5j
|
||||
** SIG ** b20wNgYDVR0fBC8wLTAroCmgJ4YlaHR0cDovL3Muc3lt
|
||||
** SIG ** Y2IuY29tL3VuaXZlcnNhbC1yb290LmNybDATBgNVHSUE
|
||||
** SIG ** DDAKBggrBgEFBQcDCDAoBgNVHREEITAfpB0wGzEZMBcG
|
||||
** SIG ** A1UEAxMQVGltZVN0YW1wLTIwNDgtMzAdBgNVHQ4EFgQU
|
||||
** SIG ** r2PWyqNOhXLgp7xB8ymiOH+AdWIwHwYDVR0jBBgwFoAU
|
||||
** SIG ** tnf6aUhHn1MS1cLqBzJ2B9GXBxkwDQYJKoZIhvcNAQEL
|
||||
** SIG ** BQADggEBAHXqsC3VNBlcMkX+DuHUT6Z4wW/X6t3cT/Oh
|
||||
** SIG ** yIGI96ePFeZAKa3mXfSi2VZkhHEwKt0eYRdmIFYGmBmN
|
||||
** SIG ** XXHy+Je8Cf0ckUfJ4uiNA/vMkC/WCmxOM+zWtJPITJBj
|
||||
** SIG ** SDlAIcTd1m6JmDy1mJfoqQa3CcmPU1dBkC/hHk1O3MoQ
|
||||
** SIG ** eGxCbvC2xfhhXFL1TvZrjfdKer7zzf0D19n2A6gP41P3
|
||||
** SIG ** CnXsxnUuqmaFBJm3+AZX4cYO9uiv2uybGB+queM6AL/O
|
||||
** SIG ** ipTLAduexzi7D1Kr0eOUA2AKTaD+J20UMvw/l0Dhv5mJ
|
||||
** SIG ** 2+Q5FL3a5NPD6itas5VYVQR9x5rsIwONhSrS/66pYYEw
|
||||
** SIG ** ggVLMIIEM6ADAgECAhBUWPKq10HWRLyEqXugllLmMA0G
|
||||
** SIG ** CSqGSIb3DQEBCwUAMHcxCzAJBgNVBAYTAlVTMR0wGwYD
|
||||
** SIG ** VQQKExRTeW1hbnRlYyBDb3Jwb3JhdGlvbjEfMB0GA1UE
|
||||
** SIG ** CxMWU3ltYW50ZWMgVHJ1c3QgTmV0d29yazEoMCYGA1UE
|
||||
** SIG ** AxMfU3ltYW50ZWMgU0hBMjU2IFRpbWVTdGFtcGluZyBD
|
||||
** SIG ** QTAeFw0xNzAxMDIwMDAwMDBaFw0yODA0MDEyMzU5NTla
|
||||
** SIG ** MIGAMQswCQYDVQQGEwJVUzEdMBsGA1UEChMUU3ltYW50
|
||||
** SIG ** ZWMgQ29ycG9yYXRpb24xHzAdBgNVBAsTFlN5bWFudGVj
|
||||
** SIG ** IFRydXN0IE5ldHdvcmsxMTAvBgNVBAMTKFN5bWFudGVj
|
||||
** SIG ** IFNIQTI1NiBUaW1lU3RhbXBpbmcgU2lnbmVyIC0gRzIw
|
||||
** SIG ** ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCZ
|
||||
** SIG ** 8/zYBAkDhvnXXKaTwEJ86nxjz10A4o7zwJDfjyn1GOqU
|
||||
** SIG ** t5Ll17Cgc4Ho6QqbSnwB/52PpDmnDupF9CIMOnDtOUWL
|
||||
** SIG ** 5MUbXPBFaEYkBWN2mxz8nmwqsVblin9Sca7yNdVGIwYc
|
||||
** SIG ** z0gtHbTNuNl2I44c/z6/uwZcaQemZQ74Xq59Lu1NrjXv
|
||||
** SIG ** ydcAQv0olQ6fXXJCCbzD2kTS7cxHhOT8yi2sWL6u967Z
|
||||
** SIG ** RA0It8J31hpDcNFuA95SksQQCHHZuiJV8h+87ZudO+Je
|
||||
** SIG ** HUyD/5cPewvnVYNO0g3rvtfsrm5HuZ/fpdZRvARV7f8n
|
||||
** SIG ** cEzJ7SpLE+GxuUwPyQHuVWVfaQJ4Zss/AgMBAAGjggHH
|
||||
** SIG ** MIIBwzAMBgNVHRMBAf8EAjAAMGYGA1UdIARfMF0wWwYL
|
||||
** SIG ** YIZIAYb4RQEHFwMwTDAjBggrBgEFBQcCARYXaHR0cHM6
|
||||
** SIG ** Ly9kLnN5bWNiLmNvbS9jcHMwJQYIKwYBBQUHAgIwGRoX
|
||||
** SIG ** aHR0cHM6Ly9kLnN5bWNiLmNvbS9ycGEwQAYDVR0fBDkw
|
||||
** SIG ** NzA1oDOgMYYvaHR0cDovL3RzLWNybC53cy5zeW1hbnRl
|
||||
** SIG ** Yy5jb20vc2hhMjU2LXRzcy1jYS5jcmwwFgYDVR0lAQH/
|
||||
** SIG ** BAwwCgYIKwYBBQUHAwgwDgYDVR0PAQH/BAQDAgeAMHcG
|
||||
** SIG ** CCsGAQUFBwEBBGswaTAqBggrBgEFBQcwAYYeaHR0cDov
|
||||
** SIG ** L3RzLW9jc3Aud3Muc3ltYW50ZWMuY29tMDsGCCsGAQUF
|
||||
** SIG ** BzAChi9odHRwOi8vdHMtYWlhLndzLnN5bWFudGVjLmNv
|
||||
** SIG ** bS9zaGEyNTYtdHNzLWNhLmNlcjAoBgNVHREEITAfpB0w
|
||||
** SIG ** GzEZMBcGA1UEAxMQVGltZVN0YW1wLTIwNDgtNTAdBgNV
|
||||
** SIG ** HQ4EFgQUCbXB/pZylylDmsngArqu+P0vuvYwHwYDVR0j
|
||||
** SIG ** BBgwFoAUr2PWyqNOhXLgp7xB8ymiOH+AdWIwDQYJKoZI
|
||||
** SIG ** hvcNAQELBQADggEBABezCojpXFpeIGs7ChWybMWpijKH
|
||||
** SIG ** 07H0HFOuhb4/m//XvLeUhbTHUn6U6L3tYbLUp5nkw8mT
|
||||
** SIG ** wTU9C+hoCl1WmL2xIjvRRHrXv/BtUTKK1SPfOAE39uJT
|
||||
** SIG ** K3orEY+3TWx6MwMbfGsJlBe75NtY1CETZefs0SXKLHWa
|
||||
** SIG ** nH/8ybsqaKvEfbTPo8lsp9nEAJyJCneR9E2i+zE7hm72
|
||||
** SIG ** 5h9QA4abv8tCq+Z2m3JaEQGKxu+lb5Xn3a665iJl8BhZ
|
||||
** SIG ** GxHJzYC32JdHH0II+KxxH7BGU7PUstWjq1B1SBIXgq3P
|
||||
** SIG ** 4EFPMn7NlRy/kYoIPaSnZwKW3yRMpdBBwIJgo4oXMkvT
|
||||
** SIG ** vM+ktIwxggJaMIICVgIBATCBizB3MQswCQYDVQQGEwJV
|
||||
** SIG ** UzEdMBsGA1UEChMUU3ltYW50ZWMgQ29ycG9yYXRpb24x
|
||||
** SIG ** HzAdBgNVBAsTFlN5bWFudGVjIFRydXN0IE5ldHdvcmsx
|
||||
** SIG ** KDAmBgNVBAMTH1N5bWFudGVjIFNIQTI1NiBUaW1lU3Rh
|
||||
** SIG ** bXBpbmcgQ0ECEFRY8qrXQdZEvISpe6CWUuYwCwYJYIZI
|
||||
** SIG ** AWUDBAIBoIGkMBoGCSqGSIb3DQEJAzENBgsqhkiG9w0B
|
||||
** SIG ** CRABBDAcBgkqhkiG9w0BCQUxDxcNMTcwNzEyMTM0NTIz
|
||||
** SIG ** WjAvBgkqhkiG9w0BCQQxIgQg1xD52jg9/P8NO5ws2naf
|
||||
** SIG ** wcu6an12O8ENVDquZNAiSfQwNwYLKoZIhvcNAQkQAi8x
|
||||
** SIG ** KDAmMCQwIgQgz3rBetBH7NX9w2giAxsS1O8Hi28rTF5r
|
||||
** SIG ** pB+P8s9LrWcwCwYJKoZIhvcNAQEBBIIBAJDHkzPZuNcj
|
||||
** SIG ** mq2Pi6cZM4Iw79XCJn2IuBXYIYMA17dvZpkoqlhDJDZk
|
||||
** SIG ** W1x1j+70vkAJNoOa4PnAaNVHii13rybX8UC37iZNoRBQ
|
||||
** SIG ** CYpgptcOw9tPkNBOoZmysu8qbOe2qK1eSklI6l/v1J7t
|
||||
** SIG ** 2560Y9bKvgPs3Pya5EKFFLs+gWA+2IjQp9/uvRVVg8ws
|
||||
** SIG ** Wd0y2RLctd/y9+kQod3NYy4EinM3pcFA8jAON5PRTQOj
|
||||
** SIG ** 1xM/I6pJHB7NmsRJKSZcI5QZndLc3Re/i2ZQdI6hT9fT
|
||||
** SIG ** lh5ZH/C9TnTD9Hh0hgItpGSR93oX3PID12Cpf20q2Sda
|
||||
** SIG ** RY05FX4dNVmF2nLM9y33rBY=
|
||||
</signature>
|
||||
</package>
|
||||
|
||||
236
bin/InstFont.wsf
236
bin/InstFont.wsf
@@ -1,12 +1,26 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?xml version="1.0"?>
|
||||
<!--
|
||||
SPDX-License-Identifier: GPL-3.0-or-later
|
||||
Copyright © 2016-2021 Amebis
|
||||
Copyright 2016-2017 Amebis
|
||||
|
||||
This file is part of InstFont.
|
||||
|
||||
InstFont is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
InstFont is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with InstFont. If not, see <http://www.gnu.org/licenses/>.
|
||||
-->
|
||||
<package>
|
||||
<job id="InstFont">
|
||||
<runtime>
|
||||
<description>Installs font - Amebis, Copyright © 2016-2021</description>
|
||||
<description>Installs font - Amebis, Copyright © 2016-2017</description>
|
||||
<unnamed name="<Shortcut.lnk>" required="true" helpstring="Shortcut file to create"/>
|
||||
<example>
|
||||
Example:
|
||||
@@ -32,4 +46,218 @@ InstFont.wsf "My Font.ttf"
|
||||
WScript.Quit(0);
|
||||
]]></script>
|
||||
</job>
|
||||
|
||||
<signature>
|
||||
** SIG ** MIIbIAYJKoZIhvcNAQcCoIIbETCCGw0CAQExCzAJBgUr
|
||||
** SIG ** DgMCGgUAMGcGCisGAQQBgjcCAQSgWTBXMDIGCisGAQQB
|
||||
** SIG ** gjcCAR4wJAIBAQQQcAVhGs441BGiowAQS9NQkAIBAAIB
|
||||
** SIG ** AAIBAAIBAAIBADAhMAkGBSsOAwIaBQAEFGEeMjueacR0
|
||||
** SIG ** jh4XkURojdD3J5x+oIIKLzCCBM4wggO2oAMCAQICEDB6
|
||||
** SIG ** NnqqPmiBpvlPCMs7OWQwDQYJKoZIhvcNAQELBQAwfzEL
|
||||
** SIG ** MAkGA1UEBhMCVVMxHTAbBgNVBAoTFFN5bWFudGVjIENv
|
||||
** SIG ** cnBvcmF0aW9uMR8wHQYDVQQLExZTeW1hbnRlYyBUcnVz
|
||||
** SIG ** dCBOZXR3b3JrMTAwLgYDVQQDEydTeW1hbnRlYyBDbGFz
|
||||
** SIG ** cyAzIFNIQTI1NiBDb2RlIFNpZ25pbmcgQ0EwHhcNMTUx
|
||||
** SIG ** MDA5MDAwMDAwWhcNMTgxMTA3MjM1OTU5WjBhMQswCQYD
|
||||
** SIG ** VQQGEwJTSTERMA8GA1UECBMIU2xvdmVuaWExDzANBgNV
|
||||
** SIG ** BAcTBkthbW5pazEWMBQGA1UEChQNQW1lYmlzIGQuby5v
|
||||
** SIG ** LjEWMBQGA1UEAxQNQW1lYmlzIGQuby5vLjCCASIwDQYJ
|
||||
** SIG ** KoZIhvcNAQEBBQADggEPADCCAQoCggEBAJfy6Bdwx2kq
|
||||
** SIG ** yGhtaYAZgcA8pWLe7EbyLqBHRq/8jIVfUX1CH7fsbEz1
|
||||
** SIG ** UDgIq74BvilG3BNyjJxh/lbiu2Pr2M0ad3WEy4p0kM9T
|
||||
** SIG ** SmABC8k3Vc5pmJlNy1++uMpNwAbUmbGcD6Igsvk1xPWb
|
||||
** SIG ** ApLoAdnO0KfTfzvRI40A0cGZVGt5y6GPemN6jT8JAp9O
|
||||
** SIG ** KaWIqj3iF00c/FwS7ODZf2w/cMphLjUle+b86GyewVGE
|
||||
** SIG ** MEVO5ZjS9ksEWBDWn9A6XYshSwbDWnx4xmIl0B4DcWVA
|
||||
** SIG ** aY+zqEQzQbzEGC/izPDq44RiCtbhi+QqgQ/6fNXm3hbA
|
||||
** SIG ** GVcYPYa4J5D1UMO+1NC2cPMCAwEAAaOCAWIwggFeMAkG
|
||||
** SIG ** A1UdEwQCMAAwDgYDVR0PAQH/BAQDAgeAMCsGA1UdHwQk
|
||||
** SIG ** MCIwIKAeoByGGmh0dHA6Ly9zdi5zeW1jYi5jb20vc3Yu
|
||||
** SIG ** Y3JsMGYGA1UdIARfMF0wWwYLYIZIAYb4RQEHFwMwTDAj
|
||||
** SIG ** BggrBgEFBQcCARYXaHR0cHM6Ly9kLnN5bWNiLmNvbS9j
|
||||
** SIG ** cHMwJQYIKwYBBQUHAgIwGQwXaHR0cHM6Ly9kLnN5bWNi
|
||||
** SIG ** LmNvbS9ycGEwEwYDVR0lBAwwCgYIKwYBBQUHAwMwVwYI
|
||||
** SIG ** KwYBBQUHAQEESzBJMB8GCCsGAQUFBzABhhNodHRwOi8v
|
||||
** SIG ** c3Yuc3ltY2QuY29tMCYGCCsGAQUFBzAChhpodHRwOi8v
|
||||
** SIG ** c3Yuc3ltY2IuY29tL3N2LmNydDAfBgNVHSMEGDAWgBSW
|
||||
** SIG ** O1PweTOXr32D7y4rzMq3hh5yZjAdBgNVHQ4EFgQU9we9
|
||||
** SIG ** loCaLXTEfww9PSfd1JAKn8wwDQYJKoZIhvcNAQELBQAD
|
||||
** SIG ** ggEBAIpxL0AvtcrbShLKgI7dmLn6WJbpdzkB9e2Cm1Mu
|
||||
** SIG ** AAIiogLFF1n07l0VXZE+gqxGHB8ji2h33t+o1R8PLyyI
|
||||
** SIG ** kdnMhHAd78HsqyZzabfmWuCP12TKBv77wiZkpbTo/Av+
|
||||
** SIG ** z0SlpJRoMpzzXhyPPtHdby80bSu+4RXlewiDCH56aGE4
|
||||
** SIG ** SSk0i8Xa9JJ/ozPKLX3Szdmg6J58XtDH/tq5K1/ABSCB
|
||||
** SIG ** z6SF2Y9l9lRJpGXchSDYCPipSVUGP0WPQRTDNobSwCJD
|
||||
** SIG ** XAz9UFcxWo4Rh8o/gvlLWUH+T3HhmLSRzXqt3JuqJo5x
|
||||
** SIG ** H8s4vPzcGBZZFob8yRB98KD6ioFK2pjRRSw9FucwggVZ
|
||||
** SIG ** MIIEQaADAgECAhA9eNf5dklgsmF99PAeyoYqMA0GCSqG
|
||||
** SIG ** SIb3DQEBCwUAMIHKMQswCQYDVQQGEwJVUzEXMBUGA1UE
|
||||
** SIG ** ChMOVmVyaVNpZ24sIEluYy4xHzAdBgNVBAsTFlZlcmlT
|
||||
** SIG ** aWduIFRydXN0IE5ldHdvcmsxOjA4BgNVBAsTMShjKSAy
|
||||
** SIG ** MDA2IFZlcmlTaWduLCBJbmMuIC0gRm9yIGF1dGhvcml6
|
||||
** SIG ** ZWQgdXNlIG9ubHkxRTBDBgNVBAMTPFZlcmlTaWduIENs
|
||||
** SIG ** YXNzIDMgUHVibGljIFByaW1hcnkgQ2VydGlmaWNhdGlv
|
||||
** SIG ** biBBdXRob3JpdHkgLSBHNTAeFw0xMzEyMTAwMDAwMDBa
|
||||
** SIG ** Fw0yMzEyMDkyMzU5NTlaMH8xCzAJBgNVBAYTAlVTMR0w
|
||||
** SIG ** GwYDVQQKExRTeW1hbnRlYyBDb3Jwb3JhdGlvbjEfMB0G
|
||||
** SIG ** A1UECxMWU3ltYW50ZWMgVHJ1c3QgTmV0d29yazEwMC4G
|
||||
** SIG ** A1UEAxMnU3ltYW50ZWMgQ2xhc3MgMyBTSEEyNTYgQ29k
|
||||
** SIG ** ZSBTaWduaW5nIENBMIIBIjANBgkqhkiG9w0BAQEFAAOC
|
||||
** SIG ** AQ8AMIIBCgKCAQEAl4MeABavLLHSCMTXaJNRYB5x9uJH
|
||||
** SIG ** tNtYTSNiarS/WhtR96MNGHdou9g2qy8hUNqe8+dfJ04L
|
||||
** SIG ** wpfICXCTqdpcDU6kDZGgtOwUzpFyVC7Oo9tE6VIbP0E8
|
||||
** SIG ** ykrkqsDoOatTzCHQzM9/m+bCzFhqghXuPTbPHMWXBySO
|
||||
** SIG ** 8Xu+MS09bty1mUKfS2GVXxxw7hd924vlYYl4x2gbrxF4
|
||||
** SIG ** GpiuxFVHU9mzMtahDkZAxZeSitFTp5lbhTVX0+qTYmEg
|
||||
** SIG ** CscwdyQRTWKDtrp7aIIx7mXK3/nVjbI13Iwrb2pyXGCE
|
||||
** SIG ** nPIMlF7AVlIASMzT+KV93i/XE+Q4qITVRrgThsIbnepa
|
||||
** SIG ** ON2b2wIDAQABo4IBgzCCAX8wLwYIKwYBBQUHAQEEIzAh
|
||||
** SIG ** MB8GCCsGAQUFBzABhhNodHRwOi8vczIuc3ltY2IuY29t
|
||||
** SIG ** MBIGA1UdEwEB/wQIMAYBAf8CAQAwbAYDVR0gBGUwYzBh
|
||||
** SIG ** BgtghkgBhvhFAQcXAzBSMCYGCCsGAQUFBwIBFhpodHRw
|
||||
** SIG ** Oi8vd3d3LnN5bWF1dGguY29tL2NwczAoBggrBgEFBQcC
|
||||
** SIG ** AjAcGhpodHRwOi8vd3d3LnN5bWF1dGguY29tL3JwYTAw
|
||||
** SIG ** BgNVHR8EKTAnMCWgI6Ahhh9odHRwOi8vczEuc3ltY2Iu
|
||||
** SIG ** Y29tL3BjYTMtZzUuY3JsMB0GA1UdJQQWMBQGCCsGAQUF
|
||||
** SIG ** BwMCBggrBgEFBQcDAzAOBgNVHQ8BAf8EBAMCAQYwKQYD
|
||||
** SIG ** VR0RBCIwIKQeMBwxGjAYBgNVBAMTEVN5bWFudGVjUEtJ
|
||||
** SIG ** LTEtNTY3MB0GA1UdDgQWBBSWO1PweTOXr32D7y4rzMq3
|
||||
** SIG ** hh5yZjAfBgNVHSMEGDAWgBR/02Wnwt3su/AwCfNDOfoC
|
||||
** SIG ** rzMxMzANBgkqhkiG9w0BAQsFAAOCAQEAE4UaHmmpN/eg
|
||||
** SIG ** vaSvfh1hU/6djF4MpnUeeBcj3f3sGgNVOftxlcdlWqeO
|
||||
** SIG ** MNJEWmHbcG/aIQXCLnO6SfHRk/5dyc1eA+CJnj90Htf3
|
||||
** SIG ** OIup1s+7NS8zWKiSVtHITTuC5nmEFvwosLFH8x2iPu6H
|
||||
** SIG ** 2aZ/pFalP62ELinefLyoqqM9BAHqupOiDlAiKRdMh+Q6
|
||||
** SIG ** EV/WpCWJmwVrL7TJAUwnewusGQUioGAVP9rJ+01Mj/ty
|
||||
** SIG ** Z3f9J5THujUOiEn+jf0or0oSvQ2zlwXeRAwV+jYrA9zB
|
||||
** SIG ** UAHxoRFdFOXivSdLVL4rhF4PpsN0BQrvl8OJIrEfd/O9
|
||||
** SIG ** zUPU8UypP7WLhK9k8tAUITGCEF0wghBZAgEBMIGTMH8x
|
||||
** SIG ** CzAJBgNVBAYTAlVTMR0wGwYDVQQKExRTeW1hbnRlYyBD
|
||||
** SIG ** b3Jwb3JhdGlvbjEfMB0GA1UECxMWU3ltYW50ZWMgVHJ1
|
||||
** SIG ** c3QgTmV0d29yazEwMC4GA1UEAxMnU3ltYW50ZWMgQ2xh
|
||||
** SIG ** c3MgMyBTSEEyNTYgQ29kZSBTaWduaW5nIENBAhAwejZ6
|
||||
** SIG ** qj5ogab5TwjLOzlkMAkGBSsOAwIaBQCgcDAQBgorBgEE
|
||||
** SIG ** AYI3AgEMMQIwADAZBgkqhkiG9w0BCQMxDAYKKwYBBAGC
|
||||
** SIG ** NwIBBDAcBgorBgEEAYI3AgELMQ4wDAYKKwYBBAGCNwIB
|
||||
** SIG ** FTAjBgkqhkiG9w0BCQQxFgQUznZZYwta1knx/qCWsLrQ
|
||||
** SIG ** xhI/iSEwDQYJKoZIhvcNAQEBBQAEggEAPYeqftDHUS31
|
||||
** SIG ** QK3yXnFhEGCzEifnj47Z5hsIsCj64g2Mawryh2SQqzke
|
||||
** SIG ** /lwJQYdR8ZHnnitm8oIM2dQ+duCm6/7b452yRQmlW+bm
|
||||
** SIG ** PfKUYAntHYtFiBvPDXFFcd/vC/wKQN7/IoX1xHUmIJCL
|
||||
** SIG ** PpoUDf8luTRknl2wLpevQg6RyDL1ra1TfE2m3vovmiQE
|
||||
** SIG ** vWjmnebUzbReg6eDp8uqpSkWX6sl3CkjS7Du4K1vyIuQ
|
||||
** SIG ** z3Y1NEKTp0sc1OPReAyI8IIMZFiv4B+aIozloZKLCZlX
|
||||
** SIG ** RX/7WV4poxy07HL2D0eSpKU/E5sGx3WPQJspmfCSgVpW
|
||||
** SIG ** LB0gOEdADx1qXjT8SmhGcqGCDiwwgg4oBgorBgEEAYI3
|
||||
** SIG ** AwMBMYIOGDCCDhQGCSqGSIb3DQEHAqCCDgUwgg4BAgED
|
||||
** SIG ** MQ0wCwYJYIZIAWUDBAIBMIH/BgsqhkiG9w0BCRABBKCB
|
||||
** SIG ** 7wSB7DCB6QIBAQYLYIZIAYb4RQEHFwMwITAJBgUrDgMC
|
||||
** SIG ** GgUABBRK+KyXCF2Tf00Aw6jImyGktIi+hwIVAPP8EMTA
|
||||
** SIG ** f5W0fbcFV9uvT/3tRGNxGA8yMDE3MTIyMjA5MjMxMlow
|
||||
** SIG ** AwIBHqCBhqSBgzCBgDELMAkGA1UEBhMCVVMxHTAbBgNV
|
||||
** SIG ** BAoTFFN5bWFudGVjIENvcnBvcmF0aW9uMR8wHQYDVQQL
|
||||
** SIG ** ExZTeW1hbnRlYyBUcnVzdCBOZXR3b3JrMTEwLwYDVQQD
|
||||
** SIG ** EyhTeW1hbnRlYyBTSEEyNTYgVGltZVN0YW1waW5nIFNp
|
||||
** SIG ** Z25lciAtIEcyoIIKizCCBTgwggQgoAMCAQICEHsFsdRJ
|
||||
** SIG ** aFFE98mJ0pwZnRIwDQYJKoZIhvcNAQELBQAwgb0xCzAJ
|
||||
** SIG ** BgNVBAYTAlVTMRcwFQYDVQQKEw5WZXJpU2lnbiwgSW5j
|
||||
** SIG ** LjEfMB0GA1UECxMWVmVyaVNpZ24gVHJ1c3QgTmV0d29y
|
||||
** SIG ** azE6MDgGA1UECxMxKGMpIDIwMDggVmVyaVNpZ24sIElu
|
||||
** SIG ** Yy4gLSBGb3IgYXV0aG9yaXplZCB1c2Ugb25seTE4MDYG
|
||||
** SIG ** A1UEAxMvVmVyaVNpZ24gVW5pdmVyc2FsIFJvb3QgQ2Vy
|
||||
** SIG ** dGlmaWNhdGlvbiBBdXRob3JpdHkwHhcNMTYwMTEyMDAw
|
||||
** SIG ** MDAwWhcNMzEwMTExMjM1OTU5WjB3MQswCQYDVQQGEwJV
|
||||
** SIG ** UzEdMBsGA1UEChMUU3ltYW50ZWMgQ29ycG9yYXRpb24x
|
||||
** SIG ** HzAdBgNVBAsTFlN5bWFudGVjIFRydXN0IE5ldHdvcmsx
|
||||
** SIG ** KDAmBgNVBAMTH1N5bWFudGVjIFNIQTI1NiBUaW1lU3Rh
|
||||
** SIG ** bXBpbmcgQ0EwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAw
|
||||
** SIG ** ggEKAoIBAQC7WZ1ZVU+djHJdGoGi61XzsAGtPHGsMo8F
|
||||
** SIG ** a4aaJwAyl2pNyWQUSym7wtkpuS7sY7Phzz8LVpD4Yht+
|
||||
** SIG ** 66YH4t5/Xm1AONSRBudBfHkcy8utG7/YlZHz8O5s+K2W
|
||||
** SIG ** OS5/wSe4eDnFhKXt7a+Hjs6Nx23q0pi1Oh8eOZ3D9Jqo
|
||||
** SIG ** 9IThxNF8ccYGKbQ/5IMNJsN7CD5N+Qq3M0n/yjvU9bKb
|
||||
** SIG ** S+GImRr1wOkzFNbfx4Dbke7+vJJXcnf0zajM/gn1kze+
|
||||
** SIG ** lYhqxdz0sUvUzugJkV+1hHk1inisGTKPI8EyQRtZDqk+
|
||||
** SIG ** scz51ivvt9jk1R1tETqS9pPJnONI7rtTDtQ2l4Z4xaE3
|
||||
** SIG ** AgMBAAGjggF3MIIBczAOBgNVHQ8BAf8EBAMCAQYwEgYD
|
||||
** SIG ** VR0TAQH/BAgwBgEB/wIBADBmBgNVHSAEXzBdMFsGC2CG
|
||||
** SIG ** SAGG+EUBBxcDMEwwIwYIKwYBBQUHAgEWF2h0dHBzOi8v
|
||||
** SIG ** ZC5zeW1jYi5jb20vY3BzMCUGCCsGAQUFBwICMBkaF2h0
|
||||
** SIG ** dHBzOi8vZC5zeW1jYi5jb20vcnBhMC4GCCsGAQUFBwEB
|
||||
** SIG ** BCIwIDAeBggrBgEFBQcwAYYSaHR0cDovL3Muc3ltY2Qu
|
||||
** SIG ** Y29tMDYGA1UdHwQvMC0wK6ApoCeGJWh0dHA6Ly9zLnN5
|
||||
** SIG ** bWNiLmNvbS91bml2ZXJzYWwtcm9vdC5jcmwwEwYDVR0l
|
||||
** SIG ** BAwwCgYIKwYBBQUHAwgwKAYDVR0RBCEwH6QdMBsxGTAX
|
||||
** SIG ** BgNVBAMTEFRpbWVTdGFtcC0yMDQ4LTMwHQYDVR0OBBYE
|
||||
** SIG ** FK9j1sqjToVy4Ke8QfMpojh/gHViMB8GA1UdIwQYMBaA
|
||||
** SIG ** FLZ3+mlIR59TEtXC6gcydgfRlwcZMA0GCSqGSIb3DQEB
|
||||
** SIG ** CwUAA4IBAQB16rAt1TQZXDJF/g7h1E+meMFv1+rd3E/z
|
||||
** SIG ** ociBiPenjxXmQCmt5l30otlWZIRxMCrdHmEXZiBWBpgZ
|
||||
** SIG ** jV1x8viXvAn9HJFHyeLojQP7zJAv1gpsTjPs1rSTyEyQ
|
||||
** SIG ** Y0g5QCHE3dZuiZg8tZiX6KkGtwnJj1NXQZAv4R5NTtzK
|
||||
** SIG ** EHhsQm7wtsX4YVxS9U72a433Snq+8839A9fZ9gOoD+NT
|
||||
** SIG ** 9wp17MZ1LqpmhQSZt/gGV+HGDvbor9rsmxgfqrnjOgC/
|
||||
** SIG ** zoqUywHbnsc4uw9Sq9HjlANgCk2g/idtFDL8P5dA4b+Z
|
||||
** SIG ** idvkORS92uTTw+orWrOVWFUEfcea7CMDjYUq0v+uqWGB
|
||||
** SIG ** MIIFSzCCBDOgAwIBAgIQVFjyqtdB1kS8hKl7oJZS5jAN
|
||||
** SIG ** BgkqhkiG9w0BAQsFADB3MQswCQYDVQQGEwJVUzEdMBsG
|
||||
** SIG ** A1UEChMUU3ltYW50ZWMgQ29ycG9yYXRpb24xHzAdBgNV
|
||||
** SIG ** BAsTFlN5bWFudGVjIFRydXN0IE5ldHdvcmsxKDAmBgNV
|
||||
** SIG ** BAMTH1N5bWFudGVjIFNIQTI1NiBUaW1lU3RhbXBpbmcg
|
||||
** SIG ** Q0EwHhcNMTcwMTAyMDAwMDAwWhcNMjgwNDAxMjM1OTU5
|
||||
** SIG ** WjCBgDELMAkGA1UEBhMCVVMxHTAbBgNVBAoTFFN5bWFu
|
||||
** SIG ** dGVjIENvcnBvcmF0aW9uMR8wHQYDVQQLExZTeW1hbnRl
|
||||
** SIG ** YyBUcnVzdCBOZXR3b3JrMTEwLwYDVQQDEyhTeW1hbnRl
|
||||
** SIG ** YyBTSEEyNTYgVGltZVN0YW1waW5nIFNpZ25lciAtIEcy
|
||||
** SIG ** MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA
|
||||
** SIG ** mfP82AQJA4b511ymk8BCfOp8Y89dAOKO88CQ348p9Rjq
|
||||
** SIG ** lLeS5dewoHOB6OkKm0p8Af+dj6Q5pw7qRfQiDDpw7TlF
|
||||
** SIG ** i+TFG1zwRWhGJAVjdpsc/J5sKrFW5Yp/UnGu8jXVRiMG
|
||||
** SIG ** HM9ILR20zbjZdiOOHP8+v7sGXGkHpmUO+F6ufS7tTa41
|
||||
** SIG ** 78nXAEL9KJUOn11yQgm8w9pE0u3MR4Tk/MotrFi+rveu
|
||||
** SIG ** 2UQNCLfCd9YaQ3DRbgPeUpLEEAhx2boiVfIfvO2bnTvi
|
||||
** SIG ** Xh1Mg/+XD3sL51WDTtIN677X7K5uR7mf36XWUbwEVe3/
|
||||
** SIG ** J3BMye0qSxPhsblMD8kB7lVlX2kCeGbLPwIDAQABo4IB
|
||||
** SIG ** xzCCAcMwDAYDVR0TAQH/BAIwADBmBgNVHSAEXzBdMFsG
|
||||
** SIG ** C2CGSAGG+EUBBxcDMEwwIwYIKwYBBQUHAgEWF2h0dHBz
|
||||
** SIG ** Oi8vZC5zeW1jYi5jb20vY3BzMCUGCCsGAQUFBwICMBka
|
||||
** SIG ** F2h0dHBzOi8vZC5zeW1jYi5jb20vcnBhMEAGA1UdHwQ5
|
||||
** SIG ** MDcwNaAzoDGGL2h0dHA6Ly90cy1jcmwud3Muc3ltYW50
|
||||
** SIG ** ZWMuY29tL3NoYTI1Ni10c3MtY2EuY3JsMBYGA1UdJQEB
|
||||
** SIG ** /wQMMAoGCCsGAQUFBwMIMA4GA1UdDwEB/wQEAwIHgDB3
|
||||
** SIG ** BggrBgEFBQcBAQRrMGkwKgYIKwYBBQUHMAGGHmh0dHA6
|
||||
** SIG ** Ly90cy1vY3NwLndzLnN5bWFudGVjLmNvbTA7BggrBgEF
|
||||
** SIG ** BQcwAoYvaHR0cDovL3RzLWFpYS53cy5zeW1hbnRlYy5j
|
||||
** SIG ** b20vc2hhMjU2LXRzcy1jYS5jZXIwKAYDVR0RBCEwH6Qd
|
||||
** SIG ** MBsxGTAXBgNVBAMTEFRpbWVTdGFtcC0yMDQ4LTUwHQYD
|
||||
** SIG ** VR0OBBYEFAm1wf6WcpcpQ5rJ4AK6rvj9L7r2MB8GA1Ud
|
||||
** SIG ** IwQYMBaAFK9j1sqjToVy4Ke8QfMpojh/gHViMA0GCSqG
|
||||
** SIG ** SIb3DQEBCwUAA4IBAQAXswqI6VxaXiBrOwoVsmzFqYoy
|
||||
** SIG ** h9Ox9BxTroW+P5v/17y3lIW0x1J+lOi97WGy1KeZ5MPJ
|
||||
** SIG ** k8E1PQvoaApdVpi9sSI70UR617/wbVEyitUj3zgBN/bi
|
||||
** SIG ** Uyt6KxGPt01sejMDG3xrCZQXu+TbWNQhE2Xn7NElyix1
|
||||
** SIG ** mpx//Mm7KmirxH20z6PJbKfZxACciQp3kfRNovsxO4Zu
|
||||
** SIG ** 9uYfUAOGm7/LQqvmdptyWhEBisbvpW+V592uuuYiZfAY
|
||||
** SIG ** WRsRyc2At9iXRx9CCPiscR+wRlOz1LLVo6tQdUgSF4Kt
|
||||
** SIG ** z+BBTzJ+zZUcv5GKCD2kp2cClt8kTKXQQcCCYKOKFzJL
|
||||
** SIG ** 07zPpLSMMYICWjCCAlYCAQEwgYswdzELMAkGA1UEBhMC
|
||||
** SIG ** VVMxHTAbBgNVBAoTFFN5bWFudGVjIENvcnBvcmF0aW9u
|
||||
** SIG ** MR8wHQYDVQQLExZTeW1hbnRlYyBUcnVzdCBOZXR3b3Jr
|
||||
** SIG ** MSgwJgYDVQQDEx9TeW1hbnRlYyBTSEEyNTYgVGltZVN0
|
||||
** SIG ** YW1waW5nIENBAhBUWPKq10HWRLyEqXugllLmMAsGCWCG
|
||||
** SIG ** SAFlAwQCAaCBpDAaBgkqhkiG9w0BCQMxDQYLKoZIhvcN
|
||||
** SIG ** AQkQAQQwHAYJKoZIhvcNAQkFMQ8XDTE3MTIyMjA5MjMx
|
||||
** SIG ** MlowLwYJKoZIhvcNAQkEMSIEIDjC9lH4vmnVGgUQ3K9/
|
||||
** SIG ** UJyaFJXcivYDNejbPrRERGkRMDcGCyqGSIb3DQEJEAIv
|
||||
** SIG ** MSgwJjAkMCIEIM96wXrQR+zV/cNoIgMbEtTvB4tvK0xe
|
||||
** SIG ** a6Qfj/LPS61nMAsGCSqGSIb3DQEBAQSCAQBQNgf6pNDg
|
||||
** SIG ** E7O0sqTK8DqO3WPe9wXqJB4uZqR0YyH8VH/ymK3MTiSo
|
||||
** SIG ** O/4uG0vyAT/t5i5Bvt67lQIgCckpop4u348NUoi9hSNG
|
||||
** SIG ** br/fMo1jib1sHUpqiOcLnZSKjOE717APXkDw3ADWrFsg
|
||||
** SIG ** 2SUEX/fPvYvL/DW3YjTG82iuf9x/QQLqn0W6jbdw9m8d
|
||||
** SIG ** IWbjlTubIjjzuNMVEJIIAuahtqPU+cHW/skzXXoRpvsG
|
||||
** SIG ** o5ga0X7uGNeGYiSalDcVDktNaaJT41xMgAvs7XKhSUK3
|
||||
** SIG ** YTfJrwhpf4ph2JbwONzjhboqQy9Jw2A7pcjl/khfMqX0
|
||||
** SIG ** mRUHJlKxrTA7lM1vbxNkSZIy
|
||||
</signature>
|
||||
</package>
|
||||
|
||||
221
bin/MkLnk.wsf
221
bin/MkLnk.wsf
@@ -1,12 +1,26 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?xml version="1.0"?>
|
||||
<!--
|
||||
SPDX-License-Identifier: GPL-3.0-or-later
|
||||
Copyright © 1991-2021 Amebis
|
||||
Copyright 1991-2015 Amebis
|
||||
|
||||
This file is part of MkLink.
|
||||
|
||||
MkLink is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
MkLink is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with MkLink. If not, see <http://www.gnu.org/licenses/>.
|
||||
-->
|
||||
<package>
|
||||
<job id="MkLnk">
|
||||
<runtime>
|
||||
<description>Creates shortcut to a program - Amebis, Copyright © 1991-2021</description>
|
||||
<description>Creates shortcut to a program - Amebis, Copyright © 2015</description>
|
||||
<unnamed name="<Shortcut.lnk>" required="true" helpstring="Shortcut file to create"/>
|
||||
<unnamed name="<Target>" required="true" helpstring="Target file the shortcut invokes"/>
|
||||
<named name="A" type="string" required="false" helpstring="Command line arguments"/>
|
||||
@@ -68,4 +82,203 @@ MkLnk.wsf "%USERPROFILE%\Desktop\My shortcut.lnk" "%windir%\notep
|
||||
WScript.Quit(0);
|
||||
]]></script>
|
||||
</job>
|
||||
|
||||
<signature>
|
||||
** SIG ** MIIZKwYJKoZIhvcNAQcCoIIZHDCCGRgCAQExCzAJBgUr
|
||||
** SIG ** DgMCGgUAMGcGCisGAQQBgjcCAQSgWTBXMDIGCisGAQQB
|
||||
** SIG ** gjcCAR4wJAIBAQQQcAVhGs441BGiowAQS9NQkAIBAAIB
|
||||
** SIG ** AAIBAAIBAAIBADAhMAkGBSsOAwIaBQAEFMH67hpbFt5K
|
||||
** SIG ** CSnD9RSD/SRyKRZSoIIUJTCCA+4wggNXoAMCAQICEH6T
|
||||
** SIG ** 6/t8xk5Z6kuad9QG/DswDQYJKoZIhvcNAQEFBQAwgYsx
|
||||
** SIG ** CzAJBgNVBAYTAlpBMRUwEwYDVQQIEwxXZXN0ZXJuIENh
|
||||
** SIG ** cGUxFDASBgNVBAcTC0R1cmJhbnZpbGxlMQ8wDQYDVQQK
|
||||
** SIG ** EwZUaGF3dGUxHTAbBgNVBAsTFFRoYXd0ZSBDZXJ0aWZp
|
||||
** SIG ** Y2F0aW9uMR8wHQYDVQQDExZUaGF3dGUgVGltZXN0YW1w
|
||||
** SIG ** aW5nIENBMB4XDTEyMTIyMTAwMDAwMFoXDTIwMTIzMDIz
|
||||
** SIG ** NTk1OVowXjELMAkGA1UEBhMCVVMxHTAbBgNVBAoTFFN5
|
||||
** SIG ** bWFudGVjIENvcnBvcmF0aW9uMTAwLgYDVQQDEydTeW1h
|
||||
** SIG ** bnRlYyBUaW1lIFN0YW1waW5nIFNlcnZpY2VzIENBIC0g
|
||||
** SIG ** RzIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB
|
||||
** SIG ** AQCxrLNJVEuXHBIK2CV5kSJXKm/cuCbEQ3Nrwr8uUFr7
|
||||
** SIG ** FMJ2jkMBJUO0oeJF9Oi3e8N0zCLXtJQAAvdN7b+0t0Qk
|
||||
** SIG ** a81fRTvRRM5DEnMXgotptCvLmR6schsmTXEfsTHd+1Fh
|
||||
** SIG ** AlOmqvVJLAV4RaUvic7nmef+jOJXPz3GktxK+Hsz5HkK
|
||||
** SIG ** +/B1iEGc/8UDUZmq12yfk2mHZSmDhcJgFMTIyTsU2sCB
|
||||
** SIG ** 8B8NdN6SIqvK9/t0fCfm90obf6fDni2uiuqm5qonFn1h
|
||||
** SIG ** 95hxEbziUKFL5V365Q6nLJ+qZSDT2JboyHylTkhE/xni
|
||||
** SIG ** RAeSC9dohIBdanhkRc1gRn5UwRN8xXnxycFxAgMBAAGj
|
||||
** SIG ** gfowgfcwHQYDVR0OBBYEFF+a9W5czMx0mtTdfe8/2+xM
|
||||
** SIG ** gC7dMDIGCCsGAQUFBwEBBCYwJDAiBggrBgEFBQcwAYYW
|
||||
** SIG ** aHR0cDovL29jc3AudGhhd3RlLmNvbTASBgNVHRMBAf8E
|
||||
** SIG ** CDAGAQH/AgEAMD8GA1UdHwQ4MDYwNKAyoDCGLmh0dHA6
|
||||
** SIG ** Ly9jcmwudGhhd3RlLmNvbS9UaGF3dGVUaW1lc3RhbXBp
|
||||
** SIG ** bmdDQS5jcmwwEwYDVR0lBAwwCgYIKwYBBQUHAwgwDgYD
|
||||
** SIG ** VR0PAQH/BAQDAgEGMCgGA1UdEQQhMB+kHTAbMRkwFwYD
|
||||
** SIG ** VQQDExBUaW1lU3RhbXAtMjA0OC0xMA0GCSqGSIb3DQEB
|
||||
** SIG ** BQUAA4GBAAMJm495739ZMKrvaLX64wkdu0+CBl03X6ZS
|
||||
** SIG ** nxaN6hySCURu9W3rWHww6PlpjSNzCxJvR6muORH4KrGb
|
||||
** SIG ** sBrDjutZlgCtzgxNstAxpghcKnr84nodV0yoZRjpeUBi
|
||||
** SIG ** JZZux8c3aoMhCI5B6t3ZVz8dd0mHKhYGXqY4aiISo1EZ
|
||||
** SIG ** g362MIIEozCCA4ugAwIBAgIQDs/0OMj+vzVuBNhqmBsa
|
||||
** SIG ** UDANBgkqhkiG9w0BAQUFADBeMQswCQYDVQQGEwJVUzEd
|
||||
** SIG ** MBsGA1UEChMUU3ltYW50ZWMgQ29ycG9yYXRpb24xMDAu
|
||||
** SIG ** BgNVBAMTJ1N5bWFudGVjIFRpbWUgU3RhbXBpbmcgU2Vy
|
||||
** SIG ** dmljZXMgQ0EgLSBHMjAeFw0xMjEwMTgwMDAwMDBaFw0y
|
||||
** SIG ** MDEyMjkyMzU5NTlaMGIxCzAJBgNVBAYTAlVTMR0wGwYD
|
||||
** SIG ** VQQKExRTeW1hbnRlYyBDb3Jwb3JhdGlvbjE0MDIGA1UE
|
||||
** SIG ** AxMrU3ltYW50ZWMgVGltZSBTdGFtcGluZyBTZXJ2aWNl
|
||||
** SIG ** cyBTaWduZXIgLSBHNDCCASIwDQYJKoZIhvcNAQEBBQAD
|
||||
** SIG ** ggEPADCCAQoCggEBAKJjCzlEuLsjp0RJuw7/ofBhClOT
|
||||
** SIG ** sJjbrSwPSsVu/4Y8U1UPFc4EPyv9qZaW2b5heQtbyUyG
|
||||
** SIG ** duXgQ0sile7CK0PBn9hotI5AT+6FOLkRxSPyZFjwFTJv
|
||||
** SIG ** TlehroikAtcqHs1L4d1j1ReJMluwXplaqJ0oUA4X7pbb
|
||||
** SIG ** YTtFUR3PElYLkkf8q672Zj1HrHBy55LnX80QucSDZJQZ
|
||||
** SIG ** vSWA4ejSIqXQugJ6oXeTW2XD7hd0vEGGKtwITIySjJEt
|
||||
** SIG ** nndEH2jWqHR32w5bMotWizO92WPISZ06xcXqMwvS8aMb
|
||||
** SIG ** 9Iu+2bNXizveBKd6IrIkri7HcMW+ToMmCPsLvalPmQjh
|
||||
** SIG ** EChyqs0CAwEAAaOCAVcwggFTMAwGA1UdEwEB/wQCMAAw
|
||||
** SIG ** FgYDVR0lAQH/BAwwCgYIKwYBBQUHAwgwDgYDVR0PAQH/
|
||||
** SIG ** BAQDAgeAMHMGCCsGAQUFBwEBBGcwZTAqBggrBgEFBQcw
|
||||
** SIG ** AYYeaHR0cDovL3RzLW9jc3Aud3Muc3ltYW50ZWMuY29t
|
||||
** SIG ** MDcGCCsGAQUFBzAChitodHRwOi8vdHMtYWlhLndzLnN5
|
||||
** SIG ** bWFudGVjLmNvbS90c3MtY2EtZzIuY2VyMDwGA1UdHwQ1
|
||||
** SIG ** MDMwMaAvoC2GK2h0dHA6Ly90cy1jcmwud3Muc3ltYW50
|
||||
** SIG ** ZWMuY29tL3Rzcy1jYS1nMi5jcmwwKAYDVR0RBCEwH6Qd
|
||||
** SIG ** MBsxGTAXBgNVBAMTEFRpbWVTdGFtcC0yMDQ4LTIwHQYD
|
||||
** SIG ** VR0OBBYEFEbGaaMOShQe1UzaUmMXP142vA3mMB8GA1Ud
|
||||
** SIG ** IwQYMBaAFF+a9W5czMx0mtTdfe8/2+xMgC7dMA0GCSqG
|
||||
** SIG ** SIb3DQEBBQUAA4IBAQB4O7SRKgBM8I9iMDd4o4QnB28Y
|
||||
** SIG ** st4l3KDUlAOqhk4ln5pAAxzdzuN5yyFoBtq2MrRtv/Qs
|
||||
** SIG ** JmMz5ElkbQ3mw2cO9wWkNWx8iRbG6bLfsundIMZxD82V
|
||||
** SIG ** dNy2XN69Nx9DeOZ4tc0oBCCjqvFLxIgpkQ6A0RH83Vx2
|
||||
** SIG ** bk9eDkVGQW4NsOo4mrE62glxEPwcebSAe6xp9P2ctgwW
|
||||
** SIG ** K/F/Wwk9m1viFsoTgW0ALjgNqCmPLOGy9FqpAa8VnCwv
|
||||
** SIG ** SRvbIrvD/niUUcOGsYKIXfA9tFGheTMrLnu53CAJE3Hr
|
||||
** SIG ** ahlbz+ilMFcsiUk/uc9/yb8+ImhjU5q9aXSsxR08f5Lg
|
||||
** SIG ** w7wc2AR1MIIFejCCBGKgAwIBAgIQQIeLZ2eQpZcEKJ6U
|
||||
** SIG ** AwIaGzANBgkqhkiG9w0BAQUFADCBtDELMAkGA1UEBhMC
|
||||
** SIG ** VVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMR8wHQYD
|
||||
** SIG ** VQQLExZWZXJpU2lnbiBUcnVzdCBOZXR3b3JrMTswOQYD
|
||||
** SIG ** VQQLEzJUZXJtcyBvZiB1c2UgYXQgaHR0cHM6Ly93d3cu
|
||||
** SIG ** dmVyaXNpZ24uY29tL3JwYSAoYykxMDEuMCwGA1UEAxMl
|
||||
** SIG ** VmVyaVNpZ24gQ2xhc3MgMyBDb2RlIFNpZ25pbmcgMjAx
|
||||
** SIG ** MCBDQTAeFw0xMjA5MjYwMDAwMDBaFw0xNTEwMTEyMzU5
|
||||
** SIG ** NTlaMIG9MQswCQYDVQQGEwJTSTERMA8GA1UECBMIU2xv
|
||||
** SIG ** dmVuaWExDzANBgNVBAcTBkthbW5pazEWMBQGA1UEChQN
|
||||
** SIG ** QW1lYmlzIGQuby5vLjE+MDwGA1UECxM1RGlnaXRhbCBJ
|
||||
** SIG ** RCBDbGFzcyAzIC0gTWljcm9zb2Z0IFNvZnR3YXJlIFZh
|
||||
** SIG ** bGlkYXRpb24gdjIxGjAYBgNVBAsUEXByb2dyYW1za2Eg
|
||||
** SIG ** b3ByZW1hMRYwFAYDVQQDFA1BbWViaXMgZC5vLm8uMIIB
|
||||
** SIG ** IjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA9QZF
|
||||
** SIG ** QzscW51y/Ermb72+gkWUJ6ExfOS1UHvNAcefWdFm4yVX
|
||||
** SIG ** wqi8TRT+P5czX+UjKbh77d00CxODQK7rdLb8+EgKybFT
|
||||
** SIG ** /bVfT2y8RMtEdG0qI84ZSwh2POazD0PyiHb9XORN2yKH
|
||||
** SIG ** ykqLiO+6cJvZXjfNpGqf/LxkXVJvyxaemN1XTR91ohhc
|
||||
** SIG ** 97bNyGCP0M8PNKRZ6Hr5uKlZyr7QLYoYAkaENYdXHrOc
|
||||
** SIG ** l5CmBAIL56Ngc8vIlLF2lLPmDYf1qWrPpJyXfj7p3iUf
|
||||
** SIG ** AewtEpbC5FfhCaeHwgg41NfxhRWCXEBTewLHQJtpSo2k
|
||||
** SIG ** mwv5Q1ZuWMDUjPeuHZ3F/ofBoJTE4wIDAQABo4IBezCC
|
||||
** SIG ** AXcwCQYDVR0TBAIwADAOBgNVHQ8BAf8EBAMCB4AwQAYD
|
||||
** SIG ** VR0fBDkwNzA1oDOgMYYvaHR0cDovL2NzYzMtMjAxMC1j
|
||||
** SIG ** cmwudmVyaXNpZ24uY29tL0NTQzMtMjAxMC5jcmwwRAYD
|
||||
** SIG ** VR0gBD0wOzA5BgtghkgBhvhFAQcXAzAqMCgGCCsGAQUF
|
||||
** SIG ** BwIBFhxodHRwczovL3d3dy52ZXJpc2lnbi5jb20vcnBh
|
||||
** SIG ** MBMGA1UdJQQMMAoGCCsGAQUFBwMDMHEGCCsGAQUFBwEB
|
||||
** SIG ** BGUwYzAkBggrBgEFBQcwAYYYaHR0cDovL29jc3AudmVy
|
||||
** SIG ** aXNpZ24uY29tMDsGCCsGAQUFBzAChi9odHRwOi8vY3Nj
|
||||
** SIG ** My0yMDEwLWFpYS52ZXJpc2lnbi5jb20vQ1NDMy0yMDEw
|
||||
** SIG ** LmNlcjAfBgNVHSMEGDAWgBTPmanqeyb0S8mOj9fwBSbv
|
||||
** SIG ** 49KnnTARBglghkgBhvhCAQEEBAMCBBAwFgYKKwYBBAGC
|
||||
** SIG ** NwIBGwQIMAYBAQABAf8wDQYJKoZIhvcNAQEFBQADggEB
|
||||
** SIG ** AOMOvRZGpbGuLiIAaqp22r2WAOzxinLpe0O/pJCmBoU0
|
||||
** SIG ** lK/Es/Jyc4Y90QyvvhoSVKoZ2hMQ2Y6N7oSkhHjKo/n8
|
||||
** SIG ** WIQwNvaqZu4JpO9IgH1WkfqJWnpVcaVGPA0uHhuDhPe9
|
||||
** SIG ** gH6Z6I3HC5GL7sc+z4n0kzy1f3AyD+DihQhD0J/i/sgF
|
||||
** SIG ** iEaFmwwlJHMv6b4xmERMff050y15k875cdRpeFvSjHko
|
||||
** SIG ** IUbY2bfPlnvhWd/4eidkT3KY5Lpm4cqUO20166p2Cjxf
|
||||
** SIG ** i9kEGuDPYEYiX94hQmjWwZfIYxdYdD9f+gVcyPpiMspq
|
||||
** SIG ** n5QwKHOenweisG6BwXs4H5q45SLx1oJ9PUQwggYKMIIE
|
||||
** SIG ** 8qADAgECAhBSAOWqJVb8GobtlsnUSzPHMA0GCSqGSIb3
|
||||
** SIG ** DQEBBQUAMIHKMQswCQYDVQQGEwJVUzEXMBUGA1UEChMO
|
||||
** SIG ** VmVyaVNpZ24sIEluYy4xHzAdBgNVBAsTFlZlcmlTaWdu
|
||||
** SIG ** IFRydXN0IE5ldHdvcmsxOjA4BgNVBAsTMShjKSAyMDA2
|
||||
** SIG ** IFZlcmlTaWduLCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQg
|
||||
** SIG ** dXNlIG9ubHkxRTBDBgNVBAMTPFZlcmlTaWduIENsYXNz
|
||||
** SIG ** IDMgUHVibGljIFByaW1hcnkgQ2VydGlmaWNhdGlvbiBB
|
||||
** SIG ** dXRob3JpdHkgLSBHNTAeFw0xMDAyMDgwMDAwMDBaFw0y
|
||||
** SIG ** MDAyMDcyMzU5NTlaMIG0MQswCQYDVQQGEwJVUzEXMBUG
|
||||
** SIG ** A1UEChMOVmVyaVNpZ24sIEluYy4xHzAdBgNVBAsTFlZl
|
||||
** SIG ** cmlTaWduIFRydXN0IE5ldHdvcmsxOzA5BgNVBAsTMlRl
|
||||
** SIG ** cm1zIG9mIHVzZSBhdCBodHRwczovL3d3dy52ZXJpc2ln
|
||||
** SIG ** bi5jb20vcnBhIChjKTEwMS4wLAYDVQQDEyVWZXJpU2ln
|
||||
** SIG ** biBDbGFzcyAzIENvZGUgU2lnbmluZyAyMDEwIENBMIIB
|
||||
** SIG ** IjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA9SNL
|
||||
** SIG ** XqXXirsy6dRX9+/kxyZ+rRmY/qidfZT2NmsQ13WBMH8E
|
||||
** SIG ** aH/LK3UezR0IjN9plKc3o5x7gOCZ4e43TV/OOxTuhtTQ
|
||||
** SIG ** 9Sc1vCULOKeMY50Xowilq7D7zWpigkzVIdob2fHjhDuK
|
||||
** SIG ** Kk+FW5ABT8mndhB/JwN8vq5+fcHd+QW8G0icaefApDw8
|
||||
** SIG ** QQA+35blxeSUcdZVAccAJkpAPLWhJqkMp22AjpAle8+/
|
||||
** SIG ** PxzrL5b65Yd3xrVWsno7VDBTG99iNP8e0fRakyiF5UwX
|
||||
** SIG ** Tn5b/aSTmX/fze+kde/vFfZH5/gZctguNBqmtKdMfr27
|
||||
** SIG ** Tww9V/Ew1qY2jtaAdtcZLqXNfjQtiQIDAQABo4IB/jCC
|
||||
** SIG ** AfowEgYDVR0TAQH/BAgwBgEB/wIBADBwBgNVHSAEaTBn
|
||||
** SIG ** MGUGC2CGSAGG+EUBBxcDMFYwKAYIKwYBBQUHAgEWHGh0
|
||||
** SIG ** dHBzOi8vd3d3LnZlcmlzaWduLmNvbS9jcHMwKgYIKwYB
|
||||
** SIG ** BQUHAgIwHhocaHR0cHM6Ly93d3cudmVyaXNpZ24uY29t
|
||||
** SIG ** L3JwYTAOBgNVHQ8BAf8EBAMCAQYwbQYIKwYBBQUHAQwE
|
||||
** SIG ** YTBfoV2gWzBZMFcwVRYJaW1hZ2UvZ2lmMCEwHzAHBgUr
|
||||
** SIG ** DgMCGgQUj+XTGoasjY5rw8+AatRIGCx7GS4wJRYjaHR0
|
||||
** SIG ** cDovL2xvZ28udmVyaXNpZ24uY29tL3ZzbG9nby5naWYw
|
||||
** SIG ** NAYDVR0fBC0wKzApoCegJYYjaHR0cDovL2NybC52ZXJp
|
||||
** SIG ** c2lnbi5jb20vcGNhMy1nNS5jcmwwNAYIKwYBBQUHAQEE
|
||||
** SIG ** KDAmMCQGCCsGAQUFBzABhhhodHRwOi8vb2NzcC52ZXJp
|
||||
** SIG ** c2lnbi5jb20wHQYDVR0lBBYwFAYIKwYBBQUHAwIGCCsG
|
||||
** SIG ** AQUFBwMDMCgGA1UdEQQhMB+kHTAbMRkwFwYDVQQDExBW
|
||||
** SIG ** ZXJpU2lnbk1QS0ktMi04MB0GA1UdDgQWBBTPmanqeyb0
|
||||
** SIG ** S8mOj9fwBSbv49KnnTAfBgNVHSMEGDAWgBR/02Wnwt3s
|
||||
** SIG ** u/AwCfNDOfoCrzMxMzANBgkqhkiG9w0BAQUFAAOCAQEA
|
||||
** SIG ** ViLmNKTEYctIuQGtVqhkD9mMkcS7zAzlrXqgIn/fRzhK
|
||||
** SIG ** LWzRf3EafOxwqbHwT+QPDFP6FV7+dJhJJIWBJhyRFEew
|
||||
** SIG ** TGOMu6E01MZF6A2FJnMD0KmMZG3ccZLmRQVgFVlROfxY
|
||||
** SIG ** FGv+1KTteWsIDEFy5zciBgm+I+k/RJoe6WGdzLGQXPw9
|
||||
** SIG ** 0o2sQj1lNtS0PUAoj5sQzyMmzEsgy5AfXYxMNMo82OU3
|
||||
** SIG ** 1m+lIL006ybZrg3nxZr3obQhkTNvhuhYuyV8dA5Y/nUb
|
||||
** SIG ** Yz/OMXybjxuWnsVTdoRbnK2R+qztk7pdyCFTwoJTY68S
|
||||
** SIG ** DVCHERs9VFKWiiycPZIaCJoFLseTpUiR0zGCBHIwggRu
|
||||
** SIG ** AgEBMIHJMIG0MQswCQYDVQQGEwJVUzEXMBUGA1UEChMO
|
||||
** SIG ** VmVyaVNpZ24sIEluYy4xHzAdBgNVBAsTFlZlcmlTaWdu
|
||||
** SIG ** IFRydXN0IE5ldHdvcmsxOzA5BgNVBAsTMlRlcm1zIG9m
|
||||
** SIG ** IHVzZSBhdCBodHRwczovL3d3dy52ZXJpc2lnbi5jb20v
|
||||
** SIG ** cnBhIChjKTEwMS4wLAYDVQQDEyVWZXJpU2lnbiBDbGFz
|
||||
** SIG ** cyAzIENvZGUgU2lnbmluZyAyMDEwIENBAhBAh4tnZ5Cl
|
||||
** SIG ** lwQonpQDAhobMAkGBSsOAwIaBQCgcDAQBgorBgEEAYI3
|
||||
** SIG ** AgEMMQIwADAZBgkqhkiG9w0BCQMxDAYKKwYBBAGCNwIB
|
||||
** SIG ** BDAcBgorBgEEAYI3AgELMQ4wDAYKKwYBBAGCNwIBFTAj
|
||||
** SIG ** BgkqhkiG9w0BCQQxFgQUo0XIWEliS73GY2JUwO4mY7Vo
|
||||
** SIG ** A8MwDQYJKoZIhvcNAQEBBQAEggEAE9VEPAaBwp2sFl8I
|
||||
** SIG ** K/xN2uQFkV70yEWp6yL2vqUC4RXVKL03gNIdjAo2nSD5
|
||||
** SIG ** /hGnPJfgohxkXYwX856kUpaqBuQg9ipHBdED9VVFvOZt
|
||||
** SIG ** WbyGa0YKlXMeGmh8tMXbDB2iPxdYpi8/yd94hhH3AOuP
|
||||
** SIG ** dtp+VIxj9NyXvgVXsZgZxOATw8Lp0tDKu0l8bKUJI3aB
|
||||
** SIG ** K7kwGqwBpeFRTLxvAKvHVUBB3yh13WSZPJRdLSr3xWZB
|
||||
** SIG ** Hd9Lgd82tcKQtLtOR+qD9Yiy52EBvztc8KuafJg7zme2
|
||||
** SIG ** wLjAMqgNqJGJaQBpCckUUwqj0yq6b6jDU0SoXwtpGhBv
|
||||
** SIG ** UI2hMesTx2W1wNVsP6GCAgswggIHBgkqhkiG9w0BCQYx
|
||||
** SIG ** ggH4MIIB9AIBATByMF4xCzAJBgNVBAYTAlVTMR0wGwYD
|
||||
** SIG ** VQQKExRTeW1hbnRlYyBDb3Jwb3JhdGlvbjEwMC4GA1UE
|
||||
** SIG ** AxMnU3ltYW50ZWMgVGltZSBTdGFtcGluZyBTZXJ2aWNl
|
||||
** SIG ** cyBDQSAtIEcyAhAOz/Q4yP6/NW4E2GqYGxpQMAkGBSsO
|
||||
** SIG ** AwIaBQCgXTAYBgkqhkiG9w0BCQMxCwYJKoZIhvcNAQcB
|
||||
** SIG ** MBwGCSqGSIb3DQEJBTEPFw0xNTAyMjUwODA3NTZaMCMG
|
||||
** SIG ** CSqGSIb3DQEJBDEWBBSrTeWj/s+8idpt/o21ULaKmPhi
|
||||
** SIG ** jDANBgkqhkiG9w0BAQEFAASCAQChWhzPUW+SFZWpvasx
|
||||
** SIG ** s9OtZB+VWXTTA1pCx9m/JkEon9B+kakUVF+X8TyolR2H
|
||||
** SIG ** YS7Z4k2NNnHg8SW3jOU8+gvbcZBnx/5c6c6N4VWCsg89
|
||||
** SIG ** BofJ8kMU82zS/bQFQLs/OG82cjgJu52N0T2zGsc5V2LY
|
||||
** SIG ** e915NPlBo2SdI4VkBimXfgyBeUPom07bqRgM47o4NRiF
|
||||
** SIG ** DWtEsYzuG9IrwRp/LJcH+lQfh5mFbJ0f895/7Oj9ifG3
|
||||
** SIG ** YB5XE3BtMfX3kB9skXxmZqQI/YDJdCaIPytWfbX6MKjg
|
||||
** SIG ** tB2tsnV6MDtG8XvSEzQiLCzeSNvjs8+64Q7E4VS21Hvz
|
||||
** SIG ** pXI1ABSnlaWUaAhA
|
||||
</signature>
|
||||
</package>
|
||||
|
||||
@@ -1,7 +1,21 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?xml version="1.0"?>
|
||||
<!--
|
||||
SPDX-License-Identifier: GPL-3.0-or-later
|
||||
Copyright © 2016-2021 Amebis
|
||||
Copyright 2016-2017 Amebis
|
||||
|
||||
This file is part of ZRCola.
|
||||
|
||||
ZRCola is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
ZRCola is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with ZRCola. If not, see <http://www.gnu.org/licenses/>.
|
||||
-->
|
||||
<package>
|
||||
<job id="CharImport">
|
||||
@@ -3959,4 +3973,218 @@
|
||||
WScript.Quit(0);
|
||||
]]></script>
|
||||
</job>
|
||||
|
||||
<signature>
|
||||
** SIG ** MIIbHwYJKoZIhvcNAQcCoIIbEDCCGwwCAQExCzAJBgUr
|
||||
** SIG ** DgMCGgUAMGcGCisGAQQBgjcCAQSgWTBXMDIGCisGAQQB
|
||||
** SIG ** gjcCAR4wJAIBAQQQcAVhGs441BGiowAQS9NQkAIBAAIB
|
||||
** SIG ** AAIBAAIBAAIBADAhMAkGBSsOAwIaBQAEFFs8OhUsPi8R
|
||||
** SIG ** iJN1VrPQnCzD3uneoIIKLzCCBM4wggO2oAMCAQICEDB6
|
||||
** SIG ** NnqqPmiBpvlPCMs7OWQwDQYJKoZIhvcNAQELBQAwfzEL
|
||||
** SIG ** MAkGA1UEBhMCVVMxHTAbBgNVBAoTFFN5bWFudGVjIENv
|
||||
** SIG ** cnBvcmF0aW9uMR8wHQYDVQQLExZTeW1hbnRlYyBUcnVz
|
||||
** SIG ** dCBOZXR3b3JrMTAwLgYDVQQDEydTeW1hbnRlYyBDbGFz
|
||||
** SIG ** cyAzIFNIQTI1NiBDb2RlIFNpZ25pbmcgQ0EwHhcNMTUx
|
||||
** SIG ** MDA5MDAwMDAwWhcNMTgxMTA3MjM1OTU5WjBhMQswCQYD
|
||||
** SIG ** VQQGEwJTSTERMA8GA1UECBMIU2xvdmVuaWExDzANBgNV
|
||||
** SIG ** BAcTBkthbW5pazEWMBQGA1UEChQNQW1lYmlzIGQuby5v
|
||||
** SIG ** LjEWMBQGA1UEAxQNQW1lYmlzIGQuby5vLjCCASIwDQYJ
|
||||
** SIG ** KoZIhvcNAQEBBQADggEPADCCAQoCggEBAJfy6Bdwx2kq
|
||||
** SIG ** yGhtaYAZgcA8pWLe7EbyLqBHRq/8jIVfUX1CH7fsbEz1
|
||||
** SIG ** UDgIq74BvilG3BNyjJxh/lbiu2Pr2M0ad3WEy4p0kM9T
|
||||
** SIG ** SmABC8k3Vc5pmJlNy1++uMpNwAbUmbGcD6Igsvk1xPWb
|
||||
** SIG ** ApLoAdnO0KfTfzvRI40A0cGZVGt5y6GPemN6jT8JAp9O
|
||||
** SIG ** KaWIqj3iF00c/FwS7ODZf2w/cMphLjUle+b86GyewVGE
|
||||
** SIG ** MEVO5ZjS9ksEWBDWn9A6XYshSwbDWnx4xmIl0B4DcWVA
|
||||
** SIG ** aY+zqEQzQbzEGC/izPDq44RiCtbhi+QqgQ/6fNXm3hbA
|
||||
** SIG ** GVcYPYa4J5D1UMO+1NC2cPMCAwEAAaOCAWIwggFeMAkG
|
||||
** SIG ** A1UdEwQCMAAwDgYDVR0PAQH/BAQDAgeAMCsGA1UdHwQk
|
||||
** SIG ** MCIwIKAeoByGGmh0dHA6Ly9zdi5zeW1jYi5jb20vc3Yu
|
||||
** SIG ** Y3JsMGYGA1UdIARfMF0wWwYLYIZIAYb4RQEHFwMwTDAj
|
||||
** SIG ** BggrBgEFBQcCARYXaHR0cHM6Ly9kLnN5bWNiLmNvbS9j
|
||||
** SIG ** cHMwJQYIKwYBBQUHAgIwGQwXaHR0cHM6Ly9kLnN5bWNi
|
||||
** SIG ** LmNvbS9ycGEwEwYDVR0lBAwwCgYIKwYBBQUHAwMwVwYI
|
||||
** SIG ** KwYBBQUHAQEESzBJMB8GCCsGAQUFBzABhhNodHRwOi8v
|
||||
** SIG ** c3Yuc3ltY2QuY29tMCYGCCsGAQUFBzAChhpodHRwOi8v
|
||||
** SIG ** c3Yuc3ltY2IuY29tL3N2LmNydDAfBgNVHSMEGDAWgBSW
|
||||
** SIG ** O1PweTOXr32D7y4rzMq3hh5yZjAdBgNVHQ4EFgQU9we9
|
||||
** SIG ** loCaLXTEfww9PSfd1JAKn8wwDQYJKoZIhvcNAQELBQAD
|
||||
** SIG ** ggEBAIpxL0AvtcrbShLKgI7dmLn6WJbpdzkB9e2Cm1Mu
|
||||
** SIG ** AAIiogLFF1n07l0VXZE+gqxGHB8ji2h33t+o1R8PLyyI
|
||||
** SIG ** kdnMhHAd78HsqyZzabfmWuCP12TKBv77wiZkpbTo/Av+
|
||||
** SIG ** z0SlpJRoMpzzXhyPPtHdby80bSu+4RXlewiDCH56aGE4
|
||||
** SIG ** SSk0i8Xa9JJ/ozPKLX3Szdmg6J58XtDH/tq5K1/ABSCB
|
||||
** SIG ** z6SF2Y9l9lRJpGXchSDYCPipSVUGP0WPQRTDNobSwCJD
|
||||
** SIG ** XAz9UFcxWo4Rh8o/gvlLWUH+T3HhmLSRzXqt3JuqJo5x
|
||||
** SIG ** H8s4vPzcGBZZFob8yRB98KD6ioFK2pjRRSw9FucwggVZ
|
||||
** SIG ** MIIEQaADAgECAhA9eNf5dklgsmF99PAeyoYqMA0GCSqG
|
||||
** SIG ** SIb3DQEBCwUAMIHKMQswCQYDVQQGEwJVUzEXMBUGA1UE
|
||||
** SIG ** ChMOVmVyaVNpZ24sIEluYy4xHzAdBgNVBAsTFlZlcmlT
|
||||
** SIG ** aWduIFRydXN0IE5ldHdvcmsxOjA4BgNVBAsTMShjKSAy
|
||||
** SIG ** MDA2IFZlcmlTaWduLCBJbmMuIC0gRm9yIGF1dGhvcml6
|
||||
** SIG ** ZWQgdXNlIG9ubHkxRTBDBgNVBAMTPFZlcmlTaWduIENs
|
||||
** SIG ** YXNzIDMgUHVibGljIFByaW1hcnkgQ2VydGlmaWNhdGlv
|
||||
** SIG ** biBBdXRob3JpdHkgLSBHNTAeFw0xMzEyMTAwMDAwMDBa
|
||||
** SIG ** Fw0yMzEyMDkyMzU5NTlaMH8xCzAJBgNVBAYTAlVTMR0w
|
||||
** SIG ** GwYDVQQKExRTeW1hbnRlYyBDb3Jwb3JhdGlvbjEfMB0G
|
||||
** SIG ** A1UECxMWU3ltYW50ZWMgVHJ1c3QgTmV0d29yazEwMC4G
|
||||
** SIG ** A1UEAxMnU3ltYW50ZWMgQ2xhc3MgMyBTSEEyNTYgQ29k
|
||||
** SIG ** ZSBTaWduaW5nIENBMIIBIjANBgkqhkiG9w0BAQEFAAOC
|
||||
** SIG ** AQ8AMIIBCgKCAQEAl4MeABavLLHSCMTXaJNRYB5x9uJH
|
||||
** SIG ** tNtYTSNiarS/WhtR96MNGHdou9g2qy8hUNqe8+dfJ04L
|
||||
** SIG ** wpfICXCTqdpcDU6kDZGgtOwUzpFyVC7Oo9tE6VIbP0E8
|
||||
** SIG ** ykrkqsDoOatTzCHQzM9/m+bCzFhqghXuPTbPHMWXBySO
|
||||
** SIG ** 8Xu+MS09bty1mUKfS2GVXxxw7hd924vlYYl4x2gbrxF4
|
||||
** SIG ** GpiuxFVHU9mzMtahDkZAxZeSitFTp5lbhTVX0+qTYmEg
|
||||
** SIG ** CscwdyQRTWKDtrp7aIIx7mXK3/nVjbI13Iwrb2pyXGCE
|
||||
** SIG ** nPIMlF7AVlIASMzT+KV93i/XE+Q4qITVRrgThsIbnepa
|
||||
** SIG ** ON2b2wIDAQABo4IBgzCCAX8wLwYIKwYBBQUHAQEEIzAh
|
||||
** SIG ** MB8GCCsGAQUFBzABhhNodHRwOi8vczIuc3ltY2IuY29t
|
||||
** SIG ** MBIGA1UdEwEB/wQIMAYBAf8CAQAwbAYDVR0gBGUwYzBh
|
||||
** SIG ** BgtghkgBhvhFAQcXAzBSMCYGCCsGAQUFBwIBFhpodHRw
|
||||
** SIG ** Oi8vd3d3LnN5bWF1dGguY29tL2NwczAoBggrBgEFBQcC
|
||||
** SIG ** AjAcGhpodHRwOi8vd3d3LnN5bWF1dGguY29tL3JwYTAw
|
||||
** SIG ** BgNVHR8EKTAnMCWgI6Ahhh9odHRwOi8vczEuc3ltY2Iu
|
||||
** SIG ** Y29tL3BjYTMtZzUuY3JsMB0GA1UdJQQWMBQGCCsGAQUF
|
||||
** SIG ** BwMCBggrBgEFBQcDAzAOBgNVHQ8BAf8EBAMCAQYwKQYD
|
||||
** SIG ** VR0RBCIwIKQeMBwxGjAYBgNVBAMTEVN5bWFudGVjUEtJ
|
||||
** SIG ** LTEtNTY3MB0GA1UdDgQWBBSWO1PweTOXr32D7y4rzMq3
|
||||
** SIG ** hh5yZjAfBgNVHSMEGDAWgBR/02Wnwt3su/AwCfNDOfoC
|
||||
** SIG ** rzMxMzANBgkqhkiG9w0BAQsFAAOCAQEAE4UaHmmpN/eg
|
||||
** SIG ** vaSvfh1hU/6djF4MpnUeeBcj3f3sGgNVOftxlcdlWqeO
|
||||
** SIG ** MNJEWmHbcG/aIQXCLnO6SfHRk/5dyc1eA+CJnj90Htf3
|
||||
** SIG ** OIup1s+7NS8zWKiSVtHITTuC5nmEFvwosLFH8x2iPu6H
|
||||
** SIG ** 2aZ/pFalP62ELinefLyoqqM9BAHqupOiDlAiKRdMh+Q6
|
||||
** SIG ** EV/WpCWJmwVrL7TJAUwnewusGQUioGAVP9rJ+01Mj/ty
|
||||
** SIG ** Z3f9J5THujUOiEn+jf0or0oSvQ2zlwXeRAwV+jYrA9zB
|
||||
** SIG ** UAHxoRFdFOXivSdLVL4rhF4PpsN0BQrvl8OJIrEfd/O9
|
||||
** SIG ** zUPU8UypP7WLhK9k8tAUITGCEFwwghBYAgEBMIGTMH8x
|
||||
** SIG ** CzAJBgNVBAYTAlVTMR0wGwYDVQQKExRTeW1hbnRlYyBD
|
||||
** SIG ** b3Jwb3JhdGlvbjEfMB0GA1UECxMWU3ltYW50ZWMgVHJ1
|
||||
** SIG ** c3QgTmV0d29yazEwMC4GA1UEAxMnU3ltYW50ZWMgQ2xh
|
||||
** SIG ** c3MgMyBTSEEyNTYgQ29kZSBTaWduaW5nIENBAhAwejZ6
|
||||
** SIG ** qj5ogab5TwjLOzlkMAkGBSsOAwIaBQCgcDAQBgorBgEE
|
||||
** SIG ** AYI3AgEMMQIwADAZBgkqhkiG9w0BCQMxDAYKKwYBBAGC
|
||||
** SIG ** NwIBBDAcBgorBgEEAYI3AgELMQ4wDAYKKwYBBAGCNwIB
|
||||
** SIG ** FTAjBgkqhkiG9w0BCQQxFgQU2eBWVkRbhnnHifFZIhKx
|
||||
** SIG ** bEgmVv0wDQYJKoZIhvcNAQEBBQAEggEAk6gWLo+shFOF
|
||||
** SIG ** dbjla3CfPVrklhzPvNkuqx9qUDQiJ5lKXW0xRi8gpd/T
|
||||
** SIG ** biUQO14E7Fop2pzmlC1bE2F0BAgBHzeNr+k1kEajizKH
|
||||
** SIG ** 6fOVRKrw7ntuPeom3yiSHDqcw8U+8QsqY9IHpwxq90do
|
||||
** SIG ** 0fuU1MKvfsf/ga4suqPew5AXRzU7Fvhid4cYZKCSMf1x
|
||||
** SIG ** UtWJh6pZCacKFmj9Vd2GOGXj3H2nR9ytYi/H3WjKBwdn
|
||||
** SIG ** r0k+AMnC5GnPdrb1w26l740ndh+aPcZ9sLNc3pAlBKhJ
|
||||
** SIG ** s9K9yVDafTzf3J7ycElkSwVpiETsx5yDwFWnjWMxYVn+
|
||||
** SIG ** uVLD/l22/SuIuuGCEy2C/aGCDiswgg4nBgorBgEEAYI3
|
||||
** SIG ** AwMBMYIOFzCCDhMGCSqGSIb3DQEHAqCCDgQwgg4AAgED
|
||||
** SIG ** MQ0wCwYJYIZIAWUDBAIBMIH+BgsqhkiG9w0BCRABBKCB
|
||||
** SIG ** 7gSB6zCB6AIBAQYLYIZIAYb4RQEHFwMwITAJBgUrDgMC
|
||||
** SIG ** GgUABBRt9cmH/lzRtb1mRxSGk38J0Yz6OAIUTaVmB7fQ
|
||||
** SIG ** bxZqRR2QkM+CJH/mCS4YDzIwMTcxMjIyMDkyMzE2WjAD
|
||||
** SIG ** AgEeoIGGpIGDMIGAMQswCQYDVQQGEwJVUzEdMBsGA1UE
|
||||
** SIG ** ChMUU3ltYW50ZWMgQ29ycG9yYXRpb24xHzAdBgNVBAsT
|
||||
** SIG ** FlN5bWFudGVjIFRydXN0IE5ldHdvcmsxMTAvBgNVBAMT
|
||||
** SIG ** KFN5bWFudGVjIFNIQTI1NiBUaW1lU3RhbXBpbmcgU2ln
|
||||
** SIG ** bmVyIC0gRzKgggqLMIIFODCCBCCgAwIBAgIQewWx1Elo
|
||||
** SIG ** UUT3yYnSnBmdEjANBgkqhkiG9w0BAQsFADCBvTELMAkG
|
||||
** SIG ** A1UEBhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMu
|
||||
** SIG ** MR8wHQYDVQQLExZWZXJpU2lnbiBUcnVzdCBOZXR3b3Jr
|
||||
** SIG ** MTowOAYDVQQLEzEoYykgMjAwOCBWZXJpU2lnbiwgSW5j
|
||||
** SIG ** LiAtIEZvciBhdXRob3JpemVkIHVzZSBvbmx5MTgwNgYD
|
||||
** SIG ** VQQDEy9WZXJpU2lnbiBVbml2ZXJzYWwgUm9vdCBDZXJ0
|
||||
** SIG ** aWZpY2F0aW9uIEF1dGhvcml0eTAeFw0xNjAxMTIwMDAw
|
||||
** SIG ** MDBaFw0zMTAxMTEyMzU5NTlaMHcxCzAJBgNVBAYTAlVT
|
||||
** SIG ** MR0wGwYDVQQKExRTeW1hbnRlYyBDb3Jwb3JhdGlvbjEf
|
||||
** SIG ** MB0GA1UECxMWU3ltYW50ZWMgVHJ1c3QgTmV0d29yazEo
|
||||
** SIG ** MCYGA1UEAxMfU3ltYW50ZWMgU0hBMjU2IFRpbWVTdGFt
|
||||
** SIG ** cGluZyBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCC
|
||||
** SIG ** AQoCggEBALtZnVlVT52Mcl0agaLrVfOwAa08cawyjwVr
|
||||
** SIG ** hponADKXak3JZBRLKbvC2Sm5Luxjs+HPPwtWkPhiG37r
|
||||
** SIG ** pgfi3n9ebUA41JEG50F8eRzLy60bv9iVkfPw7mz4rZY5
|
||||
** SIG ** Ln/BJ7h4OcWEpe3tr4eOzo3HberSmLU6Hx45ncP0mqj0
|
||||
** SIG ** hOHE0XxxxgYptD/kgw0mw3sIPk35CrczSf/KO9T1sptL
|
||||
** SIG ** 4YiZGvXA6TMU1t/HgNuR7v68kldyd/TNqMz+CfWTN76V
|
||||
** SIG ** iGrF3PSxS9TO6AmRX7WEeTWKeKwZMo8jwTJBG1kOqT6x
|
||||
** SIG ** zPnWK++32OTVHW0ROpL2k8mc40juu1MO1DaXhnjFoTcC
|
||||
** SIG ** AwEAAaOCAXcwggFzMA4GA1UdDwEB/wQEAwIBBjASBgNV
|
||||
** SIG ** HRMBAf8ECDAGAQH/AgEAMGYGA1UdIARfMF0wWwYLYIZI
|
||||
** SIG ** AYb4RQEHFwMwTDAjBggrBgEFBQcCARYXaHR0cHM6Ly9k
|
||||
** SIG ** LnN5bWNiLmNvbS9jcHMwJQYIKwYBBQUHAgIwGRoXaHR0
|
||||
** SIG ** cHM6Ly9kLnN5bWNiLmNvbS9ycGEwLgYIKwYBBQUHAQEE
|
||||
** SIG ** IjAgMB4GCCsGAQUFBzABhhJodHRwOi8vcy5zeW1jZC5j
|
||||
** SIG ** b20wNgYDVR0fBC8wLTAroCmgJ4YlaHR0cDovL3Muc3lt
|
||||
** SIG ** Y2IuY29tL3VuaXZlcnNhbC1yb290LmNybDATBgNVHSUE
|
||||
** SIG ** DDAKBggrBgEFBQcDCDAoBgNVHREEITAfpB0wGzEZMBcG
|
||||
** SIG ** A1UEAxMQVGltZVN0YW1wLTIwNDgtMzAdBgNVHQ4EFgQU
|
||||
** SIG ** r2PWyqNOhXLgp7xB8ymiOH+AdWIwHwYDVR0jBBgwFoAU
|
||||
** SIG ** tnf6aUhHn1MS1cLqBzJ2B9GXBxkwDQYJKoZIhvcNAQEL
|
||||
** SIG ** BQADggEBAHXqsC3VNBlcMkX+DuHUT6Z4wW/X6t3cT/Oh
|
||||
** SIG ** yIGI96ePFeZAKa3mXfSi2VZkhHEwKt0eYRdmIFYGmBmN
|
||||
** SIG ** XXHy+Je8Cf0ckUfJ4uiNA/vMkC/WCmxOM+zWtJPITJBj
|
||||
** SIG ** SDlAIcTd1m6JmDy1mJfoqQa3CcmPU1dBkC/hHk1O3MoQ
|
||||
** SIG ** eGxCbvC2xfhhXFL1TvZrjfdKer7zzf0D19n2A6gP41P3
|
||||
** SIG ** CnXsxnUuqmaFBJm3+AZX4cYO9uiv2uybGB+queM6AL/O
|
||||
** SIG ** ipTLAduexzi7D1Kr0eOUA2AKTaD+J20UMvw/l0Dhv5mJ
|
||||
** SIG ** 2+Q5FL3a5NPD6itas5VYVQR9x5rsIwONhSrS/66pYYEw
|
||||
** SIG ** ggVLMIIEM6ADAgECAhBUWPKq10HWRLyEqXugllLmMA0G
|
||||
** SIG ** CSqGSIb3DQEBCwUAMHcxCzAJBgNVBAYTAlVTMR0wGwYD
|
||||
** SIG ** VQQKExRTeW1hbnRlYyBDb3Jwb3JhdGlvbjEfMB0GA1UE
|
||||
** SIG ** CxMWU3ltYW50ZWMgVHJ1c3QgTmV0d29yazEoMCYGA1UE
|
||||
** SIG ** AxMfU3ltYW50ZWMgU0hBMjU2IFRpbWVTdGFtcGluZyBD
|
||||
** SIG ** QTAeFw0xNzAxMDIwMDAwMDBaFw0yODA0MDEyMzU5NTla
|
||||
** SIG ** MIGAMQswCQYDVQQGEwJVUzEdMBsGA1UEChMUU3ltYW50
|
||||
** SIG ** ZWMgQ29ycG9yYXRpb24xHzAdBgNVBAsTFlN5bWFudGVj
|
||||
** SIG ** IFRydXN0IE5ldHdvcmsxMTAvBgNVBAMTKFN5bWFudGVj
|
||||
** SIG ** IFNIQTI1NiBUaW1lU3RhbXBpbmcgU2lnbmVyIC0gRzIw
|
||||
** SIG ** ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCZ
|
||||
** SIG ** 8/zYBAkDhvnXXKaTwEJ86nxjz10A4o7zwJDfjyn1GOqU
|
||||
** SIG ** t5Ll17Cgc4Ho6QqbSnwB/52PpDmnDupF9CIMOnDtOUWL
|
||||
** SIG ** 5MUbXPBFaEYkBWN2mxz8nmwqsVblin9Sca7yNdVGIwYc
|
||||
** SIG ** z0gtHbTNuNl2I44c/z6/uwZcaQemZQ74Xq59Lu1NrjXv
|
||||
** SIG ** ydcAQv0olQ6fXXJCCbzD2kTS7cxHhOT8yi2sWL6u967Z
|
||||
** SIG ** RA0It8J31hpDcNFuA95SksQQCHHZuiJV8h+87ZudO+Je
|
||||
** SIG ** HUyD/5cPewvnVYNO0g3rvtfsrm5HuZ/fpdZRvARV7f8n
|
||||
** SIG ** cEzJ7SpLE+GxuUwPyQHuVWVfaQJ4Zss/AgMBAAGjggHH
|
||||
** SIG ** MIIBwzAMBgNVHRMBAf8EAjAAMGYGA1UdIARfMF0wWwYL
|
||||
** SIG ** YIZIAYb4RQEHFwMwTDAjBggrBgEFBQcCARYXaHR0cHM6
|
||||
** SIG ** Ly9kLnN5bWNiLmNvbS9jcHMwJQYIKwYBBQUHAgIwGRoX
|
||||
** SIG ** aHR0cHM6Ly9kLnN5bWNiLmNvbS9ycGEwQAYDVR0fBDkw
|
||||
** SIG ** NzA1oDOgMYYvaHR0cDovL3RzLWNybC53cy5zeW1hbnRl
|
||||
** SIG ** Yy5jb20vc2hhMjU2LXRzcy1jYS5jcmwwFgYDVR0lAQH/
|
||||
** SIG ** BAwwCgYIKwYBBQUHAwgwDgYDVR0PAQH/BAQDAgeAMHcG
|
||||
** SIG ** CCsGAQUFBwEBBGswaTAqBggrBgEFBQcwAYYeaHR0cDov
|
||||
** SIG ** L3RzLW9jc3Aud3Muc3ltYW50ZWMuY29tMDsGCCsGAQUF
|
||||
** SIG ** BzAChi9odHRwOi8vdHMtYWlhLndzLnN5bWFudGVjLmNv
|
||||
** SIG ** bS9zaGEyNTYtdHNzLWNhLmNlcjAoBgNVHREEITAfpB0w
|
||||
** SIG ** GzEZMBcGA1UEAxMQVGltZVN0YW1wLTIwNDgtNTAdBgNV
|
||||
** SIG ** HQ4EFgQUCbXB/pZylylDmsngArqu+P0vuvYwHwYDVR0j
|
||||
** SIG ** BBgwFoAUr2PWyqNOhXLgp7xB8ymiOH+AdWIwDQYJKoZI
|
||||
** SIG ** hvcNAQELBQADggEBABezCojpXFpeIGs7ChWybMWpijKH
|
||||
** SIG ** 07H0HFOuhb4/m//XvLeUhbTHUn6U6L3tYbLUp5nkw8mT
|
||||
** SIG ** wTU9C+hoCl1WmL2xIjvRRHrXv/BtUTKK1SPfOAE39uJT
|
||||
** SIG ** K3orEY+3TWx6MwMbfGsJlBe75NtY1CETZefs0SXKLHWa
|
||||
** SIG ** nH/8ybsqaKvEfbTPo8lsp9nEAJyJCneR9E2i+zE7hm72
|
||||
** SIG ** 5h9QA4abv8tCq+Z2m3JaEQGKxu+lb5Xn3a665iJl8BhZ
|
||||
** SIG ** GxHJzYC32JdHH0II+KxxH7BGU7PUstWjq1B1SBIXgq3P
|
||||
** SIG ** 4EFPMn7NlRy/kYoIPaSnZwKW3yRMpdBBwIJgo4oXMkvT
|
||||
** SIG ** vM+ktIwxggJaMIICVgIBATCBizB3MQswCQYDVQQGEwJV
|
||||
** SIG ** UzEdMBsGA1UEChMUU3ltYW50ZWMgQ29ycG9yYXRpb24x
|
||||
** SIG ** HzAdBgNVBAsTFlN5bWFudGVjIFRydXN0IE5ldHdvcmsx
|
||||
** SIG ** KDAmBgNVBAMTH1N5bWFudGVjIFNIQTI1NiBUaW1lU3Rh
|
||||
** SIG ** bXBpbmcgQ0ECEFRY8qrXQdZEvISpe6CWUuYwCwYJYIZI
|
||||
** SIG ** AWUDBAIBoIGkMBoGCSqGSIb3DQEJAzENBgsqhkiG9w0B
|
||||
** SIG ** CRABBDAcBgkqhkiG9w0BCQUxDxcNMTcxMjIyMDkyMzE2
|
||||
** SIG ** WjAvBgkqhkiG9w0BCQQxIgQgh6iyk0Har2MEw9zXTWSm
|
||||
** SIG ** UOWAoxD7/AdxP04ivLw8slIwNwYLKoZIhvcNAQkQAi8x
|
||||
** SIG ** KDAmMCQwIgQgz3rBetBH7NX9w2giAxsS1O8Hi28rTF5r
|
||||
** SIG ** pB+P8s9LrWcwCwYJKoZIhvcNAQEBBIIBAB8Cmh1gdqFS
|
||||
** SIG ** fcBY06p1vqBjMZ2KB0Bcp5shE0u9I/ec/y+nEoPwEeoz
|
||||
** SIG ** /1LMWUCG/NEVu9oNotl7gpotBrhjI099+/nBMBvXDfAe
|
||||
** SIG ** OnKR2mRtq8+GTkhbeJncFduzDfomOJHgzMwPqf/D1xrD
|
||||
** SIG ** xjLrjOfcjcDqNctMCtGQ0moHR57Z3c1F6uBOLQaxPGrg
|
||||
** SIG ** RpwMNsB64iBtiYavDUjfSYQALPO+p9tLpdJDlH0rvo0s
|
||||
** SIG ** qtczy028q9iRnVVgXOKU3vKcKiq+xenfhE3OaIda29+e
|
||||
** SIG ** Hc5Ao2yIebivZ1+kT/tj5ZYhrv1wDxqSHmK5XpiAkZiD
|
||||
** SIG ** ii4KGN8WABXfV/wf52XoG30=
|
||||
</signature>
|
||||
</package>
|
||||
|
||||
@@ -1,12 +1,27 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--
|
||||
SPDX-License-Identifier: GPL-3.0-or-later
|
||||
Copyright © 2016-2021 Amebis
|
||||
Copyright 2016-2018 Amebis
|
||||
|
||||
This file is part of ZRCola.
|
||||
|
||||
ZRCola is free software: you can redistribute it and/or modify it
|
||||
under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
ZRCola is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with ZRCola. If not, see <http://www.gnu.org/licenses/>.
|
||||
-->
|
||||
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ImportGroup Label="PropertySheets">
|
||||
<Import Project="common.props" />
|
||||
</ImportGroup>
|
||||
<PropertyGroup Label="UserMacros" />
|
||||
<PropertyGroup>
|
||||
<_PropertySheetDisplayName>ZRCola ARM64</_PropertySheetDisplayName>
|
||||
<LibraryPath>$(WXWIN)\lib\vc$(PlatformToolsetVersion)_arm64_lib;$(LibraryPath)</LibraryPath>
|
||||
@@ -24,4 +39,5 @@
|
||||
<AdditionalDependencies>advapi32.lib;ole32.lib;shell32.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemGroup />
|
||||
</Project>
|
||||
@@ -1,10 +1,25 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--
|
||||
SPDX-License-Identifier: GPL-3.0-or-later
|
||||
Copyright © 2016-2021 Amebis
|
||||
Copyright 2016-2018 Amebis
|
||||
|
||||
This file is part of ZRCola.
|
||||
|
||||
ZRCola is free software: you can redistribute it and/or modify it
|
||||
under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
ZRCola is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with ZRCola. If not, see <http://www.gnu.org/licenses/>.
|
||||
-->
|
||||
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ImportGroup Label="PropertySheets" />
|
||||
<PropertyGroup Label="UserMacros" />
|
||||
<PropertyGroup>
|
||||
<_PropertySheetDisplayName>ZRCola Debug</_PropertySheetDisplayName>
|
||||
</PropertyGroup>
|
||||
@@ -22,9 +37,16 @@
|
||||
<EnableCOMDATFolding>false</EnableCOMDATFolding>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemGroup />
|
||||
<Target Name="Sign" Condition="'$(ManifestCertificateThumbprint)' != '' and ('$(ConfigurationType)' == 'Application' or '$(ConfigurationType)' == 'DynamicLibrary')" AfterTargets="_Manifest" BeforeTargets="RegisterOutput" Inputs="$(OutDir)$(TargetName)$(TargetExt)" Outputs="$(IntDir)$(TargetName).sign">
|
||||
<Message Text="Signing output file..." />
|
||||
<Exec Command="signtool.exe sign /du "https://www.amebis.si" /sha1 "%ManifestCertificateThumbprint%" /fd sha256 /q "$(TargetPath)"" />
|
||||
<!--
|
||||
To make Windows XP and Vista compliant signatures, the binaries have to be signed using SHA1.
|
||||
<SignFile> switches to SHA256 if the signing certificate is SHA256.
|
||||
Reverted to signtool.exe until we can drop Windows XP and Vista support.
|
||||
-->
|
||||
<!--<SignFile CertificateThumbprint="$(ManifestCertificateThumbprint)" SigningTarget="$(OutDir)$(TargetName)$(TargetExt)" />-->
|
||||
<Exec Command="signtool.exe sign /du "https://www.amebis.si" /sha1 "%ManifestCertificateThumbprint%" /fd sha1 /q "$(TargetPath)"" />
|
||||
<Touch Files="$(IntDir)$(TargetName).sign" AlwaysCreate="true" />
|
||||
</Target>
|
||||
</Project>
|
||||
Binary file not shown.
@@ -1,10 +1,25 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--
|
||||
SPDX-License-Identifier: GPL-3.0-or-later
|
||||
Copyright © 2016-2021 Amebis
|
||||
Copyright 2016-2017 Amebis
|
||||
|
||||
This file is part of ZRCola.
|
||||
|
||||
ZRCola is free software: you can redistribute it and/or modify it
|
||||
under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
ZRCola is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with ZRCola. If not, see <http://www.gnu.org/licenses/>.
|
||||
-->
|
||||
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ImportGroup Label="PropertySheets" />
|
||||
<PropertyGroup Label="UserMacros" />
|
||||
<PropertyGroup>
|
||||
<_PropertySheetDisplayName>ZRCola Release</_PropertySheetDisplayName>
|
||||
</PropertyGroup>
|
||||
@@ -18,15 +33,21 @@
|
||||
<EnableFiberSafeOptimizations>true</EnableFiberSafeOptimizations>
|
||||
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
</ClCompile>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ResourceCompile>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemGroup />
|
||||
<Target Name="Sign" Condition="'$(ManifestCertificateThumbprint)' != '' and ('$(ConfigurationType)' == 'Application' or '$(ConfigurationType)' == 'DynamicLibrary')" AfterTargets="_Manifest" BeforeTargets="RegisterOutput" Inputs="$(OutDir)$(TargetName)$(TargetExt)" Outputs="$(IntDir)$(TargetName).sign">
|
||||
<Message Text="Signing output file..." />
|
||||
<Exec Command="signtool.exe sign /sha1 "%ManifestCertificateThumbprint%" /fd sha256 /tr "%ManifestTimestampRFC3161Url%" /td sha256 /q "$(TargetPath)"" />
|
||||
<!--
|
||||
To make Windows XP and Vista compliant signatures, the binaries have to be signed using SHA1.
|
||||
<SignFile> switches to SHA256 if the signing certificate is SHA256.
|
||||
Reverted to signtool.exe until we can drop Windows XP and Vista support.
|
||||
-->
|
||||
<!--<SignFile CertificateThumbprint="$(ManifestCertificateThumbprint)" TimestampUrl="$(ManifestTimestampUrl)" SigningTarget="$(OutDir)$(TargetName)$(TargetExt)" />-->
|
||||
<Exec Command="signtool.exe sign /du "https://www.amebis.si" /sha1 "%ManifestCertificateThumbprint%" /fd sha1 /t "%ManifestTimestampUrl%" /q "$(TargetPath)"" />
|
||||
<Touch Files="$(IntDir)$(TargetName).sign" AlwaysCreate="true" />
|
||||
</Target>
|
||||
</Project>
|
||||
@@ -1,15 +1,10 @@
|
||||
/*
|
||||
SPDX-License-Identifier: GPL-3.0-or-later
|
||||
Copyright © 2015-2021 Amebis
|
||||
*/
|
||||
|
||||
#include "version.h"
|
||||
|
||||
//
|
||||
// Update server(s)
|
||||
// Zero delimited list of update servers
|
||||
//
|
||||
#define UPDATER_HTTP_SERVER "prenos.amebis.si\0"
|
||||
#define UPDATER_HTTP_SERVER "www.amebis.si\0"
|
||||
|
||||
//
|
||||
// Update server port
|
||||
@@ -19,22 +14,4 @@
|
||||
//
|
||||
// Update server catalog location
|
||||
//
|
||||
#define UPDATER_HTTP_PATH "/ZRCola/catalog-0001.xml"
|
||||
|
||||
//
|
||||
// Hash for publishing packages and signing catalog
|
||||
//
|
||||
#define wxUpdaterHashGen wxCryptoHashSHA256
|
||||
|
||||
//
|
||||
// Hash for verifying catalog signature and packages
|
||||
//
|
||||
#define wxUpdaterHashChk wxCryptoHashSHA256
|
||||
|
||||
//
|
||||
// When changing the hash algorithm:
|
||||
//
|
||||
// 1. Bump UPDATER_HTTP_PATH and set wxUpdaterHashChk to new hash class.
|
||||
// 2. Publish the updated product using the old catalog and old wxUpdaterHashGen hash.
|
||||
// 3. Set wxUpdaterHashGen to new hash class, update Makefile to publish future updates to the new catalog.
|
||||
//
|
||||
#define UPDATER_HTTP_PATH "/prenos/ZRCola/catalog-0000.xml"
|
||||
|
||||
@@ -1,12 +1,27 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--
|
||||
SPDX-License-Identifier: GPL-3.0-or-later
|
||||
Copyright © 2016-2021 Amebis
|
||||
Copyright 2016-2017 Amebis
|
||||
|
||||
This file is part of ZRCola.
|
||||
|
||||
ZRCola is free software: you can redistribute it and/or modify it
|
||||
under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
ZRCola is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with ZRCola. If not, see <http://www.gnu.org/licenses/>.
|
||||
-->
|
||||
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ImportGroup Label="PropertySheets">
|
||||
<Import Project="common.props" />
|
||||
</ImportGroup>
|
||||
<PropertyGroup Label="UserMacros" />
|
||||
<PropertyGroup>
|
||||
<_PropertySheetDisplayName>ZRCola Win32</_PropertySheetDisplayName>
|
||||
<LibraryPath>$(WXWIN)\lib\vc$(PlatformToolsetVersion)_lib;$(LibraryPath)</LibraryPath>
|
||||
@@ -20,4 +35,5 @@
|
||||
<TargetMachine>MachineX86</TargetMachine>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemGroup />
|
||||
</Project>
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user