X-Git-Url: http://Server1/repobrowser/?a=blobdiff_plain;f=source%2FfrmMain.h;h=24f4032312a0bc00f3651e9176cc9f0e108e9c25;hb=9b00feaa475fa3bca08336bc26050256da8807f3;hp=497c13f9cf220903cbb9c9176747a6a4fd703b6a;hpb=f204cf9df7db6a3f097e4d013b47d19577db09a7;p=xestiaab%2F.git
diff --git a/source/frmMain.h b/source/frmMain.h
index 497c13f..24f4032 100644
--- a/source/frmMain.h
+++ b/source/frmMain.h
@@ -1,3 +1,21 @@
+// frmMain.h - Main window header form.
+//
+// (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 __frmMain__
#define __frmMain__
@@ -19,12 +37,20 @@ Subclass of frmMainADT, which is generated by wxFormBuilder.
#include
#include
+#if defined(__APPLE__)
+#import
+#import
+#elif defined(__WIN32__)
+#include "common/win32ssl.h"
+#endif
+
#include "common/timers.h"
#include "common/events.h"
#include "common/etag.h"
-#include "widgets/XABAccountView.h"
#include "bitmaps.h"
#include "common/sslcertstructs.h"
+#include "widgets/XABContactMenu.h"
+#include "widgets/XABAccountView.h"
//// end generated include
@@ -32,7 +58,10 @@ DECLARE_EVENT_TYPE(CE_UPDATECONTACTLIST, wxID_ANY)
DECLARE_EVENT_TYPE(CE_UPDATEACCOUNTLIST, wxID_ANY)
DECLARE_EVENT_TYPE(SE_UPDATECONTACTNOTIF, wxID_ANY)
DECLARE_EVENT_TYPE(CE_OPENCONTACT, wxID_ANY)
+DECLARE_EVENT_TYPE(CE_OPENCONTACTLIST, wxID_ANY)
+DECLARE_EVENT_TYPE(CE_NEWCONTACT, wxID_ANY)
DECLARE_EVENT_TYPE(CE_EDITCONTACT, wxID_ANY)
+DECLARE_EVENT_TYPE(CE_DELETECONTACT, wxID_ANY)
DECLARE_EVENT_TYPE(CE_REVEALCONTACT, wxID_ANY)
DECLARE_EVENT_TYPE(CE_REMOVESEARCH, wxID_ANY)
DECLARE_EVENT_TYPE(CE_REMOVECONTACT, wxID_ANY)
@@ -46,10 +75,16 @@ DECLARE_EVENT_TYPE(WINDOW_EDIT, wxID_ANY);
DECLARE_EVENT_TYPE(WINDOW_CLOSE, wxID_ANY);
DECLARE_EVENT_TYPE(CONNSTAT_UPDATE, wxID_ANY);
DECLARE_EVENT_TYPE(INVALIDSSLCERT, wxID_ANY);
+DECLARE_EVENT_TYPE(INVALIDSSLCERTSTRING, wxID_ANY);
DECLARE_EVENT_TYPE(GETSELECTEDLIST, wxID_ANY);
DECLARE_EVENT_TYPE(SYNCACCOUNT, wxID_ANY);
DECLARE_EVENT_TYPE(IMPORT_RESULTSSHOW, wxID_ANY);
DECLARE_EVENT_TYPE(RELOADCONTACTLIST, wxID_ANY);
+DECLARE_EVENT_TYPE(REFRESHADDRESSBOOK, wxID_ANY);
+
+#if defined(__APPLE__)
+DECLARE_EVENT_TYPE(INVALIDSSLTRUST, wxID_ANY);
+#endif
struct UCNotif{
wxString ContactAccount;
@@ -93,7 +128,13 @@ class frmMain : public frmMainADT
std::map WindowList;
std::map AccountRefreshList;
std::map AccountAccDirList;
- std::map AccountSSLData;
+#if defined(__APPLE__)
+ std::map AccountTrustData;
+#elif defined(__WIN32__)
+ std::map AccountCertificateData;
+#else
+ std::map AccountSSLData;
+#endif
std::map AccountSSLResult;
std::multimap AccountGroupList;
std::multimap AccountGroupFilename;
@@ -131,6 +172,7 @@ class frmMain : public frmMainADT
int AccountID;
int AccountNetID;
int AccountGrpID;
+ int AccountUnsupportedID;
int AccountNoneID;
bool ReloadAccounts = FALSE;
bool AscendingMode = FALSE;
@@ -148,11 +190,23 @@ class frmMain : public frmMainADT
wxBitmap *imgSSLWarning = NULL;
wxBitmap *imgOnline = NULL;
wxBitmap *imgOffline = NULL;
+ wxBitmap *imgAddAddressBook = NULL;
+ wxBitmap *imgPreferences = NULL;
+ wxBitmap *imgSearchContacts = NULL;
+ wxBitmap *imgAddContact = NULL;
+ wxBitmap *imgEditContact = NULL;
+ wxBitmap *imgDeleteContact = NULL;
int ActivityIconStatus = 0;
int SearchUID = 0;
int ContactUID = 0;
int ContactEditorUID = 0;
int WindowMenuItemID = 0;
+ XABContactMenu *ContactMenu = new XABContactMenu(XABCONTACTMENU_MAIN);
+ void ResetContactInfo();
+#if defined(__APPLE__)
+ void DisplayCertificate(SecTrustRef SecurityTrustObject);
+ void DisplayTrustPanel( wxCommandEvent& event );
+#endif
protected:
// Handlers for frmMainADT events.
void QuitApp( wxCloseEvent& event );
@@ -164,7 +218,8 @@ class frmMain : public frmMainADT
void LoadPreferences( wxActivateEvent& event );
void LoadPreferences();
void ShowContactInfo( wxListEvent& event );
- void OpenContactInfo( wxListEvent& event );
+ void OpenContactInfoList( wxListEvent& event );
+ void OpenContactInfoList( wxCommandEvent& event );
void OpenContactInfo( wxCommandEvent& event );
void ShowContactEditorNew( wxCommandEvent& event );
void ShowContactEditorEdit( wxCommandEvent& event );
@@ -181,7 +236,6 @@ class frmMain : public frmMainADT
void RevealContact( wxCommandEvent& event );
void RemoveContactsWindowPointer(wxCommandEvent& event);
void RemoveContactEditorWindowPointer(wxCommandEvent& event);
- void UpdateWindowList(wxCommandEvent& event);
void RemoveContactSearchWindows(wxCommandEvent& event);
void DeleteContact(wxCommandEvent& event);
void EmptyServerDialog(wxCommandEvent& event);
@@ -207,12 +261,15 @@ class frmMain : public frmMainADT
void UpdateConnectionStatus( wxCommandEvent& event );
void SetupSSLStatus( int AccountID );
void InvalidSSLCertificate( wxCommandEvent& event );
+ void InvalidSSLCertificateString( wxCommandEvent& event );
void CheckUpdates( wxCommandEvent& event );
void OpenImportDialog( wxCommandEvent& event );
void OpenExportDialog( wxCommandEvent& event );
void GetSelectedList( wxCommandEvent& event );
void SyncAccount( wxCommandEvent& event );
void ShowHelp( wxCommandEvent& event );
+ void ShowContactMenu( wxMouseEvent& event );
+ void ProcessMenuItemClick( wxCommandEvent &event );
public:
/** Constructor */
frmMain( wxWindow* parent );
@@ -224,11 +281,17 @@ class frmMain : public frmMainADT
void ActivityIconStop( wxCommandEvent& event );
void PauseAllTimers();
void ResumeAllTimers();
- void UpdateSSLAccountStatus(int AccountID, int SSLStatus, SSLCertCollection SSLCertInc);
void GetListControl(wxListCtrl *lstContactsPtr, wxArrayString *ContactsFileIndexPtr);
void ShowImportResults( wxCommandEvent& event );
void ReloadContactList( wxCommandEvent& event );
XABViewMode GetViewMode();
+#if defined(__APPLE__)
+ void UpdateSSLAccountStatus(int AccountID, int SSLStatus, SecTrustRef SecurityTrustObject);
+#elif defined(__WIN32__)
+ void UpdateSSLAccountStatus(int AccountID, int SSLStatus, PCCERT_CONTEXT CertificateContext);
+#else
+ void UpdateSSLAccountStatus(int AccountID, int SSLStatus, SSLCertCollectionString SSLCertInc);
+#endif
DECLARE_EVENT_TABLE()
//// end generated class members