diff --git a/lib/EAPBase_UI/build/EAPBase_UI.vcxproj b/lib/EAPBase_UI/build/EAPBase_UI.vcxproj
index b898611..4294ac7 100644
--- a/lib/EAPBase_UI/build/EAPBase_UI.vcxproj
+++ b/lib/EAPBase_UI/build/EAPBase_UI.vcxproj
@@ -91,7 +91,7 @@
- ..\..\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/EAPBase_UI/include/EAP_UI.h b/lib/EAPBase_UI/include/EAP_UI.h
index 48877bc..9760ca0 100644
--- a/lib/EAPBase_UI/include/EAP_UI.h
+++ b/lib/EAPBase_UI/include/EAP_UI.h
@@ -46,6 +46,7 @@ template class wxEAPCredentialsPanel;
template class wxIdentityCredentialsPanel;
template class wxPasswordCredentialsPanel;
class wxEAPProviderSelectDialog;
+class wxInitializerPeer;
///
/// \defgroup EAPBaseGUI GUI
@@ -121,7 +122,9 @@ inline void wxInitializeConfig();
#include
#include
+#include
#include
+#include
#include
@@ -409,6 +412,32 @@ protected:
};
+///
+/// Peer initializer
+///
+class wxInitializerPeer
+{
+public:
+ ///
+ /// Initialize peer
+ ///
+ wxInitializerPeer(_In_ HINSTANCE instance, _In_ const wxString &domain, _In_opt_ HWND hwndParent);
+
+ ///
+ /// Uninitialize peer
+ ///
+ virtual ~wxInitializerPeer();
+
+public:
+ wxWindow* m_parent; ///< Parent window
+
+protected:
+ static wxCriticalSection s_lock; ///< Initialization lock
+ static unsigned long s_init_ref_count; ///< Initialization reference counter
+ static wxLocale *s_locale; ///< Locale
+};
+
+
///
/// EAP general note
///
@@ -1028,8 +1057,6 @@ protected:
/// \endcond
};
-/// @}
-
///
/// Generic password credential entry panel
diff --git a/lib/EAPBase_UI/src/EAP_UI.cpp b/lib/EAPBase_UI/src/EAP_UI.cpp
index 97ae9a7..d7176dd 100644
--- a/lib/EAPBase_UI/src/EAP_UI.cpp
+++ b/lib/EAPBase_UI/src/EAP_UI.cpp
@@ -467,3 +467,62 @@ void wxEAPProviderSelectDialog::OnProvSelect(wxCommandEvent& event)
event.Skip();
}
/// \endcond
+
+
+//////////////////////////////////////////////////////////////////////
+// wxInitializerPeer
+//////////////////////////////////////////////////////////////////////
+
+wxInitializerPeer::wxInitializerPeer(_In_ HINSTANCE instance, _In_ const wxString &domain, _In_opt_ HWND hwndParent)
+{
+ wxCriticalSectionLocker locker(s_lock);
+
+ if (s_init_ref_count++ == 0) {
+ // Initialize application.
+ new wxApp();
+ wxEntryStart(instance);
+
+ // Do our wxWidgets configuration and localization initialization.
+ wxInitializeConfig();
+ s_locale = new wxLocale;
+ if (wxInitializeLocale(*s_locale)) {
+ s_locale->AddCatalog(wxT("wxExtend") wxT(wxExtendVersion));
+ if (!domain.IsEmpty())
+ s_locale->AddCatalog(domain);
+ }
+ }
+
+ if (hwndParent) {
+ // Create wxWidget-approved parent window.
+ m_parent = new wxWindow;
+ m_parent->SetHWND((WXHWND)hwndParent);
+ m_parent->AdoptAttributesFromHWND();
+ wxTopLevelWindows.Append(m_parent);
+ } else
+ m_parent = NULL;
+}
+
+
+wxInitializerPeer::~wxInitializerPeer()
+{
+ wxCriticalSectionLocker locker(s_lock);
+
+ if (m_parent) {
+ wxTopLevelWindows.DeleteObject(m_parent);
+ m_parent->SetHWND((WXHWND)NULL);
+ }
+
+ if (--s_init_ref_count == 0) {
+ wxEntryCleanup();
+
+ if (s_locale) {
+ delete s_locale;
+ s_locale = NULL;
+ }
+ }
+}
+
+
+wxCriticalSection wxInitializerPeer::s_lock;
+unsigned long wxInitializerPeer::s_init_ref_count = 0;
+wxLocale *wxInitializerPeer::s_locale = NULL;
diff --git a/lib/EAPBase_UI/src/StdAfx.h b/lib/EAPBase_UI/src/StdAfx.h
index 8395abc..0d2ced9 100644
--- a/lib/EAPBase_UI/src/StdAfx.h
+++ b/lib/EAPBase_UI/src/StdAfx.h
@@ -23,4 +23,7 @@
#include "../include/EAP_UI.h"
#include "../include/Module.h"
+#include
+
+#include
#include
diff --git a/lib/TTLS_UI/build/TTLS_UI.vcxproj b/lib/TTLS_UI/build/TTLS_UI.vcxproj
index d896e39..a8d9372 100644
--- a/lib/TTLS_UI/build/TTLS_UI.vcxproj
+++ b/lib/TTLS_UI/build/TTLS_UI.vcxproj
@@ -91,7 +91,7 @@
- ..\..\Events\build\temp\Events.$(Platform).$(Configuration).$(PlatformToolset);..\..\WinStd\include;..\..\wxExtend\include;%(AdditionalIncludeDirectories)
+ ..\..\Events\build\temp\Events.$(Platform).$(Configuration).$(PlatformToolset);..\..\WinStd\include;%(AdditionalIncludeDirectories)
diff --git a/lib/TTLS_UI/src/Module.cpp b/lib/TTLS_UI/src/Module.cpp
index 94e1c34..4cc2c52 100644
--- a/lib/TTLS_UI/src/Module.cpp
+++ b/lib/TTLS_UI/src/Module.cpp
@@ -24,32 +24,6 @@ using namespace std;
using namespace winstd;
-///
-/// Peer initializer
-///
-class wxInitializerPeer
-{
-public:
- ///
- /// Initialize peer
- ///
- wxInitializerPeer(_In_ HINSTANCE instance, _In_opt_ HWND hwndParent);
-
- ///
- /// Uninitialize peer
- ///
- virtual ~wxInitializerPeer();
-
-public:
- wxWindow* m_parent; ///< Parent window
-
-protected:
- static wxCriticalSection s_lock; ///< Initialization lock
- static unsigned long s_init_ref_count; ///< Initialization reference counter
- static wxLocale *s_locale; ///< Locale
-};
-
-
//////////////////////////////////////////////////////////////////////
// eap::peer_ttls_ui
//////////////////////////////////////////////////////////////////////
@@ -118,7 +92,7 @@ void eap::peer_ttls_ui::invoke_config_ui(
}
// Initialize application.
- wxInitializerPeer init(m_instance, hwndParent);
+ wxInitializerPeer init(m_instance, wxT("EAP-TTLS_UI"), hwndParent);
// Create and launch configuration dialog.
wxEAPConfigDialog dlg(cfg, init.m_parent);
@@ -186,7 +160,7 @@ void eap::peer_ttls_ui::invoke_identity_ui(
config_method_ttls *cfg_method = NULL;
// Initialize application.
- wxInitializerPeer init(m_instance, hwndParent);
+ wxInitializerPeer init(m_instance, wxT("EAP-TTLS_UI"), hwndParent);
if (cfg.m_providers.size() > 1) {
// Multiple identity providers: User has to select one first.
@@ -443,7 +417,7 @@ void eap::peer_ttls_ui::invoke_interactive_ui(
#endif
{
// Initialize application.
- wxInitializerPeer init(m_instance, hwndParent);
+ wxInitializerPeer init(m_instance, wxT("EAP-TTLS_UI"), hwndParent);
sanitizing_wstring
challenge(reinterpret_cast(ctx.m_data.data()), ctx.m_data.size()/sizeof(sanitizing_wstring::value_type)),
@@ -504,61 +478,3 @@ void eap::peer_ttls_ui::invoke_interactive_ui(
// Pack output data.
pack(ctx.m_data, ppDataFromInteractiveUI, pdwDataFromInteractiveUISize);
}
-
-
-//////////////////////////////////////////////////////////////////////
-// wxInitializerPeer
-//////////////////////////////////////////////////////////////////////
-
-wxInitializerPeer::wxInitializerPeer(_In_ HINSTANCE instance, _In_opt_ HWND hwndParent)
-{
- wxCriticalSectionLocker locker(s_lock);
-
- if (s_init_ref_count++ == 0) {
- // Initialize application.
- new wxApp();
- wxEntryStart(instance);
-
- // Do our wxWidgets configuration and localization initialization.
- wxInitializeConfig();
- s_locale = new wxLocale;
- if (wxInitializeLocale(*s_locale)) {
- s_locale->AddCatalog(wxT("wxExtend") wxT(wxExtendVersion));
- s_locale->AddCatalog(wxT("EAP-TTLS_UI"));
- }
- }
-
- if (hwndParent) {
- // Create wxWidget-approved parent window.
- m_parent = new wxWindow;
- m_parent->SetHWND((WXHWND)hwndParent);
- m_parent->AdoptAttributesFromHWND();
- wxTopLevelWindows.Append(m_parent);
- } else
- m_parent = NULL;
-}
-
-
-wxInitializerPeer::~wxInitializerPeer()
-{
- wxCriticalSectionLocker locker(s_lock);
-
- if (m_parent) {
- wxTopLevelWindows.DeleteObject(m_parent);
- m_parent->SetHWND((WXHWND)NULL);
- }
-
- if (--s_init_ref_count == 0) {
- wxEntryCleanup();
-
- if (s_locale) {
- delete s_locale;
- s_locale = NULL;
- }
- }
-}
-
-
-wxCriticalSection wxInitializerPeer::s_lock;
-unsigned long wxInitializerPeer::s_init_ref_count = 0;
-wxLocale *wxInitializerPeer::s_locale = NULL;
diff --git a/lib/TTLS_UI/src/StdAfx.h b/lib/TTLS_UI/src/StdAfx.h
index fc8eb81..a52ad1c 100644
--- a/lib/TTLS_UI/src/StdAfx.h
+++ b/lib/TTLS_UI/src/StdAfx.h
@@ -34,8 +34,4 @@
#include "../../EapHost/include/Credentials.h"
#include "../../TTLS/include/UIContext.h"
-#include
-
-#include
#include
-#include