From e4758faba38c9e59615ad06beccc5cdab1b4e2c6 Mon Sep 17 00:00:00 2001 From: Simon Rozman Date: Fri, 7 Oct 2016 15:28:47 +0200 Subject: [PATCH] Host name and FQDN validators moved to wxExtend; Incorrect FeatureComponent mappings of EventMonitor localization components fixed --- EAPMethods/EAPTTLSUI/EAPTTLSUI.vcxproj | 3 + EAPMethods/MSIBuild/Makefile | Bin 36830 -> 38860 bytes EventMonitor/App.cpp | 2 +- EventMonitor/MSIBuild/Makefile | Bin 32574 -> 35424 bytes Makefile | Bin 187040 -> 194466 bytes include/MSIBuildCfg.mak | Bin 12596 -> 13158 bytes lib/TLS_UI/build/TLS_UI.props | 2 +- lib/TLS_UI/include/TLS_UI.h | 160 +------------- lib/TLS_UI/src/StdAfx.h | 2 + lib/TLS_UI/src/TLS_UI.cpp | 276 +------------------------ lib/TTLS_UI/src/Module.cpp | 2 +- lib/wxExtend | 2 +- output/locale/.gitignore | 2 +- 13 files changed, 20 insertions(+), 431 deletions(-) diff --git a/EAPMethods/EAPTTLSUI/EAPTTLSUI.vcxproj b/EAPMethods/EAPTTLSUI/EAPTTLSUI.vcxproj index 9fc33de..70874a4 100644 --- a/EAPMethods/EAPTTLSUI/EAPTTLSUI.vcxproj +++ b/EAPMethods/EAPTTLSUI/EAPTTLSUI.vcxproj @@ -136,6 +136,9 @@ {47399d91-7eb9-41de-b521-514ba5db0c43} + + {d3e29951-d9f5-486d-a167-20ae8e90b1fa} + diff --git a/EAPMethods/MSIBuild/Makefile b/EAPMethods/MSIBuild/Makefile index debc36efa3ead9baa04525c5a273d9d107a6b5ba..78c823b1bc7bb30ae4292980f053bd13e0776ab9 100644 GIT binary patch delta 849 zcmZY7%}T>S5C`y7Jj4q1gMd;BwNOMPvGQXM4lKs3JdV3t|T-WekQz#@H)n&?)C}{uH>rbNDjJSPHJ}e*YxWP5~`P!M!U%c4f*`_av-&GUb7( z`UP}-g@Wb@)T@4e(DdK-EGX_cl&l& zk#%{|b6HXJc#-f~QSo^(5wK!6;Kg@LWJ6x`LUu;6v5&*q6#eHJjMr6)4BbZ+C&wa& zwLCqiq0A?7L+f8nrO4n_7SY!8kwM(d(DhVdpNjY~Ht2e;M@y;5Dq&%Xnk;IvTIkyS z!D+gvDsIn{cyP*?cdPhqig$a(|UR+4D@`6y7MfaV7(zAi-^=+qU`dMkx) OSi-oPe7{%Q_(y?kuDBt+VtNRshCBPDm73MhYZ293g!Vs z3%)=fAVVLZIQam50`cp2KeOF)&$;KGd-KoI_giWC>|=FiAa(@O@gcJA9umK{>%CkP zwjCS!KQyrM9i?vE5bnD+L{ll%^m4+}^`cjS=vhcKUOI%+p0v|=drSCf4waubGjI@0 zbxkn)Hj;q7z1cppV4}G6j_}^MR2{hnyd#0%3sa>QE!IbF1+{^xG?`174{X#mSDh1v zE#A4ixIE>|x#r^sLSrcJYO~immbu!TYaJ6dl1nt#^$b)`1dcCxe_r$}n2s!nkUdh5 x@G+7ZG>#TBL&zDTg@M|{sRP{wxs|7 diff --git a/EventMonitor/App.cpp b/EventMonitor/App.cpp index 6fef987..53168fd 100644 --- a/EventMonitor/App.cpp +++ b/EventMonitor/App.cpp @@ -52,7 +52,7 @@ bool wxEventMonitorApp::OnInit() return false; if (wxInitializeLocale(m_locale)) { - //wxVERIFY(m_locale.AddCatalog(wxT("wxExtend") wxT(wxExtendVersion))); + wxVERIFY(m_locale.AddCatalog(wxT("wxExtend") wxT(wxExtendVersion))); wxVERIFY(m_locale.AddCatalog(wxT("EventMonitor"))); } diff --git a/EventMonitor/MSIBuild/Makefile b/EventMonitor/MSIBuild/Makefile index e09911472ca0f94ff68436ba0fa9df0fa21440d5..0a2e78bd003200ca9b50d7c043f04921267e10cc 100644 GIT binary patch delta 1455 zcmZuxKWq|V6h92Z<$`C!AzVspKxiezA`ns$O@o7k0v1|OlbXho77eBqnrJi*N(Yn1 z!Jt3KrqZ}I4Qb+H9JH=3;@Sb39gOa#@xJ@+xR&n*;Jx4D{oZ@u`}6tG(tCSiFP26) z<-u;&j-9mJmxW;w{t&AdT%rC?BfJ0kCd45~y`z@J%zD;O5=Y|hX(q9TThddhY*ix6mh@&Ywx6Rey)gqBjAhjf+{g0bmbnnO%GH$b3ik-> z+0!PuU(KnW1AN~p%49I>H?OF?Bx$W?Tz-s6*ra2?*e(QI`baRgO5W_L-{;NJjTFq# zFBD~%w?pPdM5>ZLWQ>nDEa?Ns*q%pS`tS`rn-KHqR{&iKt*;I(Z|HjR$ zu+$`doEe|Bgrtpj5Ixz6)@=a|msJ_kn4-&QyLfD5$zTRipAM$yO8DgO7QdIw>uAPuc48R%8k^6u}lJ$VG{vIZHz| zCKUfFuQi==Penv@<_w>LdP%6QtI5d~4+13`t8-CCcZElN(uz+d>PN7xNnUAN9Q!wn Xvci}2OGEiyUEYUdE%)K@R`T3`9XYpq delta 1110 zcmZvcy-Pw-7{)Cm>LiC;OrncLQ4n3TsO&?cHuK|p{RXL!hK6vkpn`~SmbipZqx1(v zgU}Wsx->aBG)DLbgwPrxd6)3KC+>KD&+|U#o z7z(3S97ovj--#uTlU)Um5htN*PLA@fOji7qWMdpvKO_3>F@}`RrAcL->hH%n9&|d% zg|_YxJQv{3IEdehKzLzf=tLKcDE0Y}d=$J#X|97DLvzv!Pk?4qkPA?HWQybRAMz?D zlLN?3526^8d`m$J-%c~IAQ!HwqCLYg7nkJ7#fiR@XE=}d%IkSAw0*iI1-3-5w4PtU z{l2*EdQjZ93im0)#Jm-sK{?8!;Ai$Pt8zRiWb#KMAKV;;kW9XWdNZ1yEjPn!NWM)u zNy)9nZp)Igryizc^Nb-AmOXtbN>-N`cvd9sTDNg2v2iN)vQDA7c8%_`bHR{bwZf;- wmsIg`Y^25H=9KF+o$|fLQ6!}Kx*KVl+_TQm(8S~>X_Ni~#%As5?eJ#y7yf!JApigX diff --git a/Makefile b/Makefile index 56d67aa1e225d0aeb0a343dd0e4c6e7e1e188816..1c627994f4d4ac424e048de7126ae8330b60245b 100644 GIT binary patch delta 3491 zcmbuB&ubG=5Xay15TQkybX!{tN;ddF4Vcx7zYq+icoOZsSfb`2l$xNZ;9*;|gi>PN zjPmeDNH+cfCRp+69#mA2t`huFS}o$i(vrenH}jnzrDvVx zdS~TBzHgLWWarp0yT-1wLG`=BQf!P}fW&khJxgBIAmVlBvmNLa#}hFA06(|p1$ejc zbMrC&d3`}Z`XO#>P2#rIMd9amCWo3z{W$N1(xV;Nn_Cw=`~rk-gyHP%9t;50KLSbx z^kH)7g!15f0rddvEb2ZuYbql%C>-n=+_o_%z$oIj?z&?8oI9o_(;DxF;1mvV%&@HN z;~fwwp_ioI%T@C63s9ZHpOL8vs8}c*Tnn|mS5@Dw*gm$aB40+2<+d%#{?2_BfxG=M zUf%UI2uFueAta`SJQL=DLr8V1dL3n#*m;&z|EYHMrv9s5>&qz=-m2byGJE7J&UU;Q zl`Hj~90yzTWH2nfI*A2Co(^z2xbPYUgT6rK%HmdzgRMyck(Xp?$ausDUR@-64elE} zeFxsgju5rXMqnbR!N#}4XcC*9SsGEkovgiyD6YL$UpJP>bg+Npk!j5Y)$}%z($H?) zdo@((Db;_Vj<<$U@I5&y(iT2Kw6j7QUGxqp%`P9hvqq1J`4f$anxO*r{|eBhF0BEs zLHgZ6OzY5?BfBo2?D2_-yG{pZ_WFR^!=F5Gq^tSJyS+68sihCOk7z!d+Xgu(kXS~+ zYD*FDVuReoAymWJncAj$ZB3J7eH?AJkXVTwBe!yP8A6{2FmbCTiyrQwPx#DqSIJyi kjN{sFu61;B(%^$o@uF%U?D@CuL8)QfoUK2ft@D-TzYs8v!VXwhRHcwhRL7 E>Jb$b)Bpeg diff --git a/include/MSIBuildCfg.mak b/include/MSIBuildCfg.mak index df305cd605b15e6677fcc374dc28ac2d5f56b0cd..0d3139c268ce1dde0a7f1035f5f0b52175ae4ac6 100644 GIT binary patch delta 237 zcmdmz^ek<|J$>;UhD?Seh8Tu&h6)B(ATD7@WyoVlnfy^db@K!L5XQ+O(sQ!WBpDPK zd>Qf?QW#1Za)8Qt8MweWoFM{eL - ..\..\Events\build\temp\Events.$(Platform).$(Configuration).$(PlatformToolset);..\..\WinStd\include;%(AdditionalIncludeDirectories) + ..\..\Events\build\temp\Events.$(Platform).$(Configuration).$(PlatformToolset);..\..\WinStd\include;..\..\wxExtend\include;%(AdditionalIncludeDirectories) diff --git a/lib/TLS_UI/include/TLS_UI.h b/lib/TLS_UI/include/TLS_UI.h index 4867708..e1a2460 100644 --- a/lib/TLS_UI/include/TLS_UI.h +++ b/lib/TLS_UI/include/TLS_UI.h @@ -24,6 +24,7 @@ #include +#include #include #include @@ -40,21 +41,6 @@ /// class wxCertificateClientData; -/// -/// Validator for host name -/// -class wxHostNameValidator; - -/// -/// Validator for FQDN -/// -class wxFQDNValidator; - -/// -/// Validator for FQDN lists -/// -class wxFQDNListValidator; - /// /// TLS credential panel /// @@ -110,144 +96,6 @@ public: }; -class wxHostNameValidator : public wxValidator -{ - wxDECLARE_DYNAMIC_CLASS(wxHostNameValidator); - wxDECLARE_NO_ASSIGN_CLASS(wxHostNameValidator); - -public: - /// - /// Construct the validator with a value to store data - /// - wxHostNameValidator(std::wstring *val = NULL); - - /// - /// Copy constructor - /// - wxHostNameValidator(const wxHostNameValidator &other); - - /// - /// 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, std::wstring *val_out = NULL); - -protected: - std::wstring *m_val; ///< Pointer to variable to receive control's parsed value -}; - - -class wxFQDNValidator : public wxValidator -{ - wxDECLARE_DYNAMIC_CLASS(wxFQDNValidator); - wxDECLARE_NO_ASSIGN_CLASS(wxFQDNValidator); - -public: - /// - /// Construct the validator with a value to store data - /// - wxFQDNValidator(std::wstring *val = NULL); - - /// - /// Copy constructor - /// - wxFQDNValidator(const wxFQDNValidator &other); - - /// - /// 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, std::wstring *val_out = NULL); - -protected: - std::wstring *m_val; ///< Pointer to variable to receive control's parsed value -}; - - -class wxFQDNListValidator : public wxValidator -{ - wxDECLARE_DYNAMIC_CLASS(wxFQDNListValidator); - wxDECLARE_NO_ASSIGN_CLASS(wxFQDNListValidator); - -public: - /// - /// Construct the validator with a value to store data - /// - wxFQDNListValidator(std::list *val = NULL); - - /// - /// Copy constructor - /// - wxFQDNListValidator(const wxFQDNListValidator &other); - - /// - /// 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, std::list *val_out = NULL); - -protected: - std::list *m_val; ///< Pointer to variable to receive control's parsed value -}; - - class wxTLSCredentialsPanel : public wxEAPCredentialsPanel { public: @@ -302,9 +150,9 @@ protected: bool AddRootCA(PCCERT_CONTEXT cert); protected: - const eap::config_provider &m_prov; ///< EAP provider - eap::config_method_tls &m_cfg; ///< TLS configuration - std::list m_server_names_val; ///< Acceptable authenticating server names + const eap::config_provider &m_prov; ///< EAP provider + eap::config_method_tls &m_cfg; ///< TLS configuration + wxArrayString m_server_names_val; ///< Acceptable authenticating server names }; diff --git a/lib/TLS_UI/src/StdAfx.h b/lib/TLS_UI/src/StdAfx.h index 9ed5d92..65415c4 100644 --- a/lib/TLS_UI/src/StdAfx.h +++ b/lib/TLS_UI/src/StdAfx.h @@ -26,4 +26,6 @@ #include "../include/TLS_UI.h" +#include + #include diff --git a/lib/TLS_UI/src/TLS_UI.cpp b/lib/TLS_UI/src/TLS_UI.cpp index 24b6395..b1845c5 100644 --- a/lib/TLS_UI/src/TLS_UI.cpp +++ b/lib/TLS_UI/src/TLS_UI.cpp @@ -39,274 +39,6 @@ wxCertificateClientData::~wxCertificateClientData() } -////////////////////////////////////////////////////////////////////// -// wxHostNameValidator -////////////////////////////////////////////////////////////////////// - -wxIMPLEMENT_DYNAMIC_CLASS(wxHostNameValidator, wxValidator); - - -wxHostNameValidator::wxHostNameValidator(std::wstring *val) : - m_val(val), - wxValidator() -{ -} - - -wxHostNameValidator::wxHostNameValidator(const wxHostNameValidator &other) : - m_val(other.m_val), - wxValidator(other) -{ -} - - -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, std::wstring *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(std::wstring *val) : - m_val(val), - wxValidator() -{ -} - - -wxFQDNValidator::wxFQDNValidator(const wxFQDNValidator &other) : - m_val(other.m_val), - wxValidator(other) -{ -} - - -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, std::wstring *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(std::list *val) : - m_val(val), - wxValidator() -{ -} - - -wxFQDNListValidator::wxFQDNListValidator(const wxFQDNListValidator &other) : - m_val(other.m_val), - wxValidator(other) -{ -} - - -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 (auto name = m_val->cbegin(), name_end = m_val->cend(); 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, std::list *val_out) -{ - const wxStringCharType *buf = val_in; - std::wstring _fqdn, *fqdn = val_out ? &_fqdn : NULL; - std::list _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; - } - } -} - - ////////////////////////////////////////////////////////////////////// // wxTLSCredentialsPanel ////////////////////////////////////////////////////////////////////// @@ -425,7 +157,9 @@ bool wxTLSServerTrustPanel::TransferDataToWindow() m_root_ca->Append(wxString(eap::get_cert_title(*cert)), new wxCertificateClientData(cert->duplicate())); // Set server acceptable names. The edit control will get populated by validator. - m_server_names_val = m_cfg.m_server_names; + m_server_names_val.clear(); + for (auto name = m_cfg.m_server_names.cbegin(), name_end = m_cfg.m_server_names.cend(); name != name_end; ++name) + m_server_names_val.push_back(*name); return wxTLSServerTrustPanelBase::TransferDataToWindow(); } @@ -447,7 +181,9 @@ bool wxTLSServerTrustPanel::TransferDataFromWindow() } // Save acceptable server names. - m_cfg.m_server_names = m_server_names_val; + m_cfg.m_server_names.clear(); + for (wxArrayString::const_iterator name = m_server_names_val.begin(), name_end = m_server_names_val.end(); name != name_end; ++name) + m_cfg.m_server_names.push_back(std::wstring(*name)); } return true; diff --git a/lib/TTLS_UI/src/Module.cpp b/lib/TTLS_UI/src/Module.cpp index 98b6abd..04d606b 100644 --- a/lib/TTLS_UI/src/Module.cpp +++ b/lib/TTLS_UI/src/Module.cpp @@ -344,7 +344,7 @@ wxInitializerPeer::wxInitializerPeer(_In_ HINSTANCE instance) // Do our wxWidgets configuration and localization initialization. wxInitializeConfig(); if (wxInitializeLocale(s_locale)) { - //s_locale.AddCatalog(wxT("wxExtend") wxT(wxExtendVersion)); + s_locale.AddCatalog(wxT("wxExtend") wxT(wxExtendVersion)); s_locale.AddCatalog(wxT("EAPTTLSUI")); } } diff --git a/lib/wxExtend b/lib/wxExtend index 385528c..1c527e1 160000 --- a/lib/wxExtend +++ b/lib/wxExtend @@ -1 +1 @@ -Subproject commit 385528cf23b9a27d31502865e13652a253d7e228 +Subproject commit 1c527e114c1f5d4c682123086093be1f450e5e27 diff --git a/output/locale/.gitignore b/output/locale/.gitignore index 98f8aa9..f17e7e7 100644 --- a/output/locale/.gitignore +++ b/output/locale/.gitignore @@ -1,4 +1,4 @@ */EAPTTLSUI.mo */EventMonitor.mo -*/wxExtend13.mo +*/wxExtend14.mo */wxstd.mo