// You should have received a copy of the GNU General Public License along
// with Xestia Address Book. If not, see <http://www.gnu.org/licenses/>
-#include "../actmgr/frmActivityMgr.h"
-#include "../frmContact.h"
-#include "../frmMain.h"
-#include <wx/mstream.h>
-#include <wx/file.h>
-#include <wx/ffile.h>
-#include <wx/filename.h>
-#include <wx/tokenzr.h>
-#include "../bitmaps.h"
-#include "../enums.h"
-#include "../common/preferences.h"
-#include "../common/etag.h"
-#include "../common/dirs.h"
+#include "timers.h"
void wxActTimer::Notify(){
+ // Notify function for wxActTimer.
+
frmMain *frmMainPtrProc = static_cast<frmMain*>(frmMainPtr);
wxCommandEvent shuffleevent(ACTMGR_SHUFFLE);
void wxActTimer::SetBitmap(wxStaticBitmap *bitmap)
{
+ // Set the bitmap for wxActTimer.
+
bmpActivity = bitmap;
}
void wxActTimer::SetSleepBitmap(wxBitmap *SleepBitmap)
{
+ // Set the sleep bitmap for wxActTimer.
+
SleepBitmapPtr = SleepBitmap;
}
void wxActTimer::ResetBitmap()
{
+ // Reset the bitmap for wxActTimer.
+
intActivityProgress = 0;
}
void wxActTimer::SetupPointer(void *frmMainPtrIn)
{
+ // Setup the pointer for wxActTimer.
+
frmMainPtr = frmMainPtrIn;
}
void wxActProcessTimer::Notify()
{
+ // Notify function for wxActProcessTimer.
+
// Pause the timer whilst processing to avoid problems.
this->Stop();
void wxActProcessTimer::SetupPointers(void *ActMgr){
+ // Setup pointers for the wxActProcessTimer.
+
ActMgrPtr = ActMgr;
}
void wxActListProcTimer::Notify(){
+ // Notify function for wxActListProcTimer.
+
// Setup Label and get task data (update SetupPointers subroutine).
this->Stop();
ueventdata->ItemLabel = _("Stopped");
wxPostEvent(static_cast<frmActivityMgr*>(ActMgrPtr), uevent);
- iter->second = 5;
+ iter->second = 6;
} else if (iter->second == 4){
}
+ // Delete the connection object if finished.
+
+ if (iter->second > 4){
+
+ std::map<int,ConnectionObject*>::iterator ConnObjectIter = ActListConnObjectsPtr->find(iter->first);
+
+ delete ConnObjectIter->second;
+ ConnObjectIter->second = nullptr;
+
+ }
+
// Insert a finish date.
wxDateTime adt;
adt = adt.Now();
ActListFinDTPtr->insert(std::make_pair(iter->first, adt));
-
- // Delete the connection object.
-
- std::map<int, CardDAV*>::iterator ConnObject = ActListConnPtr->find(iter->first);
- delete ConnObject->second;
- ConnObject->second = NULL;
-
+
}
if (ClearupProcessed == TRUE){
std::map<int,wxString> *ActListDetail, bool *TasksActive,
wxListCtrl *lstActivity, wxStaticText *lblDetails, wxGauge *GauProgress,
void *ActMgr, wxActTimer *ActTimer, wxActProcessTimer *ActProcessTimer,
- std::map<int,wxDateTime> *ActListFinDT, std::map<int, CardDAV*> *ActListConn){
+ std::map<int,wxDateTime> *ActListFinDT, std::map<int,ConnectionObject*> *ActListConnObjects){
+
+ // Setup the pointers for wxActListProcTimer.
ActListPtr = ActList;
ActListUIPtr = ActListUI;
ActTimerPtr = ActTimer;
ActProcessTimerPtr = ActProcessTimer;
ActListFinDTPtr = ActListFinDT;
- ActListConnPtr = ActListConn;
+ ActListConnObjectsPtr = ActListConnObjects;
}
void wxActListProcTimer::EnableClearup(){
+ // Enable clearup of the wxActListProcTimer.
+
ClearupProcessed = TRUE;
}
void wxETagProcessTimer::Notify(){
+ // Notify function for wxETagProcessTimer.
+
// Check each ETagDB and see if writing to file is required.
std::map<wxString,ETagDB>::iterator ETagIter;
}
-
}
void wxETagProcessTimer::ReloadAccounts(){
AccountDir = PrefData.accounts.GetAccountDirectory(i);
AccountType = PrefData.accounts.GetAccountType(i);
-
+
if (AccountDir.IsEmpty()){
continue;
}
- if (AccountType == wxT("Local") || AccountType == wxT("local")){
- continue;
+ if (AccountType != wxT("CardDAV") && AccountType != wxT("carddav")){
+ continue;
}
AccountDir.Trim();
ETagDB* wxETagProcessTimer::GetPointer(wxString AccountName){
+ // Get the pointer of the ETag Database.
+
ETagDB *ETagDBPtr = NULL;
std::map<wxString,ETagDB>::iterator ETagIter;
void wxContactFileMonitorTimer::Notify(){
+ // Notify function for wxContactFileMonitorTimer.
+
if (Filename.IsEmpty()){
return;
void wxContactFileMonitorTimer::SetFilename(wxString FilenameInc){
+ // Set the filename for the wxContactFileMonitorTimer object.
+
Filename = FilenameInc;
wxFileName FileCheck(Filename);
void wxContactFileMonitorTimer::SetupPointers(frmContactEditor *frmCEPtrInc){
+ // Setup the pointers for the wxContactFileMonitorTimer object.
+
frmCEPtr = frmCEPtrInc;
}
void wxContactFileMonitorTimer::UpdateTimestamp(){
+ // Update the timestamp for the wxContactFileMonitorTimer object.
+
wxFileName FileCheck(Filename);
FileDateTime = FileCheck.GetModificationTime();
void wxContactWindowMonitor::Notify(){
+ // Notify function for the wxContactWindowMonitor object.
+
}
void wxContactWindowMonitor::SetupPointers(std::map<wxString, void*> *ContactWindowListPtrInc){
+ // Setup pointers for the wxContactWindowMonitor.
+
ContactWindowListPtr = ContactWindowListPtrInc;
}
void wxAccountSyncTimer::Notify(){
+ // Notify function for the wxAccountSyncTimer.
+
frmActivityMgr *ActMgrPtrProc = static_cast<frmActivityMgr*>(frmActMgrPtr);
// Disable the timer. (Don't go updating unless needed).
void wxAccountSyncTimer::SetupData(wxString AccNameInc,
wxString AccNameFullInc){
+ // Setup the data for the wxAccountSyncTimer object.
+
// Set the account name.
AccName = AccNameInc;
void wxAccountSyncTimer::SetupPointers(void *frmMainPtrInc,
void *frmActMgrPtrInc, ETagDB *ETagDBPtrInc){
- // Set the pointers.
+ // Setup the pointers for the wxAccountSyncTimer object.
frmMainPtr = frmMainPtrInc;
frmActMgrPtr = frmActMgrPtrInc;
void SleepFor(unsigned long longSleepNanoSecs){
+ // Sleep for specified nano seconds.
+
#ifdef __WIN32__
::Sleep((longSleepNanoSecs / 1000000));
#elif __HAIKU__