X-Git-Url: http://Server1/repobrowser/?p=xestiaab%2F.git;a=blobdiff_plain;f=source%2FfrmMain.h;h=dd4273bba8d92090d309019638e6ca674dc4a571;hp=ff8ff74b883f61ae998f1dd1c6d75d35286485b7;hb=60610b9783dc136d455389227c1b71627f47aba5;hpb=54daedb29e38f1a51ab9c0fc8b075375d10f73f9 diff --git a/source/frmMain.h b/source/frmMain.h index ff8ff74..dd4273b 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,21 @@ 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 @@ -32,7 +59,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 +76,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 +100,6 @@ struct SWCloseNotif{ void *SCHWinPtr; }; -struct QRNotif{ - int *QResponse; - bool *PausePtr; -}; - struct XABViewMode{ int SortMode; @@ -93,7 +124,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; @@ -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,13 +181,26 @@ 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 ); void QuitApp( wxCommandEvent& event ); void QuitApp(); void ShowAboutWindow( wxCommandEvent& event ); @@ -163,7 +209,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 ); @@ -180,7 +227,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); @@ -206,12 +252,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 +272,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