diff --git a/CredWrite/CredWrite.vcxproj b/CredWrite/CredWrite.vcxproj
index bf84d36..d739791 100644
--- a/CredWrite/CredWrite.vcxproj
+++ b/CredWrite/CredWrite.vcxproj
@@ -87,6 +87,7 @@
+
Create
diff --git a/CredWrite/CredWrite.vcxproj.filters b/CredWrite/CredWrite.vcxproj.filters
index 7e3a58f..d59c8f1 100644
--- a/CredWrite/CredWrite.vcxproj.filters
+++ b/CredWrite/CredWrite.vcxproj.filters
@@ -29,6 +29,9 @@
Source Files
+
+ Source Files
+
diff --git a/CredWrite/Main.cpp b/CredWrite/Main.cpp
index 33c96be..8debf3a 100644
Binary files a/CredWrite/Main.cpp and b/CredWrite/Main.cpp differ
diff --git a/CredWrite/StdAfx.h b/CredWrite/StdAfx.h
index 5d3a928..2d67277 100644
Binary files a/CredWrite/StdAfx.h and b/CredWrite/StdAfx.h differ
diff --git a/EAPMethods/Doxyfile b/EAPMethods/Doxyfile
index 36bda1b..9a2bda5 100644
--- a/EAPMethods/Doxyfile
+++ b/EAPMethods/Doxyfile
@@ -789,7 +789,7 @@ RECURSIVE = YES
# Note that relative paths are relative to the directory from which doxygen is
# run.
-EXCLUDE =
+EXCLUDE = res
# The EXCLUDE_SYMLINKS tag can be used to select whether or not files or
# directories that are symbolic links (a Unix file system feature) are excluded
diff --git a/EAPMethods/EAPTTLSUI/EAPTTLSUI.vcxproj b/EAPMethods/EAPTTLSUI/EAPTTLSUI.vcxproj
index 1472d67..f886e91 100644
--- a/EAPMethods/EAPTTLSUI/EAPTTLSUI.vcxproj
+++ b/EAPMethods/EAPTTLSUI/EAPTTLSUI.vcxproj
@@ -82,6 +82,7 @@
+
@@ -97,6 +98,7 @@
+
diff --git a/EAPMethods/EAPTTLSUI/EAPTTLSUI.vcxproj.filters b/EAPMethods/EAPTTLSUI/EAPTTLSUI.vcxproj.filters
index 7da1c1c..07f5328 100644
--- a/EAPMethods/EAPTTLSUI/EAPTTLSUI.vcxproj.filters
+++ b/EAPMethods/EAPTTLSUI/EAPTTLSUI.vcxproj.filters
@@ -60,6 +60,9 @@
Header Files
+
+ Header Files
+
@@ -98,6 +101,9 @@
Source Files
+
+ Source Files
+
diff --git a/EAPMethods/EAPTTLSUI/StdAfx.h b/EAPMethods/EAPTTLSUI/StdAfx.h
index 57e25be..4c12f26 100644
Binary files a/EAPMethods/EAPTTLSUI/StdAfx.h and b/EAPMethods/EAPTTLSUI/StdAfx.h differ
diff --git a/EAPMethods/include/EAP.h b/EAPMethods/include/EAP.h
index e5a9bd3..b1a2ddf 100644
Binary files a/EAPMethods/include/EAP.h and b/EAPMethods/include/EAP.h differ
diff --git a/EAPMethods/include/EAP_UI.h b/EAPMethods/include/EAP_UI.h
index 9b985d9..fe84eaa 100644
Binary files a/EAPMethods/include/EAP_UI.h and b/EAPMethods/include/EAP_UI.h differ
diff --git a/EAPMethods/include/PAP.h b/EAPMethods/include/PAP.h
index 92709cf..1520fa6 100644
Binary files a/EAPMethods/include/PAP.h and b/EAPMethods/include/PAP.h differ
diff --git a/EAPMethods/include/PAP_UI.h b/EAPMethods/include/PAP_UI.h
new file mode 100644
index 0000000..76c8f9d
--- /dev/null
+++ b/EAPMethods/include/PAP_UI.h
@@ -0,0 +1,53 @@
+/*
+ Copyright 2015-2016 Amebis
+ Copyright 2016 GÉANT
+
+ This file is part of GÉANTLink.
+
+ GÉANTLink 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.
+
+ GÉANTLink 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 GÉANTLink. If not, see .
+*/
+
+#include "PAP.h"
+
+typedef wxEAPCredentialsConfigPanel wxPAPCredentialsConfigPanel;
+class wxPAPConfigPanel;
+
+#pragma once
+
+
+///
+/// PAP configuration panel
+///
+class wxPAPConfigPanel : public wxPanel
+{
+public:
+ ///
+ /// Constructs a configuration panel
+ ///
+ wxPAPConfigPanel(eap::config_pap &cfg, LPCTSTR pszCredTarget, wxWindow* parent);
+
+ ///
+ /// Destructs the configuration panel
+ ///
+ virtual ~wxPAPConfigPanel();
+
+protected:
+ /// \cond internal
+ virtual void OnInitDialog(wxInitDialogEvent& event);
+ /// \endcond
+
+protected:
+ wxPAPCredentialsConfigPanel *m_credentials; ///< Credentials configuration panel
+ wxStaticText *m_label; ///< No-configuration notice
+};
diff --git a/EAPMethods/include/TLS.h b/EAPMethods/include/TLS.h
index f4c4b79..8d44397 100644
Binary files a/EAPMethods/include/TLS.h and b/EAPMethods/include/TLS.h differ
diff --git a/EAPMethods/include/TLS_UI.h b/EAPMethods/include/TLS_UI.h
index 1e4c717..3d7e330 100644
Binary files a/EAPMethods/include/TLS_UI.h and b/EAPMethods/include/TLS_UI.h differ
diff --git a/EAPMethods/include/TTLS.h b/EAPMethods/include/TTLS.h
index 18595fd..3d375ce 100644
Binary files a/EAPMethods/include/TTLS.h and b/EAPMethods/include/TTLS.h differ
diff --git a/EAPMethods/include/TTLS_UI.h b/EAPMethods/include/TTLS_UI.h
index bd70f3c..1319f18 100644
Binary files a/EAPMethods/include/TTLS_UI.h and b/EAPMethods/include/TTLS_UI.h differ
diff --git a/EAPMethods/res/wxEAP_UI.cpp b/EAPMethods/res/wxEAP_UI.cpp
index ffd1c33..f84504e 100644
--- a/EAPMethods/res/wxEAP_UI.cpp
+++ b/EAPMethods/res/wxEAP_UI.cpp
@@ -15,16 +15,16 @@ wxEAPConfigDialogBase::wxEAPConfigDialogBase( wxWindow* parent, wxWindowID id, c
{
this->SetSizeHints( wxDefaultSize, wxDefaultSize );
- wxBoxSizer* sz_content;
- sz_content = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* sb_content;
+ sb_content = new wxBoxSizer( wxVERTICAL );
m_banner = new wxEAPBannerPanel( this );
- sz_content->Add( m_banner, 0, wxEXPAND|wxBOTTOM, 5 );
+ sb_content->Add( m_banner, 0, wxEXPAND|wxBOTTOM, 5 );
m_providers = new wxNotebook( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, 0 );
- sz_content->Add( m_providers, 1, wxEXPAND|wxALL, 5 );
+ sb_content->Add( m_providers, 1, wxEXPAND|wxALL, 5 );
m_buttons = new wxStdDialogButtonSizer();
m_buttonsOK = new wxButton( this, wxID_OK );
@@ -33,12 +33,12 @@ wxEAPConfigDialogBase::wxEAPConfigDialogBase( wxWindow* parent, wxWindowID id, c
m_buttons->AddButton( m_buttonsCancel );
m_buttons->Realize();
- sz_content->Add( m_buttons, 0, wxEXPAND|wxALL, 5 );
+ sb_content->Add( m_buttons, 0, wxEXPAND|wxALL, 5 );
- this->SetSizer( sz_content );
+ this->SetSizer( sb_content );
this->Layout();
- sz_content->Fit( this );
+ sb_content->Fit( this );
// Connect Events
this->Connect( wxEVT_INIT_DIALOG, wxInitDialogEventHandler( wxEAPConfigDialogBase::OnInitDialog ) );
@@ -55,17 +55,17 @@ wxEAPCredentialsDialogBase::wxEAPCredentialsDialogBase( wxWindow* parent, wxWind
{
this->SetSizeHints( wxDefaultSize, wxDefaultSize );
- wxBoxSizer* sz_content;
- sz_content = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* sb_content;
+ sb_content = new wxBoxSizer( wxVERTICAL );
m_banner = new wxEAPBannerPanel( this );
- sz_content->Add( m_banner, 0, wxEXPAND|wxBOTTOM, 5 );
+ sb_content->Add( m_banner, 0, wxEXPAND|wxBOTTOM, 5 );
m_panels = new wxBoxSizer( wxVERTICAL );
- sz_content->Add( m_panels, 1, wxEXPAND|wxALL, 5 );
+ sb_content->Add( m_panels, 1, wxEXPAND|wxALL, 5 );
m_buttons = new wxStdDialogButtonSizer();
m_buttonsOK = new wxButton( this, wxID_OK );
@@ -74,16 +74,22 @@ wxEAPCredentialsDialogBase::wxEAPCredentialsDialogBase( wxWindow* parent, wxWind
m_buttons->AddButton( m_buttonsCancel );
m_buttons->Realize();
- sz_content->Add( m_buttons, 0, wxEXPAND|wxALL, 5 );
+ sb_content->Add( m_buttons, 0, wxEXPAND|wxALL, 5 );
- this->SetSizer( sz_content );
+ this->SetSizer( sb_content );
this->Layout();
- sz_content->Fit( this );
+ sb_content->Fit( this );
+
+ // Connect Events
+ this->Connect( wxEVT_INIT_DIALOG, wxInitDialogEventHandler( wxEAPCredentialsDialogBase::OnInitDialog ) );
}
wxEAPCredentialsDialogBase::~wxEAPCredentialsDialogBase()
{
+ // Disconnect Events
+ this->Disconnect( wxEVT_INIT_DIALOG, wxInitDialogEventHandler( wxEAPCredentialsDialogBase::OnInitDialog ) );
+
}
wxEAPBannerPanelBase::wxEAPBannerPanelBase( wxWindow* parent, wxWindowID id, const wxPoint& pos, const wxSize& size, long style ) : wxPanel( parent, id, pos, size, style )
@@ -96,7 +102,7 @@ wxEAPBannerPanelBase::wxEAPBannerPanelBase( wxWindow* parent, wxWindowID id, con
m_title = new wxStaticText( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxALIGN_RIGHT );
m_title->Wrap( -1 );
- m_title->SetFont( wxFont( 14, 70, 90, 90, false, wxEmptyString ) );
+ m_title->SetFont( wxFont( 18, 70, 90, 90, false, wxEmptyString ) );
m_title->SetForegroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_HIGHLIGHTTEXT ) );
sc_content->Add( m_title, 0, wxALL|wxEXPAND, 5 );
@@ -217,7 +223,7 @@ wxPasswordCredentialsPanelBase::wxPasswordCredentialsPanelBase( wxWindow* parent
sb_credentials_tbl->Add( m_identity_label, 0, wxEXPAND|wxALIGN_CENTER_VERTICAL, 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.)") );
+ m_identity->SetToolTip( _("Enter your user name here (user@domain.org, DOMAIN\\User, etc.)") );
sb_credentials_tbl->Add( m_identity, 2, wxEXPAND|wxALIGN_CENTER_VERTICAL, 5 );
diff --git a/EAPMethods/res/wxEAP_UI.fbp b/EAPMethods/res/wxEAP_UI.fbp
index 8dcd5e4..9a233b0 100644
--- a/EAPMethods/res/wxEAP_UI.fbp
+++ b/EAPMethods/res/wxEAP_UI.fbp
@@ -90,7 +90,7 @@