#include <wx/timer.h>
#include <wx/wx.h>
#include <mutex>
+#include <atomic>
#include "../frmActivityMgr.h"
#include "../contacteditor/frmContactEditor.h"
#include "etag.h"
class wxActTimer : public wxTimer
{
- private:
- int intActivityProgress = 0;
- wxStaticBitmap *bmpActivity;
- wxBitmap *SleepBitmapPtr;
- void *frmMainPtr;
- public:
+private:
+ int intActivityProgress = 0;
+ wxStaticBitmap *bmpActivity;
+ wxBitmap *SleepBitmapPtr;
+ void *frmMainPtr;
+public:
wxActTimer():wxTimer()
{
}
void StopAnimation();
void SetSleepBitmap(wxBitmap *SleepBitmap);
void SetupPointer(void *frmMainPtrIn);
-
+
};
class wxActProcessTimer : public wxTimer
{
-
- private:
- int intActivityProgress = 0;
- wxStaticBitmap *bmpActivity;
- void *ActMgrPtr;
- public:
+
+private:
+ int intActivityProgress = 0;
+ wxStaticBitmap *bmpActivity;
+ void *ActMgrPtr;
+public:
wxActProcessTimer():wxTimer()
{
}
void Notify();
void SetupPointers(void *ActMgr);
-
+
};
class wxActListProcTimer : public wxTimer
{
-
- private:
- std::map<int,int> *ActListPtr;
- std::map<int,long> *ActListUIPtr;
- std::map<int,wxString> *ActListDetailPtr;
- wxListCtrl *lstActivityPtr;
- wxStaticText *lblDetailsPtr;
- bool *TasksActivePtr;
- wxGauge *GauProgressPtr;
- void *ActMgrPtr;
- int intActivityTotal = 0;
- int intActivityCompleted = 0;
- wxActTimer *ActTimerPtr;
- wxActProcessTimer *ActProcessTimerPtr;
- std::map<int,wxDateTime> *ActListFinDTPtr;
- bool ClearupProcessed = FALSE;
- public:
+
+private:
+ std::map<int,int> *ActListPtr;
+ std::map<int,long> *ActListUIPtr;
+ std::map<int,wxString> *ActListDetailPtr;
+ wxListCtrl *lstActivityPtr;
+ wxStaticText *lblDetailsPtr;
+ bool *TasksActivePtr;
+ wxGauge *GauProgressPtr;
+ void *ActMgrPtr;
+ int intActivityTotal = 0;
+ int intActivityCompleted = 0;
+ wxActTimer *ActTimerPtr;
+ wxActProcessTimer *ActProcessTimerPtr;
+ std::map<int,wxDateTime> *ActListFinDTPtr;
+ bool ClearupProcessed = FALSE;
+public:
wxActListProcTimer():wxTimer()
{
}
void Notify();
- void SetupPointers(std::map<int,int> *ActList, std::map<int,long> *ActListUI,
- std::map<int,wxString> *ActListDetail, bool *TasksActive,
- wxListCtrl *lstActivity, wxStaticText *lblDetails, wxGauge *GauProgress,
- void *ActMgr, wxActTimer *ActTimer, wxActProcessTimer *ActProcessTimer,
- std::map<int,wxDateTime> *ActListFinDT);
+ void SetupPointers(std::map<int,int> *ActList, std::map<int,long> *ActListUI,
+ std::map<int,wxString> *ActListDetail, bool *TasksActive,
+ wxListCtrl *lstActivity, wxStaticText *lblDetails, wxGauge *GauProgress,
+ void *ActMgr, wxActTimer *ActTimer, wxActProcessTimer *ActProcessTimer,
+ std::map<int,wxDateTime> *ActListFinDT);
void EnableClearup();
-
+
};
class wxETagProcessTimer : public wxTimer
{
- private:
- int intActivityProgress = 0;
- std::map<wxString,ETagDB> ETagDBList;
- //std::map<int,ETagDB2> ETagDBListv3;
- std::mutex ReloadLock;
- public:
+private:
+ int intActivityProgress = 0;
+ std::map<wxString,ETagDB> ETagDBList;
+ //std::map<int,ETagDB2> ETagDBListv3;
+ std::mutex ReloadLock;
+public:
wxETagProcessTimer():wxTimer()
{
- ReloadAccounts();
+ ReloadAccounts();
}
void Notify();
ETagDB* GetPointer(wxString Filename);
void ReloadAccounts();
//void SetupPointers(frmActivityMgr *ActMgr);
-
+
};
class wxContactFileMonitorTimer : public wxTimer
{
- private:
- bool FileStatus = FALSE;
- wxString Filename;
- frmContactEditor *frmCEPtr;
- wxDateTime FileDateTime;
- public:
+private:
+ bool FileStatus = FALSE;
+ wxString Filename;
+ frmContactEditor *frmCEPtr;
+ wxDateTime FileDateTime;
+public:
wxContactFileMonitorTimer():wxTimer()
{
}
class wxContactWindowMonitor : public wxTimer
{
- private:
- std::map<wxString, void*> *ContactWindowListPtr;
- public:
+private:
+ std::map<wxString, void*> *ContactWindowListPtr;
+public:
wxContactWindowMonitor():wxTimer()
{
}
class wxAccountSyncTimer : public wxTimer
{
- private:
- wxString AccName;
- wxString AccNameFull;
- void *frmMainPtr;
- void *frmActMgrPtr;
- ETagDB *ETagDBPtr;
- int intTaskID;
- public:
+private:
+ wxString AccName;
+ wxString AccNameFull;
+ void *frmMainPtr;
+ void *frmActMgrPtr;
+ ETagDB *ETagDBPtr;
+ int intTaskID;
+public:
wxAccountSyncTimer():wxTimer()
{
}
void Notify();
void SetupData(wxString AccNameInc, wxString AccNameFull);
void SetupPointers(void *frmMainPtrInc,
- void *frmACtMgrPtr, ETagDB *ETagDBPtrInc);
-
+ void *frmACtMgrPtr, ETagDB *ETagDBPtrInc);
+
};
void SleepFor(unsigned long longSleepNanoSecs);