// frmNewAccount.h - New Account form header.
//
// (c) 2012-2015 Xestia Software Development.
//
// This file is part of Xestia Address Book.
//
// Xestia Address Book 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 Address Book 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 Address Book. If not, see
#ifndef __frmNewAccount__
#define __frmNewAccount__
/**
@file
Subclass of frmNewAccountADT, which is generated by wxFormBuilder.
*/
#include "AppXestiaAddrBk.h"
#include "carddav2/carddav2.h"
#include "frmInvalidSSLCertificate.h"
#include
#include
DECLARE_EVENT_TYPE(UPDATERESULTS, wxID_ANY);
DECLARE_EVENT_TYPE(RUNCARDDAV2TEST, wxID_ANY);
//// end generated include
/** Implementing frmNewAccountADT */
class frmNewAccount : public frmNewAccountADT
{
protected:
// Handlers for frmNewAccountADT events.
void CheckAccountName( wxCommandEvent& event );
void ProcessPrevious( wxCommandEvent& event );
void ProcessNext( wxCommandEvent& event );
void CloseWindow( wxCommandEvent& event );
void UpdateRequirements( wxCommandEvent& event );
void UpdateResults( wxCommandEvent& event );
void WriteAccountDetails( wxFileConfig *cfgfilein, wxString AccountType, wxString DirectoryName );
void RunCardDAV2Test( wxCommandEvent& event );
#if defined(__APPLE__)
int DisplayTrustPanel(CardDAV *Connection);
SecTrustResultType ProcessResultType(CardDAV *Connection);
#endif
public:
/** Constructor */
frmNewAccount( wxWindow* parent );
void SetupPointers(bool *ReloadAccountInc);
DECLARE_EVENT_TABLE()
//// end generated class members
private:
int PageSeek = 0;
wxString ServerPrefix;
bool *ReloadAccountConfig = NULL;
void SetErrorMessageLabel();
struct NewAccountResult{
bool Connected = false;
bool SSLStatus = false;
COSSLVerified SSLVerified = COSSL_NORESULT;
bool ValidResponse = false;
bool AuthPassed = false;
bool CanProcess = false;
std::string ErrorMessage = "";
};
};
#endif // __frmNewAccount__