// 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 #ifndef __frmNewAccount__ #define __frmNewAccount__ /** @file Subclass of frmNewAccountADT, which is generated by wxFormBuilder. */ #include #include #include #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 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(ConnectionObject *Connection); SecTrustResultType ProcessResultType(ConnectionObject *Connection); #endif public: /** Constructor */ frmNewAccount( wxWindow* parent ); void SetupPointers(bool *reloadAccountInc, CalendarDataStorage *dataStorage); DECLARE_EVENT_TABLE() //// end generated class members }; #endif // __frmNewAccount__