1 // frmNewAccount.h - frmNewAccount form functions header
3 // (c) 2016-2017 Xestia Software Development.
5 // This file is part of Xestia Calendar.
7 // Xestia Calendar is free software: you can redistribute it and/or modify
8 // it under the terms of the GNU General Public License as published by the
9 // Free Software Foundation, version 3 of the license.
11 // Xestia Calendar is distributed in the hope that it will be useful,
12 // but WITHOUT ANY WARRANTY; without even the implied warranty of
13 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 // GNU General Public License for more details.
16 // You should have received a copy of the GNU General Public License along
17 // with Xestia Calendar. If not, see <http://www.gnu.org/licenses/>
19 #ifndef __frmNewAccount__
20 #define __frmNewAccount__
24 Subclass of frmNewAccountADT, which is generated by wxFormBuilder.
27 #include <wx/fileconf.h>
28 #include <wx/msgdlg.h>
31 #include "../../AppXestiaCalendar.h"
33 #include "../../libraries/CalendarDataStorage/CalendarDataStorage.h"
34 #include "../objects/CalDAV/CalDAV.h"
39 DECLARE_EVENT_TYPE(UPDATERESULTS, wxID_ANY);
40 DECLARE_EVENT_TYPE(RUNCALDAVTEST, wxID_ANY);
43 //// end generated include
45 /** Implementing frmNewAccountADT */
46 class frmNewAccount : public frmNewAccountADT
50 wxString serverPrefix;
51 bool *reloadAccountConfig = NULL;
52 struct NewAccountResult{
53 bool Connected = false;
54 bool SSLStatus = false;
55 COSSLVerified SSLVerified = COSSL_NORESULT;
56 bool ValidResponse = false;
57 bool AuthPassed = false;
58 bool CanProcess = false;
59 std::string ErrorMessage = "";
62 // Handlers for frmNewAccountADT events.
63 void UpdateRequirements( wxCommandEvent &event );
64 void UpdateResults( wxCommandEvent &event );
65 void RunCalDAVTest( wxCommandEvent &event );
66 void CheckAccountName( wxCommandEvent &event );
67 void Navigate( wxCommandEvent& event );
68 void CloseWindow( wxCommandEvent& event );
69 void WriteAccountDetails( wxFileConfig *cfgFileIn, wxString accountType, wxString directoryName );
70 #if defined(__APPLE__)
71 int DisplayTrustPanel(ConnectionObject *Connection);
72 SecTrustResultType ProcessResultType(ConnectionObject *Connection);
76 frmNewAccount( wxWindow* parent );
77 void SetupPointers(bool *reloadAccountInc, CalendarDataStorage *dataStorage);
79 //// end generated class members
83 #endif // __frmNewAccount__