+// frmNewAccount.h - frmNewAccount form functions header
+//
+// (c) 2016-2017 Xestia Software Development.
+//
+// This file is part of Xestia Calendar.
+//
+// Xestia Calendar 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, version 3 of the license.
+//
+// Xestia Calendar 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 Xestia Calendar. If not, see <http://www.gnu.org/licenses/>
+
#ifndef __frmNewAccount__
#define __frmNewAccount__
Subclass of frmNewAccountADT, which is generated by wxFormBuilder.
*/
+#include <wx/fileconf.h>
+#include <wx/msgdlg.h>
+#include <string>
+
#include "../../AppXestiaCalendar.h"
+#include "../../libraries/CalendarDataStorage/CalendarDataStorage.h"
+#include "../objects/CalDAV/CalDAV.h"
+
+#include "../invalidsslcertificate/frmInvalidSSLCertificate.h"
+
+#include "svrblist.h"
+#include "dirs.h"
+#include "sslcertstructs.h"
+
+#ifdef __WIN32__
+#include "win32ssl.h"
+#endif
+
+DECLARE_EVENT_TYPE(UPDATERESULTS, wxID_ANY);
+DECLARE_EVENT_TYPE(RUNCALDAVTEST, wxID_ANY);
+
+
//// end generated include
/** Implementing frmNewAccountADT */
class frmNewAccount : public frmNewAccountADT
{
+ private:
+ int pageSeek = 1;
+ wxString serverPrefix;
+ bool *reloadAccountConfig = NULL;
+ struct NewAccountResult{
+ bool Connected = false;
+ bool SSLStatus = false;
+ COSSLVerified SSLVerified = COSSL_NORESULT;
+ bool ValidResponse = false;
+ bool AuthPassed = false;
+ bool CanProcess = false;
+ std::string ErrorMessage = "";
+ };
+ bool VerifyResultData(NewAccountResult *resultData);
protected:
// Handlers for frmNewAccountADT events.
- void UpdateRequirements( wxCommandEvent& event );
- void CheckAccountName( wxCommandEvent& event );
- void ProcessPrevious( wxCommandEvent& event );
- void ProcessNext( wxCommandEvent& event );
+ void UpdateRequirements( wxCommandEvent &event );
+ void UpdateResults( wxCommandEvent &event );
+ void RunCalDAVTest( wxCommandEvent &event );
+ void CheckAccountName( wxCommandEvent &event );
+ void Navigate( wxCommandEvent& event );
void CloseWindow( wxCommandEvent& event );
+ void WriteAccountDetails( wxFileConfig *cfgFileIn, wxString accountType, wxString directoryName );
+#if defined(__APPLE__)
+ int DisplayTrustPanel(CalDAV *Connection);
+ SecTrustResultType ProcessResultType(CalDAV *Connection);
+#endif
public:
/** Constructor */
frmNewAccount( wxWindow* parent );
+ void SetupPointers(bool *reloadAccountInc, CalendarDataStorage *dataStorage);
+ DECLARE_EVENT_TABLE()
//// end generated class members
};