31 Commits

Author SHA1 Message Date
Simon Rozman
f989cacd17 Version set to 1.4 2016-10-11 12:38:40 +02:00
Simon Rozman
71b37cfdaf Localization files are installed selectively now 2016-10-11 11:13:33 +02:00
Simon Rozman
49aa002388 Norwegian Bokmål translation added 2016-10-10 17:19:45 +02:00
Simon Rozman
ca0cb0f1f8 Translation update 2016-10-10 09:40:34 +02:00
Simon Rozman
d9e9f052ac Copyright extended to GÉANT 2016-10-07 15:38:12 +02:00
Simon Rozman
1c527e114c Language set extended 2016-10-07 15:25:24 +02:00
Simon Rozman
0bd3082c30 All translation files get installed now 2016-10-07 15:25:00 +02:00
Simon Rozman
4719e99a60 Host name and FQDN validators moved to wxExtend >> wxExtend API level incremented to 14 2016-10-07 15:23:03 +02:00
Simon Rozman
3d5ad3986b Support for static variant of library in MSI output added 2016-10-07 14:30:29 +02:00
Simon Rozman
a287e6e884 WXEXTEND_API is defined according to WXEXTEND_DLL and WXEXTEND_DLLIMP constants instead of WXEXTEND now 2016-10-07 14:28:39 +02:00
Simon Rozman
2fff163aea 4275 compiler warning resolved 2016-10-07 13:39:59 +02:00
Simon Rozman
2453c88389 Library solution introduced 2016-10-07 13:38:28 +02:00
Simon Rozman
385528cf23 Missing #include added 2016-10-05 12:28:39 +02:00
Simon Rozman
887a2c8116 Merge branch 'master' of https://github.com/Amebis/wxExtend 2016-10-05 12:11:10 +02:00
Simon Rozman
825461e2b0 wxInitializeLocale moved to wxExtend 2016-10-05 12:10:57 +02:00
Simon Rozman
e50cae1261 Translation update 2016-10-05 08:39:58 +02:00
Simon Rozman
a03e17daea Translation update 2016-10-04 13:41:59 +02:00
Simon Rozman
d7ac16dd8d Code clean-up 2016-10-03 14:48:59 +02:00
Simon Rozman
2e3e188026 C >> C++ typecasting 2016-10-03 10:41:40 +02:00
Simon Rozman
e9dd2b7ae5 Translations extracted with MIS.wsf/IDTExtract now 2016-09-19 11:32:54 +02:00
Simon Rozman
09a9639a77 Language names in MSIBuild extended from two letter to ll_CC syntax 2016-09-19 09:53:37 +02:00
Simon Rozman
a906f5073d Revert "POCompile target updated to make output directory"
This reverts commit f730285400.
2016-09-15 12:52:08 +02:00
Simon Rozman
f730285400 POCompile target updated to make output directory 2016-09-15 11:37:20 +02:00
Simon Rozman
22e381af0c All language identifiers expanded to contain country code 2016-09-09 13:42:38 +02:00
Simon Rozman
e0712dd9b6 German translation renamed from de_DE to de. 2016-09-07 12:18:23 +02:00
Simon Rozman
6c94ff59be wxObjectWithData helper template introduced 2016-08-27 11:13:55 +02:00
Simon Rozman
d604e81604 Unreferenced parameters warning resolved 2016-07-15 12:50:39 +02:00
Simon Rozman
3bd75b9735 Library split to dynamic (DLL) and static (Lib) variants 2016-07-15 12:50:20 +02:00
Simon Rozman
c6cd4bc7a5 Support for Russian localization introduced 2016-07-14 18:08:04 +02:00
Simon Rozman
c21aa27e62 URL encoding/decoding added
API level changed to 13
2016-05-31 14:49:52 +02:00
Simon Rozman
e25bce487b Missing #include added 2016-05-24 14:22:00 +02:00
64 changed files with 2801 additions and 66 deletions

6
.gitignore vendored
View File

@@ -1,3 +1,5 @@
/*.opensdf
/*.suo
/*.sdf
/doc
*.user
temp
/ipch

View File

@@ -1,5 +1,6 @@
#
# Copyright 1991-2016 Amebis
# Copyright 2016 G<>ANT
#
# This file is part of ZRCola.
#
@@ -19,6 +20,10 @@
!INCLUDE "..\..\..\include\MSIBuildCfg.mak"
!IFNDEF MSIBUILD_LANGID
!ERROR Parameter MSIBUILD_LANGID is undefined.
!ENDIF
!IFNDEF WXEXTEND_BIN_DIR
!ERROR Parameter WXEXTEND_BIN_DIR is undefined.
!ENDIF
@@ -39,14 +44,100 @@ All :: "$(LANG).$(PLAT).$(CFG).Component-1.idt"
Component ComponentId Directory_ Attributes Condition KeyPath
s$(MSIBUILD_LENGTH_ID) S38 s$(MSIBUILD_LENGTH_ID) i2 S255 S$(MSIBUILD_LENGTH_ID)
Component Component
!IFNDEF WXEXTEND_STATIC
!IF "$(PLAT)" == "Win32"
compwxExtend.dll.Win32 {7645D753-4A8C-40C6-BD6F-6DDE54F2B8F8} $(WXEXTEND_BIN_DIR) 0 filewxExtend.dll.Win32
compwxExtend.dll.Win32 {37C6943E-B5D0-4C22-B039-29FEE015D0E8} $(WXEXTEND_BIN_DIR) 0 filewxExtend.dll.Win32
!ENDIF
!IF "$(PLAT)" == "x64"
compwxExtend.dll.x64 {919135CB-B106-467E-A3DA-CBC463FBB7FF} $(WXEXTEND_BIN_DIR) 256 filewxExtend.dll.x64
compwxExtend.dll.x64 {F323428B-B329-4492-943C-0F2387C80DC9} $(WXEXTEND_BIN_DIR) 256 filewxExtend.dll.x64
!ENDIF
!IF "$(LANG)" == "Sl"
compwxExtend.mo.sl_SI {08656BB6-0887-4605-B6D3-20B0444624BA} WXEXTENDLOCSLSIDIR $(MSIBUILD_COMPONENT_ATTRIB_FILE) filewxExtend.mo.sl_SI
!ENDIF
!IF "$(LANG)" == "bg_BG"
compwxExtend.mo.bg_BG {CF5725EF-F683-4673-8523-5502B57C0C9F} WXEXTENDLOCBGBGDIR $(MSIBUILD_COMPONENT_ATTRIB_FILE) filewxExtend.mo.bg_BG
!ENDIF
!IF "$(LANG)" == "ca_ES"
compwxExtend.mo.ca_ES {80493A96-C77A-4F92-8B3E-35BE9127EBBE} WXEXTENDLOCCAESDIR $(MSIBUILD_COMPONENT_ATTRIB_FILE) filewxExtend.mo.ca_ES
!ENDIF
!IF "$(LANG)" == "cs_CZ"
compwxExtend.mo.cs_CZ {EECC383F-CBFF-4675-ABB9-16D77AD25D5C} WXEXTENDLOCCSCZDIR $(MSIBUILD_COMPONENT_ATTRIB_FILE) filewxExtend.mo.cs_CZ
!ENDIF
!IF "$(LANG)" == "cy_UK"
compwxExtend.mo.cy_UK {9601C64F-4C99-4F2D-95CA-F2DF150F1982} WXEXTENDLOCCYUKDIR $(MSIBUILD_COMPONENT_ATTRIB_FILE) filewxExtend.mo.cy_UK
!ENDIF
!IF "$(LANG)" == "de_DE"
compwxExtend.mo.de_DE {9C3D448E-E6F3-45B9-BFF9-8E12A7B5AB53} WXEXTENDLOCDEDEDIR $(MSIBUILD_COMPONENT_ATTRIB_FILE) filewxExtend.mo.de_DE
!ENDIF
!IF "$(LANG)" == "el_GR"
compwxExtend.mo.el_GR {51A8EA7F-709F-4C3B-A94D-3BEC3899C80B} WXEXTENDLOCELGRDIR $(MSIBUILD_COMPONENT_ATTRIB_FILE) filewxExtend.mo.el_GR
!ENDIF
!IF "$(LANG)" == "es_ES"
compwxExtend.mo.es_ES {D11A4B09-D9CF-4350-8B26-D9CF117E2980} WXEXTENDLOCESESDIR $(MSIBUILD_COMPONENT_ATTRIB_FILE) filewxExtend.mo.es_ES
!ENDIF
!IF "$(LANG)" == "eu_ES"
compwxExtend.mo.eu_ES {C93CEE38-3602-4FF2-8319-6125F91EE03C} WXEXTENDLOCEUESDIR $(MSIBUILD_COMPONENT_ATTRIB_FILE) filewxExtend.mo.eu_ES
!ENDIF
!IF "$(LANG)" == "fi_FI"
compwxExtend.mo.fi_FI {6F6F463B-7013-4453-8224-6AEA6B2EBDBC} WXEXTENDLOCFIFIDIR $(MSIBUILD_COMPONENT_ATTRIB_FILE) filewxExtend.mo.fi_FI
!ENDIF
!IF "$(LANG)" == "fr_CA"
compwxExtend.mo.fr_CA {39D0AB42-9AB6-45FB-990F-5525D1004332} WXEXTENDLOCFRCADIR $(MSIBUILD_COMPONENT_ATTRIB_FILE) filewxExtend.mo.fr_CA
!ENDIF
!IF "$(LANG)" == "fr_FR"
compwxExtend.mo.fr_FR {5E68D9D9-AAF3-4194-9675-2C484A3B5E7C} WXEXTENDLOCFRFRDIR $(MSIBUILD_COMPONENT_ATTRIB_FILE) filewxExtend.mo.fr_FR
!ENDIF
!IF "$(LANG)" == "gl_ES"
compwxExtend.mo.gl_ES {CA353D77-B09A-4588-AF5E-A0B2E3742B1B} WXEXTENDLOCGLESDIR $(MSIBUILD_COMPONENT_ATTRIB_FILE) filewxExtend.mo.gl_ES
!ENDIF
!IF "$(LANG)" == "hr_HR"
compwxExtend.mo.hr_HR {F096E922-C060-49A1-81F0-A5FEC68F3873} WXEXTENDLOCHRHRDIR $(MSIBUILD_COMPONENT_ATTRIB_FILE) filewxExtend.mo.hr_HR
!ENDIF
!IF "$(LANG)" == "hu_HU"
compwxExtend.mo.hu_HU {8B377B6C-5B05-4D7C-B1F5-7A40E2BB7BD4} WXEXTENDLOCHUHUDIR $(MSIBUILD_COMPONENT_ATTRIB_FILE) filewxExtend.mo.hu_HU
!ENDIF
!IF "$(LANG)" == "is_IS"
compwxExtend.mo.is_IS {10C23840-30DE-4014-9F82-80FAC55243D2} WXEXTENDLOCISISDIR $(MSIBUILD_COMPONENT_ATTRIB_FILE) filewxExtend.mo.is_IS
!ENDIF
!IF "$(LANG)" == "it_IT"
compwxExtend.mo.it_IT {C5733B34-3315-44BC-B568-F6EDEDD6EA92} WXEXTENDLOCITITDIR $(MSIBUILD_COMPONENT_ATTRIB_FILE) filewxExtend.mo.it_IT
!ENDIF
!IF "$(LANG)" == "ko_KR"
compwxExtend.mo.ko_KR {668C27C4-C799-46B4-A8D7-DB4C2E5DBCBC} WXEXTENDLOCKOKRDIR $(MSIBUILD_COMPONENT_ATTRIB_FILE) filewxExtend.mo.ko_KR
!ENDIF
!IF "$(LANG)" == "lt_LT"
compwxExtend.mo.lt_LT {3EEECA40-96BB-4F14-9E4F-2B4176D849A5} WXEXTENDLOCLTLTDIR $(MSIBUILD_COMPONENT_ATTRIB_FILE) filewxExtend.mo.lt_LT
!ENDIF
!IF "$(LANG)" == "nb_NO"
compwxExtend.mo.nb_NO {5CC24C7D-E928-4CAB-BA91-EB4D11BC2A4B} WXEXTENDLOCNBNODIR $(MSIBUILD_COMPONENT_ATTRIB_FILE) filewxExtend.mo.nb_NO
!ENDIF
!IF "$(LANG)" == "nl_NL"
compwxExtend.mo.nl_NL {8E9F03EF-E808-4AB8-B136-CC2622E29BD1} WXEXTENDLOCNLNLDIR $(MSIBUILD_COMPONENT_ATTRIB_FILE) filewxExtend.mo.nl_NL
!ENDIF
!IF "$(LANG)" == "pl_PL"
compwxExtend.mo.pl_PL {F7994ACB-60DD-4722-8E8E-65B071664A78} WXEXTENDLOCPLPLDIR $(MSIBUILD_COMPONENT_ATTRIB_FILE) filewxExtend.mo.pl_PL
!ENDIF
!IF "$(LANG)" == "pt_PT"
compwxExtend.mo.pt_PT {3157094C-A5A7-420D-AB47-80A721560DED} WXEXTENDLOCPTPTDIR $(MSIBUILD_COMPONENT_ATTRIB_FILE) filewxExtend.mo.pt_PT
!ENDIF
!IF "$(LANG)" == "ru_RU"
compwxExtend.mo.ru_RU {3B4C86C3-ABFF-4272-B8E4-2E9B59DC7867} WXEXTENDLOCRURUDIR $(MSIBUILD_COMPONENT_ATTRIB_FILE) filewxExtend.mo.ru_RU
!ENDIF
!IF "$(LANG)" == "sk_SK"
compwxExtend.mo.sk_SK {6E14CF20-6D82-4A23-9FED-E68C1C2FC92A} WXEXTENDLOCSKSKDIR $(MSIBUILD_COMPONENT_ATTRIB_FILE) filewxExtend.mo.sk_SK
!ENDIF
!IF "$(LANG)" == "sl_SI"
compwxExtend.mo.sl_SI {E970685D-7997-40C9-A95C-95F1204BD534} WXEXTENDLOCSLSIDIR $(MSIBUILD_COMPONENT_ATTRIB_FILE) filewxExtend.mo.sl_SI
!ENDIF
!IF "$(LANG)" == "sr_RS"
compwxExtend.mo.sr_RS {74E368AA-79B0-407D-9A05-E42002300EE7} WXEXTENDLOCSRRSDIR $(MSIBUILD_COMPONENT_ATTRIB_FILE) filewxExtend.mo.sr_RS
!ENDIF
!IF "$(LANG)" == "sv_SE"
compwxExtend.mo.sv_SE {084986BC-EB55-4BA3-B8E5-FF0714F1C8A3} WXEXTENDLOCSVSEDIR $(MSIBUILD_COMPONENT_ATTRIB_FILE) filewxExtend.mo.sv_SE
!ENDIF
!IF "$(LANG)" == "tr_TR"
compwxExtend.mo.tr_TR {519F85E4-8B31-42EF-BCDD-9B3B907C0762} WXEXTENDLOCTRTRDIR $(MSIBUILD_COMPONENT_ATTRIB_FILE) filewxExtend.mo.tr_TR
!ENDIF
!IF "$(LANG)" == "vi_VN"
compwxExtend.mo.vi_VN {738F9C8C-2084-4003-91EA-55CA4B851343} WXEXTENDLOCVIVNDIR $(MSIBUILD_COMPONENT_ATTRIB_FILE) filewxExtend.mo.vi_VN
!ENDIF
<<NOKEEP
@@ -62,7 +153,93 @@ All :: "$(LANG).$(PLAT).$(CFG).Directory-1.idt"
Directory Directory_Parent DefaultDir
s$(MSIBUILD_LENGTH_ID) S$(MSIBUILD_LENGTH_ID) l255
Directory Directory
!IF "$(LANG)" == "bg_BG"
WXEXTENDLOCBGBGDIR $(WXEXTEND_LOC_DIR) bg_BG
!ENDIF
!IF "$(LANG)" == "ca_ES"
WXEXTENDLOCCAESDIR $(WXEXTEND_LOC_DIR) ca_ES
!ENDIF
!IF "$(LANG)" == "cs_CZ"
WXEXTENDLOCCSCZDIR $(WXEXTEND_LOC_DIR) cs_CZ
!ENDIF
!IF "$(LANG)" == "cy_UK"
WXEXTENDLOCCYUKDIR $(WXEXTEND_LOC_DIR) cy_UK
!ENDIF
!IF "$(LANG)" == "de_DE"
WXEXTENDLOCDEDEDIR $(WXEXTEND_LOC_DIR) de_DE
!ENDIF
!IF "$(LANG)" == "el_GR"
WXEXTENDLOCELGRDIR $(WXEXTEND_LOC_DIR) el_GR
!ENDIF
!IF "$(LANG)" == "es_ES"
WXEXTENDLOCESESDIR $(WXEXTEND_LOC_DIR) es_ES
!ENDIF
!IF "$(LANG)" == "eu_ES"
WXEXTENDLOCEUESDIR $(WXEXTEND_LOC_DIR) eu_ES
!ENDIF
!IF "$(LANG)" == "fi_FI"
WXEXTENDLOCFIFIDIR $(WXEXTEND_LOC_DIR) fi_FI
!ENDIF
!IF "$(LANG)" == "fr_CA"
WXEXTENDLOCFRCADIR $(WXEXTEND_LOC_DIR) fr_CA
!ENDIF
!IF "$(LANG)" == "fr_FR"
WXEXTENDLOCFRFRDIR $(WXEXTEND_LOC_DIR) fr_FR
!ENDIF
!IF "$(LANG)" == "gl_ES"
WXEXTENDLOCGLESDIR $(WXEXTEND_LOC_DIR) gl_ES
!ENDIF
!IF "$(LANG)" == "hr_HR"
WXEXTENDLOCHRHRDIR $(WXEXTEND_LOC_DIR) hr_HR
!ENDIF
!IF "$(LANG)" == "hu_HU"
WXEXTENDLOCHUHUDIR $(WXEXTEND_LOC_DIR) hu_HU
!ENDIF
!IF "$(LANG)" == "is_IS"
WXEXTENDLOCISISDIR $(WXEXTEND_LOC_DIR) is_IS
!ENDIF
!IF "$(LANG)" == "it_IT"
WXEXTENDLOCITITDIR $(WXEXTEND_LOC_DIR) it_IT
!ENDIF
!IF "$(LANG)" == "ko_KR"
WXEXTENDLOCKOKRDIR $(WXEXTEND_LOC_DIR) ko_KR
!ENDIF
!IF "$(LANG)" == "lt_LT"
WXEXTENDLOCLTLTDIR $(WXEXTEND_LOC_DIR) lt_LT
!ENDIF
!IF "$(LANG)" == "nb_NO"
WXEXTENDLOCNBNODIR $(WXEXTEND_LOC_DIR) nb_NO
!ENDIF
!IF "$(LANG)" == "nl_NL"
WXEXTENDLOCNLNLDIR $(WXEXTEND_LOC_DIR) nl_NL
!ENDIF
!IF "$(LANG)" == "pl_PL"
WXEXTENDLOCPLPLDIR $(WXEXTEND_LOC_DIR) pl_PL
!ENDIF
!IF "$(LANG)" == "pt_PT"
WXEXTENDLOCPTPTDIR $(WXEXTEND_LOC_DIR) pt_PT
!ENDIF
!IF "$(LANG)" == "ru_RU"
WXEXTENDLOCRURUDIR $(WXEXTEND_LOC_DIR) ru_RU
!ENDIF
!IF "$(LANG)" == "sk_SK"
WXEXTENDLOCSKSKDIR $(WXEXTEND_LOC_DIR) sk_SK
!ENDIF
!IF "$(LANG)" == "sl_SI"
WXEXTENDLOCSLSIDIR $(WXEXTEND_LOC_DIR) sl_SI
!ENDIF
!IF "$(LANG)" == "sr_RS"
WXEXTENDLOCSRRSDIR $(WXEXTEND_LOC_DIR) sr_RS
!ENDIF
!IF "$(LANG)" == "sv_SE"
WXEXTENDLOCSVSEDIR $(WXEXTEND_LOC_DIR) sv_SE
!ENDIF
!IF "$(LANG)" == "tr_TR"
WXEXTENDLOCTRTRDIR $(WXEXTEND_LOC_DIR) tr_TR
!ENDIF
!IF "$(LANG)" == "vi_VN"
WXEXTENDLOCVIVNDIR $(WXEXTEND_LOC_DIR) vi_VN
!ENDIF
<<NOKEEP
@@ -77,24 +254,26 @@ All :: "$(LANG).$(PLAT).$(CFG).File-1.idt"
File Component_ FileName FileSize Version Language Attributes Sequence
s$(MSIBUILD_LENGTH_ID) s$(MSIBUILD_LENGTH_ID) l255 i4 S$(MSIBUILD_LENGTH_ID) S20 I2 i2
File File
!IFNDEF WXEXTEND_STATIC
!IF "$(PLAT)" == "Win32"
!IF "$(CFG)" == "Release"
filewxExtend.dll.Win32 compwxExtend.dll.Win32 WXEXTE~2.DLL|wxExtend12u_vc100.dll 0 0 1536 1
filewxExtend.dll.Win32 compwxExtend.dll.Win32 WXEXTE~2.DLL|wxExtend14u_vc100.dll 0 0 1536 1
!ENDIF
!IF "$(CFG)" == "Debug"
filewxExtend.dll.Win32 compwxExtend.dll.Win32 WXEXTE~4.DLL|wxExtend12ud_vc100.dll 0 0 1536 1
filewxExtend.dll.Win32 compwxExtend.dll.Win32 WXEXTE~4.DLL|wxExtend14ud_vc100.dll 0 0 1536 1
!ENDIF
!ENDIF
!IF "$(PLAT)" == "x64"
!IF "$(CFG)" == "Release"
filewxExtend.dll.x64 compwxExtend.dll.x64 WXEXTE~6.DLL|wxExtend12u_vc100_x64.dll 0 0 1536 1
filewxExtend.dll.x64 compwxExtend.dll.x64 WXEXTE~6.DLL|wxExtend14u_vc100_x64.dll 0 0 1536 1
!ENDIF
!IF "$(CFG)" == "Debug"
filewxExtend.dll.x64 compwxExtend.dll.x64 WXEXTE~8.DLL|wxExtend12ud_vc100_x64.dll 0 0 1536 1
filewxExtend.dll.x64 compwxExtend.dll.x64 WXEXTE~8.DLL|wxExtend14ud_vc100_x64.dll 0 0 1536 1
!ENDIF
!ENDIF
!IF "$(LANG)" == "Sl"
filewxExtend.mo.sl_SI compwxExtend.mo.sl_SI WXEXTE~1.MO|wxExtend12.mo 0 1060 0 1
!ENDIF
!IF "$(LANG)" != "en_US"
filewxExtend.mo.$(LANG) compwxExtend.mo.$(LANG) WXEXTE~1.MO|wxExtend14.mo 0 $(MSIBUILD_LANGID) 0 1
!ENDIF
<<NOKEEP

2
build/.gitignore vendored Normal file
View File

@@ -0,0 +1,2 @@
/*.user
/temp

View File

@@ -2,15 +2,12 @@
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ImportGroup Label="PropertySheets" />
<PropertyGroup Label="UserMacros">
<wxExtendVersion>12</wxExtendVersion>
<wxExtendVersion>14</wxExtendVersion>
</PropertyGroup>
<PropertyGroup>
<OutDir>..\..\..\output\$(Platform).$(Configuration)\</OutDir>
</PropertyGroup>
<ItemDefinitionGroup>
<ClCompile>
<PreprocessorDefinitions>WXEXTEND;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
<POCompile>
<OutputFile>$(OutDir)..\locale\%(Filename)\$(ProjectName)$(wxExtendVersion).mo</OutputFile>
</POCompile>

14
build/wxExtendDll.props Normal file
View File

@@ -0,0 +1,14 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ImportGroup Label="PropertySheets">
<Import Project="wxExtend.props" />
</ImportGroup>
<PropertyGroup Label="UserMacros" />
<PropertyGroup />
<ItemDefinitionGroup>
<ClCompile>
<PreprocessorDefinitions>WXEXTEND_DLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
</ItemDefinitionGroup>
<ItemGroup />
</Project>

View File

@@ -29,7 +29,9 @@
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Create</PrecompiledHeader>
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Create</PrecompiledHeader>
</ClCompile>
<ClCompile Include="..\src\url.cpp" />
<ClCompile Include="..\src\valhex.cpp" />
<ClCompile Include="..\src\valnet.cpp" />
<ClCompile Include="..\src\xml.cpp" />
</ItemGroup>
<ItemGroup>
@@ -40,14 +42,42 @@
<ClInclude Include="..\include\wxex\hex.h" />
<ClInclude Include="..\include\wxex\persist\auimanager.h" />
<ClInclude Include="..\include\wxex\persist\dialog.h" />
<ClInclude Include="..\include\wxex\url.h" />
<ClInclude Include="..\include\wxex\valhex.h" />
<ClInclude Include="..\include\wxex\valnet.h" />
<ClInclude Include="..\include\wxex\xml.h" />
<ClInclude Include="..\src\stdafx.h" />
</ItemGroup>
<ItemGroup>
<POCompile Include="..\locale\bg_BG.po" />
<POCompile Include="..\locale\ca_ES.po" />
<POCompile Include="..\locale\cs_CZ.po" />
<POCompile Include="..\locale\cy_UK.po" />
<POCompile Include="..\locale\de_DE.po" />
<POCompile Include="..\locale\el_GR.po" />
<POCompile Include="..\locale\es_ES.po" />
<POCompile Include="..\locale\eu_ES.po" />
<POCompile Include="..\locale\fi_FI.po" />
<POCompile Include="..\locale\fr_CA.po" />
<POCompile Include="..\locale\fr_FR.po" />
<POCompile Include="..\locale\gl_ES.po" />
<POCompile Include="..\locale\hr_HR.po" />
<POCompile Include="..\locale\hu_HU.po" />
<POCompile Include="..\locale\is_IS.po" />
<POCompile Include="..\locale\it_IT.po" />
<POCompile Include="..\locale\ko_KR.po" />
<POCompile Include="..\locale\lt_LT.po" />
<POCompile Include="..\locale\nb_NO.po" />
<POCompile Include="..\locale\nl_NL.po" />
<POCompile Include="..\locale\pl_PL.po" />
<POCompile Include="..\locale\pt_PT.po" />
<POCompile Include="..\locale\ru_RU.po" />
<POCompile Include="..\locale\sk_SK.po" />
<POCompile Include="..\locale\sl_SI.po" />
<POCompile Include="..\locale\sr_RS.po" />
<POCompile Include="..\locale\sv_SE.po" />
<POCompile Include="..\locale\tr_TR.po" />
<POCompile Include="..\locale\vi_VN.po" />
</ItemGroup>
<ItemGroup>
<None Include="..\locale\wxExtend.pot" />
@@ -58,6 +88,7 @@
<PropertyGroup Label="Globals">
<ProjectGuid>{A3A36689-AC35-4026-93DA-A3BA0C0E767C}</ProjectGuid>
<RootNamespace>wxExtend</RootNamespace>
<ProjectName>wxExtend</ProjectName>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
@@ -89,25 +120,25 @@
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="..\..\..\include\Win32.props" />
<Import Project="..\..\..\include\Debug.props" />
<Import Project="wxExtend.props" />
<Import Project="wxExtendDll.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\x64.props" />
<Import Project="..\..\..\include\Debug.props" />
<Import Project="wxExtend.props" />
<Import Project="wxExtendDll.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\Win32.props" />
<Import Project="..\..\..\include\Release.props" />
<Import Project="wxExtend.props" />
<Import Project="wxExtendDll.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\x64.props" />
<Import Project="..\..\..\include\Release.props" />
<Import Project="wxExtend.props" />
<Import Project="wxExtendDll.props" />
</ImportGroup>
<PropertyGroup Label="UserMacros" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">

View File

@@ -43,6 +43,12 @@
<ClCompile Include="..\src\valhex.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="..\src\url.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="..\src\valnet.cpp">
<Filter>Source Files</Filter>
</ClCompile>
</ItemGroup>
<ItemGroup>
<ClInclude Include="..\src\stdafx.h">
@@ -75,6 +81,12 @@
<ClInclude Include="..\include\wxex\valhex.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="..\include\wxex\url.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="..\include\wxex\valnet.h">
<Filter>Header Files</Filter>
</ClInclude>
</ItemGroup>
<ItemGroup>
<None Include="..\locale\wxExtend.pot">
@@ -91,6 +103,84 @@
<POCompile Include="..\locale\ru_RU.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="..\locale\bg_BG.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="..\locale\ca_ES.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="..\locale\cs_CZ.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="..\locale\cy_UK.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="..\locale\el_GR.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="..\locale\es_ES.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="..\locale\eu_ES.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="..\locale\fi_FI.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="..\locale\fr_CA.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="..\locale\fr_FR.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="..\locale\gl_ES.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="..\locale\hr_HR.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="..\locale\hu_HU.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="..\locale\is_IS.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="..\locale\it_IT.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="..\locale\ko_KR.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="..\locale\lt_LT.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="..\locale\nb_NO.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="..\locale\nl_NL.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="..\locale\pl_PL.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="..\locale\pt_PT.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="..\locale\sk_SK.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="..\locale\sr_RS.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="..\locale\sv_SE.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="..\locale\tr_TR.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="..\locale\vi_VN.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
</ItemGroup>
<ItemGroup>
<ResourceCompile Include="..\res\wxExtend.rc">

10
build/wxExtendLib.props Normal file
View File

@@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ImportGroup Label="PropertySheets">
<Import Project="wxExtend.props" />
</ImportGroup>
<PropertyGroup Label="UserMacros" />
<PropertyGroup />
<ItemDefinitionGroup />
<ItemGroup />
</Project>

154
build/wxExtendLib.vcxproj Normal file
View File

@@ -0,0 +1,154 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.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="Debug|x64">
<Configuration>Debug</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|Win32">
<Configuration>Release</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|x64">
<Configuration>Release</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
</ItemGroup>
<ItemGroup>
<ClCompile Include="..\src\appbar.cpp" />
<ClCompile Include="..\src\comutils.cpp" />
<ClCompile Include="..\src\crypto.cpp" />
<ClCompile Include="..\src\hex.cpp" />
<ClCompile Include="..\src\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)'=='Release|x64'">Create</PrecompiledHeader>
</ClCompile>
<ClCompile Include="..\src\url.cpp" />
<ClCompile Include="..\src\valhex.cpp" />
<ClCompile Include="..\src\valnet.cpp" />
<ClCompile Include="..\src\xml.cpp" />
</ItemGroup>
<ItemGroup>
<ClInclude Include="..\include\wxex\appbar.h" />
<ClInclude Include="..\include\wxex\common.h" />
<ClInclude Include="..\include\wxex\comutils.h" />
<ClInclude Include="..\include\wxex\crypto.h" />
<ClInclude Include="..\include\wxex\hex.h" />
<ClInclude Include="..\include\wxex\object.h" />
<ClInclude Include="..\include\wxex\persist\auimanager.h" />
<ClInclude Include="..\include\wxex\persist\dialog.h" />
<ClInclude Include="..\include\wxex\url.h" />
<ClInclude Include="..\include\wxex\valhex.h" />
<ClInclude Include="..\include\wxex\valnet.h" />
<ClInclude Include="..\include\wxex\xml.h" />
<ClInclude Include="..\src\stdafx.h" />
</ItemGroup>
<ItemGroup>
<POCompile Include="..\locale\bg_BG.po" />
<POCompile Include="..\locale\ca_ES.po" />
<POCompile Include="..\locale\cs_CZ.po" />
<POCompile Include="..\locale\cy_UK.po" />
<POCompile Include="..\locale\de_DE.po" />
<POCompile Include="..\locale\el_GR.po" />
<POCompile Include="..\locale\es_ES.po" />
<POCompile Include="..\locale\eu_ES.po" />
<POCompile Include="..\locale\fi_FI.po" />
<POCompile Include="..\locale\fr_CA.po" />
<POCompile Include="..\locale\fr_FR.po" />
<POCompile Include="..\locale\gl_ES.po" />
<POCompile Include="..\locale\hr_HR.po" />
<POCompile Include="..\locale\hu_HU.po" />
<POCompile Include="..\locale\is_IS.po" />
<POCompile Include="..\locale\it_IT.po" />
<POCompile Include="..\locale\ko_KR.po" />
<POCompile Include="..\locale\lt_LT.po" />
<POCompile Include="..\locale\nb_NO.po" />
<POCompile Include="..\locale\nl_NL.po" />
<POCompile Include="..\locale\pl_PL.po" />
<POCompile Include="..\locale\pt_PT.po" />
<POCompile Include="..\locale\ru_RU.po" />
<POCompile Include="..\locale\sk_SK.po" />
<POCompile Include="..\locale\sl_SI.po" />
<POCompile Include="..\locale\sr_RS.po" />
<POCompile Include="..\locale\sv_SE.po" />
<POCompile Include="..\locale\tr_TR.po" />
<POCompile Include="..\locale\vi_VN.po" />
</ItemGroup>
<ItemGroup>
<None Include="..\locale\wxExtend.pot" />
</ItemGroup>
<ItemGroup>
<ResourceCompile Include="..\res\wxExtend.rc" />
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectGuid>{D3E29951-D9F5-486D-A167-20AE8E90B1FA}</ProjectGuid>
<RootNamespace>wxExtend</RootNamespace>
<ProjectName>wxExtend</ProjectName>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
<ConfigurationType>StaticLibrary</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<CharacterSet>Unicode</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
<ConfigurationType>StaticLibrary</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<CharacterSet>Unicode</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>StaticLibrary</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
<WholeProgramOptimization>true</WholeProgramOptimization>
<CharacterSet>Unicode</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
<ConfigurationType>StaticLibrary</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
<WholeProgramOptimization>true</WholeProgramOptimization>
<CharacterSet>Unicode</CharacterSet>
</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="..\..\..\include\Win32.props" />
<Import Project="..\..\..\include\Debug.props" />
<Import Project="wxExtendLib.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\x64.props" />
<Import Project="..\..\..\include\Debug.props" />
<Import Project="wxExtendLib.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\Win32.props" />
<Import Project="..\..\..\include\Release.props" />
<Import Project="wxExtendLib.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\x64.props" />
<Import Project="..\..\..\include\Release.props" />
<Import Project="wxExtendLib.props" />
</ImportGroup>
<PropertyGroup Label="UserMacros" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
<PropertyGroup />
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
<Import Project="..\..\..\include\xgettext.targets" />
</ImportGroup>
</Project>

View File

@@ -0,0 +1,193 @@
<?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>
<Filter Include="Resource Files\Localization">
<UniqueIdentifier>{e43059ae-37ac-4b28-84fb-18d1b3972b30}</UniqueIdentifier>
<Extensions>po;pot</Extensions>
</Filter>
<Filter Include="Header Files\persist">
<UniqueIdentifier>{33d4709f-47d3-42c1-9562-bc4743799b49}</UniqueIdentifier>
</Filter>
</ItemGroup>
<ItemGroup>
<ClCompile Include="..\src\stdafx.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="..\src\appbar.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="..\src\comutils.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="..\src\xml.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="..\src\crypto.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="..\src\hex.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="..\src\valhex.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="..\src\url.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="..\src\valnet.cpp">
<Filter>Source Files</Filter>
</ClCompile>
</ItemGroup>
<ItemGroup>
<ClInclude Include="..\src\stdafx.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="..\include\wxex\appbar.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="..\include\wxex\common.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="..\include\wxex\comutils.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="..\include\wxex\xml.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="..\include\wxex\crypto.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="..\include\wxex\hex.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="..\include\wxex\persist\auimanager.h">
<Filter>Header Files\persist</Filter>
</ClInclude>
<ClInclude Include="..\include\wxex\persist\dialog.h">
<Filter>Header Files\persist</Filter>
</ClInclude>
<ClInclude Include="..\include\wxex\valhex.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="..\include\wxex\url.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="..\include\wxex\object.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="..\include\wxex\valnet.h">
<Filter>Header Files</Filter>
</ClInclude>
</ItemGroup>
<ItemGroup>
<None Include="..\locale\wxExtend.pot">
<Filter>Resource Files\Localization</Filter>
</None>
</ItemGroup>
<ItemGroup>
<POCompile Include="..\locale\sl_SI.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="..\locale\de_DE.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="..\locale\ru_RU.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="..\locale\bg_BG.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="..\locale\ca_ES.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="..\locale\cs_CZ.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="..\locale\cy_UK.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="..\locale\el_GR.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="..\locale\es_ES.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="..\locale\eu_ES.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="..\locale\fi_FI.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="..\locale\fr_CA.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="..\locale\fr_FR.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="..\locale\gl_ES.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="..\locale\hr_HR.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="..\locale\hu_HU.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="..\locale\is_IS.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="..\locale\it_IT.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="..\locale\ko_KR.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="..\locale\lt_LT.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="..\locale\nb_NO.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="..\locale\nl_NL.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="..\locale\pl_PL.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="..\locale\pt_PT.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="..\locale\sk_SK.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="..\locale\sr_RS.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="..\locale\sv_SE.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="..\locale\tr_TR.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
<POCompile Include="..\locale\vi_VN.po">
<Filter>Resource Files\Localization</Filter>
</POCompile>
</ItemGroup>
<ItemGroup>
<ResourceCompile Include="..\res\wxExtend.rc">
<Filter>Resource Files</Filter>
</ResourceCompile>
</ItemGroup>
</Project>

View File

@@ -1,5 +1,6 @@
/*
Copyright 2015-2016 Amebis
Copyright 2016 G<>ANT
Based on code written by Jeffrey Richter.
This file is part of wxExtend.
@@ -276,6 +277,12 @@ protected:
};
#ifdef __VISUALC__
// non dll-interface class 'xxx' used as base for dll-interface class 'yyy'
#pragma warning (push)
#pragma warning (disable:4275)
#endif
///
/// Dockable application bar frame
///
@@ -333,6 +340,10 @@ public:
const wxString& name = wxDialogNameStr);
};
#ifdef __VISUALC__
#pragma warning(pop)
#endif
///
/// Returns if the application bar state represents docked state.

View File

@@ -1,5 +1,6 @@
/*
Copyright 2015-2016 Amebis
Copyright 2016 G<>ANT
This file is part of wxExtend.
@@ -23,33 +24,39 @@
///
/// wxExtend Version
///
#define wxEXTEND_VERSION 0x01020000
#define wxEXTEND_VERSION 0x01040000
#define wxEXTEND_VERSION_MAJ 1
#define wxEXTEND_VERSION_MIN 2
#define wxEXTEND_VERSION_MIN 4
#define wxEXTEND_VERSION_REV 0
#define wxEXTEND_VERSION_BUILD 0
#define wxEXTEND_VERSION_STR "1.2"
#define wxEXTEND_VERSION_STR "1.4"
#define wxEXTEND_BUILD_YEAR_STR "2016"
#define wxExtendVersion "12"
#define wxExtendVersion "14"
#if !defined(RC_INVOKED) && !defined(MIDL_PASS)
#include <Windows.h>
#include <wx/config.h>
#include <wx/debug.h>
#include <wx/defs.h>
#include <wx/intl.h>
///
/// Public function calling convention
///
#ifdef WXEXTEND
#define WXEXTEND_API __declspec(dllexport)
#ifndef WXEXTEND_API
#if defined(WXEXTEND_DLL)
#define WXEXTEND_API __declspec(dllexport)
#elif defined(WXEXTEND_DLLIMP)
#define WXEXTEND_API __declspec(dllimport)
#else
#define WXEXTEND_API __declspec(dllimport)
#define WXEXTEND_API
#endif
#endif
@@ -117,5 +124,40 @@ inline bool wxModifyStyleEx(_In_ WXHWND hWnd, _In_ DWORD dwRemove, _In_ DWORD dw
return true;
}
///
/// Inizializes wxWidgets localization scheme
///
/// The language identifier is read from `Language` configuration string ("ll_CC" form expected).
/// The path to folder containing localization catalogue PO files is read from `LocalizationRepositoryPath` configuration string.
///
/// \param[inout] locale Locale to initialize
///
/// \returns
/// - \c true when initialization succeeded
/// - \c false otherwise
///
inline bool wxInitializeLocale(wxLocale &locale)
{
// Read language from configuration.
wxLanguage lang_code;
wxString lang;
if (wxConfigBase::Get()->Read(wxT("Language"), &lang)) {
const wxLanguageInfo *lang_info = wxLocale::FindLanguageInfo(lang);
lang_code = lang_info ? (wxLanguage)lang_info->Language : wxLANGUAGE_DEFAULT;
} else
lang_code = wxLANGUAGE_DEFAULT;
if (wxLocale::IsAvailable(lang_code)) {
// Language is "available". Well... Known actually.
wxString sPath;
if (wxConfigBase::Get()->Read(wxT("LocalizationRepositoryPath"), &sPath))
locale.AddCatalogLookupPathPrefix(sPath);
return locale.Init(lang_code);
}
return false;
}
#endif // !defined(RC_INVOKED) && !defined(MIDL_PASS)
#endif // !defined(__wxEXTEND_common_h__)

View File

@@ -1,5 +1,6 @@
/*
Copyright 2016 Amebis
Copyright 2016 G<>ANT
This file is part of wxExtend.

View File

@@ -1,5 +1,6 @@
/*
Copyright 2016 Amebis
Copyright 2016 G<>ANT
This file is part of wxExtend.
@@ -23,6 +24,7 @@
#include <wx/buffer.h>
#include <wx/ffile.h>
#include <wx/log.h>
#include <wx/string.h>
#include <Wincrypt.h>
@@ -149,7 +151,7 @@ public:
inline bool HashAsUTF8(const wxString &str)
{
const wxScopedCharBuffer buf(str.ToUTF8());
return Hash((const char*)buf.data(), buf.length());
return Hash(buf.data(), buf.length());
}
@@ -167,7 +169,7 @@ public:
wxFFile file(fileName, wxT("rb"));
if (file.IsOpened()) {
wxMemoryBuffer buf(4*1024);
char *data = (char*)buf.GetData();
void *data = buf.GetData();
size_t nBlock = buf.GetBufSize();
while (!file.Eof())
Hash(data, file.Read(data, nBlock));

View File

@@ -1,5 +1,6 @@
/*
Copyright 2015-2016 Amebis
Copyright 2016 G<>ANT
This file is part of wxExtend.
@@ -19,6 +20,8 @@
#pragma once
#include "common.h"
#include "wx/string.h"
#include "wx/buffer.h"
@@ -32,6 +35,7 @@
/// of a buffer of given length
///
/// \param[in] len Length of the buffer
///
/// \returns Maximum encoded representation size (in characters)
///
inline size_t wxHexEncodedSize(size_t len)
@@ -110,6 +114,7 @@ enum wxHexDecodeMode
/// length
///
/// \param[in] len Length of the hex encoded string
///
/// \returns Maximum decoded representation size (in bytes)
///
inline size_t wxHexDecodedSize(size_t len)

56
include/wxex/object.h Normal file
View File

@@ -0,0 +1,56 @@
/*
Copyright 2015-2016 Amebis
Copyright 2016 G<>ANT
This file is part of wxExtend.
wxExtend 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.
wxExtend 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 wxExtend. If not, see <http://www.gnu.org/licenses/>.
*/
#pragma once
#include "common.h"
#include <wx/object.h>
///
/// Helper template for event user data
///
template <class T>
class wxObjectWithData : public wxObject
{
public:
///
/// Default constructor
///
inline wxObjectWithData() {}
///
/// Construct object with data
///
/// \param[in] data Data to initialize object with
///
inline wxObjectWithData(const T &data) : m_data(data) {}
///
/// Construct object with data
///
/// \param[in] data Data to move to object
///
inline wxObjectWithData(T &&data) : m_data(std::move(data)) {}
public:
T m_data; ///< Data
};

View File

@@ -1,5 +1,6 @@
/*
Copyright 2015-2016 Amebis
Copyright 2016 G<>ANT
This file is part of wxExtend.

View File

@@ -1,5 +1,6 @@
/*
Copyright 2015-2016 Amebis
Copyright 2016 G<>ANT
This file is part of wxExtend.

222
include/wxex/url.h Normal file
View File

@@ -0,0 +1,222 @@
/*
Copyright 2015-2016 Amebis
Copyright 2016 G<>ANT
This file is part of wxExtend.
wxExtend 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.
wxExtend 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 wxExtend. If not, see <http://www.gnu.org/licenses/>.
*/
#pragma once
#include "common.h"
#include "wx/string.h"
#include "wx/buffer.h"
///
/// Return if given character should be protected for URL encoding
///
/// \param[in] chr ASCII character
///
/// \returns
/// - \c true if character should be protected
/// - \c false otherwise
///
inline bool wxURLIsProtected(char chr)
{
switch (chr) {
case ' ':
case '!':
case '*':
case '\'':
case '(':
case ')':
case ';':
case ':':
case '@':
case '&':
case '=':
case '+':
case '$':
case ',':
case '/':
case '?':
case '#':
case '[':
case ']': return true;
}
return chr < 0x20;
}
///
/// Return the size needed for the buffer containing the encoded representation
/// of a string of given length
///
/// \param[in] src Source string to encode
/// \param[in] srcLen Length of \p src string (in bytes)
///
/// \returns Maximum encoded representation size (in characters)
///
inline size_t wxURLEncodedSize(size_t len)
{
return len*3;
}
///
/// Raw URL encoding function which encodes the contents of a string of the
/// specified length into the buffer of the specified size
///
/// \param[out] dst Destination buffer to receive URL encoded data
/// \param[in] dstLen Length of \p dst buffer (in characters)
/// \param[in] src Source string to encode
/// \param[in] srcLen Length of \p src string (in bytes)
///
/// \returns The length of the encoded data or wxCONV_FAILED if the buffer is not
/// large enough; to determine the needed size you can either allocate a buffer
/// of \c{wxURLEncodedSize(srcLen)} size or call the function with NULL string in
/// which case the required size will be returned
///
size_t WXEXTEND_API wxURLEncode(char *dst, size_t dstLen, const char *src, size_t srcLen);
///
/// URL encoding function which encodes the contents of a string of the
/// specified length into the wxString
///
/// \param[in] src Source string to encode
/// \param[in] srcLen Length of \p src string (in bytes)
///
/// \returns The URL encoded string
///
inline wxString wxURLEncode(const char *src, size_t srcLen)
{
const size_t dstLen = wxURLEncodedSize(srcLen);
wxCharBuffer dst(dstLen);
dst.shrink(wxURLEncode(dst.data(), dstLen, src, srcLen));
return dst;
}
///
/// URL encoding function which encodes the contents of a string into the wxString
///
/// \param[in] str Source string to encode
///
/// \returns The URL encoded string
///
inline wxString wxURLEncode(const wxString& str)
{
return wxURLEncode(str.GetData(), str.Length());
}
///
/// URL encoding function which encodes the contents of a buffer into the wxString
///
/// \param[in] buf Source buffer to encode
///
/// \returns The URL encoded string
///
inline wxString wxURLEncode(const wxMemoryBuffer& buf)
{
return wxURLEncode(reinterpret_cast<const char*>(buf.GetData()), buf.GetDataLen());
}
// ----------------------------------------------------------------------------
// Decoding Functions
// ----------------------------------------------------------------------------
///
/// Return the buffer size necessary for decoding a URL string of the given
/// length
///
/// \param[in] len Length of the URL encoded string
///
/// \returns Maximum decoded representation size (in bytes)
///
inline size_t wxURLDecodedSize(size_t len)
{
return len;
}
///
/// Raw decoding function which decodes the contents of the string of specified
/// length (or zero terminated by default) into the provided buffer of the given
/// size
///
/// \param[out] dst Destination buffer to receive decoded data
/// \param[in] dstLen Length of \p dst buffer (in bytes)
/// \param[in] src Source buffer to decode
/// \param[in] srcLen Length of \p src buffer (in characters) or wxNO_LEN for zero terminated strings
///
/// \returns The length of the decoded data or wxCONV_FAILED if the buffer is not
/// large enough; to determine the needed size you can either allocate a buffer
/// of \c{wxURLDecodedSize(srcLen)} size or call the function with NULL string in
/// which case the required size will be returned
///
size_t WXEXTEND_API wxURLDecode(char *dst, size_t dstLen, const char *src, size_t srcLen = wxNO_LEN);
///
/// Decoding function which decodes the contents of the string into the provided buffer of the given size
///
/// \param[out] dst Destination buffer to receive decoded data
/// \param[in] dstLen Length of \p dst buffer (in bytes)
/// \param[in] src Source string to decode
///
/// \returns The length of the decoded data or wxCONV_FAILED if the buffer is not
/// large enough; to determine the needed size you can either allocate a buffer
/// of \c{wxURLDecodedSize(srcLen)} size or call the function with NULL string in
/// which case the required size will be returned
///
inline size_t wxURLDecode(char *dst, size_t dstLen, const wxString& src)
{
// don't use str.length() here as the ASCII buffer is shorter than it is for
// strings with embedded NULs
return wxURLDecode(dst, dstLen, src.ToAscii(), wxNO_LEN);
}
///
/// Decoding function which decodes the contents of the string of specified
/// length (or zero terminated by default) into the buffer
///
/// \param[in] src Source buffer to decode
/// \param[in] srcLen Length of \p src buffer (in characters) or wxNO_LEN for zero terminated strings
///
/// \returns Destination buffer with decoded data or an empty buffer if an error occured during decoding
///
wxMemoryBuffer WXEXTEND_API wxURLDecode(const char *src, size_t srcLen = wxNO_LEN);
///
/// Decoding function which decodes the contents of the string into the buffer
///
/// \param[in] src Source string to decode
///
/// \returns Destination buffer with decoded data or an empty buffer if an error occured during decoding
///
inline wxMemoryBuffer wxURLDecode(const wxString& src)
{
// don't use str.length() here as the ASCII buffer is shorter than it for
// strings with embedded NULs
return wxURLDecode(src.ToAscii(), wxNO_LEN);
}

View File

@@ -1,5 +1,6 @@
/*
Copyright 2015-2016 Amebis
Copyright 2016 G<>ANT
This file is part of wxExtend.
@@ -34,6 +35,13 @@ enum wxHexValidatorStyle
};
#ifdef __VISUALC__
// non dll-interface class 'xxx' used as base for dll-interface class 'yyy'
#pragma warning (push)
#pragma warning (disable:4275)
#endif
///
/// Base class for hexadecimal validator
///
@@ -61,6 +69,10 @@ private:
unsigned int m_width; ///< Preferred width of the string - zero padding (<=1 disables padding)
};
#ifdef __VISUALC__
#pragma warning(pop)
#endif
///
/// Validator for hexadecimal entries

172
include/wxex/valnet.h Normal file
View File

@@ -0,0 +1,172 @@
/*
Copyright 2016 Amebis
Copyright 2016 G<>ANT
This file is part of wxExtend.
wxExtend 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.
wxExtend 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 wxExtend. If not, see <http://www.gnu.org/licenses/>.
*/
#pragma once
#include "common.h"
#include <wx/arrstr.h>
#include <wx/textctrl.h>
#include <wx/validate.h>
#ifdef __VISUALC__
// non dll-interface class 'xxx' used as base for dll-interface class 'yyy'
#pragma warning (push)
#pragma warning (disable:4275)
#endif
///
/// Validator for host name
///
class WXEXTEND_API wxHostNameValidator : public wxValidator
{
public:
///
/// Construct the validator with a value to store data
///
wxHostNameValidator(wxString *val = NULL);
///
/// Copies this validator
///
virtual wxObject* Clone() const;
///
/// Validates the value
///
virtual bool Validate(wxWindow *parent);
///
/// Transfers the value to the window
///
virtual bool TransferToWindow();
///
/// Transfers the value from the window
///
virtual bool TransferFromWindow();
///
/// Parses FQDN value
///
static bool Parse(const wxString &val_in, size_t i_start, size_t i_end, wxTextCtrl *ctrl, wxWindow *parent, wxString *val_out = NULL);
protected:
wxString *m_val; ///< Pointer to variable to receive control's parsed value
private:
wxDECLARE_DYNAMIC_CLASS(wxHostNameValidator);
wxDECLARE_NO_ASSIGN_CLASS(wxHostNameValidator);
};
///
/// Validator for FQDN
///
class WXEXTEND_API wxFQDNValidator : public wxValidator
{
public:
///
/// Construct the validator with a value to store data
///
wxFQDNValidator(wxString *val = NULL);
///
/// Copies this validator
///
virtual wxObject* Clone() const;
///
/// Validates the value
///
virtual bool Validate(wxWindow *parent);
///
/// Transfers the value to the window
///
virtual bool TransferToWindow();
///
/// Transfers the value from the window
///
virtual bool TransferFromWindow();
///
/// Parses FQDN value
///
static bool Parse(const wxString &val_in, size_t i_start, size_t i_end, wxTextCtrl *ctrl, wxWindow *parent, wxString *val_out = NULL);
protected:
wxString *m_val; ///< Pointer to variable to receive control's parsed value
private:
wxDECLARE_DYNAMIC_CLASS(wxFQDNValidator);
wxDECLARE_NO_ASSIGN_CLASS(wxFQDNValidator);
};
///
/// Validator for FQDN lists
///
class WXEXTEND_API wxFQDNListValidator : public wxValidator
{
public:
///
/// Construct the validator with a value to store data
///
wxFQDNListValidator(wxArrayString *val = NULL);
///
/// Copies this validator
///
virtual wxObject* Clone() const;
///
/// Validates the value
///
virtual bool Validate(wxWindow *parent);
///
/// Transfers the value to the window
///
virtual bool TransferToWindow();
///
/// Transfers the value from the window
///
virtual bool TransferFromWindow();
///
/// Parses FQDN list value
///
static bool Parse(const wxString &val_in, size_t i_start, size_t i_end, wxTextCtrl *ctrl, wxWindow *parent, wxArrayString *val_out = NULL);
protected:
wxArrayString *m_val; ///< Pointer to variable to receive control's parsed value
private:
wxDECLARE_DYNAMIC_CLASS(wxFQDNListValidator);
wxDECLARE_NO_ASSIGN_CLASS(wxFQDNListValidator);
};
#ifdef __VISUALC__
#pragma warning(pop)
#endif

View File

@@ -1,5 +1,6 @@
/*
Copyright 2016 Amebis
Copyright 2016 G<>ANT
This file is part of wxExtend.
@@ -19,9 +20,10 @@
#pragma once
#include "crypto.h"
#include "common.h"
#include "crypto.h"
#include <wx/string.h>
#include <wx/xml/xml.h>
@@ -37,7 +39,7 @@ inline wxString wxXmlEscapeText(_In_ const wxString& str)
wxString escaped;
escaped.reserve(str.length());
for (wxString::const_iterator i = str.begin(); i != str.end(); ++i) {
for (auto i = str.begin(); i != str.end(); ++i) {
const wxChar c = *i;
switch (c) {
case wxS('<'):
@@ -73,7 +75,7 @@ inline wxString wxXmlEscapeAttr(_In_ const wxString& str)
wxString escaped;
escaped.reserve(str.length());
for (wxString::const_iterator i = str.begin(); i != str.end(); ++i) {
for (auto i = str.begin(); i != str.end(); ++i) {
const wxChar c = *i;
switch (c) {
case wxS('<'):

1
locale/.gitignore vendored
View File

@@ -1 +1,2 @@
/*.mo
/wxextend_*.po

39
locale/bg_BG.po Normal file
View File

@@ -0,0 +1,39 @@
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: wxExtend\n"
"POT-Creation-Date: 2016-10-07 12:59+0200\n"
"PO-Revision-Date: 2016-02-06 09:04+0100\n"
"Language-Team: Bulgarian (Bulgaria) (https://www.transifex.com/eduroam_devel/teams/11799/bg_BG/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: bg_BG\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Poedit 1.8.9\n"
"X-Poedit-Basepath: ..\n"
"X-Poedit-KeywordsList: _\n"
"X-Poedit-SearchPath-0: src\n"
"X-Poedit-SearchPath-1: include\n"
"X-Poedit-SourceCharset: UTF-8\n"
#: src/valnet.cpp:99
#, c-format
msgid "Invalid character in host name found: %c"
msgstr ""
#: src/valnet.cpp:99
msgid "Validation conflict"
msgstr ""
#: include/wxex/appbar.h:981
msgid ""
"There is already an auto hidden bar on this edge.\n"
"Only one auto hidden bar is allowed on each edge.\n"
"Auto-hide feature is now off."
msgstr ""
#: include/wxex/appbar.h:981
msgid "Warning"
msgstr ""

39
locale/ca_ES.po Normal file
View File

@@ -0,0 +1,39 @@
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: wxExtend\n"
"POT-Creation-Date: 2016-10-07 12:59+0200\n"
"PO-Revision-Date: 2016-02-06 09:04+0100\n"
"Language-Team: Catalan (Spain) (https://www.transifex.com/eduroam_devel/teams/11799/ca_ES/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: ca_ES\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Poedit 1.8.9\n"
"X-Poedit-Basepath: ..\n"
"X-Poedit-KeywordsList: _\n"
"X-Poedit-SearchPath-0: src\n"
"X-Poedit-SearchPath-1: include\n"
"X-Poedit-SourceCharset: UTF-8\n"
#: src/valnet.cpp:99
#, c-format
msgid "Invalid character in host name found: %c"
msgstr ""
#: src/valnet.cpp:99
msgid "Validation conflict"
msgstr ""
#: include/wxex/appbar.h:981
msgid ""
"There is already an auto hidden bar on this edge.\n"
"Only one auto hidden bar is allowed on each edge.\n"
"Auto-hide feature is now off."
msgstr ""
#: include/wxex/appbar.h:981
msgid "Warning"
msgstr ""

43
locale/cs_CZ.po Normal file
View File

@@ -0,0 +1,43 @@
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: wxExtend\n"
"POT-Creation-Date: 2016-10-07 12:59+0200\n"
"PO-Revision-Date: 2016-02-06 09:04+0100\n"
"Last-Translator: Martin Šimek <simek.mar@gmail.com>, 2016\n"
"Language-Team: Czech (Czech Republic) (https://www.transifex.com/eduroam_devel/teams/11799/cs_CZ/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: cs_CZ\n"
"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n"
"X-Generator: Poedit 1.8.9\n"
"X-Poedit-Basepath: ..\n"
"X-Poedit-KeywordsList: _\n"
"X-Poedit-SearchPath-0: src\n"
"X-Poedit-SearchPath-1: include\n"
"X-Poedit-SourceCharset: UTF-8\n"
#: src/valnet.cpp:99
#, c-format
msgid "Invalid character in host name found: %c"
msgstr "Nalezen nepovolený znak ve jméně stroje: %c"
#: src/valnet.cpp:99
msgid "Validation conflict"
msgstr "Chyba při kontrole"
#: include/wxex/appbar.h:981
msgid ""
"There is already an auto hidden bar on this edge.\n"
"Only one auto hidden bar is allowed on each edge.\n"
"Auto-hide feature is now off."
msgstr ""
"Na této straně je již automaticky skrytá lišta.\n"
"Je povolena pouze jedna automaticky skrytá lišta na každé straně.\n"
"Funkce automatického skrytí je nyní vypnuta."
#: include/wxex/appbar.h:981
msgid "Warning"
msgstr "Upozornění. "

39
locale/cy_UK.po Normal file
View File

@@ -0,0 +1,39 @@
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: wxExtend\n"
"POT-Creation-Date: 2016-10-07 12:59+0200\n"
"PO-Revision-Date: 2016-02-06 09:04+0100\n"
"Language-Team: Welsh (https://www.transifex.com/eduroam_devel/teams/11799/cy/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: cy\n"
"Plural-Forms: nplurals=4; plural=(n==1) ? 0 : (n==2) ? 1 : (n != 8 && n != 11) ? 2 : 3;\n"
"X-Generator: Poedit 1.8.9\n"
"X-Poedit-Basepath: ..\n"
"X-Poedit-KeywordsList: _\n"
"X-Poedit-SearchPath-0: src\n"
"X-Poedit-SearchPath-1: include\n"
"X-Poedit-SourceCharset: UTF-8\n"
#: src/valnet.cpp:99
#, c-format
msgid "Invalid character in host name found: %c"
msgstr ""
#: src/valnet.cpp:99
msgid "Validation conflict"
msgstr ""
#: include/wxex/appbar.h:981
msgid ""
"There is already an auto hidden bar on this edge.\n"
"Only one auto hidden bar is allowed on each edge.\n"
"Auto-hide feature is now off."
msgstr ""
#: include/wxex/appbar.h:981
msgid "Warning"
msgstr ""

View File

@@ -1,19 +1,32 @@
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: wxExtend\n"
"POT-Creation-Date: 2016-05-13 19:22+0200\n"
"PO-Revision-Date: 2016-05-13 19:33+0200\n"
"Last-Translator: Simon Rozman <simon.rozman@amebis.si>\n"
"Language-Team: Amebis, d. o. o., Kamnik <info@amebis.si>\n"
"Language: de_DE\n"
"POT-Creation-Date: 2016-10-07 12:59+0200\n"
"PO-Revision-Date: 2016-02-06 09:04+0100\n"
"Last-Translator: Simon Rozman <simon@rozman.si>, 2016\n"
"Language-Team: German (https://www.transifex.com/eduroam_devel/teams/11799/de/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: Poedit 1.8.7\n"
"X-Poedit-Basepath: .\n"
"Language: de\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Poedit-SourceCharset: UTF-8\n"
"X-Generator: Poedit 1.8.9\n"
"X-Poedit-Basepath: ..\n"
"X-Poedit-KeywordsList: _\n"
"X-Poedit-SearchPath-0: src\n"
"X-Poedit-SearchPath-1: include\n"
"X-Poedit-SourceCharset: UTF-8\n"
#: src/valnet.cpp:99
#, c-format
msgid "Invalid character in host name found: %c"
msgstr "Ungültiger Buchstabe im Servernamen gefunden: %c"
#: src/valnet.cpp:99
msgid "Validation conflict"
msgstr "Fehler bei der Validierung"
#: include/wxex/appbar.h:981
msgid ""
@@ -23,6 +36,5 @@ msgid ""
msgstr ""
#: include/wxex/appbar.h:981
#, fuzzy
msgid "Warning"
msgstr "Warnung: "
msgstr "Warnung"

43
locale/el_GR.po Normal file
View File

@@ -0,0 +1,43 @@
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: wxExtend\n"
"POT-Creation-Date: 2016-10-07 12:59+0200\n"
"PO-Revision-Date: 2016-02-06 09:04+0100\n"
"Last-Translator: Vicky Kons <vickyk@admin.grnet.gr>, 2016\n"
"Language-Team: Greek (https://www.transifex.com/eduroam_devel/teams/11799/el/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: el\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Poedit 1.8.9\n"
"X-Poedit-Basepath: ..\n"
"X-Poedit-KeywordsList: _\n"
"X-Poedit-SearchPath-0: src\n"
"X-Poedit-SearchPath-1: include\n"
"X-Poedit-SourceCharset: UTF-8\n"
#: src/valnet.cpp:99
#, c-format
msgid "Invalid character in host name found: %c"
msgstr "Βρέθηκε μη έγκυρος χαρακτήρας στο hostname: %c"
#: src/valnet.cpp:99
msgid "Validation conflict"
msgstr "Πρόβλημα επικύρωσης"
#: include/wxex/appbar.h:981
msgid ""
"There is already an auto hidden bar on this edge.\n"
"Only one auto hidden bar is allowed on each edge.\n"
"Auto-hide feature is now off."
msgstr ""
"Υπάρχει ήδη ένα αυτόματο κρυμμένο μενού σε αυτό το ακριανό πλαίσιο.\n"
"Μόνο ένα αυτόματο κρυμμένο μενού επιτρέπεται σε κάθε ακριανό πλαίσιο.\n"
"Το χαρακτηριστικό της αυτόματης απόκρυψης είναι πλέον απενεργοποιημένο."
#: include/wxex/appbar.h:981
msgid "Warning"
msgstr "Προειδοποίηση"

40
locale/es_ES.po Normal file
View File

@@ -0,0 +1,40 @@
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: wxExtend\n"
"POT-Creation-Date: 2016-10-07 12:59+0200\n"
"PO-Revision-Date: 2016-02-06 09:04+0100\n"
"Last-Translator: Simon Rozman <simon@rozman.si>, 2016\n"
"Language-Team: Spanish (https://www.transifex.com/eduroam_devel/teams/11799/es/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: es\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Poedit 1.8.9\n"
"X-Poedit-Basepath: ..\n"
"X-Poedit-KeywordsList: _\n"
"X-Poedit-SearchPath-0: src\n"
"X-Poedit-SearchPath-1: include\n"
"X-Poedit-SourceCharset: UTF-8\n"
#: src/valnet.cpp:99
#, c-format
msgid "Invalid character in host name found: %c"
msgstr "Carácter no válido en el nombre: %c"
#: src/valnet.cpp:99
msgid "Validation conflict"
msgstr "Conflicto de validación"
#: include/wxex/appbar.h:981
msgid ""
"There is already an auto hidden bar on this edge.\n"
"Only one auto hidden bar is allowed on each edge.\n"
"Auto-hide feature is now off."
msgstr ""
#: include/wxex/appbar.h:981
msgid "Warning"
msgstr "Advertencia"

39
locale/eu_ES.po Normal file
View File

@@ -0,0 +1,39 @@
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: wxExtend\n"
"POT-Creation-Date: 2016-10-07 12:59+0200\n"
"PO-Revision-Date: 2016-02-06 09:04+0100\n"
"Language-Team: Basque (Spain) (https://www.transifex.com/eduroam_devel/teams/11799/eu_ES/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: eu_ES\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Poedit 1.8.9\n"
"X-Poedit-Basepath: ..\n"
"X-Poedit-KeywordsList: _\n"
"X-Poedit-SearchPath-0: src\n"
"X-Poedit-SearchPath-1: include\n"
"X-Poedit-SourceCharset: UTF-8\n"
#: src/valnet.cpp:99
#, c-format
msgid "Invalid character in host name found: %c"
msgstr ""
#: src/valnet.cpp:99
msgid "Validation conflict"
msgstr ""
#: include/wxex/appbar.h:981
msgid ""
"There is already an auto hidden bar on this edge.\n"
"Only one auto hidden bar is allowed on each edge.\n"
"Auto-hide feature is now off."
msgstr ""
#: include/wxex/appbar.h:981
msgid "Warning"
msgstr ""

39
locale/fi_FI.po Normal file
View File

@@ -0,0 +1,39 @@
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: wxExtend\n"
"POT-Creation-Date: 2016-10-07 12:59+0200\n"
"PO-Revision-Date: 2016-02-06 09:04+0100\n"
"Language-Team: Finnish (Finland) (https://www.transifex.com/eduroam_devel/teams/11799/fi_FI/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: fi_FI\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Poedit 1.8.9\n"
"X-Poedit-Basepath: ..\n"
"X-Poedit-KeywordsList: _\n"
"X-Poedit-SearchPath-0: src\n"
"X-Poedit-SearchPath-1: include\n"
"X-Poedit-SourceCharset: UTF-8\n"
#: src/valnet.cpp:99
#, c-format
msgid "Invalid character in host name found: %c"
msgstr ""
#: src/valnet.cpp:99
msgid "Validation conflict"
msgstr ""
#: include/wxex/appbar.h:981
msgid ""
"There is already an auto hidden bar on this edge.\n"
"Only one auto hidden bar is allowed on each edge.\n"
"Auto-hide feature is now off."
msgstr ""
#: include/wxex/appbar.h:981
msgid "Warning"
msgstr ""

39
locale/fr_CA.po Normal file
View File

@@ -0,0 +1,39 @@
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: wxExtend\n"
"POT-Creation-Date: 2016-10-07 12:59+0200\n"
"PO-Revision-Date: 2016-02-06 09:04+0100\n"
"Language-Team: French (Canada) (https://www.transifex.com/eduroam_devel/teams/11799/fr_CA/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: fr_CA\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
"X-Generator: Poedit 1.8.9\n"
"X-Poedit-Basepath: ..\n"
"X-Poedit-KeywordsList: _\n"
"X-Poedit-SearchPath-0: src\n"
"X-Poedit-SearchPath-1: include\n"
"X-Poedit-SourceCharset: UTF-8\n"
#: src/valnet.cpp:99
#, c-format
msgid "Invalid character in host name found: %c"
msgstr ""
#: src/valnet.cpp:99
msgid "Validation conflict"
msgstr ""
#: include/wxex/appbar.h:981
msgid ""
"There is already an auto hidden bar on this edge.\n"
"Only one auto hidden bar is allowed on each edge.\n"
"Auto-hide feature is now off."
msgstr ""
#: include/wxex/appbar.h:981
msgid "Warning"
msgstr ""

39
locale/fr_FR.po Normal file
View File

@@ -0,0 +1,39 @@
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: wxExtend\n"
"POT-Creation-Date: 2016-10-07 12:59+0200\n"
"PO-Revision-Date: 2016-02-06 09:04+0100\n"
"Language-Team: French (France) (https://www.transifex.com/eduroam_devel/teams/11799/fr_FR/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: fr_FR\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
"X-Generator: Poedit 1.8.9\n"
"X-Poedit-Basepath: ..\n"
"X-Poedit-KeywordsList: _\n"
"X-Poedit-SearchPath-0: src\n"
"X-Poedit-SearchPath-1: include\n"
"X-Poedit-SourceCharset: UTF-8\n"
#: src/valnet.cpp:99
#, c-format
msgid "Invalid character in host name found: %c"
msgstr ""
#: src/valnet.cpp:99
msgid "Validation conflict"
msgstr ""
#: include/wxex/appbar.h:981
msgid ""
"There is already an auto hidden bar on this edge.\n"
"Only one auto hidden bar is allowed on each edge.\n"
"Auto-hide feature is now off."
msgstr ""
#: include/wxex/appbar.h:981
msgid "Warning"
msgstr ""

39
locale/gl_ES.po Normal file
View File

@@ -0,0 +1,39 @@
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: wxExtend\n"
"POT-Creation-Date: 2016-10-07 12:59+0200\n"
"PO-Revision-Date: 2016-02-06 09:04+0100\n"
"Language-Team: Galician (Spain) (https://www.transifex.com/eduroam_devel/teams/11799/gl_ES/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: gl_ES\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Poedit 1.8.9\n"
"X-Poedit-Basepath: ..\n"
"X-Poedit-KeywordsList: _\n"
"X-Poedit-SearchPath-0: src\n"
"X-Poedit-SearchPath-1: include\n"
"X-Poedit-SourceCharset: UTF-8\n"
#: src/valnet.cpp:99
#, c-format
msgid "Invalid character in host name found: %c"
msgstr ""
#: src/valnet.cpp:99
msgid "Validation conflict"
msgstr ""
#: include/wxex/appbar.h:981
msgid ""
"There is already an auto hidden bar on this edge.\n"
"Only one auto hidden bar is allowed on each edge.\n"
"Auto-hide feature is now off."
msgstr ""
#: include/wxex/appbar.h:981
msgid "Warning"
msgstr ""

40
locale/hr_HR.po Normal file
View File

@@ -0,0 +1,40 @@
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: wxExtend\n"
"POT-Creation-Date: 2016-10-07 12:59+0200\n"
"PO-Revision-Date: 2016-02-06 09:04+0100\n"
"Last-Translator: Simon Rozman <simon@rozman.si>, 2016\n"
"Language-Team: Croatian (Croatia) (https://www.transifex.com/eduroam_devel/teams/11799/hr_HR/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: hr_HR\n"
"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
"X-Generator: Poedit 1.8.9\n"
"X-Poedit-Basepath: ..\n"
"X-Poedit-KeywordsList: _\n"
"X-Poedit-SearchPath-0: src\n"
"X-Poedit-SearchPath-1: include\n"
"X-Poedit-SourceCharset: UTF-8\n"
#: src/valnet.cpp:99
#, c-format
msgid "Invalid character in host name found: %c"
msgstr "Nevažeći znak u imenu poslužitelja %c"
#: src/valnet.cpp:99
msgid "Validation conflict"
msgstr "Problem s provjerom"
#: include/wxex/appbar.h:981
msgid ""
"There is already an auto hidden bar on this edge.\n"
"Only one auto hidden bar is allowed on each edge.\n"
"Auto-hide feature is now off."
msgstr ""
#: include/wxex/appbar.h:981
msgid "Warning"
msgstr "Upozorenje"

39
locale/hu_HU.po Normal file
View File

@@ -0,0 +1,39 @@
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: wxExtend\n"
"POT-Creation-Date: 2016-10-07 12:59+0200\n"
"PO-Revision-Date: 2016-02-06 09:04+0100\n"
"Language-Team: Hungarian (https://www.transifex.com/eduroam_devel/teams/11799/hu/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: hu\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Poedit 1.8.9\n"
"X-Poedit-Basepath: ..\n"
"X-Poedit-KeywordsList: _\n"
"X-Poedit-SearchPath-0: src\n"
"X-Poedit-SearchPath-1: include\n"
"X-Poedit-SourceCharset: UTF-8\n"
#: src/valnet.cpp:99
#, c-format
msgid "Invalid character in host name found: %c"
msgstr ""
#: src/valnet.cpp:99
msgid "Validation conflict"
msgstr ""
#: include/wxex/appbar.h:981
msgid ""
"There is already an auto hidden bar on this edge.\n"
"Only one auto hidden bar is allowed on each edge.\n"
"Auto-hide feature is now off."
msgstr ""
#: include/wxex/appbar.h:981
msgid "Warning"
msgstr ""

39
locale/is_IS.po Normal file
View File

@@ -0,0 +1,39 @@
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: wxExtend\n"
"POT-Creation-Date: 2016-10-07 12:59+0200\n"
"PO-Revision-Date: 2016-02-06 09:04+0100\n"
"Language-Team: Icelandic (https://www.transifex.com/eduroam_devel/teams/11799/is/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: is\n"
"Plural-Forms: nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);\n"
"X-Generator: Poedit 1.8.9\n"
"X-Poedit-Basepath: ..\n"
"X-Poedit-KeywordsList: _\n"
"X-Poedit-SearchPath-0: src\n"
"X-Poedit-SearchPath-1: include\n"
"X-Poedit-SourceCharset: UTF-8\n"
#: src/valnet.cpp:99
#, c-format
msgid "Invalid character in host name found: %c"
msgstr ""
#: src/valnet.cpp:99
msgid "Validation conflict"
msgstr ""
#: include/wxex/appbar.h:981
msgid ""
"There is already an auto hidden bar on this edge.\n"
"Only one auto hidden bar is allowed on each edge.\n"
"Auto-hide feature is now off."
msgstr ""
#: include/wxex/appbar.h:981
msgid "Warning"
msgstr ""

39
locale/it_IT.po Normal file
View File

@@ -0,0 +1,39 @@
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: wxExtend\n"
"POT-Creation-Date: 2016-10-07 12:59+0200\n"
"PO-Revision-Date: 2016-02-06 09:04+0100\n"
"Language-Team: Italian (Italy) (https://www.transifex.com/eduroam_devel/teams/11799/it_IT/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: it_IT\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Poedit 1.8.9\n"
"X-Poedit-Basepath: ..\n"
"X-Poedit-KeywordsList: _\n"
"X-Poedit-SearchPath-0: src\n"
"X-Poedit-SearchPath-1: include\n"
"X-Poedit-SourceCharset: UTF-8\n"
#: src/valnet.cpp:99
#, c-format
msgid "Invalid character in host name found: %c"
msgstr ""
#: src/valnet.cpp:99
msgid "Validation conflict"
msgstr ""
#: include/wxex/appbar.h:981
msgid ""
"There is already an auto hidden bar on this edge.\n"
"Only one auto hidden bar is allowed on each edge.\n"
"Auto-hide feature is now off."
msgstr ""
#: include/wxex/appbar.h:981
msgid "Warning"
msgstr ""

39
locale/ko_KR.po Normal file
View File

@@ -0,0 +1,39 @@
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: wxExtend\n"
"POT-Creation-Date: 2016-10-07 12:59+0200\n"
"PO-Revision-Date: 2016-02-06 09:04+0100\n"
"Language-Team: Korean (Korea) (https://www.transifex.com/eduroam_devel/teams/11799/ko_KR/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: ko_KR\n"
"Plural-Forms: nplurals=1; plural=0;\n"
"X-Generator: Poedit 1.8.9\n"
"X-Poedit-Basepath: ..\n"
"X-Poedit-KeywordsList: _\n"
"X-Poedit-SearchPath-0: src\n"
"X-Poedit-SearchPath-1: include\n"
"X-Poedit-SourceCharset: UTF-8\n"
#: src/valnet.cpp:99
#, c-format
msgid "Invalid character in host name found: %c"
msgstr ""
#: src/valnet.cpp:99
msgid "Validation conflict"
msgstr ""
#: include/wxex/appbar.h:981
msgid ""
"There is already an auto hidden bar on this edge.\n"
"Only one auto hidden bar is allowed on each edge.\n"
"Auto-hide feature is now off."
msgstr ""
#: include/wxex/appbar.h:981
msgid "Warning"
msgstr ""

40
locale/lt_LT.po Normal file
View File

@@ -0,0 +1,40 @@
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: wxExtend\n"
"POT-Creation-Date: 2016-10-07 12:59+0200\n"
"PO-Revision-Date: 2016-02-06 09:04+0100\n"
"Last-Translator: Simon Rozman <simon@rozman.si>, 2016\n"
"Language-Team: Lithuanian (https://www.transifex.com/eduroam_devel/teams/11799/lt/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: lt\n"
"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
"X-Generator: Poedit 1.8.9\n"
"X-Poedit-Basepath: ..\n"
"X-Poedit-KeywordsList: _\n"
"X-Poedit-SearchPath-0: src\n"
"X-Poedit-SearchPath-1: include\n"
"X-Poedit-SourceCharset: UTF-8\n"
#: src/valnet.cpp:99
#, c-format
msgid "Invalid character in host name found: %c"
msgstr "Kompiuterio varde aptiktas netinkamas simbolis: %c"
#: src/valnet.cpp:99
msgid "Validation conflict"
msgstr "Patikra nesėkminga"
#: include/wxex/appbar.h:981
msgid ""
"There is already an auto hidden bar on this edge.\n"
"Only one auto hidden bar is allowed on each edge.\n"
"Auto-hide feature is now off."
msgstr ""
#: include/wxex/appbar.h:981
msgid "Warning"
msgstr "Įspėjimas"

43
locale/nb_NO.po Normal file
View File

@@ -0,0 +1,43 @@
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: wxExtend\n"
"POT-Creation-Date: 2016-10-07 12:59+0200\n"
"PO-Revision-Date: 2016-02-06 09:04+0100\n"
"Last-Translator: Tom Ivar Myren <tom.myren@uninett.no>, 2016\n"
"Language-Team: Norwegian Bokmål (https://www.transifex.com/eduroam_devel/teams/11799/nb/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: nb\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Poedit 1.8.9\n"
"X-Poedit-Basepath: ..\n"
"X-Poedit-KeywordsList: _\n"
"X-Poedit-SearchPath-0: src\n"
"X-Poedit-SearchPath-1: include\n"
"X-Poedit-SourceCharset: UTF-8\n"
#: src/valnet.cpp:99
#, c-format
msgid "Invalid character in host name found: %c"
msgstr "Ugyldig tegn funnet i navn: %c"
#: src/valnet.cpp:99
msgid "Validation conflict"
msgstr "Valideringskonflikt"
#: include/wxex/appbar.h:981
msgid ""
"There is already an auto hidden bar on this edge.\n"
"Only one auto hidden bar is allowed on each edge.\n"
"Auto-hide feature is now off."
msgstr ""
"There is already an auto hidden bar on this edge.\n"
"Only one auto hidden bar is allowed on each edge.\n"
"Auto-hide feature is now off."
#: include/wxex/appbar.h:981
msgid "Warning"
msgstr "Advarsel"

39
locale/nl_NL.po Normal file
View File

@@ -0,0 +1,39 @@
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: wxExtend\n"
"POT-Creation-Date: 2016-10-07 12:59+0200\n"
"PO-Revision-Date: 2016-02-06 09:04+0100\n"
"Language-Team: Dutch (https://www.transifex.com/eduroam_devel/teams/11799/nl/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: nl\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Poedit 1.8.9\n"
"X-Poedit-Basepath: ..\n"
"X-Poedit-KeywordsList: _\n"
"X-Poedit-SearchPath-0: src\n"
"X-Poedit-SearchPath-1: include\n"
"X-Poedit-SourceCharset: UTF-8\n"
#: src/valnet.cpp:99
#, c-format
msgid "Invalid character in host name found: %c"
msgstr ""
#: src/valnet.cpp:99
msgid "Validation conflict"
msgstr ""
#: include/wxex/appbar.h:981
msgid ""
"There is already an auto hidden bar on this edge.\n"
"Only one auto hidden bar is allowed on each edge.\n"
"Auto-hide feature is now off."
msgstr ""
#: include/wxex/appbar.h:981
msgid "Warning"
msgstr ""

40
locale/pl_PL.po Normal file
View File

@@ -0,0 +1,40 @@
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: wxExtend\n"
"POT-Creation-Date: 2016-10-07 12:59+0200\n"
"PO-Revision-Date: 2016-02-06 09:04+0100\n"
"Last-Translator: Simon Rozman <simon@rozman.si>, 2016\n"
"Language-Team: Polish (Poland) (https://www.transifex.com/eduroam_devel/teams/11799/pl_PL/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: pl_PL\n"
"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
"X-Generator: Poedit 1.8.9\n"
"X-Poedit-Basepath: ..\n"
"X-Poedit-KeywordsList: _\n"
"X-Poedit-SearchPath-0: src\n"
"X-Poedit-SearchPath-1: include\n"
"X-Poedit-SourceCharset: UTF-8\n"
#: src/valnet.cpp:99
#, c-format
msgid "Invalid character in host name found: %c"
msgstr "W nazwie hosta znaleziono nieprawidłowy znak: %c"
#: src/valnet.cpp:99
msgid "Validation conflict"
msgstr "Błąd walidacji danych"
#: include/wxex/appbar.h:981
msgid ""
"There is already an auto hidden bar on this edge.\n"
"Only one auto hidden bar is allowed on each edge.\n"
"Auto-hide feature is now off."
msgstr ""
#: include/wxex/appbar.h:981
msgid "Warning"
msgstr "Ostrzeżenie"

39
locale/pt_PT.po Normal file
View File

@@ -0,0 +1,39 @@
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: wxExtend\n"
"POT-Creation-Date: 2016-10-07 12:59+0200\n"
"PO-Revision-Date: 2016-02-06 09:04+0100\n"
"Language-Team: Portuguese (Portugal) (https://www.transifex.com/eduroam_devel/teams/11799/pt_PT/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: pt_PT\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Poedit 1.8.9\n"
"X-Poedit-Basepath: ..\n"
"X-Poedit-KeywordsList: _\n"
"X-Poedit-SearchPath-0: src\n"
"X-Poedit-SearchPath-1: include\n"
"X-Poedit-SourceCharset: UTF-8\n"
#: src/valnet.cpp:99
#, c-format
msgid "Invalid character in host name found: %c"
msgstr ""
#: src/valnet.cpp:99
msgid "Validation conflict"
msgstr ""
#: include/wxex/appbar.h:981
msgid ""
"There is already an auto hidden bar on this edge.\n"
"Only one auto hidden bar is allowed on each edge.\n"
"Auto-hide feature is now off."
msgstr ""
#: include/wxex/appbar.h:981
msgid "Warning"
msgstr ""

View File

@@ -1,20 +1,32 @@
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: wxExtend\n"
"POT-Creation-Date: 2016-05-13 19:23+0200\n"
"PO-Revision-Date: 2016-05-13 19:32+0200\n"
"Last-Translator: Simon Rozman <simon.rozman@amebis.si>\n"
"Language-Team: Amebis, d. o. o., Kamnik <info@amebis.si>\n"
"Language: ru_RU\n"
"POT-Creation-Date: 2016-10-07 12:59+0200\n"
"PO-Revision-Date: 2016-02-06 09:04+0100\n"
"Last-Translator: Simon Rozman <simon@rozman.si>, 2016\n"
"Language-Team: Russian (Russia) (https://www.transifex.com/eduroam_devel/teams/11799/ru_RU/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: Poedit 1.8.7\n"
"X-Poedit-Basepath: .\n"
"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
"X-Poedit-SourceCharset: UTF-8\n"
"Language: ru_RU\n"
"Plural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\n"
"X-Generator: Poedit 1.8.9\n"
"X-Poedit-Basepath: ..\n"
"X-Poedit-KeywordsList: _\n"
"X-Poedit-SearchPath-0: src\n"
"X-Poedit-SearchPath-1: include\n"
"X-Poedit-SourceCharset: UTF-8\n"
#: src/valnet.cpp:99
#, c-format
msgid "Invalid character in host name found: %c"
msgstr ""
#: src/valnet.cpp:99
msgid "Validation conflict"
msgstr ""
#: include/wxex/appbar.h:981
msgid ""
@@ -22,7 +34,10 @@ msgid ""
"Only one auto hidden bar is allowed on each edge.\n"
"Auto-hide feature is now off."
msgstr ""
"На этом месте уже автоматически скрыта панель.\n"
"На каждом месте может находится только одна автоматически скрыта панель.\n"
"Автоматическое скрытие теперь выключен."
#: include/wxex/appbar.h:981
msgid "Warning"
msgstr ""
msgstr "Предупреждение"

39
locale/sk_SK.po Normal file
View File

@@ -0,0 +1,39 @@
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: wxExtend\n"
"POT-Creation-Date: 2016-10-07 12:59+0200\n"
"PO-Revision-Date: 2016-02-06 09:04+0100\n"
"Language-Team: Slovak (Slovakia) (https://www.transifex.com/eduroam_devel/teams/11799/sk_SK/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: sk_SK\n"
"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n"
"X-Generator: Poedit 1.8.9\n"
"X-Poedit-Basepath: ..\n"
"X-Poedit-KeywordsList: _\n"
"X-Poedit-SearchPath-0: src\n"
"X-Poedit-SearchPath-1: include\n"
"X-Poedit-SourceCharset: UTF-8\n"
#: src/valnet.cpp:99
#, c-format
msgid "Invalid character in host name found: %c"
msgstr ""
#: src/valnet.cpp:99
msgid "Validation conflict"
msgstr ""
#: include/wxex/appbar.h:981
msgid ""
"There is already an auto hidden bar on this edge.\n"
"Only one auto hidden bar is allowed on each edge.\n"
"Auto-hide feature is now off."
msgstr ""
#: include/wxex/appbar.h:981
msgid "Warning"
msgstr ""

View File

@@ -1,20 +1,32 @@
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: wxExtend\n"
"POT-Creation-Date: 2016-03-14 17:16+0100\n"
"PO-Revision-Date: 2016-05-13 19:32+0200\n"
"Last-Translator: Simon Rozman <simon.rozman@amebis.si>\n"
"Language-Team: Amebis, d. o. o., Kamnik <info@amebis.si>\n"
"Language: sl_SI\n"
"POT-Creation-Date: 2016-10-07 12:59+0200\n"
"PO-Revision-Date: 2016-02-06 09:04+0100\n"
"Last-Translator: Simon Rozman <simon@rozman.si>, 2016\n"
"Language-Team: Slovenian (Slovenia) (https://www.transifex.com/eduroam_devel/teams/11799/sl_SI/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: Poedit 1.8.7\n"
"X-Poedit-Basepath: .\n"
"Plural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n"
"%100==4 ? 2 : 3);\n"
"X-Poedit-SourceCharset: UTF-8\n"
"Language: sl_SI\n"
"Plural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\n"
"X-Generator: Poedit 1.8.9\n"
"X-Poedit-Basepath: ..\n"
"X-Poedit-KeywordsList: _\n"
"X-Poedit-SearchPath-0: src\n"
"X-Poedit-SearchPath-1: include\n"
"X-Poedit-SourceCharset: UTF-8\n"
#: src/valnet.cpp:99
#, c-format
msgid "Invalid character in host name found: %c"
msgstr "Napačen znak v imenu gostitelja: %c"
#: src/valnet.cpp:99
msgid "Validation conflict"
msgstr "Nesoglasje pri preverjanju"
#: include/wxex/appbar.h:981
msgid ""

43
locale/sr_RS.po Normal file
View File

@@ -0,0 +1,43 @@
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: wxExtend\n"
"POT-Creation-Date: 2016-10-07 12:59+0200\n"
"PO-Revision-Date: 2016-02-06 09:04+0100\n"
"Last-Translator: Marko Eremija <marko.eremija@amres.ac.rs>, 2016\n"
"Language-Team: Serbian (https://www.transifex.com/eduroam_devel/teams/11799/sr/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: sr\n"
"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
"X-Generator: Poedit 1.8.9\n"
"X-Poedit-Basepath: ..\n"
"X-Poedit-KeywordsList: _\n"
"X-Poedit-SearchPath-0: src\n"
"X-Poedit-SearchPath-1: include\n"
"X-Poedit-SourceCharset: UTF-8\n"
#: src/valnet.cpp:99
#, c-format
msgid "Invalid character in host name found: %c"
msgstr "Neispravan karakter je pronađen u DNS imenu: %c"
#: src/valnet.cpp:99
msgid "Validation conflict"
msgstr "Konflikt prilikom validacije"
#: include/wxex/appbar.h:981
msgid ""
"There is already an auto hidden bar on this edge.\n"
"Only one auto hidden bar is allowed on each edge.\n"
"Auto-hide feature is now off."
msgstr ""
"Na ovoj ivici već postoji sakriven klizač.\n"
"Dozvoljen je samo po jedan sakriven klizač na svakoj ivici.\n"
"Opcija za automatsko sakrivanje je isključena. "
#: include/wxex/appbar.h:981
msgid "Warning"
msgstr "Upozorenje"

39
locale/sv_SE.po Normal file
View File

@@ -0,0 +1,39 @@
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: wxExtend\n"
"POT-Creation-Date: 2016-10-07 12:59+0200\n"
"PO-Revision-Date: 2016-02-06 09:04+0100\n"
"Language-Team: Swedish (https://www.transifex.com/eduroam_devel/teams/11799/sv/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: sv\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Poedit 1.8.9\n"
"X-Poedit-Basepath: ..\n"
"X-Poedit-KeywordsList: _\n"
"X-Poedit-SearchPath-0: src\n"
"X-Poedit-SearchPath-1: include\n"
"X-Poedit-SourceCharset: UTF-8\n"
#: src/valnet.cpp:99
#, c-format
msgid "Invalid character in host name found: %c"
msgstr ""
#: src/valnet.cpp:99
msgid "Validation conflict"
msgstr ""
#: include/wxex/appbar.h:981
msgid ""
"There is already an auto hidden bar on this edge.\n"
"Only one auto hidden bar is allowed on each edge.\n"
"Auto-hide feature is now off."
msgstr ""
#: include/wxex/appbar.h:981
msgid "Warning"
msgstr ""

39
locale/tr_TR.po Normal file
View File

@@ -0,0 +1,39 @@
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: wxExtend\n"
"POT-Creation-Date: 2016-10-07 12:59+0200\n"
"PO-Revision-Date: 2016-02-06 09:04+0100\n"
"Language-Team: Turkish (https://www.transifex.com/eduroam_devel/teams/11799/tr/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: tr\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
"X-Generator: Poedit 1.8.9\n"
"X-Poedit-Basepath: ..\n"
"X-Poedit-KeywordsList: _\n"
"X-Poedit-SearchPath-0: src\n"
"X-Poedit-SearchPath-1: include\n"
"X-Poedit-SourceCharset: UTF-8\n"
#: src/valnet.cpp:99
#, c-format
msgid "Invalid character in host name found: %c"
msgstr ""
#: src/valnet.cpp:99
msgid "Validation conflict"
msgstr ""
#: include/wxex/appbar.h:981
msgid ""
"There is already an auto hidden bar on this edge.\n"
"Only one auto hidden bar is allowed on each edge.\n"
"Auto-hide feature is now off."
msgstr ""
#: include/wxex/appbar.h:981
msgid "Warning"
msgstr ""

39
locale/vi_VN.po Normal file
View File

@@ -0,0 +1,39 @@
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: wxExtend\n"
"POT-Creation-Date: 2016-10-07 12:59+0200\n"
"PO-Revision-Date: 2016-02-06 09:04+0100\n"
"Language-Team: Vietnamese (https://www.transifex.com/eduroam_devel/teams/11799/vi/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: vi\n"
"Plural-Forms: nplurals=1; plural=0;\n"
"X-Generator: Poedit 1.8.9\n"
"X-Poedit-Basepath: ..\n"
"X-Poedit-KeywordsList: _\n"
"X-Poedit-SearchPath-0: src\n"
"X-Poedit-SearchPath-1: include\n"
"X-Poedit-SourceCharset: UTF-8\n"
#: src/valnet.cpp:99
#, c-format
msgid "Invalid character in host name found: %c"
msgstr ""
#: src/valnet.cpp:99
msgid "Validation conflict"
msgstr ""
#: include/wxex/appbar.h:981
msgid ""
"There is already an auto hidden bar on this edge.\n"
"Only one auto hidden bar is allowed on each edge.\n"
"Auto-hide feature is now off."
msgstr ""
#: include/wxex/appbar.h:981
msgid "Warning"
msgstr ""

View File

@@ -1,7 +1,8 @@
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: wxExtend\n"
"POT-Creation-Date: 2016-02-06 09:04+0100\n"
"POT-Creation-Date: 2016-10-07 12:59+0200\n"
"PO-Revision-Date: 2016-02-06 09:04+0100\n"
"Last-Translator: Simon Rozman <simon.rozman@amebis.si>\n"
"Language-Team: Amebis, d. o. o., Kamnik <info@amebis.si>\n"
@@ -9,7 +10,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: Poedit 1.8.6\n"
"X-Generator: Poedit 1.8.9\n"
"X-Poedit-Basepath: ..\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Poedit-SourceCharset: UTF-8\n"
@@ -17,6 +18,15 @@ msgstr ""
"X-Poedit-SearchPath-0: src\n"
"X-Poedit-SearchPath-1: include\n"
#: src/valnet.cpp:99
#, c-format
msgid "Invalid character in host name found: %c"
msgstr ""
#: src/valnet.cpp:99
msgid "Validation conflict"
msgstr ""
#: include/wxex/appbar.h:981
msgid ""
"There is already an auto hidden bar on this edge.\n"

View File

@@ -1,5 +1,6 @@
/*
Copyright 2015-2016 Amebis
Copyright 2016 G<>ANT
Based on code written by Jeffrey Richter.
This file is part of wxExtend.

View File

@@ -1,5 +1,6 @@
/*
Copyright 2015-2016 Amebis
Copyright 2016 G<>ANT
This file is part of wxExtend.

View File

@@ -1,5 +1,6 @@
/*
Copyright 2015-2016 Amebis
Copyright 2016 G<>ANT
This file is part of wxExtend.

View File

@@ -1,5 +1,6 @@
/*
Copyright 2015-2016 Amebis
Copyright 2016 G<>ANT
This file is part of wxExtend.

View File

@@ -1,5 +1,6 @@
/*
Copyright 2015-2016 Amebis
Copyright 2016 G<>ANT
This file is part of wxExtend.

View File

@@ -1,5 +1,6 @@
/*
Copyright 2015-2016 Amebis
Copyright 2016 G<>ANT
This file is part of wxExtend.
@@ -27,7 +28,10 @@
#include "../include/wxex/comutils.h"
#include "../include/wxex/crypto.h"
#include "../include/wxex/hex.h"
#include "../include/wxex/object.h"
#include "../include/wxex/url.h"
#include "../include/wxex/valhex.h"
#include "../include/wxex/valnet.h"
#include "../include/wxex/xml.h"
#include "../include/wxex/common.h"

135
src/url.cpp Normal file
View File

@@ -0,0 +1,135 @@
/*
Copyright 2015-2016 Amebis
Copyright 2016 G<>ANT
This file is part of wxExtend.
wxExtend 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.
wxExtend 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 wxExtend. If not, see <http://www.gnu.org/licenses/>.
*/
#include "stdafx.h"
size_t WXEXTEND_API wxURLEncode(char *dst, size_t dstLen, const char *src, size_t srcLen)
{
wxCHECK_MSG(src, wxCONV_FAILED, wxT("NULL input buffer"));
static const char bhex[] = "0123456789ABCDEF";
size_t encLen = 0;
for (size_t i = 0; i < srcLen && src[i]; i++) {
if (wxURLIsProtected(src[i])) {
encLen += 3;
if ( dst )
{
if ( encLen > dstLen )
return wxCONV_FAILED;
*dst++ = '%';
*dst++ = bhex[((unsigned char)src[i]) >> 4];
*dst++ = bhex[((unsigned char)src[i]) & 0x0f];
}
} else {
encLen ++;
if ( dst )
{
if ( encLen > dstLen )
return wxCONV_FAILED;
*dst++ = src[i];
}
}
}
// Zero terminate.
if ( dst && encLen < dstLen )
*dst++ = 0;
return encLen;
}
size_t WXEXTEND_API wxURLDecode(char *dst, size_t dstLen, const char *src, size_t srcLen)
{
wxCHECK_MSG(src, wxCONV_FAILED, wxT("NULL input buffer"));
static const char bhex[] = "0123456789ABCDEF";
size_t i, decLen = 0;
for (i = 0 ; i < srcLen && src[i];) {
decLen ++;
if (src[i] == '%') {
// Decode % escaped hex value to character.
char c = 0;
size_t j = i + 1;
for (size_t j_max = i + 3; j < j_max && j < srcLen; j++) {
char x = src[j];
c <<= 4;
if ('0' <= x && x <= '9') c += x - '0';
else if ('A' <= x && x <= 'F') c += x - 'A' + 10;
else if ('a' <= x && x <= 'f') c += x - 'a' + 10;
else break;
}
if (c) {
if ( dst )
{
if ( decLen > dstLen )
return wxCONV_FAILED;
*dst++ = c;
}
i = j;
continue;
}
}
if ( dst )
{
if ( decLen > dstLen )
return wxCONV_FAILED;
*dst++ = src[i];
}
i++;
}
// Zero terminate.
if ( dst && decLen < dstLen )
*dst++ = 0;
return decLen;
}
wxMemoryBuffer WXEXTEND_API wxURLDecode(const char *src, size_t srcLen)
{
wxMemoryBuffer buf;
wxCHECK_MSG( src, buf, wxT("NULL input buffer") );
if ( srcLen == wxNO_LEN )
srcLen = strlen(src);
size_t len = wxURLDecodedSize(srcLen);
len = wxURLDecode(reinterpret_cast<char*>(buf.GetWriteBuf(len)), len, src, srcLen);
if ( len == wxCONV_FAILED )
len = 0;
buf.SetDataLen(len);
return buf;
}

View File

@@ -1,5 +1,6 @@
/*
Copyright 2015-2016 Amebis
Copyright 2016 G<>ANT
This file is part of wxExtend.
@@ -38,7 +39,7 @@ wxHexValidatorBase::wxHexValidatorBase(const wxHexValidatorBase& other) :
}
bool wxHexValidatorBase::IsMinusOk(const wxString& val, int pos) const
bool wxHexValidatorBase::IsMinusOk(const wxString& /*val*/, int /*pos*/) const
{
// Minus is never OK with hexadecimal numbers.
return false;

268
src/valnet.cpp Normal file
View File

@@ -0,0 +1,268 @@
/*
Copyright 2016 Amebis
Copyright 2016 G<>ANT
This file is part of wxExtend.
wxExtend 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.
wxExtend 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 wxExtend. If not, see <http://www.gnu.org/licenses/>.
*/
#include "stdafx.h"
//////////////////////////////////////////////////////////////////////
// wxHostNameValidator
//////////////////////////////////////////////////////////////////////
wxIMPLEMENT_DYNAMIC_CLASS(wxHostNameValidator, wxValidator);
wxHostNameValidator::wxHostNameValidator(wxString *val) :
m_val(val),
wxValidator()
{
}
wxObject* wxHostNameValidator::Clone() const
{
return new wxHostNameValidator(*this);
}
bool wxHostNameValidator::Validate(wxWindow *parent)
{
wxASSERT(GetWindow()->IsKindOf(CLASSINFO(wxTextCtrl)));
wxTextCtrl *ctrl = (wxTextCtrl*)GetWindow();
if (!ctrl->IsEnabled()) return true;
wxString val(ctrl->GetValue());
return Parse(val, 0, val.Length(), ctrl, parent);
}
bool wxHostNameValidator::TransferToWindow()
{
wxASSERT(GetWindow()->IsKindOf(CLASSINFO(wxTextCtrl)));
if (m_val)
((wxTextCtrl*)GetWindow())->SetValue(*m_val);
return true;
}
bool wxHostNameValidator::TransferFromWindow()
{
wxASSERT(GetWindow()->IsKindOf(CLASSINFO(wxTextCtrl)));
wxTextCtrl *ctrl = (wxTextCtrl*)GetWindow();
wxString val(ctrl->GetValue());
return Parse(val, 0, val.Length(), ctrl, NULL, m_val);
}
bool wxHostNameValidator::Parse(const wxString &val_in, size_t i_start, size_t i_end, wxTextCtrl *ctrl, wxWindow *parent, wxString *val_out)
{
const wxStringCharType *buf = val_in;
size_t i = i_start;
for (;;) {
if (i >= i_end) {
// End of host name found.
if (val_out) val_out->assign(val_in.c_str() + i_start, i - i_start);
return true;
} else if (buf[i] == _T('-') || buf[i] == _T('_') || buf[i] == _T('*') || _istalnum(buf[i])) {
// Valid character found.
i++;
} else {
// Invalid character found.
ctrl->SetFocus();
ctrl->SetSelection(i, i + 1);
wxMessageBox(wxString::Format(_("Invalid character in host name found: %c"), buf[i]), _("Validation conflict"), wxOK | wxICON_EXCLAMATION, parent);
return false;
}
}
}
//////////////////////////////////////////////////////////////////////
// wxFQDNValidator
//////////////////////////////////////////////////////////////////////
wxIMPLEMENT_DYNAMIC_CLASS(wxFQDNValidator, wxValidator);
wxFQDNValidator::wxFQDNValidator(wxString *val) :
m_val(val),
wxValidator()
{
}
wxObject* wxFQDNValidator::Clone() const
{
return new wxFQDNValidator(*this);
}
bool wxFQDNValidator::Validate(wxWindow *parent)
{
wxASSERT(GetWindow()->IsKindOf(CLASSINFO(wxTextCtrl)));
wxTextCtrl *ctrl = (wxTextCtrl*)GetWindow();
if (!ctrl->IsEnabled()) return true;
wxString val(ctrl->GetValue());
return Parse(val, 0, val.Length(), ctrl, parent);
}
bool wxFQDNValidator::TransferToWindow()
{
wxASSERT(GetWindow()->IsKindOf(CLASSINFO(wxTextCtrl)));
if (m_val)
((wxTextCtrl*)GetWindow())->SetValue(*m_val);
return true;
}
bool wxFQDNValidator::TransferFromWindow()
{
wxASSERT(GetWindow()->IsKindOf(CLASSINFO(wxTextCtrl)));
wxTextCtrl *ctrl = (wxTextCtrl*)GetWindow();
wxString val(ctrl->GetValue());
return Parse(val, 0, val.Length(), ctrl, NULL, m_val);
}
bool wxFQDNValidator::Parse(const wxString &val_in, size_t i_start, size_t i_end, wxTextCtrl *ctrl, wxWindow *parent, wxString *val_out)
{
const wxStringCharType *buf = val_in;
size_t i = i_start;
for (;;) {
const wxStringCharType *buf_next;
if ((buf_next = wmemchr(buf + i, L'.', i_end - i)) != NULL) {
// FQDN separator found.
if (!wxHostNameValidator::Parse(val_in, i, buf_next - buf, ctrl, parent))
return false;
i = buf_next - buf + 1;
} else if (wxHostNameValidator::Parse(val_in, i, i_end, ctrl, parent)) {
// The rest of the FQDN parsed succesfully.
if (val_out) val_out->assign(val_in.c_str() + i_start, i_end - i_start);
return true;
} else
return false;
}
}
//////////////////////////////////////////////////////////////////////
// wxFQDNListValidator
//////////////////////////////////////////////////////////////////////
wxIMPLEMENT_DYNAMIC_CLASS(wxFQDNListValidator, wxValidator);
wxFQDNListValidator::wxFQDNListValidator(wxArrayString *val) :
m_val(val),
wxValidator()
{
}
wxObject* wxFQDNListValidator::Clone() const
{
return new wxFQDNListValidator(*this);
}
bool wxFQDNListValidator::Validate(wxWindow *parent)
{
wxTextCtrl *ctrl = (wxTextCtrl*)GetWindow();
if (!ctrl->IsEnabled()) return true;
wxString val(ctrl->GetValue());
return Parse(val, 0, val.Length(), ctrl, parent);
}
bool wxFQDNListValidator::TransferToWindow()
{
wxASSERT(GetWindow()->IsKindOf(CLASSINFO(wxTextCtrl)));
if (m_val) {
wxString str;
for (wxArrayString::const_iterator name = m_val->begin(), name_end = m_val->end(); name != name_end; ++name) {
if (!str.IsEmpty()) str += wxT("; ");
str += *name;
}
((wxTextCtrl*)GetWindow())->SetValue(str);
}
return true;
}
bool wxFQDNListValidator::TransferFromWindow()
{
wxASSERT(GetWindow()->IsKindOf(CLASSINFO(wxTextCtrl)));
wxTextCtrl *ctrl = (wxTextCtrl*)GetWindow();
wxString val(ctrl->GetValue());
return Parse(val, 0, val.Length(), ctrl, NULL, m_val);
}
bool wxFQDNListValidator::Parse(const wxString &val_in, size_t i_start, size_t i_end, wxTextCtrl *ctrl, wxWindow *parent, wxArrayString *val_out)
{
const wxStringCharType *buf = val_in;
wxString _fqdn, *fqdn = val_out ? &_fqdn : NULL;
wxArrayString _val_out;
size_t i = i_start;
for (;;) {
// Skip initial white-space.
for (; i < i_end && _istspace(buf[i]); i++);
const wxStringCharType *buf_next;
if ((buf_next = wmemchr(buf + i, L';', i_end - i)) != NULL) {
// FQDN list separator found.
// Skip trailing white-space.
size_t i_next = buf_next - buf;
for (; i < i_next && _istspace(buf[i_next - 1]); i_next--);
if (!wxFQDNValidator::Parse(val_in, i, i_next, ctrl, parent, fqdn))
return false;
if (fqdn && !fqdn->empty()) _val_out.push_back(std::move(*fqdn));
i = buf_next - buf + 1;
} else {
// Skip trailing white-space.
for (; i < i_end && _istspace(buf[i_end - 1]); i_end--);
if (wxFQDNValidator::Parse(val_in, i, i_end, ctrl, parent, fqdn)) {
// The rest of the FQDN list parsed succesfully.
if (fqdn && !fqdn->empty()) _val_out.push_back(std::move(*fqdn));
if (val_out) *val_out = std::move(_val_out);
return true;
} else
return false;
}
}
}

View File

@@ -1,5 +1,6 @@
/*
Copyright 2015-2016 Amebis
Copyright 2016 G<>ANT
This file is part of wxExtend.

38
wxExtend.sln Normal file
View File

@@ -0,0 +1,38 @@

Microsoft Visual Studio Solution File, Format Version 11.00
# Visual Studio 2010
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{14D5FE5B-9742-4D1F-A1E0-32E694B94AAB}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "wxExtend", "build\wxExtendLib.vcxproj", "{D3E29951-D9F5-486D-A167-20AE8E90B1FA}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "wxExtend", "build\wxExtendDll.vcxproj", "{A3A36689-AC35-4026-93DA-A3BA0C0E767C}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Win32 = Debug|Win32
Debug|x64 = Debug|x64
Release|Win32 = Release|Win32
Release|x64 = Release|x64
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{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}.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
{A3A36689-AC35-4026-93DA-A3BA0C0E767C}.Debug|Win32.ActiveCfg = Debug|Win32
{A3A36689-AC35-4026-93DA-A3BA0C0E767C}.Debug|Win32.Build.0 = Debug|Win32
{A3A36689-AC35-4026-93DA-A3BA0C0E767C}.Debug|x64.ActiveCfg = Debug|x64
{A3A36689-AC35-4026-93DA-A3BA0C0E767C}.Debug|x64.Build.0 = Debug|x64
{A3A36689-AC35-4026-93DA-A3BA0C0E767C}.Release|Win32.ActiveCfg = Release|Win32
{A3A36689-AC35-4026-93DA-A3BA0C0E767C}.Release|Win32.Build.0 = Release|Win32
{A3A36689-AC35-4026-93DA-A3BA0C0E767C}.Release|x64.ActiveCfg = Release|x64
{A3A36689-AC35-4026-93DA-A3BA0C0E767C}.Release|x64.Build.0 = Release|x64
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
EndGlobal