X-Git-Url: http://Server1/repobrowser/?a=blobdiff_plain;ds=inline;f=source%2FfrmMain.h;h=dcc18bbda9f84b87349ad3ac9493d214abb366a2;hb=32b56fabfeac4fea69986ebf183d5e9564bec040;hp=ff8ff74b883f61ae998f1dd1c6d75d35286485b7;hpb=54daedb29e38f1a51ab9c0fc8b075375d10f73f9;p=xestiaab%2F.git
diff --git a/source/frmMain.h b/source/frmMain.h
index ff8ff74..dcc18bb 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,20 +37,31 @@ 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 "common/structs.h"
#include "bitmaps.h"
#include "common/sslcertstructs.h"
+#include "widgets/XABContactMenu.h"
+#include "widgets/XABAccountView.h"
//// end generated include
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;
@@ -64,11 +99,6 @@ struct SWCloseNotif{
void *SCHWinPtr;
};
-struct QRNotif{
- int *QResponse;
- bool *PausePtr;
-};
-
struct XABViewMode{
int SortMode;
@@ -93,7 +123,14 @@ class frmMain : public frmMainADT
std::map WindowList;
std::map AccountRefreshList;
std::map AccountAccDirList;
- std::map AccountSSLData;
+#if defined(__APPLE__)
+ std::map AccountTrustData;
+ NSRunningApplication *helpBrowserProcess;
+#elif defined(__WIN32__)
+ std::map AccountCertificateData;
+#else
+ std::map AccountSSLData;
+#endif
std::map AccountSSLResult;
std::multimap AccountGroupList;
std::multimap AccountGroupFilename;
@@ -111,7 +148,6 @@ class frmMain : public frmMainADT
std::map WindowListPointersMenu;
std::map WindowListPointers;
std::map WindowListType;
- //std::map WindowListType;
wxMenuItem *mnuContactWindows;
wxMenuItem *mnuContactEditorWindows;
wxMenuItem *mnuSearchWindows;
@@ -119,18 +155,15 @@ class frmMain : public frmMainADT
bool RevealWait = FALSE;
wxString SessionID;
wxString OldSessionID;
+ wxColour ContactBackgroundColour;
wxIcon IconEmp;
- //wxIcon Emp;
- //wxComboCtrl* AccControl = new wxGenericComboCtrl(this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize);
- //wxComboCtrl* AccControl = new wxComboCtrl(this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxCB_READONLY|wxEXPAND|wxCC_STD_BUTTON);
- //wxStaticBitmap* AccIcon = new wxStaticBitmap(this, wxID_ANY, IconEmp, wxDefaultPosition, wxSize(16,16), wxALL|wxEXPAND, wxStaticBitmapNameStr);
XABAccountView* treAccounts = new XABAccountView();
wxImageList *AccImgList = new wxImageList(16,16,true);
wxImageList *ActMgrImgList = new wxImageList(16,16,true);
- //wxIcon wxIAccInet;
int AccountID;
int AccountNetID;
int AccountGrpID;
+ int AccountUnsupportedID;
int AccountNoneID;
bool ReloadAccounts = FALSE;
bool AscendingMode = FALSE;
@@ -148,22 +181,38 @@ 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 );
+ void DisplayHelpBrowser();
+ void TerminateHelpBrowserProcess();
+#endif
protected:
// Handlers for frmMainADT events.
+ void QuitApp( wxCloseEvent& event );
void QuitApp( wxCommandEvent& event );
void QuitApp();
void ShowAboutWindow( wxCommandEvent& event );
void OpenPreferences( wxCommandEvent& event );
void OpenNewABDialog( wxCommandEvent& event );
void LoadPreferences( wxActivateEvent& event );
- void LoadPreferences();
+ void LoadPreferences(bool skipWindowSizeReload);
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 );
@@ -174,13 +223,11 @@ class frmMain : public frmMainADT
const std::wstring &name);
void ConflictResolution( wxCommandEvent& event );
void UpdateContactList( wxCommandEvent& event );
- void UpdateAccountList( wxCommandEvent& event );
void UpdateSearchContactLists( wxCommandEvent& event );
void OpenFindContactsWindow(wxCommandEvent& event);
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);
@@ -206,12 +253,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 );
@@ -223,11 +273,18 @@ 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
+ bool CloseAllWindows();
DECLARE_EVENT_TABLE()
//// end generated class members