Home | News | Projects | Releases
Bugs | RFE | Repositories | Help
Right click menu support added for the contact list and search results.
[xestiaab/.git] / source / frmMain.cpp
index 4c37555..83eaa16 100644 (file)
@@ -13,6 +13,7 @@
 #include <wx/dir.h>
 #include <wx/stdpaths.h>
 #include <wx/fileconf.h>
+#include <wx/gdicmn.h>
 //#include <boost/filesystem/fstream.hpp>
 
 // Include the forms.
@@ -40,6 +41,7 @@
 #include "contacteditor/frmContactEditor.h"
 #include "import/import.h"
 #include "export/export.h"
+#include "widgets/XABContactMenu.h"
 #include "widgets/XABAccountView.h"
 
 #include "version.h"
@@ -53,7 +55,10 @@ DEFINE_EVENT_TYPE(CE_UPDATECONTACTLIST);
 DEFINE_EVENT_TYPE(CE_UPDATEACCOUNTLIST);
 DEFINE_EVENT_TYPE(SE_UPDATECONTACTNOTIF);
 DEFINE_EVENT_TYPE(CE_OPENCONTACT);
+DEFINE_EVENT_TYPE(CE_OPENCONTACTLIST);
+DEFINE_EVENT_TYPE(CE_NEWCONTACT);
 DEFINE_EVENT_TYPE(CE_EDITCONTACT);
+DEFINE_EVENT_TYPE(CE_DELETECONTACT);
 DEFINE_EVENT_TYPE(CE_REVEALCONTACT);
 DEFINE_EVENT_TYPE(CE_REMOVECONTACT);
 DEFINE_EVENT_TYPE(CE_REMOVESEARCH);
@@ -63,7 +68,6 @@ DEFINE_EVENT_TYPE(ACTMGR_SHUFFLE);
 DEFINE_EVENT_TYPE(ACTMGR_STOP);
 DEFINE_EVENT_TYPE(WINDOW_ADD);
 DEFINE_EVENT_TYPE(WINDOW_EDIT);
-//DEFINE_EVENT_TYPE(WINDOW_DELETE);
 DEFINE_EVENT_TYPE(WINDOW_CLOSE);
 DEFINE_EVENT_TYPE(CONNSTAT_UPDATE);
 DEFINE_EVENT_TYPE(INVALIDSSLCERT);
@@ -71,6 +75,7 @@ DEFINE_EVENT_TYPE(GETSELECTEDLIST);
 DEFINE_EVENT_TYPE(SYNCACCOUNT);
 DEFINE_EVENT_TYPE(IMPORT_RESULTSSHOW);
 DEFINE_EVENT_TYPE(RELOADCONTACTLIST);
+DEFINE_EVENT_TYPE(REFRESHADDRESSBOOK);
 
 BEGIN_EVENT_TABLE(frmMain, wxFrame)
 EVT_COMMAND(wxID_ANY, wxEVT_COMMAND_BUTTON_CLICKED, frmMain::ConflictResolution)
@@ -78,7 +83,10 @@ EVT_COMMAND(wxID_ANY, CE_UPDATECONTACTLIST, frmMain::UpdateContactList)
 EVT_COMMAND(wxID_ANY, CE_UPDATEACCOUNTLIST, frmMain::UpdateAccountList)
 EVT_COMMAND(wxID_ANY, SE_UPDATECONTACTNOTIF, frmMain::UpdateSearchContactLists)
 EVT_COMMAND(wxID_ANY, CE_OPENCONTACT, frmMain::OpenContactInfo)
+EVT_COMMAND(wxID_ANY, CE_OPENCONTACTLIST, frmMain::OpenContactInfoList)
+EVT_COMMAND(wxID_ANY, CE_NEWCONTACT, frmMain::ShowContactEditorNew)
 EVT_COMMAND(wxID_ANY, CE_EDITCONTACT, frmMain::ShowContactEditorEdit)
+EVT_COMMAND(wxID_ANY, CE_DELETECONTACT, frmMain::DeleteContact)
 EVT_COMMAND(wxID_ANY, CE_REVEALCONTACT, frmMain::RevealContact)
 EVT_COMMAND(wxID_ANY, CE_REMOVESEARCH, frmMain::RemoveContactsWindowPointer)
 EVT_COMMAND(wxID_ANY, SYNC_EMPTYSERVER, frmMain::EmptyServerDialog)
@@ -94,6 +102,7 @@ EVT_COMMAND(wxID_ANY, GETSELECTEDLIST, frmMain::GetSelectedList)
 EVT_COMMAND(wxID_ANY, SYNCACCOUNT, frmMain::SyncAccount)
 EVT_COMMAND(wxID_ANY, IMPORT_RESULTSSHOW, frmMain::ShowImportResults)
 EVT_COMMAND(wxID_ANY, RELOADCONTACTLIST, frmMain::ReloadContactList)
+EVT_COMMAND(wxID_ANY, REFRESHADDRESSBOOK, frmMain::RefreshAddressBook)
 END_EVENT_TABLE()
 
 frmMain::frmMain( wxWindow* parent )
@@ -1248,7 +1257,7 @@ void frmMain::RefreshAddressBook( wxCommandEvent& event ){
     
 }
 
-void frmMain::OpenContactInfo( wxListEvent& event )
+void frmMain::OpenContactInfoList( wxListEvent& event )
 {
     
     wxStringTokenizer vcardfileline;
@@ -1305,6 +1314,13 @@ void frmMain::OpenContactInfo( wxListEvent& event )
     
 }
 
+void frmMain::OpenContactInfoList( wxCommandEvent& event ){
+
+       wxListEvent pevent;
+       OpenContactInfoList(pevent);
+
+}
+
 void frmMain::OpenContactInfo( wxCommandEvent& event )
 {
     
@@ -2854,4 +2870,20 @@ void frmMain::ReloadContactList( wxCommandEvent &event ){
        
        }
 
+}
+
+void frmMain::ShowContactMenu( wxMouseEvent& event ){
+
+       bool EnableRefresh = FALSE;
+
+       if (!ActiveAccount.IsEmpty()){
+
+               EnableRefresh = TRUE;
+       
+       }
+
+       ContactMenu->SetupPointers(this, lstContacts, EnableRefresh);
+
+       this->PopupMenu(ContactMenu->MenuPointer(), wxDefaultPosition);
+
 }
\ No newline at end of file
Xestia Software Development
Yn Maystri
© 2006 - 2019 Xestia Software Development
Software

Xestia Address Book
Xestia Calendar
Development

Xestia Gelforn
Everything else

About
News
Privacy Policy