diff --git a/EAPMethods/EAPTTLSUI/EAPTTLSUI.rc b/EAPMethods/EAPTTLSUI/EAPTTLSUI.rc
index cabbcdb..816f68b 100644
Binary files a/EAPMethods/EAPTTLSUI/EAPTTLSUI.rc and b/EAPMethods/EAPTTLSUI/EAPTTLSUI.rc differ
diff --git a/EAPMethods/EAPTTLSUI/EAPTTLSUI.vcxproj b/EAPMethods/EAPTTLSUI/EAPTTLSUI.vcxproj
index 5ad8b94..fe79b43 100644
--- a/EAPMethods/EAPTTLSUI/EAPTTLSUI.vcxproj
+++ b/EAPMethods/EAPTTLSUI/EAPTTLSUI.vcxproj
@@ -80,20 +80,31 @@
+
+
+
+
+
+
-
-
+
+
-
-
+
+
+
+
+
+
+
Create
Create
@@ -114,6 +125,11 @@
+
+
+
+
+
diff --git a/EAPMethods/EAPTTLSUI/EAPTTLSUI.vcxproj.filters b/EAPMethods/EAPTTLSUI/EAPTTLSUI.vcxproj.filters
index 32d826d..bed6da2 100644
--- a/EAPMethods/EAPTTLSUI/EAPTTLSUI.vcxproj.filters
+++ b/EAPMethods/EAPTTLSUI/EAPTTLSUI.vcxproj.filters
@@ -13,6 +13,15 @@
{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}
rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms
+
+ {51f0404d-9280-4fcc-8138-5d1f815ce568}
+
+
+ {9befee7a-5dff-41dd-b080-4e26ccb19a7f}
+
+
+ {0ec1840b-101c-415a-91c6-2c7eb4530c15}
+
@@ -27,12 +36,30 @@
Header Files
-
+
Header Files
-
+
+ Header Files\wx
+
+
+ Header Files\wx
+
+
Header Files
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files\wx
+
+
+ Header Files\wx
+
@@ -53,10 +80,25 @@
Source Files
-
+
Source Files
-
+
+ Source Files\wx
+
+
+ Source Files\wx
+
+
+ Source Files
+
+
+ Source Files\wx
+
+
+ Source Files\wx
+
+
Source Files
@@ -69,5 +111,20 @@
Source Files
+
+ Resource Files\wx
+
+
+ Resource Files\wx
+
+
+ Resource Files\wx
+
+
+ Resource Files
+
+
+ Resource Files\wx
+
\ No newline at end of file
diff --git a/EAPMethods/EAPTTLSUI/StdAfx.h b/EAPMethods/EAPTTLSUI/StdAfx.h
index 8dd7b83..6f68a58 100644
Binary files a/EAPMethods/EAPTTLSUI/StdAfx.h and b/EAPMethods/EAPTTLSUI/StdAfx.h differ
diff --git a/EAPMethods/build/Common.props b/EAPMethods/build/Common.props
index 33fe726..028593d 100644
--- a/EAPMethods/build/Common.props
+++ b/EAPMethods/build/Common.props
@@ -8,7 +8,7 @@
- ..\EAPMethodEvents\temp\EAPMethodEvents.$(Platform).$(Configuration).$(PlatformToolset);..\include;..\..\lib\WinStd\include;%(AdditionalIncludeDirectories)
+ $(ProjectDir);..\EAPMethodEvents\temp\EAPMethodEvents.$(Platform).$(Configuration).$(PlatformToolset);..\include;..\..\lib\WinStd\include;%(AdditionalIncludeDirectories)
temp\EAPMethodEvents.$(Platform).$(Configuration).$(PlatformToolset);%(AdditionalIncludeDirectories)
diff --git a/EAPMethods/include/EAPMethods.h b/EAPMethods/include/EAPMethods.h
index abb1acb..58d48ec 100644
Binary files a/EAPMethods/include/EAPMethods.h and b/EAPMethods/include/EAPMethods.h differ
diff --git a/EAPMethods/include/EAPMethodsUI.h b/EAPMethods/include/EAPMethodsUI.h
new file mode 100644
index 0000000..e0f1ed8
Binary files /dev/null and b/EAPMethods/include/EAPMethodsUI.h differ
diff --git a/EAPMethods/include/EAPTLS.h b/EAPMethods/include/EAPTLS.h
index 79d10bc..ff29c46 100644
Binary files a/EAPMethods/include/EAPTLS.h and b/EAPMethods/include/EAPTLS.h differ
diff --git a/EAPMethods/include/EAPTLSUI.h b/EAPMethods/include/EAPTLSUI.h
new file mode 100644
index 0000000..fd3724b
Binary files /dev/null and b/EAPMethods/include/EAPTLSUI.h differ
diff --git a/EAPMethods/include/EAPTTLS.h b/EAPMethods/include/EAPTTLS.h
index 8b3a086..beeefce 100644
Binary files a/EAPMethods/include/EAPTTLS.h and b/EAPMethods/include/EAPTTLS.h differ
diff --git a/EAPMethods/include/EAPTTLSUI.h b/EAPMethods/include/EAPTTLSUI.h
new file mode 100644
index 0000000..35a4363
Binary files /dev/null and b/EAPMethods/include/EAPTTLSUI.h differ
diff --git a/EAPMethods/res/banner.bmp b/EAPMethods/res/banner.bmp
new file mode 100644
index 0000000..e08fa2f
Binary files /dev/null and b/EAPMethods/res/banner.bmp differ
diff --git a/EAPMethods/res/wxEAPMethods.cpp b/EAPMethods/res/wxEAPMethods.cpp
new file mode 100644
index 0000000..bf22d73
--- /dev/null
+++ b/EAPMethods/res/wxEAPMethods.cpp
@@ -0,0 +1,47 @@
+///////////////////////////////////////////////////////////////////////////
+// C++ code generated with wxFormBuilder (version Jun 17 2015)
+// http://www.wxformbuilder.org/
+//
+// PLEASE DO "NOT" EDIT THIS FILE!
+///////////////////////////////////////////////////////////////////////////
+
+#include
+
+#include "wxEAPMethods.h"
+
+///////////////////////////////////////////////////////////////////////////
+
+wxEAPConfigBase::wxEAPConfigBase( wxWindow* parent, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, long style ) : wxDialog( parent, id, title, pos, size, style )
+{
+ this->SetSizeHints( wxDefaultSize, wxDefaultSize );
+
+ wxBoxSizer* sz_content;
+ sz_content = new wxBoxSizer( wxVERTICAL );
+
+ m_banner = new wxStaticBitmap( this, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
+ sz_content->Add( m_banner, 0, wxEXPAND|wxBOTTOM, 5 );
+
+ m_providers = new wxNotebook( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, 0 );
+
+ sz_content->Add( m_providers, 0, wxEXPAND|wxALL, 5 );
+
+ m_buttons = new wxStdDialogButtonSizer();
+ m_buttonsOK = new wxButton( this, wxID_OK );
+ m_buttons->AddButton( m_buttonsOK );
+ m_buttonsCancel = new wxButton( this, wxID_CANCEL );
+ m_buttons->AddButton( m_buttonsCancel );
+ m_buttons->Realize();
+
+ sz_content->Add( m_buttons, 0, wxEXPAND, 5 );
+
+
+ this->SetSizer( sz_content );
+ this->Layout();
+ sz_content->Fit( this );
+
+ this->Centre( wxBOTH );
+}
+
+wxEAPConfigBase::~wxEAPConfigBase()
+{
+}
diff --git a/EAPMethods/res/wxEAPMethods.fbp b/EAPMethods/res/wxEAPMethods.fbp
new file mode 100644
index 0000000..bffc8f0
--- /dev/null
+++ b/EAPMethods/res/wxEAPMethods.fbp
@@ -0,0 +1,290 @@
+
+
+
+
+
diff --git a/EAPMethods/res/wxEAPMethods.h b/EAPMethods/res/wxEAPMethods.h
new file mode 100644
index 0000000..8971153
--- /dev/null
+++ b/EAPMethods/res/wxEAPMethods.h
@@ -0,0 +1,51 @@
+///////////////////////////////////////////////////////////////////////////
+// C++ code generated with wxFormBuilder (version Jun 17 2015)
+// http://www.wxformbuilder.org/
+//
+// PLEASE DO "NOT" EDIT THIS FILE!
+///////////////////////////////////////////////////////////////////////////
+
+#ifndef __WXEAPMETHODS_H__
+#define __WXEAPMETHODS_H__
+
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+
+///////////////////////////////////////////////////////////////////////////
+
+///////////////////////////////////////////////////////////////////////////////
+/// Class wxEAPConfigBase
+///////////////////////////////////////////////////////////////////////////////
+class wxEAPConfigBase : public wxDialog
+{
+ private:
+
+ protected:
+ wxStaticBitmap* m_banner;
+ wxNotebook* m_providers;
+ wxStdDialogButtonSizer* m_buttons;
+ wxButton* m_buttonsOK;
+ wxButton* m_buttonsCancel;
+
+ public:
+
+ wxEAPConfigBase( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("EAP Method Configuration"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxDEFAULT_DIALOG_STYLE );
+ ~wxEAPConfigBase();
+
+};
+
+#endif //__WXEAPMETHODS_H__
diff --git a/EAPMethods/res/EAPTLSUI.cpp b/EAPMethods/res/wxEAPTLS.cpp
similarity index 92%
rename from EAPMethods/res/EAPTLSUI.cpp
rename to EAPMethods/res/wxEAPTLS.cpp
index f2b6d3f..53939b5 100644
--- a/EAPMethods/res/EAPTLSUI.cpp
+++ b/EAPMethods/res/wxEAPTLS.cpp
@@ -7,7 +7,7 @@
#include
-#include "EAPTLSUI.h"
+#include "wxEAPTLS.h"
///////////////////////////////////////////////////////////////////////////
@@ -25,7 +25,7 @@ wxEAPTLSConfigBase::wxEAPTLSConfigBase( wxWindow* parent, wxWindowID id, const w
wxBoxSizer* sb_server_trust_horiz;
sb_server_trust_horiz = new wxBoxSizer( wxHORIZONTAL );
- m_server_trust_icon = new wxStaticBitmap( sb_server_trust->GetStaticBox(), wxID_ANY, wxIcon( wxT("server_trust.ico"), wxBITMAP_TYPE_ICO_RESOURCE, 32, 32 ), wxDefaultPosition, wxDefaultSize, 0 );
+ m_server_trust_icon = new wxStaticBitmap( sb_server_trust->GetStaticBox(), wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
sb_server_trust_horiz->Add( m_server_trust_icon, 0, wxALL, 5 );
wxBoxSizer* sb_server_trust_vert;
@@ -42,7 +42,7 @@ wxEAPTLSConfigBase::wxEAPTLSConfigBase( wxWindow* parent, wxWindowID id, const w
m_root_ca_lbl->Wrap( -1 );
sb_root_ca->Add( m_root_ca_lbl, 0, wxEXPAND|wxBOTTOM, 5 );
- m_root_ca = new wxListBox( sb_server_trust->GetStaticBox(), wxID_ANY, wxDefaultPosition, wxDefaultSize, 0, NULL, wxLB_MULTIPLE );
+ m_root_ca = new wxListBox( sb_server_trust->GetStaticBox(), wxID_ANY, wxDefaultPosition, wxDefaultSize, 0, NULL, wxLB_MULTIPLE|wxLB_SORT );
m_root_ca->SetToolTip( _("List of certificate authorities server's certificate must be issued by") );
sb_root_ca->Add( m_root_ca, 1, wxEXPAND|wxBOTTOM, 5 );
diff --git a/EAPMethods/res/EAPTLSUI.fbp b/EAPMethods/res/wxEAPTLS.fbp
similarity index 98%
rename from EAPMethods/res/EAPTLSUI.fbp
rename to EAPMethods/res/wxEAPTLS.fbp
index 5782e5a..676028b 100644
--- a/EAPMethods/res/EAPTLSUI.fbp
+++ b/EAPMethods/res/wxEAPTLS.fbp
@@ -8,14 +8,14 @@
source_name
0
0
- ..\res
+ .
UTF-8
table
- EAPTLSUI
+ wxEAPTLS
1000
none
1
- EAPTLSUI
+ EAPTLS
.
#include <StdAfx.h>
@@ -110,7 +110,7 @@
- Load From Icon Resource; server_trust.ico; [32; 32]
+ Load From Icon Resource; ; [32; 32]
1
0
@@ -410,7 +410,7 @@
Resizable
1
- wxLB_MULTIPLE
+ wxLB_MULTIPLE|wxLB_SORT
0
List of certificate authorities server's certificate must be issued by
diff --git a/EAPMethods/res/EAPTLSUI.h b/EAPMethods/res/wxEAPTLS.h
similarity index 93%
rename from EAPMethods/res/EAPTLSUI.h
rename to EAPMethods/res/wxEAPTLS.h
index 4f0f579..67b365e 100644
--- a/EAPMethods/res/EAPTLSUI.h
+++ b/EAPMethods/res/wxEAPTLS.h
@@ -5,8 +5,8 @@
// PLEASE DO "NOT" EDIT THIS FILE!
///////////////////////////////////////////////////////////////////////////
-#ifndef __EAPTLSUI_H__
-#define __EAPTLSUI_H__
+#ifndef __WXEAPTLS_H__
+#define __WXEAPTLS_H__
#include
#include
@@ -68,4 +68,4 @@ class wxEAPTLSConfigBase : public wxPanel
};
-#endif //__EAPTLSUI_H__
+#endif //__WXEAPTLS_H__
diff --git a/EAPMethods/res/EAPTTLSUI.cpp b/EAPMethods/res/wxEAPTTLS.cpp
similarity index 84%
rename from EAPMethods/res/EAPTTLSUI.cpp
rename to EAPMethods/res/wxEAPTTLS.cpp
index a9f4b37..c0624f4 100644
--- a/EAPMethods/res/EAPTTLSUI.cpp
+++ b/EAPMethods/res/wxEAPTTLS.cpp
@@ -7,7 +7,7 @@
#include
-#include "EAPTTLSUI.h"
+#include "wxEAPTTLS.h"
///////////////////////////////////////////////////////////////////////////
@@ -25,7 +25,7 @@ wxEAPTTLSConfigBase::wxEAPTTLSConfigBase( wxWindow* parent, wxWindowID id, const
wxBoxSizer* sb_outer_identity_horiz;
sb_outer_identity_horiz = new wxBoxSizer( wxHORIZONTAL );
- m_outer_identity_icon = new wxStaticBitmap( sb_outer_identity->GetStaticBox(), wxID_ANY, wxIcon( wxT("outer_identity.ico"), wxBITMAP_TYPE_ICO_RESOURCE, 32, 32 ), wxDefaultPosition, wxDefaultSize, 0 );
+ m_outer_identity_icon = new wxStaticBitmap( sb_outer_identity->GetStaticBox(), wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
sb_outer_identity_horiz->Add( m_outer_identity_icon, 0, wxALL, 5 );
wxBoxSizer* sb_outer_identity_vert;
@@ -44,7 +44,6 @@ wxEAPTTLSConfigBase::wxEAPTTLSConfigBase( wxWindow* parent, wxWindowID id, const
sb_outer_identity_radio->Add( m_outer_identity_same, 1, wxEXPAND, 5 );
m_outer_identity_empty = new wxRadioButton( sb_outer_identity->GetStaticBox(), wxID_ANY, _("Use &empty outer identity (RFC 4822)"), wxDefaultPosition, wxDefaultSize, 0 );
- m_outer_identity_empty->SetValue( true );
m_outer_identity_empty->SetToolTip( _("Ommit my user name and use @mydomain.org only") );
sb_outer_identity_radio->Add( m_outer_identity_empty, 1, wxEXPAND, 5 );
@@ -57,10 +56,10 @@ wxEAPTTLSConfigBase::wxEAPTTLSConfigBase( wxWindow* parent, wxWindowID id, const
sb_outer_identity_custom->Add( m_outer_identity_custom, 0, wxEXPAND, 5 );
- m_outer_identity_custom_val_ = new wxTextCtrl( sb_outer_identity->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
- m_outer_identity_custom_val_->SetToolTip( _("Custom outer identity to use") );
+ m_outer_identity_custom_val = new wxTextCtrl( sb_outer_identity->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
+ m_outer_identity_custom_val->SetToolTip( _("Custom outer identity to use") );
- sb_outer_identity_custom->Add( m_outer_identity_custom_val_, 1, wxEXPAND, 5 );
+ sb_outer_identity_custom->Add( m_outer_identity_custom_val, 1, wxEXPAND, 5 );
sb_outer_identity_radio->Add( sb_outer_identity_custom, 1, wxEXPAND, 5 );
diff --git a/EAPMethods/res/EAPTTLSUI.fbp b/EAPMethods/res/wxEAPTTLS.fbp
similarity index 98%
rename from EAPMethods/res/EAPTTLSUI.fbp
rename to EAPMethods/res/wxEAPTTLS.fbp
index 71e5271..38e97a8 100644
--- a/EAPMethods/res/EAPTTLSUI.fbp
+++ b/EAPMethods/res/wxEAPTTLS.fbp
@@ -8,14 +8,14 @@
source_name
0
0
- ..\res
+ .
UTF-8
table
- EAPTTLSUI
+ wxEAPTTLS
1000
none
1
- EAPTTLSUI
+ EAPTTLS
.
#include <StdAfx.h>
@@ -110,7 +110,7 @@
- Load From Icon Resource; outer_identity.ico; [32; 32]
+ Load From Icon Resource; ; [32; 32]
1
0
@@ -423,7 +423,7 @@
wxFILTER_NONE
wxDefaultValidator
- 1
+ 0
@@ -590,7 +590,7 @@
0
1
- m_outer_identity_custom_val_
+ m_outer_identity_custom_val
1
diff --git a/EAPMethods/res/EAPTTLSUI.h b/EAPMethods/res/wxEAPTTLS.h
similarity index 92%
rename from EAPMethods/res/EAPTTLSUI.h
rename to EAPMethods/res/wxEAPTTLS.h
index b524d21..57ed0a5 100644
--- a/EAPMethods/res/EAPTTLSUI.h
+++ b/EAPMethods/res/wxEAPTTLS.h
@@ -5,8 +5,8 @@
// PLEASE DO "NOT" EDIT THIS FILE!
///////////////////////////////////////////////////////////////////////////
-#ifndef __EAPTTLSUI_H__
-#define __EAPTTLSUI_H__
+#ifndef __WXEAPTTLS_H__
+#define __WXEAPTTLS_H__
#include
#include
@@ -49,7 +49,7 @@ class wxEAPTTLSConfigBase : public wxPanel
wxRadioButton* m_outer_identity_same;
wxRadioButton* m_outer_identity_empty;
wxRadioButton* m_outer_identity_custom;
- wxTextCtrl* m_outer_identity_custom_val_;
+ wxTextCtrl* m_outer_identity_custom_val;
// Virtual event handlers, overide them in your derived class
virtual void OnOuterIdentitySame( wxCommandEvent& event ) { event.Skip(); }
@@ -64,4 +64,4 @@ class wxEAPTTLSConfigBase : public wxPanel
};
-#endif //__EAPTTLSUI_H__
+#endif //__WXEAPTTLS_H__
diff --git a/EAPMethods/res/wxpass.cpp b/EAPMethods/res/wxpass.cpp
new file mode 100644
index 0000000..df4944b
--- /dev/null
+++ b/EAPMethods/res/wxpass.cpp
@@ -0,0 +1,74 @@
+///////////////////////////////////////////////////////////////////////////
+// C++ code generated with wxFormBuilder (version Jun 17 2015)
+// http://www.wxformbuilder.org/
+//
+// PLEASE DO "NOT" EDIT THIS FILE!
+///////////////////////////////////////////////////////////////////////////
+
+#include
+
+#include "wxpass.h"
+
+///////////////////////////////////////////////////////////////////////////
+
+wxPasswordCredentialsBase::wxPasswordCredentialsBase( wxWindow* parent, wxWindowID id, const wxPoint& pos, const wxSize& size, long style ) : wxPanel( parent, id, pos, size, style )
+{
+ wxStaticBoxSizer* sb_credentials;
+ sb_credentials = new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, _("Session Credentials") ), wxVERTICAL );
+
+ wxBoxSizer* sb_credentials_horiz;
+ sb_credentials_horiz = new wxBoxSizer( wxHORIZONTAL );
+
+ m_credentials_icon = new wxStaticBitmap( sb_credentials->GetStaticBox(), wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
+ sb_credentials_horiz->Add( m_credentials_icon, 0, wxALL, 5 );
+
+ wxBoxSizer* sb_credentials_vert;
+ sb_credentials_vert = new wxBoxSizer( wxVERTICAL );
+
+ m_credentials_label = new wxStaticText( sb_credentials->GetStaticBox(), wxID_ANY, _("Please provide your user ID and password."), wxDefaultPosition, wxDefaultSize, 0 );
+ m_credentials_label->Wrap( 446 );
+ sb_credentials_vert->Add( m_credentials_label, 0, wxALL|wxEXPAND, 5 );
+
+ wxGridSizer* sb_credentials_tbl;
+ sb_credentials_tbl = new wxGridSizer( 0, 2, 0, 0 );
+
+ m_identity_label = new wxStaticText( sb_credentials->GetStaticBox(), wxID_ANY, _("User ID:"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_identity_label->Wrap( -1 );
+ sb_credentials_tbl->Add( m_identity_label, 1, wxEXPAND, 5 );
+
+ m_identity = new wxTextCtrl( sb_credentials->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
+ m_identity->SetToolTip( _("Enter your user name here (user@domain.org, DOMAINUser, etc.)") );
+
+ sb_credentials_tbl->Add( m_identity, 2, wxEXPAND, 5 );
+
+ m_password_label = new wxStaticText( sb_credentials->GetStaticBox(), wxID_ANY, _("Password:"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_password_label->Wrap( -1 );
+ sb_credentials_tbl->Add( m_password_label, 1, wxEXPAND, 5 );
+
+ m_password = new wxTextCtrl( sb_credentials->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxTE_PASSWORD );
+ m_password->SetToolTip( _("Enter your password here") );
+
+ sb_credentials_tbl->Add( m_password, 2, wxEXPAND, 5 );
+
+
+ sb_credentials_vert->Add( sb_credentials_tbl, 0, wxEXPAND|wxALL, 5 );
+
+ m_remember = new wxCheckBox( sb_credentials->GetStaticBox(), wxID_ANY, _("&Remember my credentials"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_remember->SetHelpText( _("Check if you would like to save the credentials to Windows Credential Manager") );
+
+ sb_credentials_vert->Add( m_remember, 0, wxALL|wxEXPAND, 5 );
+
+
+ sb_credentials_horiz->Add( sb_credentials_vert, 1, wxEXPAND, 5 );
+
+
+ sb_credentials->Add( sb_credentials_horiz, 0, wxEXPAND, 5 );
+
+
+ this->SetSizer( sb_credentials );
+ this->Layout();
+}
+
+wxPasswordCredentialsBase::~wxPasswordCredentialsBase()
+{
+}
diff --git a/EAPMethods/res/wxpass.fbp b/EAPMethods/res/wxpass.fbp
new file mode 100644
index 0000000..61b0315
--- /dev/null
+++ b/EAPMethods/res/wxpass.fbp
@@ -0,0 +1,728 @@
+
+
+
+
+ ;
+ C++
+ 1
+ source_name
+ 0
+ 0
+ .
+ UTF-8
+ table
+ wxpass
+ 1000
+ none
+ 1
+ pass
+
+ .
+ #include <StdAfx.h>
+ 1
+ 1
+ 1
+ 1
+ UI
+ 1
+ 1
+
+ 0
+ wxAUI_MGR_DEFAULT
+
+
+ 1
+ 1
+ impl_virtual
+
+
+ 0
+ wxID_ANY
+
+
+ wxPasswordCredentialsBase
+
+ 500,-1
+
+
+
+
+ wxTAB_TRAVERSAL
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ wxID_ANY
+ Session Credentials
+
+ sb_credentials
+ wxVERTICAL
+ none
+
+
+ 5
+ wxEXPAND
+ 0
+
+
+ sb_credentials_horiz
+ wxHORIZONTAL
+ none
+
+ 5
+ wxALL
+ 0
+
+ 1
+ 1
+ 1
+ 1
+
+
+
+
+
+
+ Load From Icon Resource; ; [32; 32]
+
+ 1
+ 0
+ 1
+
+ 1
+ 0
+ Dock
+ 0
+ Left
+ 1
+
+ 1
+
+ 0
+ 0
+ wxID_ANY
+
+ 0
+
+
+ 0
+
+ 1
+ m_credentials_icon
+ 1
+
+
+ protected
+ 1
+
+ Resizable
+ 1
+
+
+ 0
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 5
+ wxEXPAND
+ 1
+
+
+ sb_credentials_vert
+ wxVERTICAL
+ none
+
+ 5
+ wxALL|wxEXPAND
+ 0
+
+ 1
+ 1
+ 1
+ 1
+
+
+
+
+
+
+
+ 1
+ 0
+ 1
+
+ 1
+ 0
+ Dock
+ 0
+ Left
+ 1
+
+ 1
+
+ 0
+ 0
+ wxID_ANY
+ Please provide your user ID and password.
+
+ 0
+
+
+ 0
+
+ 1
+ m_credentials_label
+ 1
+
+
+ protected
+ 1
+
+ Resizable
+ 1
+
+
+
+ 0
+
+
+
+
+ 446
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 5
+ wxEXPAND|wxALL
+ 0
+
+ 2
+ 0
+
+ sb_credentials_tbl
+ none
+ 0
+ 0
+
+ 5
+ wxEXPAND
+ 1
+
+ 1
+ 1
+ 1
+ 1
+
+
+
+
+
+
+
+ 1
+ 0
+ 1
+
+ 1
+ 0
+ Dock
+ 0
+ Left
+ 1
+
+ 1
+
+ 0
+ 0
+ wxID_ANY
+ User ID:
+
+ 0
+
+
+ 0
+
+ 1
+ m_identity_label
+ 1
+
+
+ protected
+ 1
+
+ Resizable
+ 1
+
+
+
+ 0
+
+
+
+
+ -1
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 5
+ wxEXPAND
+ 2
+
+ 1
+ 1
+ 1
+ 1
+
+
+
+
+
+
+
+ 1
+ 0
+ 1
+
+ 1
+ 0
+ Dock
+ 0
+ Left
+ 1
+
+ 1
+
+ 0
+ 0
+ wxID_ANY
+
+ 0
+
+
+
+ 0
+
+ 1
+ m_identity
+ 1
+
+
+ protected
+ 1
+
+ Resizable
+ 1
+
+
+
+ 0
+ Enter your user name here (user@domain.org, DOMAINUser, etc.)
+
+ wxFILTER_NONE
+ wxDefaultValidator
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 5
+ wxEXPAND
+ 1
+
+ 1
+ 1
+ 1
+ 1
+
+
+
+
+
+
+
+ 1
+ 0
+ 1
+
+ 1
+ 0
+ Dock
+ 0
+ Left
+ 1
+
+ 1
+
+ 0
+ 0
+ wxID_ANY
+ Password:
+
+ 0
+
+
+ 0
+
+ 1
+ m_password_label
+ 1
+
+
+ protected
+ 1
+
+ Resizable
+ 1
+
+
+
+ 0
+
+
+
+
+ -1
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 5
+ wxEXPAND
+ 2
+
+ 1
+ 1
+ 1
+ 1
+
+
+
+
+
+
+
+ 1
+ 0
+ 1
+
+ 1
+ 0
+ Dock
+ 0
+ Left
+ 1
+
+ 1
+
+ 0
+ 0
+ wxID_ANY
+
+ 0
+
+
+
+ 0
+
+ 1
+ m_password
+ 1
+
+
+ protected
+ 1
+
+ Resizable
+ 1
+
+ wxTE_PASSWORD
+
+ 0
+ Enter your password here
+
+ wxFILTER_NONE
+ wxDefaultValidator
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 5
+ wxALL|wxEXPAND
+ 0
+
+ 1
+ 1
+ 1
+ 1
+
+
+
+
+
+
+
+ 1
+ 0
+ 0
+ 1
+ Check if you would like to save the credentials to Windows Credential Manager
+ 1
+ 0
+ Dock
+ 0
+ Left
+ 1
+
+ 1
+
+ 0
+ 0
+ wxID_ANY
+ &Remember my credentials
+
+ 0
+
+
+ 0
+
+ 1
+ m_remember
+ 1
+
+
+ protected
+ 1
+
+ Resizable
+ 1
+
+
+
+ 0
+
+
+ wxFILTER_NONE
+ wxDefaultValidator
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/EAPMethods/res/wxpass.h b/EAPMethods/res/wxpass.h
new file mode 100644
index 0000000..c07cce4
--- /dev/null
+++ b/EAPMethods/res/wxpass.h
@@ -0,0 +1,55 @@
+///////////////////////////////////////////////////////////////////////////
+// C++ code generated with wxFormBuilder (version Jun 17 2015)
+// http://www.wxformbuilder.org/
+//
+// PLEASE DO "NOT" EDIT THIS FILE!
+///////////////////////////////////////////////////////////////////////////
+
+#ifndef __WXPASS_H__
+#define __WXPASS_H__
+
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+
+///////////////////////////////////////////////////////////////////////////
+
+///////////////////////////////////////////////////////////////////////////////
+/// Class wxPasswordCredentialsBase
+///////////////////////////////////////////////////////////////////////////////
+class wxPasswordCredentialsBase : public wxPanel
+{
+ private:
+
+ protected:
+ wxStaticBitmap* m_credentials_icon;
+ wxStaticText* m_credentials_label;
+ wxStaticText* m_identity_label;
+ wxTextCtrl* m_identity;
+ wxStaticText* m_password_label;
+ wxTextCtrl* m_password;
+ wxCheckBox* m_remember;
+
+ public:
+
+ wxPasswordCredentialsBase( wxWindow* parent, wxWindowID id = wxID_ANY, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize( 500,-1 ), long style = wxTAB_TRAVERSAL );
+ ~wxPasswordCredentialsBase();
+
+};
+
+#endif //__WXPASS_H__
diff --git a/EAPMethods/src/EAPMethodsUI.cpp b/EAPMethods/src/EAPMethodsUI.cpp
new file mode 100644
index 0000000..482a6a4
Binary files /dev/null and b/EAPMethods/src/EAPMethodsUI.cpp differ
diff --git a/EAPMethods/src/EAPTLS.cpp b/EAPMethods/src/EAPTLS.cpp
index 724a59d..cdb5360 100644
Binary files a/EAPMethods/src/EAPTLS.cpp and b/EAPMethods/src/EAPTLS.cpp differ
diff --git a/EAPMethods/src/EAPTLSUI.cpp b/EAPMethods/src/EAPTLSUI.cpp
new file mode 100644
index 0000000..0e8f179
Binary files /dev/null and b/EAPMethods/src/EAPTLSUI.cpp differ
diff --git a/EAPMethods/src/EAPTTLS.cpp b/EAPMethods/src/EAPTTLS.cpp
index 821e993..740b455 100644
Binary files a/EAPMethods/src/EAPTTLS.cpp and b/EAPMethods/src/EAPTTLS.cpp differ
diff --git a/EAPMethods/src/EAPTTLSUI.cpp b/EAPMethods/src/EAPTTLSUI.cpp
new file mode 100644
index 0000000..e3b80f9
Binary files /dev/null and b/EAPMethods/src/EAPTTLSUI.cpp differ
diff --git a/EAPMethods/src/Main.cpp b/EAPMethods/src/Main.cpp
index 46dddef..0680f5f 100644
Binary files a/EAPMethods/src/Main.cpp and b/EAPMethods/src/Main.cpp differ
diff --git a/EAPMethods/src/MainUI.cpp b/EAPMethods/src/MainUI.cpp
index 9a957b2..79bf2ad 100644
Binary files a/EAPMethods/src/MainUI.cpp and b/EAPMethods/src/MainUI.cpp differ